Infrastructure high complexity backend
0
Dependencies
0
Dependents
3
Entities
0
Integrations

Description

Backend infrastructure component that executes the atomic database transaction, creating one activity record per selected participant within a single transaction boundary. Guarantees all-or-nothing semantics — any insert failure triggers a full rollback of the entire batch. Writes a labeled bulk operation entry to the audit log on both success and failure, ensuring bulk actions are clearly identifiable in the activity feed.

Feature: Bulk Registration

bulk-transaction-handler

Responsibilities

  • Execute database transaction inserting one activity row per participant atomically
  • Roll back the entire batch on any single insert failure to prevent partial state
  • Write labeled bulk operation summary to the audit log
  • Validate that all participant IDs belong to the coordinator's association before insert

Interfaces

executeBulkInsert(activityData: ActivityData, participantIds: string[]): Promise<BulkInsertResult>
rollbackBatch(transactionId: string): Promise<void>
logBulkOperation(operationId: string, coordinatorId: string, result: BulkInsertResult): Promise<void>
validateParticipantScope(coordinatorId: string, participantIds: string[]): Promise<boolean>
getBulkOperationRecord(operationId: string): Promise<BulkOperationRecord>

Related Data Entities (3)

Data entities managed by this component