refactor: retire les parseurs texte de repli
Les parseurs géométriques (par cellules de tableau) traitent les 5 PDF du corpus sans jamais déclencher le repli : les parseurs texte étaient 586 lignes de regex fragiles, non testées, à maintenir à chaque évolution du format de sortie. Les références golden sont inchangées après leur suppression — l'extraction produit exactement la même chose. Le parseur géométrique devient donc le seul chemin : ce qu'il ne lit pas est perdu. L'orchestrateur distingue maintenant les deux cas : - aucun lot lu -> ExtractionError (422 côté API). Un compte rendu sans lot n'existe pas : c'est le tableau qui n'a pas été reconnu, et mieux vaut échouer que d'enregistrer un document vide découvert bien plus tard, au moment de relire les chiffres ; - aucune opération -> accepté. Un mois sans dépense reste plausible. _extract_lot_code_from_description était la seule fonction encore utilisée : elle rejoint utils.lots sous le nom extract_lot_numero_from_description, à côté de normalize_lot_numero. extract_text_from_pdf, sans appelant, disparaît au passage. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -2,8 +2,11 @@
|
||||
|
||||
import pytest
|
||||
|
||||
from plesna_gerance.parsers.operations import _extract_lot_code_from_description
|
||||
from plesna_gerance.utils.lots import normalize_extraction_lots, normalize_lot_numero
|
||||
from plesna_gerance.utils.lots import (
|
||||
extract_lot_numero_from_description,
|
||||
normalize_extraction_lots,
|
||||
normalize_lot_numero,
|
||||
)
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
@@ -44,8 +47,8 @@ def test_normalize_lot_numero(raw, expected):
|
||||
("", None),
|
||||
],
|
||||
)
|
||||
def test_extract_lot_code_from_description(description, expected):
|
||||
assert _extract_lot_code_from_description(description) == expected
|
||||
def test_extract_lot_numero_from_description(description, expected):
|
||||
assert extract_lot_numero_from_description(description) == expected
|
||||
|
||||
|
||||
def test_normalize_extraction_lots():
|
||||
|
||||
Reference in New Issue
Block a user