Problem
The event action labelled “Send Cancellation” calls the ordinary
invitation path before deleting the event. That path generates
METHOD:REQUEST, so attendees of a self-sent JMAP or generic
IMAP/CalDAV meeting can receive another invitation instead of a
cancellation.
Gmail and Microsoft Graph invitation delivery remains
provider-owned and must not gain a duplicate manual message.
Scope
- Generate a standards-compliant
METHOD:CANCEL for providers
where Chithi self-sends meeting messages.
- Preserve the event UID, organizer, attendees, recurrence data,
sequence, and available timestamps from the stored event.
- Send the cancellation successfully before deleting local state.
- Preserve provider-delegated cancellation for Gmail and Graph.
Acceptance criteria
- “Send Cancellation” never emits
METHOD:REQUEST.
- JMAP and generic IMAP/CalDAV attendees receive one CANCEL with
the original event identity.
- A failed self-send does not silently delete the event.
- Gmail and Graph do not receive duplicate manual invitation mail.
- Focused generator and command-path tests cover both delivery
ownership modes.
Out of scope
Evidence
src/components/calendar/EventDetail.vue:166-190
src-tauri/src/commands/calendar.rs:1835-1852
src-tauri/src/calendar/ical.rs:260-341
docs/adr/0038-calendar-invite-provider-delegation.md
Problem
The event action labelled “Send Cancellation” calls the ordinary
invitation path before deleting the event. That path generates
METHOD:REQUEST, so attendees of a self-sent JMAP or genericIMAP/CalDAV meeting can receive another invitation instead of a
cancellation.
Gmail and Microsoft Graph invitation delivery remains
provider-owned and must not gain a duplicate manual message.
Scope
METHOD:CANCELfor providerswhere Chithi self-sends meeting messages.
sequence, and available timestamps from the stored event.
Acceptance criteria
METHOD:REQUEST.the original event identity.
ownership modes.
Out of scope
Persist calendar invite and RSVP delivery #261.
Evidence
src/components/calendar/EventDetail.vue:166-190src-tauri/src/commands/calendar.rs:1835-1852src-tauri/src/calendar/ical.rs:260-341docs/adr/0038-calendar-invite-provider-delegation.md