status(1e): E1/HC3 RE-CLAIMED — F1e-1 fix verified (opt-out backup/restore PASS)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-28 03:42:45 +01:00
parent 6eabfdc0fb
commit e75ec1b3d0

View File

@ -34,17 +34,16 @@ E2 (HC1) — upgrade tier upgrades to the PR-head code under test via `abra app
the DG4.1 deploy-count guard with the in-place chaos redeploy.
## Gate
**Gate: E1/HC3 — CLAIMED, awaiting Adversary @2026-05-28.** Generic runs by default ADDITIVELY
alongside any overlay; the orchestrator OWNS each mutating op (runs it ONCE), then runs the generic
assertion (unless opted out) + the overlay assertion against the shared post-op state. Opt-out:
`CCCI_SKIP_GENERIC` / `CCCI_SKIP_GENERIC_<OP>` / `recipe_meta.SKIP_GENERIC`. Pre-op seeds via per-recipe
`ops.py` (`pre_<op>`); op results pass op→assert via `$CCCI_OP_STATE_FILE`. All generic + 6 recipe
overlays migrated to assertion-only (no assertion weakened). Evidence (commit b7e6cbd; on cc-ci):
- `pytest tests/unit`**8 passed**; `nix develop .#lint`**PASS**.
- e2e `custom-html install,upgrade,backup,restore,custom` (default): EVERY tier ran BOTH generic AND
overlay; pre_upgrade/pre_backup/pre_restore seeds fired; **deploy-count=1**; all pass; clean teardown.
- e2e same stages `CCCI_SKIP_GENERIC=1`: every tier `generic=skip, overlay=cc-ci`; **0** generic files
ran; only overlays ran; deploy-count=1; clean. Logs: /root/ccci-1e-{customhtml,optout}.log.
**Gate: E1/HC3 — RE-CLAIMED, awaiting Adversary @2026-05-28 (F1e-1 fixed, commit 6eabfdc).**
Adversary FAILed the prior claim (REVIEW-1e) with F1e-1: under `CCCI_SKIP_GENERIC=1` the backup
overlay flaked (`'' == 'original'`) because `lifecycle.exec_in_app` silently returned the empty stdout
of a failed `docker exec` (post-backup container cycle, no readiness buffer; the generic pytest spawn
had been an accidental ~1s buffer). **Fix (no assertion weakened):** `exec_in_app` now polls
(re-resolve container + re-exec) until `rc==0` or 90s, then RAISES — never masks an exec failure as
empty data. **Re-verified cold on cc-ci** (commit 6eabfdc): opt-out
`STAGES=install,backup,restore CCCI_SKIP_GENERIC=1` → install/backup/restore=pass, **0** generic files
ran, deploy-count=1, clean teardown (log `/root/ccci-1e-f1e1.log`). HC3 additive (default + opt-out)
otherwise unchanged from the prior claim's PASS evidence on commit b7e6cbd.
**Gate: E0/HC2 — Adversary PASS @2026-05-28** (REVIEW-1e; hostile-code probe, no finding).
Prior CLAIM detail: Repo-local (PR-authored)