- Shipped
- October 15, 2026 at 1:08 AM UTC
- Author
- Kamo
- Commit
- f0f5587
A new invitation in the mail reader now offers "Add to calendar". Once a member has added it, the organiser's follow-ups apply on their own: a moved time, a new place, a cancellation reach the member's copy without asking, and the member gets a CALENDAR_EVENT_CHANGED notification saying which meeting changed and from what to what ("From: Wed, Oct 14 · 2:00 – 3:00 PM EDT / To: Thu, Oct 15 · 3:30 – 4:30 PM EDT"), in their own zone. Their own meetings are never moved by mail. - InboundInvitationService: member-scoped status, add and applyFollowUp, through IcsImportService.upsert (zones, all-day, series, edited and cancelled instances) with a before/after snapshot for the notice. Only a newer SEQUENCE applies; retried on a serialization conflict; the notice is raised after the commit and deduped per event, change and SEQUENCE. - On arrival: MessageIndexer hands every parsed KamoMail message to InvitationArrivals, so the calendar is current before the message is opened. Other mailboxes apply when the message is opened. - **************** add and apply re-read the meeting from the member's mailbox, never from the browser. - InvitationReader replaces the inbound parser, which read every TZID time as UTC (2:00 PM Eastern became 2:00 PM UTC) and could not read an all-day date. A message carrying its meeting only as an invite.ics attachment is now recognised; Microsoft 365 meeting messages are read from their MIME; an unreadable calendar part no longer fails the whole message.
