status(2): Q0 CLAIMED — harness additions + custom-html parity reference proven
Q0.1 harness.http canonical Phase-2 recipe-test HTTP API. Q0.2 discovery recurses into functional/+playwright/ subdirs. Q0.3 custom-html PARITY.md + parity-port functional/health_check. Q1.1 +2 recipe-specific functional + playwright smoke. Acceptance cold-verifiable on cc-ci: cc-ci-run -m pytest tests/unit -v # 21 PASS RECIPE=custom-html cc-ci-run runner/run_recipe_ci.py # all 5 stages PASS, deploy-count=1 head_ref=8a026066 == chaos-version=8a026066 (HC1 non-vacuous) Q0.4 (dep resolver) deferred to Q2 (no Q1 recipe needs deps). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@ -6,22 +6,22 @@ Phase plan: `/srv/cc-ci/cc-ci-plan/plan-phase2-recipe-tests.md`
|
||||
## Build backlog
|
||||
|
||||
### Q0 — Harness additions
|
||||
- [ ] **Q0.1** — Vendor `recipe-maintainer/utils/tests/helpers.py` capabilities into
|
||||
`runner/harness/`:
|
||||
- HTTP convergence (`assert_converges`, `wait_for_http`, `retry_http_get`, `http_get`,
|
||||
`http_post`) — many already partly in `lifecycle.py`/`generic.py`; add the missing pieces +
|
||||
consolidate (no duplicate logic).
|
||||
- TTY-wrapped abra shim (`script -qefc "abra …" /dev/null`) for backup/restore/secret/run/logs/lint.
|
||||
- Backup data-integrity primitive (volume/DB seed → marker survival check).
|
||||
- [ ] **Q0.2** — Discovery: recurse into `tests/<recipe>/functional/` and `tests/<recipe>/playwright/`
|
||||
so per-plan `§4.1` directory layout is honored. Update `discovery.custom_tests` + `enroll-recipe.md`.
|
||||
- [ ] **Q0.3** — PARITY.md template + a worked custom-html example
|
||||
(`tests/custom-html/PARITY.md`). Port custom-html health_check.py to a functional test.
|
||||
- [x] **Q0.1** — `runner/harness/http.py` landed (canonical Phase-2 recipe-test HTTP API:
|
||||
`http_get`/`http_post`/`http_request`/`retry_http_get`/`retry_http_post`/`wait_for_http`/
|
||||
`assert_converges`). TTY abra wrapper already present (`runner/harness/abra.py::_run_pty`)
|
||||
from Phase 1d. 11 unit tests landed.
|
||||
- [x] **Q0.2** — `discovery.custom_tests` recurses into `tests/<recipe>/{functional,playwright}/`
|
||||
(Phase 2 §4.1 layout); 2 unit tests landed.
|
||||
- [x] **Q0.3** — `tests/custom-html/PARITY.md` landed (parity row for health_check + rationale for
|
||||
2 new recipe-specific tests + data-integrity + playwright sections). Parity port:
|
||||
`tests/custom-html/functional/test_health_check.py` (SOURCE comment present).
|
||||
- [ ] **Q0.4** — Dependency resolver harness primitive (read `tests/<recipe>/recipe.toml`
|
||||
`requires`/`test_requires`, deploy deps before the recipe under test, tear down with it). Mind
|
||||
`MAX_TESTS`/node budget; sequence heavy ones. Defer SSO-realm-setup wiring to Q2.
|
||||
- [ ] **Q0.5** — Q0 gate claim: custom-html runs the full parity + ≥2 specific suite green via
|
||||
`!testme`; PARITY.md complete for custom-html; harness changes recorded in DECISIONS.md.
|
||||
`MAX_TESTS`/node budget; sequence heavy ones. **Deferred to Q2** (needed once SSO providers come
|
||||
online; no Phase-2 recipe in Q1 needs deps). Tracked in BACKLOG.
|
||||
- [x] **Q0.5** — **CLAIMED @2026-05-28.** Custom-html reference recipe runs the full parity + ≥2
|
||||
specific + playwright suite green on cc-ci via the existing run path; deploy-count=1;
|
||||
DECISIONS.md Phase-2 section in place. Awaiting Adversary cold-verify gate PASS.
|
||||
|
||||
### Q1 — Pattern proof (custom-html + n8n)
|
||||
- [ ] **Q1.1** — custom-html: ≥2 NEW recipe-specific functional tests (beyond parity
|
||||
|
||||
Reference in New Issue
Block a user