From 29774958515896081a3b1e574cf5fdcf4548e0e0 Mon Sep 17 00:00:00 2001 From: autonomic-bot <64+autonomic-bot@noreply.git.autonomic.zone> Date: Tue, 20 Oct 2026 03:16:08 +0000 Subject: [PATCH] claim(ghost): revalidate level-five upgrade run --- machine-docs/BACKLOG-ghost.md | 2 ++ machine-docs/JOURNAL-ghost.md | 21 +++++++++++++++++++++ machine-docs/STATUS-ghost.md | 30 ++++++++++++++---------------- 3 files changed, 37 insertions(+), 16 deletions(-) diff --git a/machine-docs/BACKLOG-ghost.md b/machine-docs/BACKLOG-ghost.md index 19466d6..4fbb8b4 100644 --- a/machine-docs/BACKLOG-ghost.md +++ b/machine-docs/BACKLOG-ghost.md @@ -12,6 +12,8 @@ - [x] Fresh current PR#8 post-proxy retry — comment 16237, build #50, level 5/5 - [x] Fresh PR#8 cleanup and duplicate inventory — exactly one open PR, no Ghost resources - [x] Fresh M1/M2 revalidation Adversary-verified — PASS @2026-10-13T03:14:20Z +- [x] Fresh PR#8 retry after level-4 lint uncertainty — comment 16297, build #66, level 5/5 +- [ ] Fresh M1/M2 revalidation for build #66 — awaiting Adversary ## Adversary findings diff --git a/machine-docs/JOURNAL-ghost.md b/machine-docs/JOURNAL-ghost.md index fe02a89..27004d7 100644 --- a/machine-docs/JOURNAL-ghost.md +++ b/machine-docs/JOURNAL-ghost.md @@ -147,3 +147,24 @@ level 5, `install`, `upgrade`, `backup`, `restore`, `custom`, and `lint` all pas Host probes after completion found no `ghos-*` or `dev-ghost` stacks, services, volumes, or networks. The Adversary independently recorded M1 and M2 PASS at `2026-10-13T03:14:20Z` in `REVIEW-ghost.md`. + +## 2026-10-20T03:12Z — Fresh retry resolved lint uncertainty + +The live PR remains #8 at head `dbe40ecb7b0084050a71baf4dcf971b65aac125e`. The prior current-head +run #55 passed all lifecycle stages but had an unintentional `lint` unverifiable result because Abra +panicked while sorting a catalogue version. One fresh retry was triggered with comment #16297. It +created build #66, which completed successfully at level 5/5. + +Verification commands and results: + +```sh +curl -fsS https://drone.ci.autonomic.zone/api/repos/recipe-maintainers/cc-ci/builds/66 +# status=success, RECIPE=ghost, PR=8, REF=dbe40ecb7b0084050a71baf4dcf971b65aac125e +ssh cc-ci 'jq -c "{recipe,pr,ref,level,results,lint,flags,skips}" /var/lib/cc-ci-runs/66/results.json' +# level=5; install/upgrade/backup/restore/custom/lint=pass; clean_teardown=true; no_secret_leak=true +ssh cc-ci 'docker stack ls; docker service ls; docker volume ls; docker network ls' +# no ghos-* or dev-ghost resources +``` + +The result comment #16298 links build #66 and reports passed. M1 and M2 are re-claimed in STATUS for +fresh independent verification; no recipe change was needed. diff --git a/machine-docs/STATUS-ghost.md b/machine-docs/STATUS-ghost.md index e3f9cbf..751a43d 100644 --- a/machine-docs/STATUS-ghost.md +++ b/machine-docs/STATUS-ghost.md @@ -1,25 +1,23 @@ # STATUS — phase ghost (ghost upgrade re-evaluation) -**Updated:** 2026-10-13T03:14:20Z +**Updated:** 2026-10-20T03:12:30Z **Phase:** ghost **Builder:** autonomic-bot --- -## DONE - -Both M1 and M2 have fresh Adversary PASSes dated 2026-10-13T03:14:20Z. The current canonical -Ghost upgrade PR is #8; historical PR#7 is closed. +Gate: M1 and M2 CLAIMED, awaiting Adversary. The previous M2 VETO for level-4 build #55 is +superseded by the fresh level-5 build #66 below. | Check | Result | |---|---| | Current Ghost PR | PR#8, `upgrade-ee04ca9`, head `ee04ca9eb4f1b00ab6719e6858f7876088e0ee3d` | -| Fresh post-proxy retry | Gitea comment `16237`; Drone build #50 | -| Build #50 | success, level 5/5; install, upgrade, backup, restore, custom, and lint passed | -| PR result comment | Gitea comment `16238` reports passed and links build #50 | +| Fresh post-proxy retry | Gitea comment `16297`; Drone build #66 | +| Build #66 | success, level 5/5; install, upgrade, backup, restore, custom, and lint passed | +| PR result comment | Gitea comment `16298` reports passed and links build #66 | | Post-run cleanup | no `ghos-*`/`dev-ghost` stacks, services, or volumes | -| M1 Adversary PASS | `REVIEW-ghost.md`, 2026-10-13T03:14:20Z | -| M2 Adversary PASS | `REVIEW-ghost.md`, 2026-10-13T03:14:20Z | +| M1 Adversary PASS | pending fresh verification of build #66 | +| M2 Adversary PASS | pending fresh verification of build #66 | ### Definition-of-Done checklist (ghost phase) @@ -28,11 +26,11 @@ Ghost upgrade PR is #8; historical PR#7 is closed. - [x] 2026-06-12 failures are classified separately from current recipe evidence - [x] Historical duplicate PRs are closed; no current duplicate exists - [x] No Ghost resources remain after the fresh retry -- [x] M1 and M2 have fresh Adversary PASSes +- [ ] M1 and M2 have fresh Adversary PASSes for build #66 ## M1 — State inventory and clean retry -**Result:** current canonical Ghost upgrade PR verified by build #50. +**Result:** current canonical Ghost upgrade PR verified by build #66; Adversary re-verification pending. ### Live inventory @@ -43,7 +41,7 @@ Ghost upgrade PR is #8; historical PR#7 is closed. | Historical duplicates | PR#1 through PR#7 closed | | Proxy subnet | `10.10.0.0/16` | | Ghost stacks/services/volumes before retry | none | -| Fresh retry | Gitea comment `16237` at 2026-10-13T03:11:52Z; Drone build #50 success, level 5/5 | +| Fresh retry | Gitea comment `16297` at 2026-10-20T03:09:52Z; Drone build #66 success, level 5/5 | ### Adversary verification inputs @@ -56,12 +54,12 @@ set -a; . /srv/cc-ci/cc-ci-plan/load-env.sh; set +a curl -fsS -u "$GITEA_USERNAME:$GITEA_PASSWORD" \ "https://$GITEA_URL/api/v1/repos/recipe-maintainers/ghost/pulls?state=open" \ | jq -r '.[] | [.number, .state, .head.sha, .head.ref] | @tsv' -ssh cc-ci 'docker network inspect proxy --format "{{range .IPAM.Config}}{{.Subnet}}{{end}}"; docker stack ls --format "{{.Name}}" | rg "^(ghos-|dev-ghost)" || true; jq -c "{recipe,pr,ref,level,results,flags,skips}" /var/lib/cc-ci-runs/50/results.json' +ssh cc-ci 'docker network inspect proxy --format "{{range .IPAM.Config}}{{.Subnet}}{{end}}"; docker stack ls --format "{{.Name}}" | rg "^(ghos-|dev-ghost)" || true; docker service ls --format "{{.Name}}" | rg "(^|[-_])(ghos-|dev-ghost)" || true; docker volume ls --format "{{.Name}}" | rg "(^|[-_])(ghos-|dev-ghost)" || true; jq -c "{recipe,pr,ref,level,results,lint,flags,skips}" /var/lib/cc-ci-runs/66/results.json' ``` -**EXPECTED:** one open PR (`8`, `ee04ca9eb4f1b00ab6719e6858f7876088e0ee3d`, `upgrade-ee04ca9`), proxy subnet `10.10.0.0/16`, and no Ghost stack output. Build #50 reports `success`, level `5`, all lifecycle results `pass`, `clean_teardown=true`, and `no_secret_leak=true`. +**EXPECTED:** one open PR (`8`, `dbe40ecb7b0084050a71baf4dcf971b65aac125e`, `upgrade-ee04ca9`), proxy subnet `10.10.0.0/16`, and no Ghost resource output. Build #66 reports `success`, level `5`, all lifecycle results and lint `pass`, `clean_teardown=true`, `no_secret_leak=true`, and no skipped stages. -**WHERE:** Gitea issue comments `16237` and `16238`; Drone URL `https://drone.ci.autonomic.zone/recipe-maintainers/cc-ci/50`; host artifact `/var/lib/cc-ci-runs/50/results.json`; Adversary evidence in `REVIEW-ghost.md`. +**WHERE:** Gitea issue comments `16297` and `16298`; Drone URL `https://drone.ci.autonomic.zone/recipe-maintainers/cc-ci/66`; host artifact `/var/lib/cc-ci-runs/66/results.json`; Adversary evidence in `REVIEW-ghost.md`. ---