status(cfold): record M2 sweep snapshot
Some checks failed
continuous-integration/drone/push Build is failing
Some checks failed
continuous-integration/drone/push Build is failing
This commit is contained in:
@ -12,7 +12,7 @@
|
|||||||
- [x] Produce M1 coverage-diff proof: discovered custom-test set identical before/after
|
- [x] Produce M1 coverage-diff proof: discovered custom-test set identical before/after
|
||||||
- [x] Claim M1 with WHAT/HOW/EXPECTED/WHERE in `STATUS-cfold.md`
|
- [x] Claim M1 with WHAT/HOW/EXPECTED/WHERE in `STATUS-cfold.md`
|
||||||
- [x] Await Adversary M1 verdict
|
- [x] Await Adversary M1 verdict
|
||||||
- [ ] Build the pre-sweep recipe baseline matrix for M2
|
- [x] Build the pre-sweep recipe baseline matrix for M2
|
||||||
- [ ] Run the full real-CI `!testme` sweep and capture recipe-by-recipe evidence
|
- [ ] Run the full real-CI `!testme` sweep and capture recipe-by-recipe evidence
|
||||||
- [ ] Claim M2 only after the sweep is green and zero leaks are confirmed
|
- [ ] Claim M2 only after the sweep is green and zero leaks are confirmed
|
||||||
|
|
||||||
|
|||||||
@ -108,3 +108,78 @@ Pulled `review(cfold): M1 PASS cold verification` (`4b4d665`). Confirmed in `REV
|
|||||||
- normalized `(recipe, filename)` before/after set = exact match (`missing []`, `extra []`)
|
- normalized `(recipe, filename)` before/after set = exact match (`missing []`, `extra []`)
|
||||||
|
|
||||||
No fix-forward required. Phase advances to M2 baseline assembly.
|
No fix-forward required. Phase advances to M2 baseline assembly.
|
||||||
|
|
||||||
|
## 2026-06-12 — M2 sweep snapshot: 19 fresh greens, Ghost upgrade regression remains
|
||||||
|
|
||||||
|
Bootstrap/access re-checks before the live sweep:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ ssh cc-ci "hostname && whoami && nixos-version"
|
||||||
|
nixos
|
||||||
|
root
|
||||||
|
24.11.20250630.50ab793 (Vicuna)
|
||||||
|
|
||||||
|
$ set -a; . /srv/cc-ci/.testenv; set +a; curl -fsS "https://$GITEA_URL/api/v1/version"
|
||||||
|
{"version":"1.24.2"}
|
||||||
|
|
||||||
|
$ getent hosts "probe-$RANDOM.ci.commoninternet.net"
|
||||||
|
91.98.47.73 probe-4360.ci.commoninternet.net
|
||||||
|
```
|
||||||
|
|
||||||
|
Open-PR inventory before triggering uncovered recipes showed 16 enrolled repos already had live PRs;
|
||||||
|
`custom-html`, `keycloak`, `cryptpad`, and `mumble` did not. I reopened reusable closed PRs for the
|
||||||
|
first three (`custom-html#2`, `keycloak#3`, `cryptpad#5`) and created a minimal sweep-only `mumble#1`
|
||||||
|
probe PR via the Gitea API.
|
||||||
|
|
||||||
|
Fresh post-cfold success set gathered from the live server (`/var/lib/cc-ci-runs/<build>/results.json`):
|
||||||
|
|
||||||
|
```text
|
||||||
|
506 drone L5
|
||||||
|
510 custom-html-tiny L5
|
||||||
|
521 discourse L5
|
||||||
|
522 immich L5
|
||||||
|
523 lasuite-docs L5
|
||||||
|
524 lasuite-drive L5
|
||||||
|
525 lasuite-meet L5
|
||||||
|
526 mailu L5
|
||||||
|
527 matrix-synapse L5
|
||||||
|
528 n8n L5
|
||||||
|
529 mattermost-lts L5
|
||||||
|
530 plausible L5
|
||||||
|
531 uptime-kuma L5
|
||||||
|
541 custom-html L5
|
||||||
|
553 keycloak L5
|
||||||
|
554 cryptpad L5
|
||||||
|
555 hedgedoc L5
|
||||||
|
556 bluesky-pds L5
|
||||||
|
558 mumble L5
|
||||||
|
```
|
||||||
|
|
||||||
|
Ghost is the lone non-green outlier:
|
||||||
|
|
||||||
|
```text
|
||||||
|
557 ghost PR#4 @ d88f5801 -> L1 (install pass, upgrade fail, backup/restore/custom pass)
|
||||||
|
559 ghost PR#5 @ d42d0f7c -> L1 (same failure shape on last known-green Ghost head)
|
||||||
|
185 ghost PR#4 @ d42d0f7c -> L4 / pre-lint-era green baseline on 2026-06-05
|
||||||
|
```
|
||||||
|
|
||||||
|
The critical Ghost comparison is the same ref `d42d0f7c`:
|
||||||
|
|
||||||
|
- historical build `185` (2026-06-05): upgrade passed at `d42d0f7c`
|
||||||
|
- fresh probe build `559` (2026-06-12): same `d42d0f7c` now fails upgrade with swarm `UpdateStatus='paused'`
|
||||||
|
|
||||||
|
That isolates the regression away from cfold itself. In both fresh Ghost failures (`557`, `559`), the
|
||||||
|
custom tier still discovered and passed all four `tests/ghost/custom/test_*.py` files, while the
|
||||||
|
upgrade op failed before upgrade assertions could run:
|
||||||
|
|
||||||
|
```text
|
||||||
|
!! upgrade op failed: <ghost-domain>: upgrade redeploy did NOT converge to the head spec — swarm UpdateStatus='paused'.
|
||||||
|
The recipe's app service uses update_config failure_action=rollback/pause; the NEW (head) task failed swarm's update monitor,
|
||||||
|
so the service reverted/paused and the RUNNING spec is the previous version, not the code under test.
|
||||||
|
```
|
||||||
|
|
||||||
|
Adversary update pulled during this pass:
|
||||||
|
|
||||||
|
- `review(cfold)` commit `93f56ae` added only an idle audit entry to `REVIEW-cfold.md`
|
||||||
|
- no finding filed
|
||||||
|
- no M2 PASS yet because no `claim(cfold): M2 ...` commit exists
|
||||||
|
|||||||
@ -56,8 +56,50 @@ Adversary verdict:
|
|||||||
## M2 — IN PROGRESS
|
## M2 — IN PROGRESS
|
||||||
|
|
||||||
Current work item:
|
Current work item:
|
||||||
- build the pre-sweep baseline matrix (recipe -> expected level + custom-test set)
|
- full real-CI `!testme` sweep evidence is mostly assembled; one recipe (`ghost`) remains non-green for
|
||||||
- then run the full real-CI `!testme` sweep and capture recipe-by-recipe evidence
|
a cfold-neutral upgrade regression on the recipe/environment side
|
||||||
|
|
||||||
|
### M2 baseline matrix (built from live PR heads + fresh post-cfold evidence)
|
||||||
|
|
||||||
|
| Recipe | PR / ref | Expected level | Custom tests | Fresh evidence |
|
||||||
|
|---|---|---:|---:|---|
|
||||||
|
| bluesky-pds | PR #2 `f7b6c8df` | 5 | 4 | build `556` -> L5 |
|
||||||
|
| cryptpad | PR #5 `9c18c176` | 5 | 4 | build `554` -> L5 |
|
||||||
|
| custom-html | PR #2 `db9a9502` | 5 | 4 | build `541` -> L5 |
|
||||||
|
| custom-html-tiny | PR #7 `526502ba` | 5 | 1 | build `510` -> L5 |
|
||||||
|
| discourse | PR #2 `b7d8a244` | 5 | 3 | build `521` -> L5 |
|
||||||
|
| drone | PR #1 `049438e1` | 5 | 1 | build `506` -> L5 |
|
||||||
|
| ghost | PR #4 `d88f5801` | 5 | 4 | build `557` -> L1 (upgrade fail) |
|
||||||
|
| hedgedoc | PR #1 `441c411c` | 5 | 2 | build `555` -> L5 |
|
||||||
|
| immich | PR #2 `17f1649c` | 5 | 3 | build `522` -> L5 |
|
||||||
|
| keycloak | PR #3 `bfe0d16f` | 5 | 3 | build `553` -> L5 |
|
||||||
|
| lasuite-docs | PR #5 `8a06cfc2` | 5 | 5 | build `523` -> L5 |
|
||||||
|
| lasuite-drive | PR #2 `6771622b` | 5 | 3 | build `524` -> L5 |
|
||||||
|
| lasuite-meet | PR #6 `05cdafb5` | 5 | 3 | build `525` -> L5 |
|
||||||
|
| mailu | PR #4 `682ccaaa` | 5 | 3 | build `526` -> L5 |
|
||||||
|
| matrix-synapse | PR #2 `72f0176a` | 5 | 3 | build `527` -> L5 |
|
||||||
|
| mattermost-lts | PR #2 `966c6d61` | 5 | 3 | build `529` -> L5 |
|
||||||
|
| mumble | PR #1 `2b50b2f7` | 5 | 5 | build `558` -> L5 |
|
||||||
|
| n8n | PR #5 `989c44b3` | 5 | 4 | build `528` -> L5 |
|
||||||
|
| plausible | PR #3 `709a294d` | 5 | 2 | build `530` -> L5 |
|
||||||
|
| uptime-kuma | PR #3 `b0ce7942` | 5 | 4 | build `531` -> L5 |
|
||||||
|
|
||||||
|
### Ghost deviation (blocking a formal M2 claim)
|
||||||
|
|
||||||
|
`ghost` is the only recipe still preventing an M2 claim.
|
||||||
|
|
||||||
|
- Current upgrade PR head `d88f5801` (PR #4) failed again in build `557`: install/backup/restore/custom all
|
||||||
|
passed, but the upgrade op paused and rolled back before any upgrade-tier assertions could run.
|
||||||
|
- To isolate cfold from recipe-head drift, a separate probe PR #5 was opened at Ghost's last known-green
|
||||||
|
PR head `d42d0f7c` (historical build `185` = L4/L5-equivalent on 2026-06-05). That probe re-failed in
|
||||||
|
build `559` with the same upgrade pause: install/backup/restore/custom all passed, upgrade failed.
|
||||||
|
- Conclusion so far: Ghost's current failure is not caused by the `custom/` folder migration; the custom
|
||||||
|
tier still discovers and passes all 4 canonical custom tests, and the regression reproduces on the
|
||||||
|
previously-green Ghost head as an upgrade convergence failure.
|
||||||
|
|
||||||
|
### Fresh Adversary state
|
||||||
|
|
||||||
|
- `REVIEW-cfold.md` 2026-06-12T22:05:50Z: idle audit only, no new finding, no M2 claim pending.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user