Tasks
DonePersist deputy selection from bias proposal edits
The bias proposal edit UI accepts a deputy selection but ProposalsController#update silently discards it. Evidence from local meeting 5, proposal 5 for Mikke Mus: requests submitted proposal[biased_deputy_role_id]=38 and later =39, while Bias::Invitation#replacement_role_id and Bias::Declaration#deputy_role_id remained nil. The update path excludes biased_deputy_role_id from permitted_params and setup_bias_records! reads proposal.biased_deputy_role (the existing declaration value) instead of the submitted role. Persist and validate the submitted deputy atomically through the canonical bias lifecycle, and surface a validation error instead of silently losing the selection.
Checklist
0 of 5 complete- Add a failing controller regression for submitted biased_deputy_role_id on proposal update
- Validate the submitted role against canonical same-list eligibility and reservations
- Persist invitation and per-case declaration deputy intent atomically under the meeting lock
- Handle deputy changes after canonical proposal history explicitly without silent loss
- Verify the chosen deputy receives the seat after approval and survives reset/revote flows
- Area
- Kaukus
- Kind
- Bug
- Priority
- High
- Task ID
tsk_dp4mfmjwuq- Updated