Central lifecycle policy
Request states and transitions share one vocabulary across public and staff flows.
Django · GovTech · Standalone work paused
A focused implementation of account-free citizen requests, controlled staff transitions, document review, and auditable history. Its lifecycle work is now being integrated into GRAND.
The problem
Assistance requests move across document submission, review, correction, approval, claiming, and closure. Citizens need a safe way to continue without creating an account, while staff need role-aware actions, valid transitions, and a complete operational history.
Engineering decisions
Request states and transitions share one vocabulary across public and staff flows.
A dedicated edit token acts as the public mutation credential.
Document review states remain independent from request states.
Status, document, citizen, notification, and workflow actions become timeline entries.
Architecture
Quality evidence
Focused tests cover transitions, role-aware actions, and blocked approvals.
Token validation and invalid mutation attempts use centralized services.
Soft deletion preserves history while review states support correction.
Best-effort adapters do not corrupt lifecycle state.
Public GitHub API
Loading public GitHub activity…