Skip to content

fix(notebook-python,#18053): ordre code/interpretation, tranche IIT - #18107

Merged
myia-ai-01 merged 1 commit into
mainfrom
fix/18053-iit-interp-order
Sep 28, 2026
Merged

myia-ai-01 merged 1 commit into
mainfrom
fix/18053-iit-interp-order

Conversation

@jsboige

@jsboige jsboige commented Sep 27, 2026

Copy link
Copy Markdown
Owner

Grain: MED/notebook-python — lane myia-po-2026:CoursIA-2 — prev: LIGHT/tooling #18037

Tranche IIT de #18053

Un constat de l'issue, re-verifie sur origin/main avant correction (protocole audit-reassessment).

Carnet Cellule citee Constat de l'issue Verdict Traitement
IIT/IIT-01-IntroToPyPhi.ipynb [32], INTERP_BEFORE_CODE La cellule « Interpretation : liens causaux de la transition (1,1,1) vers (0,0,0) » decrit la sortie de la cellule code [33] qui la suit : « 10 liens causaux irreductibles, tous avec une force alpha = 1.0 », et explique que le reseau XOR deterministe sature toutes les forces. CONFIRMED La cellule passe apres le code [33], juste avant la section 6.1bis ([34]) qui introduit le reseau noisy-AND. Action prescrite appliquee telle quelle.

Verification de la concordance entre la cellule et la sortie qu'elle commente : le texte de [32] annonce « 10 liens causaux » et alpha = 1.0, et la sortie committee de [33] imprime exactement Nombre de causal links : 10 suivi de dix CausalLink a α = 1.0. Le constat porte donc sur une cellule qui lit bien une sortie reelle, pas sur une formulation ambigue — aucun FALSE POSITIVE sur cette tranche.

Etat obtenu

[31] markdown  section 6 / 6.1 Actual Causation
[32] code      pyphi.actual.Transition(before_state=(1,1,1), after_state=(0,0,0))   <- etait en [33]
[33] markdown  ### Interpretation : liens causaux de la transition               <- etait en [32]
[34] markdown  ### 6.1bis Causalite evenementielle sur un reseau probabiliste

Invariant : aucune cellule de code modifiee

C'est un deplacement pur d'une cellule markdown (21 lignes ; le diff est 21 insertions / 21 deletions). Verifie mecaniquement :

  • appariement par id des cellules de code entre origin/main et la tete : 16 cellules de code, signatures identiques (type, source, execution_count, outputs) — assertion dans le script, ensembles egaux ;
  • aucun id duplique ;
  • dans le diff brut, la seule ligne "cell_type" touchee est markdown (+1 / -1, la meme cellule deplacee). Aucune ligne "cell_type": "code" n'apparait ;
  • format JSON inchange (indent=1 + newline final), detecte par aller-retour avant ecriture.

Consequence : pas de re-execution due (C.2/C.3). Les sorties committes restent celles de main.

Point de vigilance du cliquet : deplacer une lecture apres sa sortie augmente le nombre de lectures attachees a cet output (0 -> 1), ce qui est le motif qui fait rougir Split-reading sur d'autres carnets (mesure sur PyMC-11-Topic-Models, ou deux lectures se disputaient une sortie). Ici la lecture etait la seule de cette sortie : le cliquet reste vert, et l'etat obtenu est exactement l'etat normatif « un output, une lecture ».

Gardes

Garde Resultat
check_split_reading_cells.py --base-ref origin/main --head HEAD 1 carnet modifie, 0 en regression · paires 0→0
check_interp_positioning.py findings total : 0
check_cell_source_parses.py findings: 0
Pre-commit (gitleaks, H.3 execution, #13326 compilabilite, normalisations .NET/papermill) tous passes

Perimetre

Un carnet, un constat. Les autres series de #18053 (17 series au total) sont livrees par tranches separees — deja ouvertes par cette lane : GenAI/Audio (#18073), GenAI/Image (#18075), Probas/DecisionTheory (#18103), Probas/PyMC (#18106).

See #18053 — l'issue porte d'autres series et reste ouverte.

🤖 Generated with Claude Code

Un constat de #18053 sur IIT/IIT-01-IntroToPyPhi.ipynb, re-verifie sur main
avant correction : CONFIRMED.

La cellule [32] « Interpretation : liens causaux de la transition (1,1,1) vers
(0,0,0) » decrit mot pour mot la sortie de la cellule code [33] — « Nombre de
causal links : 10 », chaque lien avec une force alpha = 1.0 — et elle la
precede. L'interpretation doit suivre la sortie : [32] passe apres [33], juste
avant la section 6.1bis ([34]) qui introduit le reseau noisy-AND. C'est
l'action prescrite par l'issue, appliquee telle quelle.

Deplacement pur d'une cellule markdown (21 lignes) : aucune cellule de code
modifiee — signature par id sur source + execution_count + outputs, 16
cellules de code identiques a origin/main ; aucun id duplique ; format JSON
inchange (indent 1 + newline final). Pas de re-execution due (C.2/C.3).

Le cliquet split-reading reste a 0 finding : la lecture de la sortie de
code[14] passe de « avant le code » a « attachee a sa sortie », qui est
l'etat normatif (un output, une lecture).

See #18053

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
@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

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 7.3s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 10.5s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 9.9s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 10.1s
Search-01-StateSpace.ipynb ✅ SUCCESS 7.5s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 7.8s
rl_4_multi_armed_bandits.ipynb ✅ SUCCESS 69.2s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 7.1s

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

@github-actions

Copy link
Copy Markdown
Contributor

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

@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).

@github-actions

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

  • Notebooks checked: 1
  • Code cells validated: 16
  • 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)

@jsboige

jsboige commented Sep 28, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 18107
head: cacc84d
complete: true
body: read
comments-reviewed: 5
reviews-reviewed: 0
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: d2453b9d6b2f24b39ee9e5a623e85c260db6518f4b116999a287728a2837e74d
diff-files: 1
diff-additions: 21
diff-deletions: 21
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
[/ADJOINT PREFLIGHT]

Dossier READY sur PR #18107 (lane myia-po-2026:CoursIA-3, cycle c.250, 28/09 08:30Z).

Substance : fix(notebook-python,#18053): tranche IIT (1 constat).

Substance : +21/-21 sur 1 fichier. Grain MED/notebook-python.

État : CLEAN+MERGEABLE+rev=NONE, B.0 rc=0, tous checks verts.

Grain: META/secretary -- lane myia-po-2026:CoursIA-3 -- prev: META/secretary c.249

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants