- keepWeekMutations: once none of a week's swaps is pending only the latest is kept; a failed latest swap stays across showing other weeks until the week's board leaves it behind, so coming back still shows it. - useSwapDay: a failed PUT rolls its day back only if no server plan read has landed since its optimistic write (query update generation), even a read whose day matches the optimistic one. - syncedAt: calendar_synced_at must be a full RFC 3339 instant with an offset before it is parsed. - A swap refused with 409 dinner_already_planned reads the plan again; the Draft board offers "Choose another dinner" instead of resending it. Task: d21e4a83-9ae4-4944-9621-a10db9fad0b9 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>