ADR-0007 — CalDAV-vs-CRDT precedence (ADR-G)

  • Status: Seeded placeholder — not yet ratified (Epic 7; 🔒 closer review on 7-4).

  • Source: docs/planning-artifacts/architecture.md §"Contested Decisions" ADR-G (#280—​283); Decision Priority (D3.5).

Context (to be decided)

CalDAV (UID-matched last-sync diff) and CRDT (causal field merge) are different conflict models — a precedence question for the same DailyBlock. Plus RRULE/timezone/DST expansion correctness (FR-8/9). Protected-block soul guard must hold on external (calendar) changes — never auto-drop.

Decision

Pending. libdav, calcard, rrule, chrono-tz are pinned-but-unused; the CalendarProvider trait leaves the seam open.

Consequences

To be recorded when decided.