Admin-managed survey years
Non-technical administrators can add, retire, reorder, or deliberately map questions without changing application code.
2025 responses → 2026 survey
A small working prototype for the hardest part of a recurring reporting portal: deciding what can be safely prefilled when questions change between years.
01 / version handoff
Create the snapshot to see which answers are copied, held for review, or left blank.
The supplier-data question now covers Tier 1 and Tier 2. A matching ID should not silently copy an answer whose meaning changed.
No new-year response exists yet.
02 / provenance
The production model would store a response snapshot for each company and year. Reopening a submitted survey changes that year's record through an auditable state transition; it does not rewrite another year's baseline.
03 / production shape
Non-technical administrators can add, retire, reorder, or deliberately map questions without changing application code.
Postgres keeps companies, versions, responses, mapping decisions, and exports relational. Row-level security isolates each company's data.
Three historical exports are reconciled into a staging layer first. Unmatched companies or questions become an explicit review queue.