FAILURE MAP
← Case archive

FA-77310 / Calendar recurrence rules / Member archive

Re-keying instance overrides after a series start or interval change: noop drop · case 05

A moved instance whose target now coincides with its new slot is kept as a redundant exception, and a former no-op is dropped although it now moves the instance.

Member previewVariant 5 · 3 implementations · 7 checks per implementation

Case contract

An all-day series (old_start, interval, count) is edited to start at new_start with new_interval. Each override [original, target] (target None = cancelled) is keyed by occurrence index i, where original = old_start + i*interval; overrides not on an old instance (before the series, misaligned or at i >= count) are dropped. The override is re-keyed to new_start + i*new_interval; moved targets are absolute and kept unchanged; an override whose target equals its new key is dropped as a no-op; the last override for a key wins. Return [[new_key, target]] sorted by new key.

Why this case matters

Recurring calendar series are expanded into concrete instances for display, reminders and conflict checks.

One recorded failure

Sample boundary fixture

This sample comes from the broken implementation of a controlled reproducer.

Boundary fixtureActualExpectedOutcome
target becomes new key[["2024-01-09", "2024-01-09"]][]Failed

MEMBER ARCHIVE

The complete case is available to members.

This record includes three runnable implementations, regression fixtures, execution results, and source hashes.

Member access is invitation-based. Sign in with your invited account to inspect the sources.

Sign in to the archive ↗