Commit graph

4 commits

Author SHA1 Message Date
f451283276 fix(tolaria): allow propagate_commit resume from PROPAGATING_TOLARIA crash-window
C5F canary commit parked in PROPAGATING_TOLARIA with objects already written
to Tolaria (real write before crash). C5EEngine.replay() delegates the pending
case to propagate_commit, whose entry guard only accepted READY/RETRY_PENDING,
so the commit could never resume past the crash window and the ALREADY_AT_TARGET
idempotency (pre_write_drift_check) was never reached.

Minimal fix: accept PROPAGATING_TOLARIA as a resume entry state (idempotency
still determined per-object via pre_write_drift_check -> no double write; read-back
verify() remains the mandatory gate) and skip the READY->PROPAGATING_TOLARIA
transition on resume (no self-transition entry exists in _ALLOWED_TRANSITIONS).

Adds 2 regression tests covering the crash-window resume (already-at-target and
pending-create). Full C5A-E suite: 190 tests, 0 failures.
2026-08-26 10:48:10 +00:00
c5b3db153a fix(tolaria): handle null success response from vault save 2026-08-26 10:23:14 +00:00
238536710a fix(tolaria): handle missing vault object in C5C read path 2026-08-26 10:03:40 +00:00
763f1ca9da feat(tolaria): add C5 Tolaria propagation and drift verification 2026-08-26 05:55:38 +00:00