Files
cc-ci/machine-docs/REVIEW-cfold.md
autonomic-bot 4b4d665ede
Some checks failed
continuous-integration/drone/push Build is failing
review(cfold): M1 PASS cold verification
2026-06-12 16:12:54 +00:00

78 lines
4.6 KiB
Markdown

# REVIEW — Adversary — phase cfold
Adversary-only. Append-only. All verdicts here are cold-verified from a fresh shell + own clone.
SSOT for what is being verified: /srv/cc-ci/cc-ci-plan/plan-phase-cfold-custom-folder.md
---
## 2026-06-11T22:54Z — Adversary initialized; awaiting Builder M1 claim
Baseline recorded in BACKLOG-cfold.md (pre-migration inventory).
No claims pending. Will verify M1 and M2 on Builder claim.
Key break-it probes planned:
1. Grep codebase for any remaining `functional/` or `playwright/` folder-name string literals after M1.
2. Run discovery cold to confirm no test was dropped (count must equal 64 custom test files).
3. Verify deprecated-alias warning fires when a test is in old folder (per plan §2.1 recommendation).
4. Confirm `from playwright.sync_api` references NOT touched (they reference the package, not a folder).
5. Verify unit tests are updated (test_discovery_phase2.py, test_manifest.py) and still pass.
6. Confirm manifest.py custom_counts changes correctly (sub will be "custom" not "functional"/"playwright").
7. Confirm RUNG name "functional" (L4) is NOT renamed — only the folder name changes.
8. M2: real Drone !testme sweep across all enrolled recipes — same level, same tests, zero leaks.
---
## 2026-06-12T00:00Z — No cfold gate claim visible; phase STATUS file missing
- Cold pull in `/srv/cc-ci/cc-ci-adv`: `git pull --rebase` -> `Already up to date.`
- `machine-docs/STATUS-cfold.md` is absent in the shared repo state, so there is no canonical cfold
gate claim / WHAT+HOW+EXPECTED+WHERE payload to verify per `plan.md` §6.1 and the phase kickoff.
- No `ADVERSARY-INBOX.md` present. No formal cfold claim pending.
- Action: notified Builder via `machine-docs/BUILDER-INBOX.md` to create/populate `STATUS-cfold.md`
before claiming M1 or M2.
---
## 2026-06-12T16:00Z — Cold audit: still no cfold claim; repo remains pre-migration
- Cold rebase in `/srv/cc-ci/cc-ci-adv`: `git pull --rebase` -> `Already up to date.`
- `machine-docs/STATUS-cfold.md` is still absent on `origin/main`; no formal M1/M2 WHAT+HOW+EXPECTED+WHERE
payload exists to verify.
- `git log --all --grep='cfold' --grep='custom/' --grep='functional/' --grep='playwright/'` shows no
Builder-side cfold implementation/claim commits yet; only the Adversary bootstrap/notice commits are
present for this phase.
- Cold tree audit still matches the pre-migration shape: custom tests remain under
`tests/<recipe>/functional/` and `tests/<recipe>/playwright/`, and docs/discovery/unit-test literals
still reference those folder names.
- Verdict: no gate claim pending; nothing to PASS/FAIL yet. Waiting for Builder to publish
`STATUS-cfold.md` and a formal M1 or M2 claim.
---
## 2026-06-12T16:20Z — M1 PASS
Cold verification from `/srv/cc-ci/cc-ci-adv` against Builder inputs in `machine-docs/STATUS-cfold.md`
and implementation commit `44e0242`:
- `git ls-files "tests/*/custom/test_*.py" | wc -l` -> `64`
- `git ls-files "tests/*/functional/*" "tests/*/playwright/*"` -> no output
- Per-recipe canonical counts match the phase baseline exactly:
`bluesky-pds 4`, `cryptpad 4`, `custom-html 4`, `custom-html-tiny 1`, `discourse 3`, `drone 1`,
`ghost 4`, `hedgedoc 2`, `immich 3`, `keycloak 3`, `lasuite-docs 5`, `lasuite-drive 3`,
`lasuite-meet 3`, `mailu 3`, `matrix-synapse 3`, `mattermost-lts 3`, `mumble 5`, `n8n 4`,
`plausible 2`, `uptime-kuma 4`
- Focused unit suite: `nix shell nixpkgs#python311Packages.pytest -c pytest tests/unit/test_discovery.py tests/unit/test_discovery_phase2.py tests/unit/test_manifest.py -q`
-> `18 passed in 0.11s`
- Deprecated-alias safety probe: a synthetic recipe with legacy `functional/` + `playwright/` trees
still discovers both tests and emits one-line warnings for each deprecated folder.
- Stale-consumer audit: remaining `functional/` / `playwright/` literals are only the intentional
deprecated-alias docs/tests/discovery references. No live cc-ci test tree remains under those dirs.
- No test weakening found in the moved custom-test files reviewed at line level. The non-100% rename
similarities were docstring/path-comment updates only; assertions and test bodies remained intact.
- Coverage-preservation proof: normalized `(recipe, filename)` custom-test set before migration
(`87928a9`, old `functional/` + `playwright/`) exactly matches after migration (`44e0242`, new
`custom/`): `before 64`, `after 64`, `missing []`, `extra []`.
Verdict: **M1 PASS**. The canonical `custom/` migration preserves coverage, keeps deprecated aliases
loud rather than silent, and updates the expected docs/discovery/manifest/unit-test surfaces.