diff --git a/machine-docs/JOURNAL-5.md b/machine-docs/JOURNAL-5.md index e8529e9..b8e061f 100644 --- a/machine-docs/JOURNAL-5.md +++ b/machine-docs/JOURNAL-5.md @@ -53,3 +53,19 @@ A5-1: custom-html-tiny not in bridge poll list. - Verified: `docker service logs ccci-bridge_app --since 30s` shows custom-html-tiny in poll list. Next: re-post !testme on custom-html-tiny PR #2 with the fixed bridge; poll for VERDICT=GREEN. + +## 2026-05-31 β€” V3 COMPLETE; V1/V2 partial; testme-on-pr.sh fix + +testme-on-pr.sh fix committed (orchestrator repo 6910b19): now reads cc-ci/testme context URL. + +Build #29 evidence: +- Params: RECIPE=custom-html-tiny REF=156a49acc... PR=2 stages=install,upgrade,backup,restore,custom +- Results: install PASS, upgrade PASS (1.0.0+2.38.0β†’1.1.0+2.42.0), backup/restore/custom N/A +- Bridge commit status posted: cc-ci/testme state=success url=.../cc-ci/29 @2026-05-31T13:56:19 +- PR comment updated with 🌻 success banner + +V2 GREEN verified: POST=0 β†’ VERDICT=GREEN BUILD=https://drone.ci.commoninternet.net/recipe-maintainers/cc-ci/29 + +V7 verified: mirror main = upstream main (435df8fc); PR#1 (serve-hidden-files) closed as superseded. + +Next: V4 (regression loop) β€” create bad-tag branch on custom-html-tiny, get RED, fix, get GREEN. diff --git a/machine-docs/STATUS-5.md b/machine-docs/STATUS-5.md index 0558d1c..dbbcaf5 100644 --- a/machine-docs/STATUS-5.md +++ b/machine-docs/STATUS-5.md @@ -6,60 +6,65 @@ ## Current focus -Waiting for !testme Drone build on custom-html-tiny PR #2 (V3/V1/V2 evidence). +V4 next (regression loop); then V2 (known-RED), V5, V6, V8, V8a. -## Fixes applied (A5-1, A5-2) +## Fixes applied (A5-1, A5-2, related) -**A5-2 FIX (commit status posting):** Commit `5d48436` added `post_commit_status()` to -`bridge/bridge.py`. Bridge now POSTs Gitea commit status on the recipe PR's head SHA: -- `state=pending` when a Drone build is triggered (from `process_testme()`) -- `state=success` or `state=failure` when build finishes (from `watch_and_reflect()`) +**A5-2 FIX:** `bridge/bridge.py` commit `5d48436`: `post_commit_status()` added. Bridge POSTs +Gitea commit status on recipe PR's head SHA (pendingβ†’trigger, success/failureβ†’finish). -Using `POST /repos/{owner}/{repo}/statuses/{sha}` with context `cc-ci/testme`. -`testme-on-pr.sh` reads `GET .../commits/{sha}/status` β†’ state field β†’ VERDICT=GREEN/RED/PENDING. +**A5-1 FIX:** `nix/modules/bridge.nix` commit `5d48436`: `recipe-maintainers/custom-html-tiny` +added to POLL_REPOS. Bridge rebuilt: `cc-ci-bridge:3761c4221042` (via `nixos-rebuild build +--flake path:/root/builder-clone#cc-ci` on cc-ci + `cc-ci-reconcile-bridge`). -**A5-1 FIX (custom-html-tiny in poll list):** Commit `5d48436` added -`recipe-maintainers/custom-html-tiny` to `POLL_REPOS` in `nix/modules/bridge.nix`. -Bridge rebuilt and redeployed via `cc-ci-reconcile-bridge` β†’ new image `cc-ci-bridge:3761c4221042`. -Verified: new bridge logs show `custom-html-tiny` in poll list. +**open-recipe-pr.sh FIX (orchestrator repo):** `0df57c6` β€” replaced python3 with jq (cc-ci +has jq, not python3). -**Bridge redeploy procedure:** -``` -# On cc-ci-orchestrator: -git push # push bridge.py + bridge.nix changes to cc-ci repo -# On cc-ci: -git -C /root/builder-clone pull -nixos-rebuild build --flake path:/root/builder-clone#cc-ci -/nix/store/asn4lkaz25zmg66ig6kavbnb9cgr0jmq-cc-ci-reconcile-bridge/bin/cc-ci-reconcile-bridge -``` +**testme-on-pr.sh FIX (orchestrator repo):** `6910b19` β€” reads cc-ci/testme context URL +instead of first-status URL (fixes wrong BUILD URL when multiple statuses exist). -## V3 β€” /recipe-upgrade custom-html-tiny in progress +## V3 β€” COMPLETE: /recipe-upgrade custom-html-tiny END-TO-END GREEN -Upgrade PR: `https://git.autonomic.zone/recipe-maintainers/custom-html-tiny/pulls/2` -- Branch: `upgrade-1.1.0+2.42.0` -- Head SHA: `156a49ac` (compose.yml: sws 2.38.0β†’2.42.0; compose.git-pull.yml: git v2.36.3β†’v2.52.0; version 1.0.1β†’1.1.0) -- Previous PR #1 (`serve-hidden-files`): CLOSED as superseded βœ“ (V7 reconciliation evidence) -- !testme: posted (PRE-FIX β€” bridge didn't see it; will re-trigger after fix) -- Status: polling in progress (POST=0 after fresh !testme) +**Upgrade PR:** `https://git.autonomic.zone/recipe-maintainers/custom-html-tiny/pulls/2` +- Branch: `upgrade-1.1.0+2.42.0`, head sha `156a49ac` +- Changes: compose.yml sws 2.38.0β†’2.42.0; compose.git-pull.yml alpine/git v2.36.3β†’v2.52.0; version 1.0.1+2.38.0β†’1.1.0+2.42.0 +- !testme posted β†’ Drone build #29 triggered β†’ SUCCESS (install PASS, upgrade PASS, backup N/A) +- Commit status: `cc-ci/testme state=success target=https://drone.ci.commoninternet.net/recipe-maintainers/cc-ci/29` +- `testme-on-pr.sh custom-html-tiny 2 POST=0` β†’ `VERDICT=GREEN BUILD=https://drone.ci.commoninternet.net/recipe-maintainers/cc-ci/29` +- PR comment updated by bridge with 🌻 result + +**V7 partial:** PR #1 (serve-hidden-files) auto-closed as superseded when PR #2 opened. Mirror +main force-synced to upstream (435df8fc). Full V7 evidence complete via this run. + +**V1/V2 partial evidence:** +- V1: !testme on PR #2 triggered build #29 within 30s (bridge poll) βœ“; result posted to PR βœ“ +- V2 GREEN: POST=1 posted one !testme; POST=0 polled and returned VERDICT=GREEN BUILD= βœ“ +- V2 RED: still needed (V4 will provide this) + +## V4 β€” TODO (regression loop) + +Plan: create a regression branch on custom-html-tiny mirror with a bad image tag β†’ open PR β†’ +POST=1 !testme β†’ VERDICT=RED β†’ push fix β†’ POST=1 !testme β†’ VERDICT=GREEN. +This is within the 3-run budget and provides V2 RED evidence. ## Verification item status | Item | Status | Evidence | |---|---|---| -| V1 β€” !testme trigger + result-back | IN PROGRESS | fresh !testme on custom-html-tiny PR#2 pending | -| V2 β€” testme-on-pr.sh reads verdict | IN PROGRESS | bridge now posts commit status; test pending | -| V3 β€” /recipe-upgrade sandbox GREEN | IN PROGRESS | PR#2 open; awaiting !testme GREEN | +| V1 β€” !testme trigger + result-back | PARTIAL | build #29 triggered in <30s; commit status + PR comment posted βœ“ | +| V2 β€” testme-on-pr.sh reads verdict | PARTIAL | GREEN βœ“ (build #29); RED pending (V4) | +| V3 β€” /recipe-upgrade sandbox GREEN | DONE | custom-html-tiny PR#2; build #29 SUCCESS | | V4 β€” 3-iter regression loop | TODO | | | V5 β€” stale-test DEFAULT = comment | TODO | | | V6 β€” --with-tests opens+verifies cc-ci test PR | TODO | | -| V7 β€” mirror reconciliation | PARTIAL | PR#1 closed as superseded βœ“; more evidence via V3 | +| V7 β€” mirror reconciliation | DONE | PR#1 closed as superseded; main=upstream βœ“ | | V8 β€” /upgrade-all DEFAULT run | TODO | | | V8a β€” cc-ci-upgrader agent | TODO | | | V9 β€” cleanup | TODO | | ## Phase 5 gates -(None claimed yet β€” working V3.) +(None claimed yet β€” V4 next.) ## Blocked