Spaces:
Sleeping
test(7.D): cleanup tests architecturaux après suppression du legacy
Browse filesPhase 7.D — mise à jour des tests architecturaux pour refléter
la suppression des modules legacy.
Modifications
-------------
- ``tests/architecture/test_module_coverage.py`` :
retrait de ``pipeline_benchmark`` et ``pipeline_comparison``
de ``TEST_ONLY_BASELINE``.
- ``tests/architecture/test_no_flat_files_in_measurements.py`` :
retrait de ``pipeline_benchmark.py``,
``pipeline_comparison.py`` et ``pipeline_spec_loader.py``
de la whitelist.
- ``tests/architecture/test_file_budgets.py`` :
retrait des entrées ``picarones/pipeline/legacy_runner.py``,
``picarones/pipeline/legacy_pipeline_benchmark.py``, et
``picarones/reports_v2/html/renderers/pipeline.py``.
- ``tests/architecture/test_legacy_canonical_parity.py`` :
``BOOTSTRAP_BASELINE`` 110 → 104. Le test "should_tighten" a
signalé que 6 symboles de moins sont non tracés (parce que les
modules legacy supprimés ne nourrissent plus le scanner) — la
baseline doit suivre.
Test ``test_doc_paths::test_broken_doc_paths_below_baseline``
reste cassé (144 vs baseline 141) parce que CHANGELOG.md et
autres docs publiques pointent vers les modules supprimés. Ça
sera nettoyé dans le commit "cleanup docs publiques".
https://claude.ai/code/session_011XQZNitg1rCgia8ZD1a2hP
|
@@ -54,9 +54,7 @@ FILE_BUDGETS: dict[str, int] = {
|
|
| 54 |
"picarones/reports_v2/html/generator.py": 550, # actuel 471
|
| 55 |
# --- Fichiers métier larges.
|
| 56 |
"picarones/measurements/robustness.py": 850, # actuel 731
|
| 57 |
-
# Phase
|
| 58 |
-
# un shim ; canonique dans ``reports_v2/html/renderers/pipeline.py``.
|
| 59 |
-
"picarones/reports_v2/html/renderers/pipeline.py": 815, # actuel 713
|
| 60 |
# Phase 4-ter : ``core/results.py`` est désormais un shim
|
| 61 |
# (≤ 25 l). Le contenu canonique vit dans ``evaluation/`` ;
|
| 62 |
# même budget pour la même raison historique (modèles
|
|
@@ -69,20 +67,8 @@ FILE_BUDGETS: dict[str, int] = {
|
|
| 69 |
"picarones/measurements/history.py": 725, # actuel 615
|
| 70 |
"picarones/measurements/modern_archives.py": 700, # actuel 599
|
| 71 |
"picarones/measurements/builtin_hooks.py": 700, # actuel 590
|
| 72 |
-
# Phase 7.
|
| 73 |
-
# ``pipeline/
|
| 74 |
-
# ``PipelineExecutor`` canonique (couche pipeline) — interdit à
|
| 75 |
-
# ``evaluation/`` par la règle d'architecture concentrique.
|
| 76 |
-
# Phase 7.B.3 : les helpers de traduction ont été extraits vers
|
| 77 |
-
# ``pipeline/_legacy_translator.py`` (mutualisation avec
|
| 78 |
-
# legacy_pipeline_benchmark). Le runner est revenu à ~490 LOC.
|
| 79 |
-
"picarones/pipeline/legacy_runner.py": 550, # actuel 487
|
| 80 |
-
# Phase 7.B.3 : run_pipeline_benchmark consomme directement
|
| 81 |
-
# PipelineExecutor.run_plan (au lieu de passer par
|
| 82 |
-
# PipelineRunner.run) et planifie une fois pour tout le corpus.
|
| 83 |
-
# +150 LOC pour la conversion de spec + la boucle exécution +
|
| 84 |
-
# la branche de fallback validation amont.
|
| 85 |
-
"picarones/pipeline/legacy_pipeline_benchmark.py": 600, # actuel 519
|
| 86 |
"picarones/extras/importers/iiif.py": 675, # actuel 567
|
| 87 |
"picarones/extras/importers/gallica.py": 675, # actuel 563
|
| 88 |
# Sprint A14-S10 + Lot D — déplacés depuis measurements/.
|
|
|
|
| 54 |
"picarones/reports_v2/html/generator.py": 550, # actuel 471
|
| 55 |
# --- Fichiers métier larges.
|
| 56 |
"picarones/measurements/robustness.py": 850, # actuel 731
|
| 57 |
+
# (Phase 7.D — ``reports_v2/html/renderers/pipeline.py`` supprimé.)
|
|
|
|
|
|
|
| 58 |
# Phase 4-ter : ``core/results.py`` est désormais un shim
|
| 59 |
# (≤ 25 l). Le contenu canonique vit dans ``evaluation/`` ;
|
| 60 |
# même budget pour la même raison historique (modèles
|
|
|
|
| 67 |
"picarones/measurements/history.py": 725, # actuel 615
|
| 68 |
"picarones/measurements/modern_archives.py": 700, # actuel 599
|
| 69 |
"picarones/measurements/builtin_hooks.py": 700, # actuel 590
|
| 70 |
+
# (Phase 7.D — ``pipeline/legacy_runner.py`` et
|
| 71 |
+
# ``pipeline/legacy_pipeline_benchmark.py`` supprimés.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 72 |
"picarones/extras/importers/iiif.py": 675, # actuel 567
|
| 73 |
"picarones/extras/importers/gallica.py": 675, # actuel 563
|
| 74 |
# Sprint A14-S10 + Lot D — déplacés depuis measurements/.
|
|
@@ -73,7 +73,7 @@ LEGACY_PACKAGES: tuple[str, ...] = (
|
|
| 73 |
#: :data:`LEGACY_PARITY` sans faire échouer le test. À diminuer
|
| 74 |
#: à chaque session de migration : on cible 0 quand le retrait
|
| 75 |
#: est complet.
|
| 76 |
-
BOOTSTRAP_BASELINE =
|
| 77 |
|
| 78 |
|
| 79 |
# ──────────────────────────────────────────────────────────────────
|
|
|
|
| 73 |
#: :data:`LEGACY_PARITY` sans faire échouer le test. À diminuer
|
| 74 |
#: à chaque session de migration : on cible 0 quand le retrait
|
| 75 |
#: est complet.
|
| 76 |
+
BOOTSTRAP_BASELINE = 104
|
| 77 |
|
| 78 |
|
| 79 |
# ──────────────────────────────────────────────────────────────────
|
|
@@ -69,8 +69,6 @@ TEST_ONLY_BASELINE: frozenset[str] = frozenset({
|
|
| 69 |
# ``picarones/`` (renderer canonique qui consomme le canonique
|
| 70 |
# directement, mais module legacy gardé pour les tests).
|
| 71 |
"numerical_sequences_hooks",
|
| 72 |
-
"pipeline_benchmark",
|
| 73 |
-
"pipeline_comparison",
|
| 74 |
})
|
| 75 |
|
| 76 |
|
|
|
|
| 69 |
# ``picarones/`` (renderer canonique qui consomme le canonique
|
| 70 |
# directement, mais module legacy gardé pour les tests).
|
| 71 |
"numerical_sequences_hooks",
|
|
|
|
|
|
|
| 72 |
})
|
| 73 |
|
| 74 |
|
|
@@ -55,9 +55,6 @@ WHITELIST_FLAT_FILES_S3: frozenset[str] = frozenset({
|
|
| 55 |
"ner.py",
|
| 56 |
"numerical_sequences_hooks.py",
|
| 57 |
"philological_hooks.py",
|
| 58 |
-
"pipeline_benchmark.py",
|
| 59 |
-
"pipeline_comparison.py",
|
| 60 |
-
"pipeline_spec_loader.py",
|
| 61 |
"readability.py",
|
| 62 |
"readability_hooks.py",
|
| 63 |
"reading_order.py",
|
|
|
|
| 55 |
"ner.py",
|
| 56 |
"numerical_sequences_hooks.py",
|
| 57 |
"philological_hooks.py",
|
|
|
|
|
|
|
|
|
|
| 58 |
"readability.py",
|
| 59 |
"readability_hooks.py",
|
| 60 |
"reading_order.py",
|