Tier 0/strategic — the single highest-leverage validation before freeze.
Why
The adapter-facing contract (RawEventStore, RawSubscription, SnapshotStore, wire, GlobalSeq) has only ever been exercised by one embedded adapter (fjall), so single-process/synchronous assumptions have leaked into the "generic" traits. Several freeze issues are all symptoms of "tested against fjall only":
Action
Build a postgres (or sqlite) adapter — even a skeleton — before freezing the adapter traits. A second backend is the only thing that actually proves the boundary is drawn right, the same way the saga repo proved the kernel boundary. Findings feed back into #204–#210.
Relates to milestone "Phase 4: Cutting Edge & New Adapters". From the 2026-06-19 freeze-readiness audit (bottom-line recommendation).
Tier 0/strategic — the single highest-leverage validation before freeze.
Why
The adapter-facing contract (
RawEventStore,RawSubscription,SnapshotStore,wire,GlobalSeq) has only ever been exercised by one embedded adapter (fjall), so single-process/synchronous assumptions have leaked into the "generic" traits. Several freeze issues are all symptoms of "tested against fjall only":read_stream(from)inclusive vssubscribe(from)exclusive — undocumented on the traitbatch_size/keyset pagination as if it were the contractAction
Build a postgres (or sqlite) adapter — even a skeleton — before freezing the adapter traits. A second backend is the only thing that actually proves the boundary is drawn right, the same way the saga repo proved the kernel boundary. Findings feed back into #204–#210.
Relates to milestone "Phase 4: Cutting Edge & New Adapters". From the 2026-06-19 freeze-readiness audit (bottom-line recommendation).