A training provider moves one weekly consultation and expects the remaining sessions to stay put. A new event identifier can duplicate the appointment, while changing the master can move the whole series. Specify the original occurrence identity before commissioning calendar synchronisation.
Source-bound fact
RFC5545 uses RECURRENCE-ID to identify the original DTSTART of the instance being overridden. Official reference · Checked 17 October 2026.
Filled synthetic acceptance example
Synthetic teaching example, not a client case or a real-platform assessment. On narrow screens, scroll to read the complete table.
| Input | Check basis | Expected |
|---|---|---|
| UIDS17; original21Oct09:00; move to22Oct10:00 | recurrence identity remains21Oct09:00 | replace one occurrence |
| NewUID plus movedstart | not same series identity | duplicate risk |
| RECURRENCE-ID set to moved22Oct10:00 | wrong original occurrence | reject proposal |
Supplier acceptance procedure
- Record the master UID, timezone/value type and original occurrence start before changing the displayed time.
- Test one moved occurrence and confirm neighbouring weeks retain their original times.
- Import into the actual supported calendar clients in an authorised test and compare identity, not only visible titles.
Interpret the output
The finite checker compares UID and original recurrence key. It is not a complete ICS parser or a claim that all calendar clients merge updates identically. The handover must include the affected occurrence, neighbours and the tested client/version.
Explicit limits
No actual invitations are sent. Timezone definitions, sequence ordering, cancellations, attendee responses and THISANDFUTURE ranges require separate validation.
Replay the finite teaching model
Save both files in one folder and use Node22 or newer. JSON contains inputs and expected results. The script processes synthetic data only, with no network, credentials, payment or paid API calls. Passing is not evidence that a real integration passed acceptance.
Filled inputs and expectations · Inspectable teaching script
node check.mjs recurring-session-exception-calendar-brief.json