Investigate safe reopening of ended meetings
Scope: investigate and plan safe secretary reopening of ended meetings; no implementation yet. Verified on current checkout: Meeting#meeting_stop_handler sets ended_at, queues politician broadcasts, ends ongoing cases, closes current voting-right intervals, and stops streaming. Case stop generates/publishes reports and may create resolutions, ends polls/proposals/points, withdraws unpublished proposals, ends and reorders live/queued speakers, updates speech statistics, resets case bias rights, and clears router queue. Rejected bias processing can clear declarations/disable invitations and change attendances. Router meeting_ended callback bypasses lifecycle cleanup. Nightly EndMeetingsJob uses original starts_at and would re-end reopened old meetings. Role current-right lookup is not meeting-scoped. Recommendation awaiting product decision: safe continuation, not full automatic undo. Preserve finished votes/cases/reports; retain original started_at, audit closure/reopening, clear ended_at, validate and restore a reviewed baseline roster using new voting-right intervals and consistent replacement chains. Keep streaming opt-in with provider-specific restart verification. Existing case reopen returns case to not_started; does not restore children. Require legacy recovery confirmation because no explicit closure batch/snapshot exists and rights closure time differs from ended_at. Prospective end snapshots can identify exactly which roster and child states were changed. Implementation acceptance should cover secretary-specific authorization, municipality/meeting locking and participant conflicts, reviewed absence/substitution recovery without historical interval edits, old-meeting scheduler protection, stale external callbacks/jobs, stream session/recording segmentation, repeated end/reopen idempotency, and participant/public/dashboard broadcasts. Product decisions: continuation vs exact undo; gap counted as attendance or excluded; historical meeting limits; handling approved/published protocols and resolutions. Investigation was static source inspection only; no tests or external-provider restart experiments ran.
Checklist
0 of 0 completeNo checklist items.
- Area
- Kaukus
- Kind
- Research
- Task ID
tsk_bjur49rbb6- Updated