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

4.6 KiB

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.