Team-lead-only mutation that replaces the AttendingMember roster on a CONFIRMED finalist confirmation. Diffs the requested user list against existing rows: kept rows are updated in place (preserving FlightDetail), removed rows are deleted, added rows are created. Enforces: - team-lead role - CONFIRMED status - defaultAttendeeCap - team-membership of every supplied userId - cutoff = LIVE_FINAL.windowOpenAt − attendeeEditCutoffHours (default 48) Audit-logged as FINALIST_EDIT_ATTENDEES with the diff payload. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
13 KiB
13 KiB