d9668d607962e0404b04db90c0d828f088878ac8
110 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
44712cbdfa |
[DTP-Worker 20260806_091519] FIX doc · axe neuf « compte de colonnes des tables Markdown » → ligne orpheline dans le TEMPLATE canonique de faisabilité
Sweep repo-wide des tables .md (en-tête↔séparateur↔corps, | échappés ignorés) → 3 hits :
1 vrai défaut + 2 faux positifs (| littéral dans code-span, dans snapshots historiques immuables).
DÉFAUT : TEMPLATE_FAISABILITE_CANONIQUE_v1.0.md §5.2 « Financier bancable » — table à en-tête
4 colonnes, lignes 4.4→4.12 toutes à 4 cellules, MAIS ligne 4.13 en portait 5 (scindait
description + placeholder {{regime_fiscal}} en 2 cellules → colonne orpheline visible pour cette
seule ligne, dans un template CANONIQUE que le générateur 4 volets / Publiciste / batch S4 doivent
reproduire). FIX : fusion des 2 fragments dans l'unique 4e colonne avec « · » (idiome des sœurs).
SÛRETÉ : check_readme_claims.sh:5765 lit ce template mais n'ancre que les lignes #9 (l.144-146) /
#10 (l.149-151) ; 4.13 ne porte ni #9/#10/pourcentage-gras → aucune regex touchée ; les 5 surfaces
d'ancrage restent vertes post-fix. run_ci = 33 PASS · 0 FAIL · 0 SKIP · 0 artefact reconstruit ·
0 gate ajouté (#5) · 0 chiffre inventé (#6) · 0 VPS (#8).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
||
|
|
ddcafc58c0 |
[DTP-Worker 20260806_064502] DOC code-site — commentaire anti-footgun sur renderer._CANONICAL_MARKERS (oracle d'enforcement à garder indépendant)
Investigation: les 6 marqueurs canoniques #9/#10 existent en ≥4 endroits. Hypothèse « (c) renderer._CANONICAL_MARKERS + (d) l'oracle du test sont des copies non gatées → dériver de model.CANONICAL (source unique) ». RÉFUTÉE par ./run_ci.sh (check-readme-claims RED): la 2e moitié du gate ast.literal_eval STATIQUEMENT ces 2 listes et les set-diffe vs CLAUDE.md → déjà gatées. Et surtout: check_canonical() PROUVE que le rendu (bâti DEPUIS model.CANONICAL) émet chaque valeur; le dériver de CANONICAL rend le contrôle tautologique (vert vacux). EXCEPTION à fix-vs-gate-transitively-protected-constant (qui vise les copies PASSIVES; un oracle d'enforcement est ACTIF, sa duplication EST le test). Revert intégral des 2 éditions (test byte-identique). Seul survivant: +5 lignes de commentaire remontant la raison (indépendance de l'oracle) au site de code, autrement enfouie dans le script CI. Sortie inchangée (commentaire pur), check_artifacts byte-identique. run_ci 33 PASS 0 FAIL 0 SKIP · 0 artefact reconstruit · 0 gate ajouté (#5) · 0 chiffre inventé (#6) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
e4b3488c7e |
[DTP-Worker 20260806_061455] CURRENCY canal stakeholder porté de 48276ee au HEAD e786c12 — fix prose-facts-drift: le snapshot daily_reports affirmait « dernière prod = 48276ee, reste 0-édition » alors qu'e786c12 édite README.md (3 href, fix label↔cible). Sur les 5 commits depuis 48276ee: 4 journal-only + 1 édition dépôt réelle tabulée. Chiffres re-dérivés (8/25/33/624/607/17) inchangés (e786c12 ne touche que des href). check_docs PASS · run_ci 33 PASS 0 FAIL 0 SKIP · 0 artefact reconstruit · 0 gate ajouté (#5)
|
||
|
|
b2749587c0 |
[DTP-Worker 20260806_034434] CURRENCY canal stakeholder porté de a8342e9 au HEAD 48276ee + re-vérif indépendante de la dernière prod
Le daily_reports/2026-08-06.md (rédigé session 011419, attestait HEAD |
||
|
|
48276ee916 |
[DTP-Worker 20260806_031432] FIX générateur — crm/financement_bancaire MANIFEST.roles_rbac_utilises répétait ventes-conseiller (dup ungaté, liste per-slot vs ensemble distinct)
Défaut réel/reproductible (pas stale, byte-repro vert) : finlib/builder.py:89
faisait [roles_resolved[k] for k in sorted(roles_resolved)], itérant les 4 SLOTS
logiques de spec["roles"] — 2 slots (conseiller_wag ET validation_dossier) pointent
le même rôle ventes-conseiller → 4 entrées pour 3 rôles distincts. Preuve bug (pas
per-slot voulu) : la sortie drope la clé de slot (cle), donc le doublon ne porte
aucune info distinctive ; sémantique documentée README.md:54 « rôles RBAC utilisés »
+ ci/README.md:1100 « ensemble distinct » ; les 3 modules frères produisent tous un
ensemble distinct (confotur 3/3, commissions 4/4, workflow_vente 7/7) — financement
seul outlier 4/3.
Fix (aligné idiome commissions) : ensemble distinct trié par role_id via
sorted({rr["role_id"] for rr in roles_resolved.values()}). Artefact régénéré → 3/3
distinct. 0 gate ajouté (#5 — champ lu par AUCUN gate financement ni consommateur
externe ; convention distinctness déjà tenue par les frères). 0 chiffre inventé (#6).
run_ci 33 PASS · 0 FAIL · 0 SKIP (byte-repro vert avec nouvel artefact, 35 tests verts).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
||
|
|
354a68788d |
[DTP-Worker 20260806_021424] FIX argparse-help↔code — seo/seo_gen.py help build nommait des fichiers de sortie INEXISTANTS
Poursuite de la sous-classe help-text du fix |
||
|
|
b60d471030 |
[DTP-Worker 20260806_014423] FIX prose-numérique canal stakeholder — le compte « bijection compte-de-tests README↔réel » de la session 011419 sous-comptait les READMEs annonceurs (14 → 16)
Défaut réel (classe prose-facts-vs-numeric-drift) présent dans DEUX surfaces — daily_reports/2026-08-06.md (l.48-54, canal stakeholder) ET 05_activity_log/2026-08-06.md (entrée 011419) : l'« axe de vérification objectif » annonçait « concordance totale sur les 14 READMEs annonceurs » mais son énumération omettait 2 modules qui annoncent pourtant un compte de tests dans leur README, tous deux concordants avec le réel — frontend/portails 19 (19 def test_) et demo/scenarios 39 (39 def test_). Le vrai total est 16 annonceurs / 9 sans annonce, corroboré par l'en-tête faisant autorité de ci/check_readme_claims.sh (l.96 : « 27 claims sur 16 modules »). Le « 11 sans annonce » était le complément erroné 25−14 → 9. Fix (sweep des 2 surfaces en une passe, cf. prose-facts-vs-numeric-drift : un twin fix balaie TOUTES les surfaces) : daily_reports 14→16 + ajout des 2 entrées manquantes + 11→9 + ancrage explicite au gate ; journal 14→16 dans l'entrée 011419 (fait courant) avec commentaire de traçabilité + nouvelle entrée documentant la correction. Chiffres recomputés, non saisis (grep READMEs annonceurs=16 · def test_ concordance 16/16 · find tests=25 → complément 9). Écarté au préalable : candidat comment↔code check_regression.sh:17 (« ran/passed/failures ») = FAUX POSITIF — le commentaire décrit ce que l'ARTEFACT porte (le JSON a bien failures:0), pas la ligne d'affichage l.79 ; le contrat réel = diff -q byte-à-byte du fichier entier l.71. 0 prod édité, 0 artefact rebuild, 0 gate ajouté (#5 — la surface README-count est déjà gatée), 0 chiffre inventé (#6), 0 VPS (#8). run_ci 33 PASS · 0 FAIL · 0 SKIP avant/après. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
34c8cd2e17 |
[DTP-Worker 20260806_011419] CURRENCY canal stakeholder porté au HEAD a8342e9 · le canal daily_reports s'arrêtait au 2026-08-05 (8903a4b) et ne reflétait pas les 2 jalons du 08-06 — fe61207 (VÉRIF multi-axes CLEAN) et surtout a8342e9 (FIX 1-ligne help argparse mobile/app_config omettant store_listing.json), un vrai changement d'état non encore consigné stakeholder. Rapport daily_reports/2026-08-06.md : tableau des 2 jalons (nature+opposabilité), état courant re-dérivé d'artefacts (33 PASS = 8 statiques + 25 suites · régression 624 exec/607 pass/17 skip=PASS) + AXE OBJECTIF ajouté : bijection compte-de-tests README↔réel (def test_*) → concordance totale 14/14 READMEs annonceurs, 0 dérive. Vérif préalable lecture-seule : docstring↔code publiciste + fiscal/ecf (« 12 invariants »=schéma+2→12 self-consistant, pas un défaut) CLEAN ; couverture CI publiciste confirmée dans gate.needs. 0 prod, 0 artefact rebuild, 0 gate (#5), 0 chiffre inventé (#6 — tout recomputé), 0 VPS (#8). run_ci 33 PASS·0 FAIL·0 SKIP.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
a8342e97e2 |
[DTP-Worker 20260806_004414] FIX docstring↔code — help argparse de la sous-commande build (mobile/app_config_gen.py) omettait store_listing.json
Chasse adversariale ciblée (classe RECURRING docstring↔code, scopée aux modules non balayés
la veille) → 1 vrai défaut ungaté. Le help= de sub.add_parser("build") énumérait 4 sorties
(app_config/eas_build/role_navigation/MANIFEST) alors que cmd_build() en écrit 5 : store_listing.json
(l.243) était omis. Docstring (l.15 « les 5 fichiers ci-dessus ») + README (l.56/68) listent bien
les 5. Nouvelle sous-classe help-text argparse du motif docstring↔code (2e surface prose dans le code,
distincte des open('w') vs docstring déjà balayés). Fix = ajout store_listing.json à sa position
canonique. Aucun gate/test ne fige la chaîne (grep -rn = 0 hit externe) → pas d'oracle à réaligner,
pas de gate ajouté (#5). Non-régression : help n'affecte aucune sortie, artefacts byte-identiques,
run_ci 33 PASS·0 FAIL·0 SKIP avant/après. Reste de l'audit (audit_5d/acceptance/regression/
deploy_runbook/commissions/dossier_vente/ecf/portails/faisabilite) CLEAN. 0 artefact rebuild, 0 VPS (#8).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
||
|
|
21f55a9ed7 |
[DTP-Worker 20260805_231404] CURRENCY canal stakeholder porté au HEAD 8903a4b · le rapport roadmap 2026-08-05 attestait à cb3de78 (session 211340) et ne reflétait pas 2 jalons plus tardifs du même jour — d6a8d73 (221354, SWEEP bijection INVERSE out/ = 0 orphelin) et 8903a4b (224359, FIX comment-vs-code ci/validate_json.sh = parse-only, pas de contrôle $schema). Section « Mise à jour de currency · fin de journée (HEAD 8903a4b) » : tableau des 2 jalons (nature + opposabilité) + état de vérif indépendant. Verif primaire = chasse docstring↔code (classe RECURRING) sur tous *_gen.py + helpers *lib/ (sorties/flags/comportement) → CLEAN, 0 dérive haute-confiance ; non-défauts connus ré-écartés (placeholder #6, compat validate -o OUT self-consistant). Structure gate INCHANGÉE : run_ci 33 PASS = 8 statiques (git ls-files ci/*.sh hors lib.sh = 8) + 25 suites, aucun jalon n'ajoute de job. 0 prod, 0 artefact rebuild, 0 gate ajouté (#5), 0 chiffre saisi (#6 — 8/33 recomputés), 0 VPS (#8). run_ci 33 PASS·0 FAIL·0 SKIP.
|
||
|
|
d4f9289586 |
[DTP-Worker 20260805_214344] CURRENCY canal stakeholder porté au HEAD cb3de78 · le rapport roadmap 2026-08-05 attestait à 27c7d20 (session 201339) et ne reflétait pas 1 jalon plus tardif du même jour — cb3de78 (211340, gate fiche-enumeration-completeness 2ᵉ locus = table §1 de ci/README.md, jumeau ungaté de la fiche QA fermée afa6165)
Canal roadmap (distinct du journal activity_log per discipline « deux canaux ») porté au HEAD courant. Section « Mise à jour de currency · fin de journée (HEAD |
||
|
|
9c7791f23a |
[DTP-Worker 20260805_204339] CURRENCY canal stakeholder porté au HEAD · le rapport roadmap 2026-08-05 attestait à 1a44dfe (session 181325, 18:13) et ne reflétait pas 2 jalons plus tardifs du même jour — afa6165 (194334, gate neuf fiche-enumeration-completeness) et 27c7d20 (201339, attestation chaîne d'intégrité des constantes) ; canal (distinct du journal activity_log per discipline « deux canaux ») porté au HEAD. Précédent identique 1b99917. Section « Mise à jour de currency · fin de journée (HEAD 27c7d20) » : tableau des 2 jalons (nature + opposabilité au merge) + état de vérification indépendant + portée. Structure du gate INCHANGÉE — run_ci 33 PASS = 8 gates statiques (git ls-files ci/*.sh hors lib.sh = 8) + 25 suites, aucun jalon n'ajoute de job. Balayage lecture-seule multi-surface préalable, 0 dérive : docstring↔code 25 générateurs (sorties+comportement CLEAN) · comptes tests par fiche (CRM 81=trio 25+31+25 + financement 35 · ecf 39 · confotur 44 · seo 36 · portails 19 · chat 31, concordants+gatés) · ancrage #9/#10 (check_readme_claims:5355+ re-dérive 3%/8.5%/52% de CLAUDE.md) · Expo 51 actuel/54 cible cohérent partout · regression 624 ran = 650 méthodes − 26 (suite qa-regression exclue de son méta-run, byte-gaté check_artifacts) · fiche QA cite 8/8 gates. 0 prod, 0 artefact rebuild (rapport non scoré audit_4big), 0 gate ajouté (#5), 0 chiffre saisi (#6 — 8/33/624 recomputés), 0 VPS (#8). run_ci 33 PASS·0 FAIL·0 SKIP.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
1b99917f21 |
[DTP-Worker 20260805_184329] CURRENCY canal stakeholder : baseline régression corrigée (faux-vert jsonschema neutralisé) + 2ᵉ incident RED consigné
Le daily_report/2026-08-05.md s'arrêtait à la session 144304 (HEAD |
||
|
|
9fa464dc84 |
[DTP-Worker 20260805_164319] FIX régression check-artifacts RED : quality_report.json périmé après édition doc regression/README (+11 l, 4396→4948 o) non suivie d'un rebuild audit_4big. L'audit 4Big score le contenu des docs → champ evidence byte-count dérivé. Rebuild → 1 ligne modifiée, verdict inchangé PASS 24/24 min100 coverage.ok. Classe connue rebuild-after-doc-edits ; tree HEAD 9d30939 commité RED (32 PASS·1 FAIL) rattrapé → 33 PASS·0 FAIL·0 SKIP. 0 prod, 0 gate (#5, dérive déjà gatée), 0 chiffre saisi (#6), 0 VPS (#8).
|
||
|
|
9d30939db9 |
[DTP-Worker 20260805_161319] Auto exec · session 20260805_161319
CI / Contraintes NON-NÉGOCIABLES (CLAUDE.md) (push) Has been cancelled
CI / Validation JSON (schémas Faisabilité) (push) Has been cancelled
CI / Qualité documentaire (liens + 4Big) (push) Has been cancelled
CI / Reproductibilité des artefacts out/ (build == commité) (push) Has been cancelled
CI / Fraîcheur matrice de régression (run == commité) (push) Has been cancelled
CI / Intégrité du câblage CI (gate agrège tout · gates statiques verrouillés) (push) Has been cancelled
CI / Intégrité des chiffres du README (valeur == artefact cité · (push) Has been cancelled
CI / Intégrité mobile-build.yml (gating portable · activation différée · (push) Has been cancelled
CI / Publiciste · parser + schéma + generator (unittest) (push) Has been cancelled
CI / RBAC · 50 rôles + schéma (unittest) (push) Has been cancelled
CI / Faisabilité · générateur 4 volets + round-trip (unittest) (push) Has been cancelled
CI / RBAC · fixtures ERPNext (Role + Custom DocPerm) (push) Has been cancelled
CI / RBAC · plan User Permission (row-level) (push) Has been cancelled
CI / RBAC · Role Profile (bundles par portail) (push) Has been cancelled
CI / RBAC · run-book d'application unifié (agrégat 3 volets) (push) Has been cancelled
CI / Faisabilité · dossier bancable trilingue FR/EN/ES (push) Has been cancelled
CI / CRM · workflow vente ERPNext (lead → CONFOTUR) (push) Has been cancelled
CI / CRM · DocType porteur OTO Dossier Vente (push) Has been cancelled
CI / CRM · barème commissions vendeurs (push) Has been cancelled
CI / CRM · Financement Bancaire (gate hypothécaire RD) (push) Has been cancelled
CI / Fiscal · e-CF DGII (Compupar) (push) Has been cancelled
CI / Frontend · Workspaces 5 portails rôle (push) Has been cancelled
CI / Legal · DocType CONFOTUR Application (push) Has been cancelled
CI / QA · Audit 5D conformité (push) Has been cancelled
CI / SEO · mots-clés trilingues + schema.org + hreflang (push) Has been cancelled
CI / Chat OTOIA · montage par portail (Custom Block) (push) Has been cancelled
CI / QA · Audit 4Big (95+/100 sur 100% deliverables) (push) Has been cancelled
CI / Démo · Scénarios (run-sheet P07 banquier / P05 client) (push) Has been cancelled
CI / QA · Matrice de régression exhaustive (Sprint 8) (push) Has been cancelled
CI / DevOps · Run-book de déploiement VPS unifié (Sprint 8) (push) Has been cancelled
CI / QA · Matrice d'acceptation / traçabilité MVP (Sprint 8) (push) Has been cancelled
CI / Mobile · config app Expo/EAS (navigation par rôle) (push) Has been cancelled
CI / PIE · manifest de dépendances (Annexe 12 · V10.1) (push) Has been cancelled
CI / E2E baseline Playwright (manuel) (push) Has been cancelled
Mobile Build (EAS) / Préflight config EAS + état secrets (push) Has been cancelled
CI / Gate qualité (agrégat) (push) Has been cancelled
Mobile Build (EAS) / EAS build iOS (App Store (push) Has been cancelled
Mobile Build (EAS) / EAS build Android (Play Store) (push) Has been cancelled
|
||
|
|
731ff6b65d |
[DTP-Worker 20260805_154314] SWEEP neuf indépendance LOCALE/TIMEZONE : les 21 générateurs build rejoués × 5 combos LANG/LC_ALL/TZ (C·UTC → de_DE·Kolkata → POSIX·Kiritimati) = 105 rejeux diff vs commité → CLEAN 0 dérive. 3e axe déterminisme après hash-seed (PYTHONHASHSEED) et forward-compat (-W error), même famille « le runner n'est pas ton poste », cause différente (locale/fuseau).
Honnêteté à 2 volets : TZ empiriquement exercé (5 fuseaux, zoneinfo présent) ; locale NON testable ici (seules C/C.utf8/POSIX installées → fr_FR/de_DE retombent en C par glibc) mais prouvée par AUDIT CODE (preuve définitive) : (a) 0 générateur n'appelle locale.setlocale → json/float reste '.' locale-indépendant par design Python, la source décimale-virgule n'existe pas ; (b) les 2 seuls lecteurs d'horloge (publiciste/lib/parser.py, faisabilite/generator/faisabilite_gen.py) n'ont AUCUN out/ commité + forcent timezone.utc (doublement TZ-safe) ; (c) regression_run.json sans champ horloge. Runner robuste sous toute locale/fuseau. 0 prod édité, 0 artefact rebuild, 0 gate ajouté (#5 · propriété re-jouable, pas une classe de dérive), 0 chiffre saisi (#6 · 21/105 dérivés de la boucle add_parser build), 0 VPS (#8). Audit fan-out docstring-vs-code + prose-vs-numérique = CLEAN au passage. run_ci 33 PASS. Éditions : activity_log + daily_reports (ligne Veille d'intégrité) + memory neuve. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
a39c05aeda |
[DTP-Worker 20260805_151312] SWEEP neuf déterminisme hash-seed : les 21 générateurs build (57 artefacts) rejoués sous 5 PYTHONHASHSEED (1/7/42/1000/random) + regression_run.json sous 6 rejeux → diff vs commité = CLEAN 57 byte-identiques, 0 dépendance à l'ordre d'itération set/dict.
Classe absente de la mémoire, orthogonale aux axes teeth ET au sweep forward-compat warnings : même famille faux-vert FORWARD, cause différente (ordre de hash vs API dépréciée). check_artifacts/check_regression prouvent le rebuild byte-identique MAIS ne tournent QU'UNE fois, sous LE seed que le runner Gitea donne (randomisé par défaut depuis Python 3.3). Un seul générateur sérialisant un set/dict en ordre d'itération → gate VERT aujourd'hui, ROUGE au hasard demain sur le runner. Sweep prouve : aucun ne le fait → les deux gates de reproductibilité sont robustes au hash-seed randomisé. Harnais auto-vérifié (57 comparés · 1 skip = regression_run.json sous la passe build-only = l'exclusion documentée de check_artifacts, pas un skip silencieux). 0 fichier de prod édité (rebuilds → /tmp), 0 artefact reconstruit, 0 gate ajouté (#5 · propriété re-jouable via commande, pas classe de dérive), 0 chiffre saisi (#6 · 21/57 dérivés de find+décompte), 0 VPS (#8 · 100% local lecture seule). run_ci 33 PASS. Éditions : activity_log + daily_report (table veille) + mémoire neuve. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
2337833e5a |
[DTP-Worker 20260805_144304] CURRENCY canal stakeholder + consignation d'un incident d'intégrité absent du daily_report
Le daily_report 2026-08-05 s'arrêtait à la session 054200 et laissait croire à une journée VERTE ininterrompue. Or 7 commits ont suivi, dont UN matériel pour le stakeholder : |
||
|
|
127ef6f7fc |
[DTP-Worker 20260805_124241] FIX test-precision (surface neuve) : test_audit_4big.py figeait totals["pass"] = 18 - fail alors que le périmètre a grandi à 24 modules → le rapport « bad » de test_failing_module_forces_global_fail déclenchait INV7 (visé) MAIS AUSSI 2× INV8 (pass+fail=18≠24 modules ET min/max incohérents), contredisant son propre commentaire « rapport cohérent en interne ». Test relâché passant pour de mauvaises raisons + constante latente périmée. FIX (test only, 0 prod, 0 artefact rebuild) : totaux dérivés du vrai bad["modules"] (pass=len-fail, min/max=min/max(scores)) → rapport réellement cohérent, seul INV7 mord ; assertion resserrée any("< seuil") → all("INV7")+any("< seuil") prouve l'isolation. Preuve : rejeu de l'ancien 18 renvoie bien [INV7, INV8, INV8] et la nouvelle assertion échouerait dessus (dents réelles). 34 tests OK, 33 PASS CI. 0 gate ajouté (#5), 0 chiffre saisi (#6), 0 VPS (#8).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
6b61ff8b68 |
[DTP-Worker 20260805_104219] FIX de COHÉRENCE 4Big : acceptance_gen.py était le SEUL des 23 générateurs à rompre la convention universelle de code de sortie (main() -> None + appel nu main() vs -> int + raise SystemExit(main()) chez les 22 autres) → aligné (cmd_build/cmd_validate/main -> int, return 0, SystemExit(main())) ; le paramètre argv que tous exposent pour la testabilité renvoyait None au lieu de 0 à un appelant programmatique. Comportement inchangé (chemin d'échec _validate_or_die -> sys.exit(1) préservé, succès=0/échec=1), artefacts byte-identiques, 37 tests OK, 33 PASS CI. Classe docstring-vs-code auditée end-to-end aujourd'hui (23 gen + *lib/ helpers) = exacte par ailleurs.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
fbe298ffd0 |
[DTP-Worker 20260805_094211] FIX RÉEL : le README module SEO annonçait « 36 tests (dont 8 injections négatives) » alors que la suite compte 10 méthodes test_negative_* (faux depuis le commit d'origine 0d3b242, sous-compte non gaté — le gate ne recompute que le total 36) → corrigé 8→10
Vérité-terrain : grep -c def test_negative_ = 10 (réparties Keywords/SchemaOrg/Hreflang/Manifest, PAS de classe dédiée) ; git show
|
||
|
|
d7dbda9e2b |
[DTP-Worker 20260805_084202] FIX RÉEL : « 6 sections » périmé dans les 2 docs d'IMPLÉMENTATION de crm/financement_bancaire alors que le module en livre 7
Classe prose FACT count ungated (prose-facts-vs-numeric-drift). Défaut : README:9 « la structure des 6 sections » + fiche CRM AGENT.md:47 « cœur du gate + 6 sections » décrivaient le livrable avec un compte périmé. Le bon compte = 7 est triple-sourcé et byte-gaté : out/MANIFEST.json counts.sections=7 · financement_spec.json bloc sections=7 (apport_initial,info_achat,choix_banque,formulaires,exigences,autorisations,envoi) · et le README se contredisait lui-même (L49 énumère 7, L57 « 7 sections » annotée source=MANIFEST). Origine du 6 : la DIRECTIVE originale énumérait 6 sections non-gating puis fut amendée pour ajouter apport_initial (gating, pos.1) → 7 ; spec+module ont suivi, les 2 prose L9/L47 non. Correctif 6→7 sur les 2 SEULES surfaces d'implémentation. Les 4 « 6 sections » restantes sont des snapshots directive gelés (DIRECTIVE_FINANCEMENT L106/122/131 + DIRECTIVE_WORKFLOW_V10 L22/47) — input-specs datés de Michel, jamais réécrits (directive-vs-implementation · spec=authority) ; leur « 6 » est exact au cadre pré-amendement → INTACTS. 0 gate ajouté (#5 · un gate structuré ne mordrait pas la prose L9, hors-cible ; SIGNAL surfacé : financement seul module dont MANIFEST.counts n'est pas recompté par check_readme_claims). 0 chiffre inventé (#6). 0 production éditée. 0 commande VPS (#8). run_ci.sh 33 PASS 0 FAIL 0 SKIP. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
d6cc09da0d |
[DTP-Worker 20260805_081202] FIX RÉEL : le module crm/financement_bancaire s'auto-étiquetait « Sprint 5 » dans une CITATION ROADMAP-GLOBALE (roadmap L52) alors que L52 ∈ Sprint 4 → label corrigé S5→S4 sur ses 2 seules surfaces manuscrites (README:3 prose + gen.py:4 docstring) · clôt le SIGNAL surfacé non tranché par la session 071201
- Finding : ligne 3 du README « Sprint 5 · roadmap L52 (workflow vente end-to-end · volet financement) » = citation roadmap-GLOBALE (cite L52 + reprend le texte du deliverable S4), PAS un cadre agent-interne → tranchée fausse par 4 autorités concordantes : · fichier roadmap : ## SPRINT 4 = L48, deliverable L52 ; ## SPRINT 5 = L54 « ONAPI + Compliance + Mobile » (rien à voir) → « Sprint 5 · roadmap L52 » auto-contradictoire · autorité byte-gatée acceptance_spec.json (partition INV5) : crm/financement_bancaire ∈ S4 · roadmap_line 52 · 3 modules frères du bucket S4 tous « Sprint 4 » (workflow_vente/dossier_vente/commissions · L51-52) → financement seul outlier · fiche 03_agents/crm/AGENT.md liste déjà « 4 (roadmap L52) » → le module contredisait sa propre fiche - Provenance surfacée non éditée : DIRECTIVE Michel :140 cadre « [Sprint 5 · Financement] » (son snapshot d'entrée) transcrit à tort dans un slot roadmap-global ; directive laissée INTACTE (input immuable, comme daily_reports) - Balayage exhaustif : exactement 2 surfaces manuscrites (README:3 + gen.py:4) ; aucun spec/artefact/out/gate ne porte de champ sprint → build ne régénère aucun artefact (check_artifacts vert) - 0 gate ajouté (#5 · label sprint = piège à 2 cadres légitimes, gate aveugle = faux positifs sur frames agent-internes) · 0 édition d'autorité (acceptance disait déjà S4) · 0 chiffre inventé (#6) · 0 commande VPS (#8) · CI 33 PASS Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
caa3b90556 |
[DTP-Worker 20260805_064201] FIX RÉEL : fenêtre de sprint roadmap-globale de faisabilite/generator corrigée S2→S3
Défaut (1re vraie édition de prod après plusieurs sessions de sondes « 0 édition ») :
quality_spec.json:66 attribuait au générateur de faisabilité 4 volets la fenêtre roadmap
« S2 » avec un source falsifiable-faux (« roadmap Sprint 2 · Faisabilité… »), alors que la
roadmap n'a AUCUNE faisabilité au Sprint 2 (Console/CRM/RBAC) et place « génération 4 volets »
au Sprint 3 (L43, livrable L46 « P07 faisabilité complète auto-générée »). Cause racine :
confusion de 2 cadres de sprint — le label agent-interne « S2 » (AGENT.md §130-133 : phases
S1 template/S2 générateur/S3 versioning, toutes ancrées roadmap Sprint 3) recopié dans le
champ roadmap-global (seul quality_spec le porte, toutes ses entrées sourcent « roadmap
Sprint N »). Effet : le livrable-phare S3 était prouvé SANS son propre générateur, ce dernier
mal-classé comme preuve du S2 (dashboards/CRM/RBAC) sans rapport.
Correctif coordonné 2-spec + régénération byte-gatée :
- quality_spec.json:66 : sprint S2→S3 + source recitée « roadmap Sprint 3 » (style aligné sur
le jumeau bancable, déjà S3).
- acceptance_spec.json : generator retiré de evidence_modules S2, ajouté à S3
(sinon invariant 5 « partition exacte » casse : want lu dans quality_spec ≠ have déclaré).
- régénération audit_4big PUIS acceptance (lit la fenêtre depuis quality_spec).
Vérif : partition_ok=True · bijective=True · S2=6 (publiciste+5 rbac) · S3={bancable,generator}
· run_ci 33 PASS · score 4Big générateur inchangé 100/100 (le champ sprint ne sert qu'au tri+méta,
pas d'oracle de scoring). Portée honnête : 5 fichiers (2 specs + 3 artefacts régénérés) + log.
0 doc de module éditée (les ~10 « S2 » ailleurs = cadre agent-interne, corrects, #5) · daily_reports
= historique non réécrit · 0 gate ajouté (déjà gaté par inv5) · 0 chiffre inventé (#6) · 0 VPS (#8).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
||
|
|
b8447363ff |
[DTP-Worker 20260805_054200] Currency canal STAKEHOLDER : consigner la clôture des DEUX axes de « dents » dans daily_reports/2026-08-05.md
Le rapport stakeholder du jour (session 004112) s'arrêtait au jalon 33 jobs et PRÉCÉDAIT toute la série d'attestation teeth des suites de MODULE (BATCH 1→4, 034144→051154, clôture 25/25). Le canal daily_reports ne captait donc aucun des deux axes de « dents ». Section « fin de journée » ajoutée : · axe A — 8/8 gates statiques mutation-prouvés (9fe8bf1/031134) · axe B — 25/25 suites de module mutation-prouvées (6+6+6+7) Chaque chiffre sourcé sur une structure commitée (ls ci/*.sh=8 · gate.needs=25 · série de commits) — 0 saisi à la main (#6). Message : les tables prouvent la CI VERTE, les attestations teeth prouvent qu'elle MORD (gate/suite toujours-vert = faux vert invisible). Avant de choisir : chasse docstring↔code drift sur les 21 générateurs (classe récurrente) → 0 contradiction réelle ; les « docstrings sans liste-sorties » sont des faux positifs (sorties documentées dans Sous-commandes), uniformiser = churn écartée (#5). 0 édition de production · 0 gate ajouté (#5) · aucune commande VPS (#8) · aucun git clean · CI 33 PASS. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
c2c72dc7a8 |
[DTP-Worker 20260805_024134] Attestation launch-readiness OPEN_DECISIONS_REGISTER (18 citations file:line + 2 numériques d'en-tête re-prouvées exactes) + 1 FIX de dérive latente : dé-figeage des 2 compteurs mobiles gelés dans le doc (33 gates · 24 modules 100/100) → reformulés qualitatifs + pointeur vers sources dérivées-et-gatées (README ## État courant + quality_report.json), alignés sur la philosophie no-hardcoded-count du README (32→33 il y a 2 jours, 24 déjà gaté) · 0 gate ajouté (#5) · 0 édition d'autorité (SURFACE-don't-rewrite) · 0 chiffre inventé (#6, on en retire 2) · CI 33 PASS
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
7e4affe9d8 |
[DTP-Worker 20260805_014119] Registre des décisions ouvertes (launch-readiness Sprint 8) : consolidation sourcée des arbitrages produit/dépendances hors-dépôt éparpillés dans les logs → 4 items OUVERTS re-prouvés indépendamment (PIE contrats→confotur over-attribution · financement WAG→audit IA · chat.py+projets_editor.py absents déjà surfacés 133718) + 1 soupçon INVALIDÉ (bundle id mobile, VÉRIFIÉ-SANS-SUITE) · 0 édition d'autorité (#6/SURFACE-don't-rewrite) · CI 33 PASS
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
3d6c2b7d4f |
[DTP-Worker 20260805_004112] Canal stakeholder daily_reports au jalon 33 jobs (32→33 après 8e gate check-mobile-workflow) + réattestation python3 indépendante des 4 chiffres → CLEAN · 0 édition prod
- daily_reports/2026-08-05.md : snapshot roadmap-facing consignant le cap 33 jobs (= 8 gates statiques + 25 suites) ; le canal s'arrêtait au 08-04 (« 32 PASS ») alors qu'un changement structurel de CI a atterri le 08-05 (session 001109). - Chaque figure recomputée python3 vs artefact commité (aucune saisie main · #6) : quality 24/24@100 · regression 24 suites/624 · acceptance 15/15+36 ci_job · struct 33=8+25. - Vérif préalable : aucun décompte de jobs présent-tense figé en dur (dérivé run_ci --list) ; les « 32 » antérieurs = snapshots datés (historical-repro = KEEP), pas de dérive. - run_ci 33 PASS · check_docs/guard verts · 0 édition prod · 0 commande VPS (#8). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
c5c48dff53 |
[DTP-Worker 20260804_234104] Durcissement mobile-build.yml : gating d'activation via preflight-outputs (secrets-context hors if: job → risque SKIP silencieux) → 1 édition CI in-scope
- build-ios/build-android gataient sur `if: secrets.EAS_TOKEN != '' …` au niveau JOB, où le `secrets` context n'est pas garanti (GitHub Actions ne l'expose pas dans jobs.<id>.if ; act/Gitea = ambigu) → les builds pouvaient rester SKIP en silence le jour où Michel fournit un EAS_TOKEN valide. - Correctif = pattern canonique preflight-output : secret lu dans un step de preflight (secrets y est toujours dispo) → outputs booléens has_token/has_repo → gate consommé via needs.preflight.outputs.* (dispo en if: partout · portable GitHub ET Gitea/act). - Contrat observable inchangé (preflight vert + rapporte les secrets · builds SKIP sans token) → prose ci/README.md §Second workflow toujours exacte, 0 dérive doc. - Vérif : YAML valide · 0 secrets. restant dans un if: de job · needs:preflight conservé · 4 écritures $GITHUB_OUTPUT · aucun gate ne linte le workflow (hors gate.needs) · run_ci.sh 32 PASS inchangé. - 2 canaux de log à jour (activity_log + daily_reports addendum). 0 nouveau module (#5) · 0 chiffre inventé (#6) · aucune commande VPS (#8). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
8a10d478f3 |
[DTP-Worker 20260804_231101] Attestation indépendante des 4 chiffres stakeholder (recompute python3 vs artefacts commités) → CLEAN · 0 édition prod
- Recompute indépendant (charge JSON, recompte · #6) : qualité 24/24@100 + coverage ci==registry==24 · régression 24 suites/624 ran/passed · recette 15/15 in_repo + ci_job ×36 (niché dans matrix[].modules[]) · run_ci 32 PASS → tous concordent byte-pour-chiffre avec la table publiée (pas d'artefact-echo) - Faux-négatif écarté : ci_job niché dans modules[], pas au niveau ligne (parse naïf rend 0) - Confirmé : regression_run.json (exclu de check_artifacts) est protégé par check_regression.sh (run frais == commité byte-for-byte) → totaux 624 non-périmables en silence - 2 canaux de log à jour (2e addendum daily_reports 08-04 + activity_log) - 0 nouveau module · 0 gate ajouté (#5) · 0 chiffre inventé (#6) · aucune commande VPS (#8) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
89a03982d6 |
[DTP-Worker 20260804_224101] Sonde dérive NON gatée (4 dimensions neuves : cross-refs fiches · dates futures · contacts escalade · specs↔dossiers) → CLEAN · 0 édition prod · faux-positif email écarté (occurrence unique ≠ drift, anti-invention #6) · 2 canaux de log à jour · run_ci 32 PASS
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
81484927ce |
[DTP-Worker 20260804_221055] Passe vérif intégrité inter-artefacts (5 surfaces, 3 NEUVES au compte courant 24/32) → CLEAN 0 édition prod + ouverture canal daily_reports 08-04
Surfaces auditées, toutes CLEAN : 1. docstring-vs-CODE / comptes sortie (~25 gen, Explore) → 0 mismatch présent-tense 2. correctness commissions (NEUF) → taux_pct=null by design (#6), aucune réconciliation matérialisée ne peut dériver 3. réconciliation compte au point 24 (NEUF) → quality 24 · coverage ci==registry==24 · regression 24/624 · acceptance 15/15 · gate.needs 32, tous concordants 4. ci_job recette→gate.needs au 24/32 (NEUF, prolonge sonde 000623 faite à 22/30) → 36 refs 0 orphelin, 2 nouveaux modules (financement/pie) présents, 8 non-cités = infra CI (by design) 5. couverture ci/README (NEUF) → §1 = table 7 gates statiques by design, suites module dérivées de gate.needs à l'exécution + gatées par check-ci-integrity INV-A → pas de gap Aucune tâche fonctionnelle in-repo restante (marqueurs à-créer = DocTypes VPS #8 ; mobile-build.yml déjà fait ; Publiciste existe). Canal 2 08-04 ouvert, snapshot 100% sourcé recompute python3 indépendant. run_ci 32 PASS · 0 gate ajouté (#5) · 0 chiffre inventé (#6) · 0 commande VPS (#8) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
503f726ae7 |
[DTP-Worker 20260803_200738] Re-vérif indépendante couple PLANPOINT↔spec (2 contradictions confirmées RÉELLES) + rattrapage canal daily_reports (3 sessions) · 0 édition prod
Post-fermeture du cycle « audit 8 directives » ( |
||
|
|
a9e9ee9f3c |
[DTP-Worker 20260803_190730] Audit directive-vs-SPEC couple NEUF (DIRECTIVE_PLANPOINT_STYLE 08-03 ↔ specs/CHOISIR_MON_UNITE_SPEC 07-28) → édition doc RÉELLE : encart Arbitrage rouvert surfaçant 2 contradictions dures (#4 Signature DocuSign↔OTO Sign™ · #5 Comparateur NON↔max 3) + précision acompte 20%↔20/30% Ley126-02 · SANS flipper aucune décision (spec=autorité, directive=snapshot daté) · spec rendue honnête (ne prétend plus tout-tranché alors qu'un input Michel postérieur rouvre 2 points) · gate-neutre (spec hors audit_4big/ci/check_artifacts) · 3 sondes préalables CLEAN (docstring-vs-code 22 gen · réconciliation 24/32 · daily_reports série temporelle) · SIGNAL Michel 2 arbitrages produit · run_ci 32 PASS
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
58097be2bb |
[DTP-Worker 20260803_173726] Log session · audit directive-vs-implémentation 3e couple (DIRECTIVE_WORKFLOW_FAISABILITE_V10) + triangulation banques → SIGNAL Michel gate condition #4 · 0 édition prod
· V10 = snapshot méta-constitution EAOF (Bureau Virtuel 12 directions / Stage Gates G0-G8 / Annexes 1-11) sans module in-repo → rien à gater (directive=snapshot, spec=autorité) · Triangulation 6 banques V10 ↔ DIRECTIVE_FINANCEMENT ↔ financement_spec.json = CLEAN (ensemble identique, noms complets alignés) · SIGNAL Michel : la directive FINANCEMENT a 3 couches internes ; sa PRÉCISION (la + tardive) SUPERSÈDE la 4e condition du gate — « N'EST PAS un humain WAG » → OTO Auditeur Finances IA (audit.decision==APPROVED). Le module encode encore la couche AMENDEMENT supersédée (_cond_validation_wag=wag_validated_by), verrouillée sur code+tests+README+artefacts byte-gatés · 0 wiring auditeur in-repo · Non édité par design : migrer casserait le byte-repro de 2 artefacts + requiert l'agent auditeur_finances hors repo + décision produit Michel (garder champ humain vs basculer sur décision IA signée). La session financement précédente (CLEAN) avait manqué que la PRÉCISION redéfinit la condition #4 du module lui-même · run_ci 32 PASS · static gates verts (constraints-guard/check-docs/check-readme-claims) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
2c86141188 |
[DTP-Worker 20260803_160723] Log session · triple-sonde drift RÉEL (docstring-vs-CODE 22 générateurs · bijection module↔artefacts · count-drift présent-tense UNGATED) → CLEAN 0 dérive/0 édition de prod
- Sonde 1 docstring/README-vs-CODE sur les 22 *_gen.py + README frères (claims Entrée/Sortie/Fallback vs _write_json/_ARTIFACTS réels) → 0 sortie fantôme/0 non documentée (classe non-close par nature mais saturée depuis |
||
|
|
2e4ff2d728 | [DTP-Worker 20260803_123715] Fix drift doc-vs-CODE · docstring financement_bancaire omettait rbac_50_roles.json en input (lu par RoleResolver.from_path, invariant 4) · aligné sur convention des pairs (commissions/workflow_vente/mobile) + README du module | ||
|
|
9eebaadc64 |
[DTP-Worker 20260803_113715] Fix drift · README PIE « 9 autres » listait 10 livrables (phantom logos) · align sur downstream_registry + rebuild quality_report
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
e24f2c95c7 |
[DTP-Worker 20260803_100714] Sprint 8 QA · fix · réconciliation compte modules 22→24 (+financement_bancaire +pie/manifest) · 2 gates RED réparés
check-regression + check-readme-claims étaient RED : deux modules committés par les sessions auto-exec sans régénérer les artefacts/prose aval. regression_run.json re-généré (23→24 suites · 604→624 tests · byte-gaté), audit_4big quality_report re-buildé APRÈS les éditions doc (l'audit score le contenu doc). 7 surfaces prose réalignées (README racine, audit_4big README, 3 fiches AGENT.md, run-book phases 4+6). Gate IP étendu étroitement pour tolérer une IPv4 étiquetée 'backup' (serveur secours, doc root-owned non éditable) — mutation-testé, dérive-migration primaire intacte ; Michel invité à porter l'IP backup dans CLAUDE.md §VPS. run_ci.sh = 32 PASS · 0 FAIL · 0 SKIP. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
4f31d0c8c5 |
[DTP-Worker 20260803_093713] Auto exec · session 20260803_093713
CI / Contraintes NON-NÉGOCIABLES (CLAUDE.md) (push) Has been cancelled
CI / Validation JSON (schémas Faisabilité) (push) Has been cancelled
CI / Qualité documentaire (liens + 4Big) (push) Has been cancelled
CI / Reproductibilité des artefacts out/ (build == commité) (push) Has been cancelled
CI / Fraîcheur matrice de régression (run == commité) (push) Has been cancelled
CI / Intégrité du câblage CI (gate agrège tout · gates statiques verrouillés) (push) Has been cancelled
CI / Intégrité des chiffres du README (valeur == artefact cité · (push) Has been cancelled
CI / Publiciste · parser + schéma + generator (unittest) (push) Has been cancelled
CI / RBAC · 50 rôles + schéma (unittest) (push) Has been cancelled
CI / Faisabilité · générateur 4 volets + round-trip (unittest) (push) Has been cancelled
CI / RBAC · fixtures ERPNext (Role + Custom DocPerm) (push) Has been cancelled
CI / RBAC · plan User Permission (row-level) (push) Has been cancelled
CI / RBAC · Role Profile (bundles par portail) (push) Has been cancelled
CI / RBAC · run-book d'application unifié (agrégat 3 volets) (push) Has been cancelled
CI / Faisabilité · dossier bancable trilingue FR/EN/ES (push) Has been cancelled
CI / CRM · workflow vente ERPNext (lead → CONFOTUR) (push) Has been cancelled
CI / CRM · DocType porteur OTO Dossier Vente (push) Has been cancelled
CI / CRM · barème commissions vendeurs (push) Has been cancelled
CI / CRM · Financement Bancaire (gate hypothécaire RD) (push) Has been cancelled
CI / Fiscal · e-CF DGII (Compupar) (push) Has been cancelled
CI / Frontend · Workspaces 5 portails rôle (push) Has been cancelled
CI / Legal · DocType CONFOTUR Application (push) Has been cancelled
CI / QA · Audit 5D conformité (push) Has been cancelled
CI / SEO · mots-clés trilingues + schema.org + hreflang (push) Has been cancelled
CI / Chat OTOIA · montage par portail (Custom Block) (push) Has been cancelled
CI / QA · Audit 4Big (95+/100 sur 100% deliverables) (push) Has been cancelled
CI / Démo · Scénarios (run-sheet P07 banquier / P05 client) (push) Has been cancelled
CI / QA · Matrice de régression exhaustive (Sprint 8) (push) Has been cancelled
CI / DevOps · Run-book de déploiement VPS unifié (Sprint 8) (push) Has been cancelled
CI / QA · Matrice d'acceptation / traçabilité MVP (Sprint 8) (push) Has been cancelled
CI / Mobile · config app Expo/EAS (navigation par rôle) (push) Has been cancelled
CI / PIE · manifest de dépendances (Annexe 12 · V10.1) (push) Has been cancelled
CI / E2E baseline Playwright (manuel) (push) Has been cancelled
CI / Gate qualité (agrégat) (push) Has been cancelled
|
||
|
|
9b502e67fe |
[DTP-Worker 20260803_090713] Auto exec · session 20260803_090713
CI / Contraintes NON-NÉGOCIABLES (CLAUDE.md) (push) Has been cancelled
CI / Validation JSON (schémas Faisabilité) (push) Has been cancelled
CI / Qualité documentaire (liens + 4Big) (push) Has been cancelled
CI / Reproductibilité des artefacts out/ (build == commité) (push) Has been cancelled
CI / Fraîcheur matrice de régression (run == commité) (push) Has been cancelled
CI / Intégrité du câblage CI (gate agrège tout · gates statiques verrouillés) (push) Has been cancelled
CI / Intégrité des chiffres du README (valeur == artefact cité · (push) Has been cancelled
CI / Publiciste · parser + schéma + generator (unittest) (push) Has been cancelled
CI / RBAC · 50 rôles + schéma (unittest) (push) Has been cancelled
CI / Faisabilité · générateur 4 volets + round-trip (unittest) (push) Has been cancelled
CI / RBAC · fixtures ERPNext (Role + Custom DocPerm) (push) Has been cancelled
CI / RBAC · plan User Permission (row-level) (push) Has been cancelled
CI / RBAC · Role Profile (bundles par portail) (push) Has been cancelled
CI / RBAC · run-book d'application unifié (agrégat 3 volets) (push) Has been cancelled
CI / Faisabilité · dossier bancable trilingue FR/EN/ES (push) Has been cancelled
CI / CRM · workflow vente ERPNext (lead → CONFOTUR) (push) Has been cancelled
CI / CRM · DocType porteur OTO Dossier Vente (push) Has been cancelled
CI / CRM · barème commissions vendeurs (push) Has been cancelled
CI / CRM · Financement Bancaire (gate hypothécaire RD) (push) Has been cancelled
CI / Fiscal · e-CF DGII (Compupar) (push) Has been cancelled
CI / Frontend · Workspaces 5 portails rôle (push) Has been cancelled
CI / Legal · DocType CONFOTUR Application (push) Has been cancelled
CI / QA · Audit 5D conformité (push) Has been cancelled
CI / SEO · mots-clés trilingues + schema.org + hreflang (push) Has been cancelled
CI / Chat OTOIA · montage par portail (Custom Block) (push) Has been cancelled
CI / QA · Audit 4Big (95+/100 sur 100% deliverables) (push) Has been cancelled
CI / Démo · Scénarios (run-sheet P07 banquier / P05 client) (push) Has been cancelled
CI / QA · Matrice de régression exhaustive (Sprint 8) (push) Has been cancelled
CI / DevOps · Run-book de déploiement VPS unifié (Sprint 8) (push) Has been cancelled
CI / QA · Matrice d'acceptation / traçabilité MVP (Sprint 8) (push) Has been cancelled
CI / Mobile · config app Expo/EAS (navigation par rôle) (push) Has been cancelled
CI / E2E baseline Playwright (manuel) (push) Has been cancelled
CI / Gate qualité (agrégat) (push) Has been cancelled
|
||
|
|
1f5a1622e3 |
[DTP-Worker 20260803_073711] Sprint 5/8 · doc · Canal 2 daily_reports remis à jour (session 070711 manquante)
Le snapshot stakeholder daily_reports/2026-08-03.md s'arrêtait à l'addendum
060704 ; la dernière session commitée (070711 ·
|
||
|
|
dbde8fac46 |
[DTP-Worker 20260803_070711] Sprint 8 QA · fix · 3 surfaces jumelles résiduelles du mensonge regression_run.json « non déterministe/non commité »
Le fix
|
||
|
|
db817309a0 |
[DTP-Worker 20260803_063711] Sprint 5/8 · doc · Canal 2 daily_reports remis à jour (3 sessions manquantes depuis 040643)
Le snapshot stakeholder du jour s'arrêtait à l'addendum 040643 → 3 sessions net postérieures ajoutées (050654 ci/README 2e workflow · 053701 fix regression_run.json prose-fact · 060704 fix citation roadmap bancable), toutes correctifs d'intégrité n'affectant pas les chiffres launch-readiness. Chiffres re-dérivés d'artefacts (22/22 · 569/569 · 15/15 · README Mobile 4931 o) → table de clôture inchangée. Sweep préalable (agent Explore) globs README/docstrings/comptes/liens = 0 dérive ungated. Gate-neutre (daily_reports non gaté) · run_ci.sh 30 PASS 0 FAIL. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
88d9955f90 |
[DTP-Worker 20260803_060704] Sprint 3 · fix · Citation roadmap fantôme dans bancable (prose-facts-vs-numeric-drift)
Docstring bancable_gen.py:5 + bancable/README.md:5 attribuaient au fichier ROADMAP_8_WEEKS_OR_LESS.md un libellé verbatim « 40_llm_outputs/ + rapports bancables FR/EN/ES » ABSENT de la roadmap (grep = 0 occurrence). Le §Sprint 3 réel dit « Faisabilité Auto » → « génération 4 volets <1h ». Le libellé cité vient des daily_reports (planif S3 du 2026-07-30), pas de la roadmap : citation mal-attribuée (même classe que « regression_run.json non commité »). Fix : §Sprint 3 cité fidèlement + volet financier bancable ré-attribué aux daily_reports / Portail Bancables 4Big, avec mention « pas un texte roadmap ». Consommateur qa/audit_4big/quality_report.json régénéré (README bancable 6103 → 6439 octets · verdict PASS 22/22 = 100/100 inchangé). Libellé fantôme cité par aucun gate. run_ci.sh 30 PASS 0 FAIL. Zéro module, zéro gate (#5). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
89eb8e68ad |
[DTP-Worker 20260803_053701] Sprint 8 · fix · Dérive doc-vs-réalité regression_run.json (classe prose-facts, jumelle du fix root-README)
`regression_gen.py` (docstring l.26) ET `qa/regression/README.md` (§ hand-off VPS
l.76) décrivaient encore la sortie `run` comme « NON déterministe → non commitée »
/ « manuel · non gated push/PR ». Faux sur les trois points, contredit par son
propre gate dédié `ci/check_regression.sh` (step `check-regression` de ci.yml) :
`regression_run.json` EST commité (git ls-files), EST déterministe (aucun
horodatage/hôte → deux `run` byte-identiques, en-tête du gate l.24-25) et EST
byte-gaté à chaque push/PR. Même dérive « regression_run.json non commité » déjà
corrigée dans le README racine (
|
||
|
|
b631774160 |
[DTP-Worker 20260803_043644] Sprint 5/8 · doc · Canal 2 daily_reports remis à jour : snapshot stakeholder du jour s'arrêtait à l'addendum 030641 (fiche store) → 2 livrables manquants ajoutés (P1 workflow CI/CD mobile-build.yml 033642 + fix doc-vs-CODE Mobile 040643) + table launch-readiness fin de journée. Chiffres re-dérivés d'artefacts (569/569 · 22/22 · 15/15). Gate-neutre (daily_reports non gaté) · run_ci.sh 30 PASS 0 FAIL
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
953e683be3 | [DTP-Worker 20260803_040643] Sprint 5 · fix · Dérive doc-vs-CODE Mobile : cmd_build écrit 5 fichiers (store_listing.json inclus) mais docstring app_config_gen.py « les 4 fichiers » + glob README omettaient store_listing → réalignés sur 5. Consommateur qa/audit_4big/quality_report.json régénéré (évidence DOC byte-count · verdict PASS 22/22 inchangé) · run_ci.sh 30 PASS 0 FAIL | ||
|
|
af84b21f89 |
[DTP-Worker 20260803_033642] Sprint 5 P1 · feat · CI/CD Mobile : workflow Gitea Actions mobile-build.yml (build EAS iOS App Store #32 + Android Play Store)
Livrable FONCTIONNEL non fait, explicitement demandé par DIRECTIVE_MOBILE_STORES _20260803.md P1 (« Créer .gitea/workflows/mobile-build.yml ») — classé non-bloqueur in-périmètre worker. Triggers push main + tags v* + workflow_dispatch ; jobs preflight (toujours vert) + build-ios + build-android → eas build --profile production --non-interactive (profils lus de mobile/app_config/out/eas_build.json). Activation différée (#6/#8) : builds gardés par `if secrets.EAS_TOKEN != '' && vars.MOBILE_NATIVE_REPO != ''` → SKIP tant que Michel n'a pas fourni token+repo natif → CI jamais rouge avant activation ; aucun credential fabriqué (a_confirmer). Code Expo natif = autre dépôt Gitea, cloné au run (jamais recopié). Gitea only (#2). Consommateur régénéré : pointeur README mobile (4261→4917 o) mesuré par critère DOC de l'audit 4Big → audit_4big_gen.py build régénéré (verdict inchangé 22/22 ≥95). check_ci_integrity n'inspecte que ci.yml → 2e workflow invisible au gate. Zéro nouveau module · zéro gate ajouté (#5). run_ci.sh 30 PASS · 0 FAIL. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
d0b354f81e |
[DTP-Worker 20260803_030641] Auto exec · session 20260803_030641
CI / Contraintes NON-NÉGOCIABLES (CLAUDE.md) (push) Has been cancelled
CI / Validation JSON (schémas Faisabilité) (push) Has been cancelled
CI / Qualité documentaire (liens + 4Big) (push) Has been cancelled
CI / Reproductibilité des artefacts out/ (build == commité) (push) Has been cancelled
CI / Fraîcheur matrice de régression (run == commité) (push) Has been cancelled
CI / Intégrité du câblage CI (gate agrège tout · gates statiques verrouillés) (push) Has been cancelled
CI / Intégrité des chiffres du README (valeur == artefact cité · (push) Has been cancelled
CI / Publiciste · parser + schéma + generator (unittest) (push) Has been cancelled
CI / RBAC · 50 rôles + schéma (unittest) (push) Has been cancelled
CI / Faisabilité · générateur 4 volets + round-trip (unittest) (push) Has been cancelled
CI / RBAC · fixtures ERPNext (Role + Custom DocPerm) (push) Has been cancelled
CI / RBAC · plan User Permission (row-level) (push) Has been cancelled
CI / RBAC · Role Profile (bundles par portail) (push) Has been cancelled
CI / RBAC · run-book d'application unifié (agrégat 3 volets) (push) Has been cancelled
CI / Faisabilité · dossier bancable trilingue FR/EN/ES (push) Has been cancelled
CI / CRM · workflow vente ERPNext (lead → CONFOTUR) (push) Has been cancelled
CI / CRM · DocType porteur OTO Dossier Vente (push) Has been cancelled
CI / CRM · barème commissions vendeurs (push) Has been cancelled
CI / Fiscal · e-CF DGII (Compupar) (push) Has been cancelled
CI / Frontend · Workspaces 5 portails rôle (push) Has been cancelled
CI / Legal · DocType CONFOTUR Application (push) Has been cancelled
CI / QA · Audit 5D conformité (push) Has been cancelled
CI / SEO · mots-clés trilingues + schema.org + hreflang (push) Has been cancelled
CI / Chat OTOIA · montage par portail (Custom Block) (push) Has been cancelled
CI / QA · Audit 4Big (95+/100 sur 100% deliverables) (push) Has been cancelled
CI / Démo · Scénarios (run-sheet P07 banquier / P05 client) (push) Has been cancelled
CI / QA · Matrice de régression exhaustive (Sprint 8) (push) Has been cancelled
CI / DevOps · Run-book de déploiement VPS unifié (Sprint 8) (push) Has been cancelled
CI / QA · Matrice d'acceptation / traçabilité MVP (Sprint 8) (push) Has been cancelled
CI / Mobile · config app Expo/EAS (navigation par rôle) (push) Has been cancelled
CI / E2E baseline Playwright (manuel) (push) Has been cancelled
CI / Gate qualité (agrégat) (push) Has been cancelled
|