[DTP-Worker 20260806_121542] VÉRIF axe NEUF « cohérence interne des 26 oracles-schémas » (required-vacuité + auto-contradiction const/enum/default) → CLEAN 26/26 (1405 nœuds · 317 checks · 0 nœud insatisfiable), 2 détecteurs maison teeth-prouvés (4/4 mordent) — 6e axe-schéma, faux-vert impossible à voir par les 5 axes existants ; 0 édition de production, run_ci 33 PASS 0 FAIL 0 SKIP, pas de gate (#5)

This commit is contained in:
Claude Code DTP Worker
2026-08-06 12:20:16 +00:00
parent 6c05538efb
commit 4aea5bddf7
+39
View File
@@ -1,5 +1,44 @@
# Activity Log · 2026-08-06 · Claude Code DTP Worker # Activity Log · 2026-08-06 · Claude Code DTP Worker
## Session `20260806_121542` — VÉRIF · axe NEUF « cohérence interne des 26 oracles-schémas » (required-vacuité + auto-contradiction const/enum/default) → CLEAN · 0 édition de production
**Choix de tâche.** `./run_ci.sh` au démarrage = **33 PASS · 0 FAIL · 0 SKIP**, arbre propre,
roadmap `ROADMAP_8_WEEKS_OR_LESS.md` intégralement livrée/gatée (Sprints 1→7 dans le repo ; prod VPS /
builds EAS / dépôts ONAPI hors périmètre worker · #8). `OPEN_DECISIONS_REGISTER.md` = 3 arbitrages
**produit appartenant à Michel** (non éditables). Objectif anti-churn : un axe teeth des oracles-schémas
encore **jamais balayé**.
**Axe NEUF (absent de la mémoire).** Les 5 axes-schémas déjà en mémoire vérifient : (1) non-vacuité
(`schema-oracle-teeth-audit`) · (2) fermeture/complétude (`schema-oracle-closedness-not-defect`) ·
(3) câblage à un test (`schema-oracle-wiring-axis`) · (4) résolution des `$ref`
(`schema-oracle-ref-integrity`) · (5) enum/const vs skip `python -S` (`schema-oracle-enum-const-vs-S-skip`).
Aucun ne vérifie la **cohérence LOGIQUE INTERNE d'un nœud** : un schéma peut être clos, non-vacuous en
surface, `$ref`-sain ET pourtant contenir un nœud **impossible à satisfaire** (donc faux-vert : le test
qui valide un objet construit en mémoire ne le remarque jamais si l'objet n'exerce pas ce nœud).
**Deux détecteurs maison (stdlib pur, marchent partout, sans réseau ni jsonschema).**
1. **required-vacuité** — un nœud objet avec `additionalProperties:false` ET une clé `required` **absente
de `properties`/`patternProperties`** est **inatteignable** (aucun objet ne peut valider). Marche
récursif sur tous les mots-clés porteurs de sous-schéma (`properties`, `items`, `$defs`, `allOf`,
`anyOf`, `oneOf`, `if/then/else`, `additionalProperties`-objet, …). `additionalProperties`-objet
ou absent (défaut `true`) ⇒ **non** signalé (la clé peut se satisfaire hors `properties`) = conservateur.
**1405 nœuds balayés · 0 vacuité.**
2. **auto-contradiction**`const`, chaque membre `enum`, et `default` sont confrontés à leurs
contraintes **sœurs** (`type`, bornes numériques `minimum`/`maximum`/`exclusive*`, `pattern`,
`min/maxLength`) ; plus les plages absurdes (`minimum>maximum`, `minItems>maxItems`). Un `const` qui
viole son propre `type`, un `default` hors `pattern`, un membre d'enum sous le `minimum` = données
invalides latentes / nœud mort. → **317 constraint-checks · 0 contradiction.**
**Dents prouvées.** Copies-mutant dans `/tmp` : `required:["ghost"]`+`additionalProperties:false`
détecteur 1 **MORD** ; `const:"notint"` sous `type:integer`, membre enum `5` sous `minimum:10`,
`default:"abc"` hors `pattern:^[0-9]+$`, `minimum:100/maximum:1` → détecteur 2 **MORD** (4/4). Les vrais
26 schémas restent CLEAN sur les deux → ce n'est pas un détecteur inerte.
**Conclusion.** **CLEAN 26/26** sur deux sous-axes de cohérence interne jamais couverts. Aucun faux-vert
d'oracle de ce type. **0 édition de production** (#8), `./run_ci.sh` inchangé = **33 PASS · 0 FAIL ·
0 SKIP**. Fichiers touchés : ce journal + 1 entrée mémoire (`schema-oracle-internal-consistency`). Sweep
**rejouable tel quel** (stdlib pur) — **NON promu en gate** (#5, occurrence-zéro).
## Session `20260806_101528` — VÉRIF · axe NEUF « fermeture & complétude des 26 oracles-schémas » → 1 anomalie investiguée (financement) = NON-DÉFAUT (choix explicite + couverture transitive byte-repro) · 0 édition de production ## Session `20260806_101528` — VÉRIF · axe NEUF « fermeture & complétude des 26 oracles-schémas » → 1 anomalie investiguée (financement) = NON-DÉFAUT (choix explicite + couverture transitive byte-repro) · 0 édition de production
**Choix de tâche.** `./run_ci.sh` au démarrage = **33 PASS · 0 FAIL · 0 SKIP**, arbre propre, **Choix de tâche.** `./run_ci.sh` au démarrage = **33 PASS · 0 FAIL · 0 SKIP**, arbre propre,