Rename the ten phase/faz-named test modules to feature names and add a guard against `test_(phase|faz)N` file names
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 55/100
Direzione di ricerca
The ten phase-named modules are under tests/ (for example tests/test_phase7.py and tests/test_faz27_narrow_exceptions.py); grep for each name to find its code comments, standards, review-pr skill mirrors and ci.yml references. tools/check_test_naming.py is new and must reject names matching test_(phase|faz)\d+, then be wired into CI and the gauntlet. Done when the renames use git mv, no live reference uses the old names, the guard passes in CI, and the row is removed from docs/roadmap/risks-and-decisions.md with the ID named in the CHANGELOG.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Deferred work ·
F-PR29-A4-04· severity Low · cost ~2 h · recorded indocs/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 matchingtest_<module>.py, and every live reference (code comments, standards, both review-pr skill mirrors,ci.yml) moves with it. -
tools/check_test_naming.pyrejectstest_(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.
- Lingua principale
- Python
- Stelle
- 9
- Fork
- 1
- Merge medio
- 4h 3m
- PR unite (30g)
- 3
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di HodeTech/ForgeLM
-
area: dev-tooling bug severity: low source: roadmap wave: 4
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
area: site bug good first issue severity: low source: review-2026-09 wave: 4
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
-
documentation good first issue severity: medium source: review-2026-09 wave: 3
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
documentation good first issue severity: low source: review-2026-09 wave: 4
Difficoltà 1/5 1-3 ore Idoneità per principianti 80/100
-
documentation severity: medium source: review-2026-09 wave: 3
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
Tutte le issue di HodeTech/ForgeLM
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
NousResearch/hermes-agent#136483 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
[BUG] LazyStackedTensorDictStore zeroes the last byte of a new key set on the last elementForse già presa @peterdsharpe l’ha presa oggi. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
pytorch/tensordict#2307 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
GrokModel.generate/a_generate pass an OpenAI-style list-of-dicts to xai_sdk.chat.user(), so every call crashes with a protobuf TypeError before any network I/OForse già presa @Christian-Sidak l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
confident-ai/deepeval#3436 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno