2.0 KiB
2.0 KiB
Approvals Interface Pattern Migration
This migration applies the GovOPlaN interface pattern language to the Approvals-owned route without changing the append-only approval model or importing optional sibling modules.
Surface Inventory
| Surface | Archetype | Consequence class | Contract |
|---|---|---|---|
/approvals list |
Searchable work queue | Select request or create immutable chain | Shared loading, empty, error, permission, selection, and help states |
| Approval detail | Governed record detail | Inspect exact subject, chain, state, and evidence | Locale-aware history, status, provenance, explained lifecycle actions |
| Request dialog | Consequential definition editor | Freeze exact subject and approval chain | Guarded draft, field help, validation reasons, at least one step |
| Decision dialog | Governed decision | Append approval or rejection evidence | Required reason/signature, guarded draft, explicit confirmation action |
Consequence And Availability Rules
- Creation freezes the subject identity and digest plus every ordered step, selector, quorum, separation, and signature requirement.
- Approving or rejecting appends attributable evidence and cannot be edited.
- Only pending or escalated requests can be decided. Terminal requests remain available for reconstruction.
- Missing create or decide permission is visible and points to the Access role assignment destination and responsible administrator.
- Signature references are evidence pointers and never a cryptographic claim.
The module uses Core dialogs, controls, status, blockers, help, loading, empty,
error, draft-guard, and WorkspaceLayout contracts. The shared split-pane
shell keeps the request collection and selected evidence in independently
scrollable panes, then stacks them at the platform narrow-layout breakpoint.
Native selection buttons preserve keyboard order. English and German catalogues
cover module-owned copy and dates follow the active platform locale.