-
feat(provider): mark_superseded verb — Worldtree #364 contradiction retirement + bifrost 1.1.4
released this
2026-07-16 22:37:31 -07:00 | 104 commits to main since this releaseImplement
mark_superseded(ids, *, superseded_by=None, reason=None)— the SOLE
supersession verb Worldtree #364's promotion-hygiene reconciliation calls to retire
contradicted facts (wire shape confirmed by worldtree-dev, bifrost_memory_store.py:293).
Live re-verify (2026-07-16) proved our provider 500-crashed on this call (unimplemented)
→ #364's retirement couldn't land + a retry-storm bloated the store; the readout only
passed via transient recency-eviction.mark_supersededmirrors the reference_mark_lifecycle: sets top-level
superseded=True(+superseded_by/superseded_reasonwhen non-None), increments
revision, NON-destructive (get still returns; recoverable). Unknown ids skipped._is_live(INV-011) now short-circuits onsuperseded is True, so a retired chunk is
excluded fromscan(person-prime) — durable retirement, not just recency-eviction.
search is unfiltered (matches reference; WT re-checks liveness client-side).- Contract: un-defer mark_superseded (+ FN spec, INV-011); TDD 5/5 (retires-from-scan
tracer, non-destructive-get, unknown-id no-op, non-None-fields-only, parity #195). - bifrost 1.1.1→1.1.4: hasattr-gate backstop for the maintenance verbs (unimplemented
verb → unsupported_capability 400, never AttributeError/500/retry-storm — the gap we
surfaced) + the 1.1.3 scan/cursor conformance harness. Full suite 644 green.
Downloads