Files
oto-enterprise-os-dtp/05_activity_log
Claude Code DTP Worker c0da3dfeec [DTP-Worker] Sprint 8 · buffer L75 · Domaine Fiscal/e-CF : le CONTRAT DE FORMAT de l'e-NCF (« E + tipoeCF(2) + secuencia(10) » = 13) était retranscrit À LA MAIN dans QUATRE endroits de prose (README ×3 + fiche agent erpnext_backend) sans AUCUN gate d'IDENTITÉ. Le bloc racine de check_readme_claims ne gate que le COMPTE de tests e-CF (« 39 ») — surface distincte du MÊME module. Ce format — préfixe · longueur du segment tipo · longueur du segment secuencia · longueur TOTALE — est le CŒUR du module (le « composeur traçable ») et dérive du bloc e_ncf de fiscal/ecf_dgii/out/ecf_plan.json (byte-gaté par check_artifacts) : prefix (« E »), longueur (13), regex (^E[0-9]{12}$), structure (« E + tipoeCF (2 chiffres) + secuencia (10 chiffres) »). Format e-NCF standard DGII (Ley 32-23) porté avec source — pas un chiffre inventé (#6). Aucun gate ne comparait la LONGUEUR des segments à l'artefact : allonger la secuencia (rango DGII à 12 chiffres → longueur 15, regex 14 digits) OU changer le préfixe ferait dériver les QUATRE proses en silence pendant que l'ecf_plan byte-gaté dit autre chose — « vert trompeur » qu'aucune suite tests/ (qui teste les FONCTIONS compose_encf/parse_encf, pas la prose) n'attrape → nouveau bloc recomputant (prefix, tipo_len, seq_len, total) depuis le SEUL bloc e_ncf (zéro duplication du format du générateur #6) et exigeant que CHAQUE prose l'encode EXACTEMENT (4 sous-checks numérotés, patron du bloc DevOps). Cohérences croisées en bonus (mordent un artefact INTERNEMENT incohérent) : 1 + tipo_len + seq_len == longueur (1+2+10==13) ET |regex digits| == tipo_len + seq_len (12 == 2+10). Un claim absent échoue AUSSI. 5 morsures vérifiées : drift de l'artefact source (secuencia 10→12, les 4 proses mordues) · résumé README tipo 2→3 · invariant README total 13→14 (aveugle au segment) · fiche erpnext_backend secuencia 10→9 · composition README supprimée (INTROUVABLE) ; plus la morsure d'incohérence d'artefact (regex {11} désaligné du segment tipo+seq=12) ; restauré = green : E + tipo(2) + secuencia(10) = 13 == e_ncf. État courant : aucun segment périmé (anti-invention #6, rien à réécrire) — le défaut est la surface ungated. ci/README.md (table + détail) mis à jour · 7 gates re-verts.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-31 16:09:13 +00:00
..
[DTP-Worker] Sprint 8 · buffer L75 · Domaine Fiscal/e-CF : le CONTRAT DE FORMAT de l'e-NCF (« E + tipoeCF(2) + secuencia(10) » = 13) était retranscrit À LA MAIN dans QUATRE endroits de prose (README ×3 + fiche agent erpnext_backend) sans AUCUN gate d'IDENTITÉ. Le bloc racine de check_readme_claims ne gate que le COMPTE de tests e-CF (« 39 ») — surface distincte du MÊME module. Ce format — préfixe · longueur du segment tipo · longueur du segment secuencia · longueur TOTALE — est le CŒUR du module (le « composeur traçable ») et dérive du bloc e_ncf de fiscal/ecf_dgii/out/ecf_plan.json (byte-gaté par check_artifacts) : prefix (« E »), longueur (13), regex (^E[0-9]{12}$), structure (« E + tipoeCF (2 chiffres) + secuencia (10 chiffres) »). Format e-NCF standard DGII (Ley 32-23) porté avec source — pas un chiffre inventé (#6). Aucun gate ne comparait la LONGUEUR des segments à l'artefact : allonger la secuencia (rango DGII à 12 chiffres → longueur 15, regex 14 digits) OU changer le préfixe ferait dériver les QUATRE proses en silence pendant que l'ecf_plan byte-gaté dit autre chose — « vert trompeur » qu'aucune suite tests/ (qui teste les FONCTIONS compose_encf/parse_encf, pas la prose) n'attrape → nouveau bloc recomputant (prefix, tipo_len, seq_len, total) depuis le SEUL bloc e_ncf (zéro duplication du format du générateur #6) et exigeant que CHAQUE prose l'encode EXACTEMENT (4 sous-checks numérotés, patron du bloc DevOps). Cohérences croisées en bonus (mordent un artefact INTERNEMENT incohérent) : 1 + tipo_len + seq_len == longueur (1+2+10==13) ET |regex digits| == tipo_len + seq_len (12 == 2+10). Un claim absent échoue AUSSI. 5 morsures vérifiées : drift de l'artefact source (secuencia 10→12, les 4 proses mordues) · résumé README tipo 2→3 · invariant README total 13→14 (aveugle au segment) · fiche erpnext_backend secuencia 10→9 · composition README supprimée (INTROUVABLE) ; plus la morsure d'incohérence d'artefact (regex {11} désaligné du segment tipo+seq=12) ; restauré = green : E + tipo(2) + secuencia(10) = 13 == e_ncf. État courant : aucun segment périmé (anti-invention #6, rien à réécrire) — le défaut est la surface ungated. ci/README.md (table + détail) mis à jour · 7 gates re-verts.
2026-07-31 16:09:13 +00:00