A role-based decision management system for cross-department approvals...

Organizations make dozens of decisions weekly...
Invalid status transitions are impossible at the code level, not just the UI. This mirrors how real compliance systems work and eliminates an entire class of data integrity bugs.
A rejected decision without explanation is useless to the requester. Enforcing this server-side (not just form validation) means it cannot be bypassed by any client.
Time-to-decision is a business metric. Mixing it with updated_at would pollute the signal every time a comment is added or a field is edited. Separate fields, separate concerns.
Currently in development. The architecture and data model are designed — building the UI next.
