Skip to content

v0.2.5 — fail-closed snapshot + preview warning on snapshot-fetch failure

Choose a tag to compare

@iiizzzyyy iiizzzyyy released this 15 Jul 14:25
· 32 commits to main since this release
d2edb0c

What's new

Prophylactic hardening for a latent silent-failure gap (flagged in the 2026-07-15 demo-rehearsal bug report at handlers.py:220-221).

A total snapshot-fetch failure (every per-record GET raising at preview time) previously persisted a hollow undoable=True snapshot with empty original_values — the operator only discovered undo was unavailable after approving. Now:

  • Fail-closed snapshot (snapshot.py): an UPDATE with no captured originals is marked undoable=False. CREATE stays undoable (its undo deletes via created_ids).
  • Preview-time warning (handlers.py): when an UPDATE attempted fetches but captured nothing, a warning surfaces in the preview so approval is informed.
  • New regression test: test_bulk_update_snapshot_fetch_failure_warns_and_marks_non_undoable (TDD).

Note on BUG 11/12 from the 2026-07-15 report

Verified live on portal 148408595 against the actual 0.2.4 runtime: BUG 11 (count gate) and BUG 12 (bulk no snapshot) were not reproducible — they were artifacts of a stale venv-0.2.2-backup serving 0.2.2 code. BUG 9 and BUG 10 remain fixed. This release is hardening, not a regression fix.

Validation

  • claude plugin validate ./ — clean
  • bash scripts/check-artifact-allowlist.sh — 257 files within allowlist
  • pytest -q — 1080 passed, 3 skipped