status(1d): DG6 GREEN (build #153 hedgedoc e2e); G4 CLAIMED — requesting Adversary cold-verify DG1-DG8
All checks were successful
continuous-integration/drone Build is passing
All checks were successful
continuous-integration/drone Build is passing
build #153: !testme on unconfigured hedgedoc PR#1 -> bridge <60s -> all tiers generic -> per-op install/upgrade/backup/restore=pass custom=skip, deploy-count=1, clean teardown, PR comment reflected. DG7 (afd75a4) + DG8 (b756e72) done. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@ -34,9 +34,10 @@
|
||||
- [x] DG3 N/A-skip run-demo: custom-html-tiny non-backup-capable -> backup/restore = skip (Run B).
|
||||
|
||||
### G4 — !testme e2e + per-op reporting + docs + cold verify (DG6, DG7, DG8)
|
||||
- [ ] !testme on an unconfigured recipe → full generic suite via real pipeline; per-op pass/fail/skip.
|
||||
IN FLIGHT: hedgedoc enrolled + deployed; `!testme` PR#1 → bridge triggered Drone build #153
|
||||
(hedgedoc@441c411c) <60s; watching to completion.
|
||||
- [x] !testme on an unconfigured recipe → full generic suite via real pipeline; per-op pass/fail/skip.
|
||||
DONE (CLAIMED): build #153 — hedgedoc PR#1 (no overlays) → bridge <60s → all 4 tiers ran
|
||||
tests/_generic → install/upgrade/backup/restore=pass, custom=skip, deploy-count=1, clean
|
||||
teardown, PR comment ✅ passed. Awaiting Adversary cold-verify.
|
||||
- [x] Migrate remaining recipe tests to the new contract so nothing regresses (DG7) — afd75a4
|
||||
(keycloak/cryptpad/matrix-synapse/n8n/lasuite-docs → assertion-only deploy-once contract).
|
||||
- [x] docs/: generic suite, overlay convention (names/locations/precedence), install-steps hook,
|
||||
|
||||
@ -230,3 +230,27 @@ Posted `!testme` (comment 13750, autonomic-bot — org member ⇒ authorized) on
|
||||
13750) by autonomic-bot` — trigger latency <60s (DG1 path re-exercised). Build #153 running the full
|
||||
generic suite on the unconfigured recipe; watching to completion for per-op pass/fail/skip + the
|
||||
PR-comment outcome reflection.
|
||||
|
||||
**DG6 GREEN — build #153 success (full e2e on the unconfigured recipe).** Evidence:
|
||||
- **Pipeline params** (Drone API): `RECIPE=hedgedoc REF=441c411c88… PR=1 SRC=recipe-maintainers/hedgedoc`
|
||||
— REF is the PR head, so the run tested the code at the PR's head commit (D1/DG6 path).
|
||||
- **All four tiers resolved to the GENERIC suite** (hedgedoc has no cc-ci/repo-local overlays):
|
||||
`TIER install (generic: tests/_generic/test_install.py)` … upgrade/backup/restore likewise — proving
|
||||
the "no overlay ⇒ generic runs" invariant through the REAL pipeline, not just locally.
|
||||
- **Per-op report** (RUN SUMMARY, in the Drone step log):
|
||||
```
|
||||
deploy-count = 1 (expect 1)
|
||||
install : pass upgrade : pass backup : pass restore : pass custom : skip
|
||||
```
|
||||
install 0.59s / upgrade 1.76s (assertion only; the abra-upgrade OP + image pull run in the
|
||||
orchestrator before it) / backup 8.12s / restore 50.59s — real work, not vacuous.
|
||||
- **Deploy-once:** deploy-count = 1 across install→upgrade→backup→restore (DG4.1 re-confirmed e2e).
|
||||
- **Teardown (DG7 'every run undeploys'):** post-run on cc-ci — `docker service ls | grep hedgedoc` →
|
||||
none; `docker volume ls | grep hedgedoc` → none; `docker secret ls | grep hedgedoc` → none; no
|
||||
`~/.abra` hedgedoc app dir. Clean, nothing leaked.
|
||||
- **Outcome reflected to the PR** (bridge): comment on hedgedoc PR #1 —
|
||||
`cc-ci: run for hedgedoc @ 441c411c ✅ passed → https://drone.ci.commoninternet.net/recipe-maintainers/cc-ci/153`.
|
||||
|
||||
So DG6 holds: `!testme` on an unconfigured recipe → bridge → Drone → deploy → generic assert →
|
||||
undeploy → per-op report + PR outcome. DG7 (no-regression migration + DRY + teardown-always) and DG8
|
||||
(docs) committed. **Claiming G4** (DG6+DG7+DG8) — requesting Adversary cold-verify of DG1–DG8 → DONE.
|
||||
|
||||
@ -27,10 +27,16 @@ per-recipe overlay authoring is Phase 2.
|
||||
new/deploy/undeploy (assert via deploy-count). **Adversary PASS @2026-05-28** (deploy-count=1).
|
||||
- [x] **DG5** — Custom install-steps hook + graceful-generic rule; fail-without / pass-with proof.
|
||||
**Adversary PASS @2026-05-28** (custom-html-tiny: fail-without / pass-with the install_steps.sh hook).
|
||||
- [ ] **DG6** — `!testme` e2e on an unconfigured recipe through the real pipeline; per-op reporting.
|
||||
- [ ] **DG7** — Real, DRY, clean: no softened/skip/xfail assertions; generic in the shared harness;
|
||||
teardown always; respects MAX_TESTS.
|
||||
- [ ] **DG8** — Documented (docs/ explains the generic suite, overlay convention, hook) + cold-verify.
|
||||
- [x] **DG6** — `!testme` e2e on an unconfigured recipe through the real pipeline; per-op reporting.
|
||||
**CLAIMED @2026-05-28** — build #153: `!testme` on hedgedoc PR#1 (no overlays) → bridge triggered
|
||||
(<60s, REF=PR head) → Drone → all 4 tiers ran tests/_generic → per-op install/upgrade/backup/
|
||||
restore=pass, custom=skip, deploy-count=1 → clean teardown (no service/volume/secret/app leaked)
|
||||
→ PR comment `✅ passed → …/153`. Awaiting Adversary cold-verify.
|
||||
- [x] **DG7** — Real, DRY, clean: no softened/skip/xfail assertions; generic in the shared harness;
|
||||
teardown always; respects MAX_TESTS. **CLAIMED** — afd75a4 migrated the remaining overlays to
|
||||
the assertion-only deploy-once contract; build #153 left zero residual. Awaiting Adversary.
|
||||
- [x] **DG8** — Documented (docs/ explains the generic suite, overlay convention, hook) + cold-verify.
|
||||
**CLAIMED** — b756e72 (docs/testing.md + enroll-recipe.md + README). Awaiting Adversary cold-verify.
|
||||
|
||||
## Milestones (plan §3)
|
||||
- **G0** — Generic install + deploy-once orchestrator; green on custom-html-tiny. *Accept: DG1.*
|
||||
@ -66,7 +72,15 @@ F1d-1 + F1d-2 both CLOSED by Adversary @2026-05-28.
|
||||
composition, data-continuity, deploy-count=1, precedence unit tests 5/5). No VETO.
|
||||
|
||||
**G3 (DG5 + DG3 N/A-skip) — Adversary PASS @2026-05-28.** No VETO. DG1–DG5 all Adversary-verified;
|
||||
F1d-1 + F1d-2 closed. Only G4 (DG6 e2e + DG7 no-regression/DRY + DG8 docs + cold-verify) remains.
|
||||
F1d-1 + F1d-2 closed.
|
||||
|
||||
**G4 (DG6 + DG7 + DG8) — CLAIMED @2026-05-28, awaiting Adversary cold-verify.** Evidence: build #153
|
||||
(`!testme` on hedgedoc PR#1, the unconfigured recipe) — bridge trigger <60s, REF=PR head, all 4 tiers
|
||||
ran tests/_generic (no-overlay⇒generic invariant), per-op install/upgrade/backup/restore=pass +
|
||||
custom=skip, deploy-count=1, clean teardown (zero residual on swarm/abra), PR comment `✅ passed
|
||||
→ …/153`. DG7 migration afd75a4; DG8 docs b756e72 (docs/testing.md). **Requesting the Adversary
|
||||
re-run the DG1–DG8 acceptance checks cold (plan §1 / §6.1); on PASS for all, I flip to ## DONE.**
|
||||
No VETO standing.
|
||||
|
||||
Design (DECISIONS.md Phase 1d): tier model with the lifecycle OP owned by the shared harness (test
|
||||
files = assertions only); override precedence repo-local > cc-ci > generic + extend-by-composition;
|
||||
|
||||
Reference in New Issue
Block a user