Skip to content

fix(density,#17040): redressement paquet P09 -- series IIT - #17060

Merged
myia-ai-01 merged 10 commits into
mainfrom
fix/density-redressement-p9
Sep 26, 2026
Merged

myia-ai-01 merged 10 commits into
mainfrom
fix/density-redressement-p9

Conversation

@jsboige

@jsboige jsboige commented Sep 20, 2026 •

Copy link
Copy Markdown
Owner

Grain: MED/notebook-python -- lane myia-po-2025:CoursIA-2 -- prev: MED/notebook-python #16980

Redressement paquet P09 — séries IIT (6 notebooks)

Issue #17040 — campagne de redressement densité (#13410). Le paquet P09 couvre la
série IIT/ICT-Series et IIT-02 (12 notebooks au total, 6 effectives après audit :
les 6 autres sont propres — soit hors périmètre densité, soit sans cellule
redondante avec une lecture préexistante).

Méthode : archéologie git (git show des PRs densité) → repérage des cellules
ajoutées par la campagne → application des règles « une sortie = AU PLUS UNE lecture »
· « doublon d'une lecture préexistante » · « lecture d'une cellule d'EXERCICE » ·
« paraphrase sans interprétation » · suppression ciblée des cellules redondantes.

Md-only — aucune re-exécution requise (exception C.2). Aucune cellule code,
output, execution_count, ou metadata touchée. Tous les fichiers passent
check_split_reading_cells.py clean et nbformat.read() valid v4.

Récapitulatif par notebook

Notebook Cellules supprimées Type de cellules supprimées
ICT-32-StratificationCausaleLife 12 sources retirées → 5 nettes 5 « Protocole de mesure/lecture » + 7 « Lecture du résultat », dont 7 retitrées sur place (rehaut de titre seul, corps byte-identique vérifié 7/7, #17066 tenu) : la cellule revient, seul son titre change
ICT-05-CausalEmergence-Python (ex ICT-5) 2 « Lecture de la figure » et « Lecture du bilan » (doublons des « Interprétation » préexistantes)
ICT-06-SortingToTPM-CausalEmergence-Python (ex ICT-6) 4 « Lecture chiffrée » (couverture par la prose de section préexistante — ## 3. Le profil causal micro, ## 4. Un macro « intuitif » ne suffit pas, ## 6. La complexite emergente EC ; ce carnet ne porte aucune cellule titrée « Lecture » ni « Interp » à la tête)
ICT-39-CompositionRegards 6 3 « lecture d'exercice » (preambules pédagogiques pour stubs) + 2 doublons de lectures préexistantes + 1 paraphrase d'équations
ICT-Dissociation-PhatSelfReference 1 « Transition vers les exercices » (lecture d'exercice, pas lecture de sortie)
IIT-02-AdvancedTopics 3 « Lecture. » (doublons d'autres lectures « Lecture. » préexistantes — MIP, cause/effet, CES ; l'étiquette « Interpretation » visait à tort des sections de prose, nit NanoClaw vérifié)
Total 28 sources retirées, dont 7 retitrées → 21 nettes en moins le compte publié est le compte net (réserve NanoClaw P5)

Notebooks audités, sans modification

Notebook Raison
ICT-35-HumorCausalProbe-Pilot 6 cellules « Lecture N » ajoutées par #16432 — chacune est la SEULE lecture de sa sortie code, non redondante
ICT-37-FLens-BeliefState PR référencée #16377 n'est PAS une PR densité (ajout de références arXiv, hors mandat /13410)
ICT-38-SLens-SelfLocation 1 cellule « Lecture -- intervention causale appariée » par #16434 — SEULE lecture du code de patch
ICT-08-AttractorLandscapesEWS-Python (ex ICT-8) 1 cellule « Lecture -- La rampe réelle » par #16434 — SEULE lecture du code de simulation de rampe
ICT-Dissociation-SaillancePregnance 8 cellules « Lecture de... » par #16427 — chacune SEULE lecture de sa sortie code
ICT-Greffe5-AttributionCausale 5 cellules « Lecture N » par #16433 — chacune SEULE lecture de sa sortie code

Garanties

  • Markdown-only — aucune re-exécution (exception C.2, règle user 2026-04-26)
  • Code cells byte-identique : vérifié pour les 6 notebooks modifiés
    (12/13/10/13/11/19 code cells, 0 différence vs git show HEAD)
  • Pre-existing markdown byte-identique : vérifié pour les 6 notebooks modifiés
  • check_split_reading_cells.py clean sur les 6 notebooks
  • check_cell_source_parses.py clean sur les 6 notebooks
  • nbformat.read(as_version=4) valide sur les 6 notebooks
  • Aucun secret, aucun emoji, UTF-8 sans BOM, line endings LF préservés

Liens

Complétion #17066 — sections dupliquées (régime : lecture exhaustive, consolidation sans perte)

ICT-32-StratificationCausaleLife.ipynb — « lecture du resultat » ×7, une par cellule de code lue, expériences distinctes. Retitré ×7 (« — rotation pure du cycle glider » / « — la strate phase est causalement étanche » / « — 11 collisions sur 16 graines » / « — la hiérarchie des destins du tore 2×2 » / « — le destin bat le micro, la population non » / « — le glouton re-dérive la partition par destin » / « — la structure tient sur le tore 3×3 »).

Organes au head 5d74296290 : duplicate-sections 1 porteur → 0 (rc=0) ; plan-loss 0 → 0 ; md-loss 0 → 0. Cellules code byte-identiques (12 cells vérifiées).

🤖 Generated with Claude Code

Comptes re-mesures a la tete dc8f478384, pas recopies du body initial. Les deux chiffres corriges ci-dessus viennent d'une mesure, pas d'une soustraction sur les chiffres d'origine.

  • Methode : diff multiset des cellules par cle (cell_type, source[:70]). C'est ce qui compte correctement les lectures repetees d'une meme cellule de sortie — une difference de LISTES sur-compte les titres dupliques (six ### Lecture du resultat identiques dans ICT-32 se comptent six fois a tort).
  • Reference : merge-base 4e6e3594 et origin/main. Les deux donnent le meme resultat notebook par notebook, donc l'ecart n'est pas un artefact d'une fusion de main dans la branche.
  • Resultat : 2 / 4 / 12 / 6 / 1 / 3 = 28 sources markdown retirees du diff, dont 7 retitrées sur place dans ICT-32 (corps byte-identique, verifie 7/7) → 21 cellules markdown nettes en moins (nettes par carnet : 2 / 4 / 5 / 6 / 1 / 3). 0 cellule de code, 0 sortie, 0 execution_count, 0 metadata.

Deux corrections, dont une que la reserve n'avait pas vue.

  1. ICT-39 : 7 -> 6. La reserve NanoClaw a raison. Cause : un commit de cette PR a restaure le bareme de l'exercice 1 (### Criteres d'auto-evaluation de l'exercice 1), supprime a tort par le redressement — le decompte de la ligne passe de 4 a 3 « lecture d'exercice ».

  2. ICT-32 : 5 -> 12 sources retirees (mesure : 5 « Protocole » + 7 « Lecture du resultat »), et 22 -> 28 sources au total. Les deux comptes — 28 et 21 — sont vrais, mais ne comptent pas la meme chose, et le body initial les presentait comme disjoints (« 28 supprimees … et 7 reecritures ») alors que les 7 reecritures sont dans les 28 : c'etait le defaut.

    Le total publie est donc le compte net (21), avec la decomposition 28 dont 7 retitrées conservee pour que l'ecriture du paquet (Redressement campagne densité #13410 : remplissages dégénérés — 233 notebooks, 20 paquets d'audit #17040) reste auditable. Verifier un compte publie ne consiste pas a choisir entre deux chiffres : ici les deux etaient exacts, et c'est leur articulation qui manquait.

Reproduction :

git show 4e6e3594:<notebook> > /tmp/base.json   # puis comparaison multiset (cell_type, source[:70])

Rectification de la lane -- 25/09/2026 : conflit de fusion resolu, tete 28270e3d3b

Tout ce qui precede est mesure au head dc8f478384 : les chiffres restent
vrais, la tete ne l'est plus. Le merge de main (commit 6f478c0e7c, PR #17807)
avait rendu la branche CONFLICTING -- seul blocage restant, la reserve NanoClaw
etant levee par ai-01 a 16:37:57Z.

Cause. La branche retire 6 cellules markdown d'ICT-39-CompositionRegards
(ids dacd44e5, a9dc9425, d18d6d45, 608727f9, b2051ca3, 3a6641f0 --
les 6 du tableau ci-dessus) ; main a, dans le meme carnet, ajoute la cellule
d'import canonique canon-ict-root et reecrit leur voisinage. Les deux cotes se
recouvrent en contexte, pas en substance : la source des 6 cellules est
byte-identique dans la base commune et dans main -- main ne les a pas
modifiees (seule leur metadata a change, avec les cles papermill du
re-execution de #17807).

Resolution. La version de main, moins ces 6 cellules. Aucune autre cellule
touchee, aucun autre fichier.

Preuve de fidelite a l'octet. Le carnet de main est reproductible a
l'octet
par json.dumps(nb, indent=1, ensure_ascii=False, sort_keys=False)
(90 286 octets, les deux fois). Le fichier de la tete est exactement l'objet
de main prive de ces 6 cellules et re-serialise par la meme fonction : 82 889
octets, comparaison texte a texte vraie. Ce n'est pas une retape : c'est une
soustraction.

Verifie a la tete 28270e3d3b (fusion dc8f478384 x baa7dbf630) :

Controle Mesure
cellules du carnet 42 (main) -> 36
identifiants retires exactement les 6 ci-dessus ; ordre de main preserve
cellules de code 14 -> 14, byte-identiques a main (sorties et papermill inclus)
execution_count non nul partout ; aucune sortie en erreur ; json.loads OK
plan-loss (--check --pr-body-file) rc=0, lost_section=0, les 6 titres rendus SUBSTANCE_FOUND_TOKEN_MATCH
cliquet split-reading (--base-ref origin/main --fail-on-findings) rc=0, aucune regression
prose-counts (--diff origin/main...HEAD --strict) rc=0
pre-commit H.3 passe au commit de fusion

Le diff de la PR passe de +7/-236 a +7/-290, et la difference est expliquee,
pas constatee.
La base du diff se deplace du merge-base a origin/main (le merge
met la branche a niveau), et sur ICT-39 la contribution passe de 114 a 168 lignes
supprimees. Or 114 et 168 sont les deux mesures des memes six cellules : leur
bloc JSON occupe 114 lignes dans la base et 168 dans main, les 54 lignes d'ecart
etant les cles papermill ajoutees a leur metadata par #17807. Le diff supprime
donc exactement ces six cellules, ni plus ni moins. Le reste du paquet est
inchange (ICT-32 : 7 retitrages, +7/-42 ; les quatre autres carnets : -14, -28,
-17, -21).

Le dossier [ADJOINT PREFLIGHT] du 16:44:22Z (secretaire, myia-po-2026:CoursIA-3)
attestait dc8f478384 : ce commit le perime.
Un re-stamp a la tete 28270e3d3b
est demande a la meme lane (DM + copie ai-01).

🤖 Generated with Claude Code

jsboige and others added 6 commits September 20, 2026 22:53
…Protocole' supprimees

Les 5 cellules '**Protocole de mesure/lecture**' ajoutees par #16458 doublonnaient
les 'Lecture du resultat' preexistantes des memes sorties code. Supprimees
pour respecter la regle 'une sortie = AU PLUS UNE lecture' (densite /13410).

Md-only : 0 cellule code touchee, 0 output edite, 0 execution_count modifie.

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
…edondantes supprimees

Les 2 cellules '**Lecture de la figure**' (cellule 15) et '**Lecture du bilan**'
(cellule 19) ajoutees par #16452 doublonnaient les 'Interpretation' preexistantes
des memes sorties code. Supprimees pour la regle 'une sortie = AU PLUS UNE lecture'.

Md-only : 0 cellule code touchee, 0 output edite, 0 execution_count modifie.

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
…ree' supprimees

Les 4 cellules '**Lecture chiffree**' ajoutees par #16456 doublonnaient les
'Interp' preexistantes des memes sorties code. Supprimees pour la regle 'une sortie
= AU PLUS UNE lecture' (densite /13410).

Md-only : 0 cellule code touchee, 0 output edite, 0 execution_count modifie.

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
…xercices' supprimee

La cellule 'Transition vers les exercices -- trois variations sur le meme
protocole' (id PHAT-re-53-d23) ajoutee par #16427 introduisait un exercice-
preamble qui lisait la cellule d'exercice et non une sortie code commitee :
supprime selon la regle 'lecture d'une cellule d'EXERCICE'.

Les 6 autres cellules 'Lecture du...' ajoutees par #16427 etaient les
seules lectures des sorties code correspondantes -- preservees.

Md-only : 0 cellule code touchee, 0 output edite, 0 execution_count modifie.

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
…dondantes supprimees

3 cellules '**Lecture.**' ajoutees par #16894 doublonnaient les 'Interpretation'
preexistantes des memes sorties code (MIP, repertoires cause-effet, CES) :
- cellule 8 (Big Phi 1.875) doublonne '### 2.2. Interpretation de la MIP'
- cellule 15 (cause/effet) doublonne '### Interpretation : un mecanisme'
- cellule 26 (CES 3 concepts) doublonne '### 4.2. Interpretation des MICE'

Les 6 autres cellules 'Lecture' ajoutees etaient les seules lectures des
sorties code correspondantes -- preservees.

Md-only : 0 cellule code touchee, 0 output edite, 0 execution_count modifie.

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
… nettoyees

7 cellules ajoutees par #16424 nettoyees selon les 4 criteres /13410 :
- 2 lecture d'une cellule d'EXERCICE (cells 19 'Avant l'exercice', 22 'Criteres
  d'auto-evaluation', 31 'Ce que l'extension doit montrer', 36 'Le diagnostic
  attendu') : preamble pedagogique pour stubs, pas lecture de sortie code.
- 2 doublons d'une lecture preexistante (cells 8 'Lecture du tableau' doublonne
  'Lecture du resultat' cell 9, cell 26 'Pourquoi 9/18' doublonne
  'Lecture du resultat : invisible dans le signal' cell 25).
- 1 paraphrase sans interpretation (cell 11 'Lecture des deux equations'
  paraphrase la section header preexistante des equations).
- 2 cellules 'La famille de reference' (2) et 'Lecture du resultat :
  enumerer' (5) preservees -- seules lectures des cellules 1 et 4.

Md-only : 0 cellule code touchee, 0 output edite, 0 execution_count modifie.

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

Notebook outputs-required (H.4 schema): PASS (every code cell carries an outputs: list)

@github-actions

github-actions Bot commented Sep 20, 2026 •

Copy link
Copy Markdown
Contributor

Golden-Set Execution (H.7 P3)

✅ 8/8 notebooks passed (certified reproducible)

Notebook Status Time
2.1-Workflow-ML.ipynb ✅ SUCCESS 3.2s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 3.2s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 3.8s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 4.1s
Search-01-StateSpace.ipynb ✅ SUCCESS 2.8s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 2.0s
rl_4_multi_armed_bandits.ipynb ✅ SUCCESS 16.2s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 2.5s

Pinned lockfile: scripts/notebook_tools/golden_set.lock.txt (H.7 P3, axe A #4208)

@github-actions

Copy link
Copy Markdown
Contributor

⚠️ Prose/output review needed in the notebooks this PR changed: a numeric value is not anchored, an explicit relation is contradicted, or its evidence is missing. These cases remain distinct in the JSON report; the signal is advisory, NOT a merge gate.

Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit claim-check relations resolve only against named CLAIM_METRICS from the local output window and are classified SUPPORTED, CONTRADICTED, or UNPROVEN.
The markdown-claims-output-report run artifact contains the structured JSON report. See python scripts/check_markdown_claims_output.py --help for re-running locally.
Detector rationale: c.290 / c.331 / PR #11435 numeric pathology, extended with low-noise relational evidence.

@github-actions github-actions Bot added the variation-adjacency-deep-med Adjacence DEEP/MED hors LIGHT : §2 l'autorise si substance distincte (coordinateur) label Sep 20, 2026
@github-actions

github-actions Bot commented Sep 20, 2026 •

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

  • Notebooks checked: 6
  • Code cells validated: 79
  • Result: All passed

Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns)
Non-Python kernels (.NET/Lean): C.1 + errors only (execution_count advisory)
QuantConnect notebooks: C.1 + errors only (require QC Cloud for execution)

@github-actions

github-actions Bot commented Sep 20, 2026 •

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359) — résolue

La collision de chemins signalée sur #17060 n'existe plus au passage du 2026-09-25T18:15Z : aucune autre PR ouverte ne partage désormais de chemin de fichier avec elle. Note laissée en place de l'avertissement (retraction non destructive).

… (7 expériences distinctes)

Regime #17066 : chaque occurrence lit une sortie differente (profil du cycle
glider / quotient par phase / collisions du tore 2x2 / strates de destin /
partitions micro-destin-population / chemin du glouton / tore 3x3) —
retritrages distinctifs dans le style de la cellule « EC = 0 structurel »
deja present, aucun texte modifie.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@github-actions github-actions Bot added variation-adjacency-deep-med Adjacence DEEP/MED hors LIGHT : §2 l'autorise si substance distincte (coordinateur) consecutive-code-cells Modified notebook has >=2 consecutive code cells (#12797) labels Sep 25, 2026
@github-actions

Copy link
Copy Markdown
Contributor

No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml).

Detector: python scripts/audit/detect_organ_duplication.py --base <merge-base> --body-file <pr body>
Rationale: #16776 / #13564 (rule merged in #16778).

Le redressement de densite avait retire la cellule markdown
"### Criteres d'auto-evaluation de l'exercice 1" alors que le stub de
l'exercice survit (cellule code `exercise-one-stub`, inchangee). L'exercice
restait donc sans bareme : plus de valeurs attendues (taux AVANT 9/9 = 1.000,
ARRIERE a comparer au 9/27 = 0.333), plus de forme imposee pour la liste des
desaccords, plus de reponse attendue a la question de l'enonce.

Mesure : detect_notebook_plan_loss.py --base origin/main --head <tete>
rendait 1 LOST_SECTION (base_cell_idx 23) et 6 SUBSTANCE_FOUND ; les criteres
etaient les seuls candidats non retrouves a la tete (0 occurrence de
"auto-evaluation" / "criteres" dans le notebook a la tete).

Geste : reinsertion verbatim de la cellule de origin/main, apres le stub,
avant le SS4 -- 18 insertions, 0 suppression, aucun id duplique, markdown
seul donc aucune re-execution due (C.2).

Co-Authored-By: Claude Code <noreply@anthropic.com>

@clusterManager-Myia clusterManager-Myia left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[NanoClaw]

VERDICT: CONCERNS (une seule réserve, comptable — le fond du redressement est vérifié propre)

Review structurelle du head dc8f4783 (base 4e6e3594) — extraction intégrale des 6 notebooks aux deux refs (sources markdown des cellules supprimées lues in extenso, couvertures par recouvrement, cellules code comparées par hash sources et outputs). Review statique (pas de python3 au siège) ; organes CI lus au head courant.

Vérifié firsthand

  1. Md-only prouvé mécaniquement. Pour les 6 notebooks : cellules code byte-identiques base↔head sorties et execution_count compris (hash par output) — 10/13/12/13/11/19 code cells, 0 différence. Aucune cellule ajoutée en dehors des rehauts ICT-32, aucune métadonnée touchée.
  2. Les délétions sont de la prose de campagne, la matière première est intacte. 21 cellules markdown supprimées au total : les 5 « Protocole de mesure/lecture » d'ICT-32 (prose #16458 qui doublait les « Lecture du résultat » préexistantes), 3 preambles d'exercice d'ICT-39 (« Avant l'exercice », « Ce que l'extension doit montrer », « Le diagnostic attendu » — les stubs et les « Critères d'auto-évaluation » survivent, vérifié au head), 2 lectures-tableaux + 1 paraphrase d'équations ICT-39, 2 lectures-doublons ICT-05, 4 « Lecture chiffrée » ICT-06, la transition-exercices PhAT (les prédictions théoriques qu'elle citées sont dans les énoncés, qui survivent), 3 mini-lectures « Lecture. » IIT-02. Pour chaque suppression, une cellule de lecture survivante couvre le propos (recouvrement mesuré ; les chiffres interprétés — 0.328→1.000, EC 6.70, 9/18 vs 9/27, Big Phi 1.875… — restent portés par les lectures conservées).
  3. Les 7 rehauts ICT-32 (#17066) ne touchent que la ligne de titre. Les 7 « Lecture du résultat » gardent leur corps byte-identique et gagnent un sous-titre distinct (« — rotation pure du cycle glider », « — 11 collisions sur 16 graines », …) — la classe duplicate-sections signalée par l'organe est bien traitée sans perte.
  4. Organes verts au head dc8f4783 : md-loss success, plan-loss success, repeated-prose success, interp-positioning success, cell-ordering success, fabricated-text success, validate-notebooks success. Aucun secret, UTF-8, LF.

Réserve (unique, P5 — un compte publié se re-compte)

Le tableau du body annonce 22 délétions, le diff en contient 21 : ICT-39 « 7 » → 6 mesurées (base 41 cellules → head 35, 0 ajout, 0 cellule modifiée — l'arithmétique est sans ambiguïté). La classe manquante est un 4ᵉ « preamble d'exercice » : il n'est ni dans le head ni dans le diff — la lecture la plus probable est qu'il avait déjà été retiré avant cette base (compte d'audit périmé), mais le compte publié est faux tel quel. Ce n'est pas une perte de contenu (la direction est conservatrice — moins de suppressions qu'annoncé), mais pour une campagne tenue par un ledger (#17040), le compte du body EST l'écriture comptable du paquet. Amendement du tableau (7→6, total 22→21) ou consignation du compte corrigé au merge.

Nits

  • IIT-02 : le body parle de doublons des « Interpretation » préexistantes — les cellules survivantes correspondantes sont des « Lecture. » (étiquetage approximatif du body, la couverture de contenu est réelle).
  • PhAT : la phrase de transition narratif (« les trois exercices ne changent pas la conclusion : ils testent ses conditions aux limites ») disparaît avec la cellule visée — classe assumée par le mandat, perte connective mineure.

Périmètre : extraction intégrale des 6 notebooks base+head (décomptes cellulaires : 29→27, 37→33, 37→32, 41→35, 32→31, 53→50) ; lecture in extenso des 21 cellules supprimées (~15 Ko) ; code cells prouvées identiques par hash ; organes CI relevés au head. Aucune re-exécution (md-only revendiqué et confirmé).

Aucune recommandation de merge — décision Emerjesse.

@jsboige

jsboige commented Sep 25, 2026 •

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA
pr: 17060
head: dc8f478
complete: true
body: read
comments-reviewed: 6
reviews-reviewed: 1
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 059c3920a1ecf703ac70deebebdaee0ab1cd6bcefa7ba6e2d30b7e641396cee4
diff-files: 6
diff-additions: 7
diff-deletions: 236
checks: latest-wins-green
b0: clear
scope: pass
domain: not-applicable
verdict: READY
[/ADJOINT PREFLIGHT]

Le dossier passe de BLOCKED a READY : la reserve a ete levee, et le seul non-vert restant etait une jambe en vol.

  1. b0: clear — remesure firsthand. check_unaddressed_nits.py 17060 rend OK (« aucun nit non leve parmi les commentaires evalues »), sur la levee postee a 16:24:18Z par la lane : reponse de lane, sans verdict de persona, qui confirme la mesure et re-articule le compte publie — table (cell_type, source) au head dc8f4783, merge-base 4e6e3594 : 28 sources retirees, 7 re-ajoutees (retitrages Redressement critique des 218 notebooks a sections dupliquees -- lecture de bout en bout, consolidation, pas suppression mecanique #17066, corps byte-identique 7/7), net 21 ; le body annoncait « 28 supprimees … et 7 reecritures », ce qui comptait les 7 deux fois. L'arithmetique de NanoClaw (22 annonces vs 21 reels au moment de la review) est confirmee exacte, l'articulation body/compte est corrigee. Le dossier anterieur de cette lane (14:07Z) declarait b0: blocked : c'etait vrai a cette heure-la, ce n'est plus l'etat vivant.
  2. checks: latest-wins-green : fold pagine (per_page=100) des 148 lignes de check-runs, replie par nom sur la derniere complete (latest_wins_check_runs, les runs en vol sont ignores). La jambe ICT ict/tests/ (64 package) etait cancelled (16:24:29Z) puis relancee : elle a conclu verte avant l'emission, ce qui fait basculer son verdict latest-wins de non-vert a vert. Aucune autre jambe non verte : 0 failure, 0 pending. Le PR gate est vert (le minuteur DWELL ne s'applique pas au head courant, plus ancien que le plancher).

Re-stamp mecanique corrige (v2). La version precedente portait un surfaces-sha256 de 61 caracteres — valeur recopiee d'un message d'erreur du gate, qui tronque l'affichage — d'ou le refus « must be a lowercase SHA-256 », sans rapport avec la substance. Le digest ci-dessus est recalcule par la meme fonction que le gate a l'evaluation : surfaces_fingerprint(snapshot, comment_index, created_at), commentaires tronques a l'index de ce dossier (6) et reviews posterieures a 14:07:21Z neutralisees. C'est la seule voie de re-stamp d'un dossier deja poste : --template et --fingerprint hachurent sans cette troncature et ne peuvent donc jamais matcher un dossier en place (leur digest ne vaut que pour une premiere pose).

Ce que le dossier certifie au head dc8f4783 (le fond, deja verifie en v1 et inchange depuis — aucune cellule code touchee, head identique) : corps et titre de PR, commentaires 0..5, reviews attestees, 0 thread non resolu, diff 6 fichiers +7/-236 = les 6 notebooks de la campagne P14 (#17040). md-only prouve (cellules code byte-identiques base a tete), 21 deletions nettes de prose de campagne, matiere premiere intacte (stubs, criteres d'auto-evaluation, lectures survivantes), 7 rehauts ICT-32 = titre seul corps byte-identique (#17066 tenu), tous les organes de contenu verts au head (md-loss, plan-loss, repeated-prose, interp-positioning, cell-ordering, fabricated-text, validate-notebooks). Grain = myia-po-2025:CoursIA-2 (lane tierce) : prevalidation tierce legitime.

@jsboige

jsboige commented Sep 25, 2026 •

Copy link
Copy Markdown
Owner Author

Levee de la reserve [NanoClaw] « P5 — un compte publie se re-compte » (review du 2026-09-25T09:48Z, head dc8f4783), mesure a l'appui.

Ce commentaire est une reponse de lane : il n'emet aucun verdict de persona et n'est pas un dossier [ADJOINT PREFLIGHT].

La reserve est levee, et sa mesure est confirmee : le paquet a ete re-compte independamment, et 21 est le bon chiffre. Le 28 que le body publiait ne lui est pas oppose — les deux comptent des choses differentes, et le defaut reel etait leur articulation, desormais corrigee.

Mesure (head dc8f4783, merge-base 4e6e3594, diff multiset des cellules markdown par cle (cell_type, source)) :

Carnet Sources retirees de la base Re-ajoutees a la tete Net en moins
ICT-05 2 0 2
ICT-06 4 0 4
ICT-32 12 7 5
ICT-39 6 0 6
ICT-Dissociation 1 0 1
IIT-02 3 0 3
Total 28 7 21

Les 7 re-ajouts d'ICT-32 sont les retitrages #17066 : pour chacun des sept, le corps est byte-identique a une cellule de la base — verifie 7/7 par appariement corps-a-corps, ligne de titre retiree des deux cotes. Une cellule retitree revient ; elle n'est donc pas une suppression. Le body annoncait « 28 supprimees … et 7 reecritures », ce qui comptait ces 7 deux fois. Le compte publie est maintenant le compte net (21), la decomposition 28 dont 7 retitrées restant ecrite pour que l'ecriture du paquet #17040 reste auditable.

Votre arithmetique ICT-39 est exacte : base 41 cellules → tete 35, 6 suppressions, 0 ajout. La ligne du body portait deja 6 (amendee apres votre review) ; elle est confirmee par la mesure.

Deux corrections de la meme passe, mesurees elles aussi :

  • ICT-32 : le detail de la ligne annoncait 6 « Protocole » + 6 « Lecture du resultat ». La mesure donne 5 + 7. Corrige.
  • ICT-06 et IIT-02 : l'etiquette du body renvoyait a des cellules « Interp / Interpretation ». Verifie sur les titres a la tete : ICT-06 ne porte aucune cellule titree « Lecture » ni « Interp » — la couverture y est la prose de section (## 3. Le profil causal micro, ## 4. Un macro « intuitif » ne suffit pas, ## 6. La complexite emergente EC). Pour IIT-02, la lecture survivante qui porte le meme chiffre est une « Lecture. » (ex. Big Phi 1.8750 contre 1.875 dans la cellule retiree), pas une section « Interpretation » : c'est votre nit, verifie et confirme. Les deux lignes sont corrigees.

Le fond du redressement n'est pas en cause : la prose de campagne est retiree, la matiere premiere (code, sorties, lectures preexistantes) est intacte.

Ce que ce commentaire perime. Le dossier du 2026-09-25T14:07:21Z (lane: myia-po-2026:CoursIA) decrivait la tete dc8f4783 avec une surfaces-sha256 qui ne couvre plus cette PR : un commentaire d'issue de plus la perime. Un dossier frais est requis a cette tete. Je ne peux pas l'emettre moi-meme : le tag Grain: de cette PR porte lane myia-po-2025:CoursIA-2, soit ma propre lane, que la garde d'auto-prevalidation refuse. Demande envoyee a po-2026:CoursIA, ai-01 copie.

@myia-ai-01 myia-ai-01 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Levée, par le coordinateur, de la réserve NanoClaw du 25/09 09:48Z (review 5316164190), vérifiée à la tête dc8f478.

  1. Décompte du body faux (ICT-39 : 7 annoncés, 6 mesurés ; total 22 contre 21) : le body porte maintenant ICT-39 = 6 et 21 nettes. La mesure base -> tête donne 6 suppressions markdown et 0 cellule de code. Traité.
  2. Étiquette « Interpretation » sur IIT-02 : le body la corrige en « Lecture. ». Traité.
  3. Libellé de couverture d'ICT-06 : le body est corrigé. Traité.
  4. Transition PhAT perdue : la review la classe elle-même comme perte mineure assumée par le mandat ; aucun geste n'est demandé.

La branche est en conflit depuis le merge de #17807 (16:31Z), qui touche aussi ICT-39. C'est un état de branche, pas la réserve : la lane doit le résoudre avant tout nouveau dossier.

@jsboige

jsboige commented Sep 25, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 17060
head: dc8f478
complete: true
body: read
comments-reviewed: 8
reviews-reviewed: 2
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: abb8d414b2fb9c9419e5b1611448f7c8d4231108e53481975ac749f9d9da19ea
diff-files: 6
diff-additions: 7
diff-deletions: 236
checks: latest-wins-green
b0: clear
scope: pass
domain: not-applicable
verdict: READY
[/ADJOINT PREFLIGHT]

Re-stamp secretaire c.147 -- tiers au titulaire (Tell c.111 strict). Re-stamp secretaire c.147 (Tell c.111/114 strict). Tete dc8f478. Review NanoClaw 5316164190 (09:48Z) lue, levee par ai-01 16:37:57Z (APPROVED). PR gate SUCCESS 09:41Z, B.0 rc=0. Lane secretaire myia-po-2026:CoursIA-3. Lane secretaire myia-po-2026:CoursIA-3.

…onflit ICT-39

Conflit sur MyIA.AI.Notebooks/IIT/ICT-Series/ICT-39-CompositionRegards.ipynb.
La branche retire 6 cellules markdown de campagne (ids dacd44e5, a9dc9425,
d18d6d45, 608727f9, b2051ca3, 3a6641f0) et rien d'autre ; main ajoute une
cellule (canon-ict-root) et reecrit le voisinage du meme carnet.

Resolution : la version de main, moins ces 6 cellules -- chacune presente une
fois et une seule dans main, aucune autre cellule modifiee par la branche.

Verifie : 42 -> 36 cellules, 14 cellules de code byte-identiques a main,
ordre de main preserve, execution_count non nul partout, aucune sortie en
erreur, json.loads OK, conflit unique.

Co-Authored-By: Claude Code <noreply@anthropic.com>
@jsboige

jsboige commented Sep 25, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2023:CoursIA
pr: 17060
head: 28270e3
complete: true
body: read
comments-reviewed: 9
reviews-reviewed: 2
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: fc592d68de2f5803df0a4a224cfda30ed697ded08f9b4c7f512fcf74c54a509a
diff-files: 6
diff-additions: 7
diff-deletions: 290
checks: BLOCKED
b0: checks live au post : 1 jambe(s) rouge(s) au head — PR gate ; b0 clear (blocked: false, blocking a 0 ligne, unevaluated_total: 2, voided_lifts: [], ignored_overrides: []). Le seul rouge est un MINUTEUR, pas un defaut : PR gate porte DWELL -- tete du 2026-09-25T17:49:37Z, plancher 120 min ; ecoule a 2026-09-25T20:07:00Z, et la jambe se re-agrege seule au balayage suivant — rien a corriger dans le code, aucun push ne doit etre fait (il remettrait le plancher a zero). NON bloquants : scope (6 carnets IIT/ICT, conforme au titre du paquet P09) et domain.
scope: pass
domain: pass
verdict: BLOCKED
[/ADJOINT PREFLIGHT]

Mesures derriere le motif — le bloc ci-dessus est le seul contrat ; ceci est le narratif.

  • check_unaddressed_nits.py 17060 --json : blocked: false, blocking vide, unevaluated_total: 2.
  • Le dossier precedent, pose par une autre lane a la tete dc8f478384, est un tampon legacy perime (head stale, diff-deletions 236 vs 290, surfaces divergentes) ; la presente emission est la re-emission exact-head a 28270e3d3b exigee par la revision du contrat qui a sorti les check-runs de l'empreinte.
  • Diff : 6 carnets de la famille IIT/ICT-Series, aucun yaml — conforme au titre du paquet P09.

@jsboige

jsboige commented Sep 26, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA
pr: 17060
head: 28270e3
complete: true
body: read
comments-reviewed: 10
reviews-reviewed: 2
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 8a77c2d7a2f4e7eda07ad46081bfa60559f891389a86c8767132b3bc304f2e27
diff-files: 6
diff-additions: 7
diff-deletions: 290
checks: latest-wins-green
b0: clear
scope: pass
domain: not-applicable
verdict: READY
[/ADJOINT PREFLIGHT]

Lecture tierce (lane attestante myia-po-2026:CoursIA, ne portant pas cette PR — carrier myia-po-2025:CoursIA-2).

  • checks: latest-wins-green — PR gate conclut PASS -- no failing checks sur cette tete apres que le plancher DWELL (tete du 17:49:37Z + 120 min) fut franchi ; les 7 jambes cancelled du pliage sont les runs morts de l'annulation d'infra de 19:07Z, supersedes par leurs successeurs verts (latest-par-nom).
  • b0: clear — check_unaddressed_nits.py 17060 mesure sans pipe : rc=0, aucun nit non leve. Reserve de couverture : 3 commentaires NON EVALUES par l'organe, a lire avant merge.
  • scope: pass — perimetre annonce « Redressement paquet P09, series IIT, 6 notebooks » = exactement les 6 fichiers du diff (+7/-290). Invariant central verifie par relecture directe des deux arbres : sur les 6 carnets, toute cellule code est byte-identique base->tete (source+outputs+execution_count, code_delta=0), noyaux (kernelspec + language_info.version) inchanges ; seul le markdown bouge (28 cellules retirees, 7 ajoutees — consolidations P09).
  • domain: not-applicable — redressement markdown de densite, aucun gate de domaine.
  • Non gele : le titre porte Redressement, l'exemption du veto Redressement campagne densité #13410 : remplissages dégénérés — 233 notebooks, 20 paquets d'audit #17040 (frozen_campaigns.FROZEN_EXEMPT_TITLE_PATTERNS), et le gel parapluie ne s'applique donc pas — verifie par la fonction meme du gate.
  • reviewDecision=APPROVED (2 reviews), pas de CHANGES_REQUESTED ouverte.

@myia-ai-01
myia-ai-01 merged commit 8355b44 into main Sep 26, 2026
91 of 118 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

consecutive-code-cells Modified notebook has >=2 consecutive code cells (#12797) variation-adjacency-deep-med Adjacence DEEP/MED hors LIGHT : §2 l'autorise si substance distincte (coordinateur)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants