feat(cfold): canonicalize custom test layout
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:
@ -1,25 +1,54 @@
|
||||
# STATUS — phase `cfold` (collapse custom-test folders)
|
||||
# STATUS — phase cfold (custom-folder collapse)
|
||||
|
||||
SSOT: `/srv/cc-ci/cc-ci-plan/plan-phase-cfold-custom-folder.md`
|
||||
**Phase:** cfold — collapse `functional/`+`playwright/` into `custom/`
|
||||
**Builder:** autonomic-bot
|
||||
**Updated:** 2026-06-11
|
||||
|
||||
## Current state
|
||||
---
|
||||
|
||||
- Phase bootstrapped on `main` after reading the phase plan and `plan.md` §§1, 6.1, 7, 9.
|
||||
- Access/bootstrap checks passed from this clone:
|
||||
- `ssh cc-ci 'hostname && whoami && nixos-version'` -> `nixos`, `root`, `24.11.20250630.50ab793 (Vicuna)`
|
||||
- `curl -s "https://$GITEA_URL/api/v1/version"` -> `{"version":"1.24.2"}`
|
||||
- `getent hosts "probe-$RANDOM.ci.commoninternet.net"` -> wildcard DNS resolves (`91.98.47.73` in the bootstrap probe)
|
||||
- Adversary notes at `REVIEW-cfold.md` 2026-06-12T00:00Z and 2026-06-12T16:00Z processed: both were procedural only (`STATUS-cfold.md` missing on `origin/main`); this file now exists and will land with the inbox-consumption commit.
|
||||
- Current work item: M1 implementation start
|
||||
- decide and record deprecated-folder behavior (`custom/` canonical, no silent coverage loss)
|
||||
- update discovery/manifest/unit tests/docs for `custom/`
|
||||
- migrate cc-ci custom tests and helper modules from `functional/` + `playwright/` into `custom/`
|
||||
- produce coverage-diff proof for the Adversary before any M1 claim
|
||||
## M1 — IN PROGRESS
|
||||
|
||||
## Gate
|
||||
Completed in this checkpoint:
|
||||
- discovery.py: `custom/` canonical + deprecated aliases with warnings
|
||||
- `git mv` all 64 custom tests (60 functional + 4 playwright) across 20 recipes
|
||||
- helper modules moved alongside their tests into `custom/`
|
||||
- sys.path refs updated in mailu lifecycle overlays
|
||||
- docs updated (`README.md`, `recipe-customization.md`, `testing.md`, `enroll-recipe.md`)
|
||||
- unit tests updated (`test_discovery.py`, `test_discovery_phase2.py`, `test_manifest.py`)
|
||||
- manifest.py now reports canonical `custom` counts
|
||||
|
||||
No gate claimed yet.
|
||||
Verification so far:
|
||||
- `nix shell nixpkgs#python312Packages.pytest --command pytest tests/unit/test_discovery.py tests/unit/test_discovery_phase2.py tests/unit/test_manifest.py -q`
|
||||
- Expected/current: `18 passed`
|
||||
|
||||
## Blocked
|
||||
Remaining before an M1 claim:
|
||||
- assemble a cold-verifiable before/after coverage proof (same discovered custom-test set, paths renamed only)
|
||||
- write WHAT/HOW/EXPECTED/WHERE into this file for the Adversary
|
||||
|
||||
(nothing)
|
||||
---
|
||||
|
||||
## Baseline (pre-cfold) — custom test count per recipe
|
||||
|
||||
| Recipe | Count |
|
||||
|--------|-------|
|
||||
| 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 |
|
||||
| **TOTAL** | **64** |
|
||||
|
||||
Reference in New Issue
Block a user