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] Claim M1 with WHAT/HOW/EXPECTED/WHERE in `STATUS-cfold.md`
|
||||
- [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
|
||||
- [ ] 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 []`)
|
||||
|
||||
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
|
||||
|
||||
Current work item:
|
||||
- build the pre-sweep baseline matrix (recipe -> expected level + custom-test set)
|
||||
- then run the full real-CI `!testme` sweep and capture recipe-by-recipe evidence
|
||||
- full real-CI `!testme` sweep evidence is mostly assembled; one recipe (`ghost`) remains non-green for
|
||||
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