Sprint history — Approvals & publish
What shipped
Getting a locked roster reviewed and published as an immutable record.
- Publish roster (MIQ-035) — publishing a locked roster into an immutable
published_rosters+published_roster_linessnapshot. - View published roster (MIQ-036) — the employee read view of the published roster.
- Roster publish/approval flow (RosterPublishApproval) — the publish → approval-queue → approve/reject flow and the pending-count bell.
- Approval matrix configuration (MIQ-015) — the approval-matrix rules + resolver.
Key decisions
- The
Approvedwaypoint is dead — publish transitions straight toPublished; theApproved = 3status value is defined but unused. - Single-step publish/approve only — a multi-step approval chain and a publisher≠approver separation are PLANNED (sheet 10).
- The approval-matrix resolver is real but not wired into any live approval flow — it's consumed by DI + diagnostics only (sheet 06). Delegations / admin UI / multi-level are PLANNED.
- The bell is a frontend poll of the pending-count endpoint; there is no backend notification system (sheet 18).
Build status
Available (single-step publish/approve, immutable snapshot, queue + bell); Partial/Planned on the multi-step chain and the approval-matrix wiring. See Publish a roster (task) and the Approvals & publish API.
Related
- Fact sheets 10 (approvals & publish), 06 (approval matrix), 18 (notifications); reports MIQ-035/036/015, RosterPublishApproval.