EncryptedAssignmentService
Component Detail
Description
Orchestrates the full lifecycle of encrypted assignment dispatch, from coordinator initiation through delivery confirmation, read confirmation, and automatic reminders. Coordinates between the encryption layer, repository, and notification system. Monitors open assignments and fires reminder notifications when the ten-day contact window expires.
encrypted-assignment-service
Sources & reasoning
Source lines 94-95 directly specify end-to-end encrypted dispatch with delivery/read confirmation and a 10-day reminder. Line 153 classifies this MUST for Blindeforbundet in Fase 2 of the priority matrix, and line 345 repeats it as Fase 2 critical in the roadmap. Fase 2 normalises to v1.0. The feature is the core unlock for Blindeforbundet's digital workflow and cannot be deferred.
-
docs/source/likeperson.md · line 94-95Kryptert oppdragshåndtering: Sende sensitive personopplysninger (navn, adresse, epikrise) til likepersoner med leveringsbekreftelse og lesebekreftelse. Statusoversikt over åpne oppdrag. Automatisk påminnelse etter 10 dager dersom kontakt ikke er oppr
-
docs/source/likeperson.md · line 153Kryptert oppdragshåndtering | - | - | ✓ | - | ✓ | MUST (Blindeforbundet) | 2
-
docs/source/likeperson.md · line 345Kryptert oppdragsutsendelse med statussporing (Blindeforbundet-kritisk)
Responsibilities
- Accept coordinator dispatch requests and coordinate encryption before storage
- Record and expose delivery confirmation events from the server handoff
- Listen for read confirmation events and update assignment status accordingly
- Schedule and fire automatic reminder notifications after ten days without contact
- Provide status query interface for the coordinator inbox view
Interfaces
dispatchAssignment(payload: AssignmentPayload, recipientPublicKey: CryptoKey): Promise<DispatchResult>
confirmDelivery(assignmentId: string): Promise<void>
confirmRead(assignmentId: string): Promise<void>
getAssignmentStatus(assignmentId: string): Promise<AssignmentStatus>
checkOverdueAssignments(): Promise<OverdueAssignment[]>
sendContactReminder(assignmentId: string): Promise<void>
Related Data Entities (4)
Data entities managed by this component