diff --git a/lib/jmap/client.ts b/lib/jmap/client.ts index 9c3b9b29..c1a0a0d5 100644 --- a/lib/jmap/client.ts +++ b/lib/jmap/client.ts @@ -3513,8 +3513,8 @@ export class JMAPClient implements IJMAPClient { ): Promise { const accountId = targetAccountId || this.getCalendarsAccountId(); - // Strip client-only shared fields before sending to JMAP - const { originalId: _oi, originalCalendarIds: _oc, accountId: _ai, accountName: _an, isShared: _is, ...cleanUpdates } = updates as CalendarEvent; + // Strip client-only and server-immutable fields before sending to JMAP + const { id: _id, uid: _uid, '@type': _typ, created: _cr, updated: _up, sequence: _sq, isOrigin: _io, isDraft: _idr, originalId: _oi, originalCalendarIds: _oc, accountId: _ai, accountName: _an, isShared: _is, ...cleanUpdates } = updates as CalendarEvent; cleanRecurrenceRules(cleanUpdates as unknown as Record); const setArgs: Record = {