Data Layer low complexity backend
0
Dependencies
1
Dependents
0
Entities
0
Integrations

Description

Data access layer for persisting and querying asynchronous bulk operation jobs. Stores job ID, status (pending/processing/completed/failed), progress counters, result payload, and expiry. Queried by the status polling endpoint to return real-time progress to the frontend.

Feature: Bulk Actions

bulk-job-repository

Responsibilities

  • Create and persist new async job records with initial pending status
  • Update job progress counters and status during processing
  • Return job status and result payload for polling queries
  • Expire completed job records after a retention window

Interfaces

createJob(jobId: string, orgId: string, action: BulkActionType, totalCount: number): Promise<void>
updateProgress(jobId: string, processed: number, succeeded: number, failed: number): Promise<void>
completeJob(jobId: string, result: BulkOperationResult): Promise<void>
getJob(jobId: string): Promise<BulkJobRecord | null>

Relationships

Dependents (1)

Components that depend on this component