Skip to content

Rename the ten phase/faz-named test modules to feature names and add a guard against test_(phase|faz)N file names #911

Open

Description

@cemililik

Deferred work · F-PR29-A4-04 · severity Low · cost ~2 h · recorded in docs/roadmap/risks-and-decisions.md:82

Summary

testing.md asks for one test_<module>.py per forgelm/<module>.py where practical, but ten test modules are named after review phases — test_phase7.py, test_phase12_5.py, test_phase12_review_fixes.py, test_data_audit_phase12.py, test_ingestion_phase12.py, test_cli_phase10.py, test_wizard_phase11.py, test_wizard_phase11_5.py, test_faz27_narrow_exceptions.py and, added after the deferral, test_wizard_phase22.py. With no guard the pattern keeps spreading.

Condition or budget

None recorded (the row still names v0.6.x).

State today (re-checked 2026-10-09)

All ten files are under tests/; tools/check_test_naming.py does not exist.

Acceptance criteria

  • Each module is renamed with git mv (history preserved) or folded into the matching test_<module>.py, and every live reference (code comments, standards, both review-pr skill mirrors, ci.yml) moves with it.
  • tools/check_test_naming.py rejects test_(phase|faz)\d+ names and is wired into CI and the gauntlet.
  • The row is removed from the deferral table and the CHANGELOG names its ID (the table's removal contract).

Recorded in docs/roadmap/risks-and-decisions.md (read at f94595f) and re-checked against the code on 2026-10-09. The row leaves that table only when the fix is on main, the CHANGELOG names its ID and any promised guard exists.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: dev-toolingCode area: dev-toolingseverity: lowMinor defect, inaccuracy or rough edgesource: roadmapPlanned or deferred work recorded in docs/roadmap/wave: 4Roadmap wave 4: low / info / watch, when touching the module

    Type

    No type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions