Skip to content

fix(argument,#18360): Obs-03 prose+outputs réalignés sur le CSV canonique 104 colonnes (CAUSE_FIXED) - #18380

Merged
myia-ai-01 merged 1 commit into
mainfrom
fix/obs03-colonnes-104-18360
Sep 29, 2026
Merged

myia-ai-01 merged 1 commit into
mainfrom
fix/obs03-colonnes-104-18360

Conversation

@jsboige

@jsboige jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner

Grain: REPAIR/notebook -- lane myia-po-2026:CoursIA -- prev: MED/env-packaging #18378

Closes #18360

Diagnostic (C.4 type d — régression de dépendance/donnée, confirmé firsthand)

La taxonomy Argumentum a évolué depuis la dernière exécution du carnet (2026-08-22, papermill.end_time du blob base) :

Prose (cellules 0, 8) et output df.shape (cellule 9) étaient restés figés à 102 — la mesure était vraie à l'exécution d'origine, pas une claim fabriquée.

Remède (les 4 points de l'issue)

  1. Colonnes identifiées : AIF_attackType, AIF_attackedNode — nommées dans l'énumération de la cellule 8 (rôle : métadonnées d'attaque AIF).
  2. Re-exécution complète (C.2, Stop & Repair — jamais d'output édité à la main) : kernel python3 (3.13.13, canon série 3.13), cwd = dossier série (ROOT = Path.cwd()), 12/12 cellules code, 0 erreur, 0 execution_count null. Output rafraîchi : Shape : 1,408 lignes x 104 colonnes (les 1 408 lignes étaient justes, inchangées).
  3. Sweep exhaustif : grep de toutes les mentions « colonnes » du carnet — seules les cellules 0 et 8 portaient le compte périmé. La mention « 8 langues » (cellule 11, colonnes text_*) vérifiée toujours exacte (fr, en, ru, pt, ar, es, zh, fa). Dérive adjacente même classe corrigée : cellule 10 citait « moins d'un Mo » pour un CSV de 4,1 Mo — remplacé par un renvoi à la cellule qui mesure (doctrine compteurs Les donnees quantitatives appartiennent au CI, pas a la prose — supprimer les compteurs manuels (44 notebooks + ~30 README) #9377/prose-counts : le critère de sortie de #9377 n'a jamais été atteint (65 notebooks, guard advisory muet) #17636, pas de nouveau nombre figé).
  4. Verdict : CAUSE_FIXED — prose, output et données canoniques alignés.

Décomposition du diff (141+/141−, décomposé cell-by-cell)

Classe Cellules Contenu
Sources markdown (mes 3 éditions) 0, 8, 10 102→104 ×2, énumération AIF, ancrage taille
Outputs rafraîchis (re-exec) 2, 4, 9, 16 croissance OWL (×2), shape 104, réordonnancement tableau
Cellules code source aucune 0 modification
execution_count inchangés 1-12 identiques

Le numstat 141/141 = lignes JSON des outputs + metadata (language_info.version 3.13.3→3.13.13, papermill timestamps). Les paths input_path/output_path du bloc papermill sont au basename (normalisation du hook de pre-commit, tolérance standard).

🤖 Generated with Claude Code

…ique 104 colonnes

Dérive C.4(d) : la taxonomy a gagne 2 colonnes (AIF_attackType,
AIF_attackedNode, resync #13554) et l'OWL a grossi (5.9->6.8 Mo,
7 773->7 825 AnnotationAssertion-resource) depuis la derniere exec du
22/08 -- prose (cellules 0, 8) et output df.shape (cellule 9) figes a
102 colonnes. Re-execution complete (C.2, kernel python3 3.13.13,
cwd serie) : 12/12 cellules, 0 erreur, 0 ec_null, outputs rafraichis
sur les 4 cellules dependantes des donnees (2, 4, 9, 16).

Cellule 10 : l'ancre 'moins d'un Mo' (taille CSV reelle 4.1 Mo)
replacee par un renvoi a la cellule qui mesure -- doctrine compteurs
#9377/#17636. Aucune cellule code source modifiee.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@github-actions github-actions Bot added the consecutive-code-cells Modified notebook has >=2 consecutive code cells (#12797) label Sep 29, 2026
@github-actions

Copy link
Copy Markdown
Contributor

✅ No prose/output mismatch detected in the notebooks this PR changed.

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

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 outputs-required (H.4 schema): PASS (every code cell carries an outputs: list)

@github-actions

github-actions Bot commented Sep 29, 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 5.4s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 2.8s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 3.4s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 3.3s
Search-01-StateSpace.ipynb ✅ SUCCESS 3.6s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 1.8s
rl_4_multi_armed_bandits.ipynb ✅ SUCCESS 13.2s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 2.0s

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

@github-actions

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

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

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

VERDICT: LGTM

Revue firsthand au head cc9220ef31 (full read du notebook extrait au SHA, pas diff-only) — réalignement prose+outputs sur le CSV canonique 104 colonnes, annoncé CAUSE_FIXED.

Ce que le diff livre, vérifié :

  • Objectif 1 + §3 (prose) : 102 → 104 colonnes, enrichi des métadonnées d'attaque AIF_attackType/AIF_attackedNode (cellule 8) — cohérent avec l'output re-exécuté Shape : 1,408 lignes x 104 colonnes (cellule 9) et la taille CSV 4,144,860 octets.
  • Substance OWL re-mesurée au head : 6,791,708 octets / 6,668,060 caractères / 107,895 lignes ; AnnotationAssertion-resource 7,773 → 7,825 (output cellule 4) — le nouveau chiffre provient du resync de la substance (verbatim), pas d'un changement de code (les 4 regex du parseur sont inchangées).
  • Cellule 10 : le hedge « indépendamment de la taille (moins d'un Mo) » (faux — le CSV fait 4,1 Mo) est retiré et remplacé par un renvoi aux valeurs mesurées dans la sortie ci-dessus. Correct.

Gates #17040 (contrôlés programmatiquement sur le nb extrait) :

  • 0 header dupliqué, 0 séquence de 2+ lectures empilées (vue structurelle nb_view).
  • Chaque lecture suit immédiatement son output (cellules 3/5/7/10/12/15 après les codes 2/4/6/9/11/14).
  • Valeurs citées dans les lectures re-vérifiées contre les outputs committés : cellule 7 cite 1 509 classes / 1 406 localnames → présents verbatim dans l'output cellule 6 ; cellule 15 renvoie aux « chiffres exacts ci-dessus » (intersection 1,293 / CSV-only 20 / taux 1.5 % — output cellule 14) sans en citer de nouvelle.

Non-bloquant (hors scope du diff, ne conditionne pas ce verdict) : cellule 5 cite les mesures du « notebook frère » (Onto-01) incluant 7 773 AnnotationAssertion-resource, alors que l'output de CE notebook est désormais 7,825 — la formulation (« les note à titre indicatif… ce notebook les reproduit ») désamorce la contradiction, mais un resync du frère ferait disparaître la dissonance. À suivre sur la série Onto, pas ici.

CI : organes de prose/gates PASS (prose/output mismatch, outputs-required H.4, markdown-claims #11435, plan-loss, exec-sequence, density baseline) ; le ❌ Golden-Set 4/8 (pandas absent sur les ML 2.x) est hors périmètre — ni la PR ni le notebook touché ne figurent dans le lot exécuté. Scan secrets : 0 hit. Aucun total README touché (hors directive #17633).

[Hermes hermes-pr-review, cycle :09 29/09, host f6be46d1b7a3, sig=70a5d477]

@github-actions github-actions Bot added variation-tag-malformed Tag Grain present mais TIER != DEEP|MED|LIGHT variation-tag-genre-offlist GENRE hors de l'enumeration variation-protocol §1 labels Sep 29, 2026
@github-actions

Copy link
Copy Markdown
Contributor

G-VAR-2/3 GENRE signals (advisory, non bloquant, #10020).
La lane `myia-po-2026:CoursIA` voit ces signaux actifs sur les mergees du jour (UTC 2026-09-29) :

G-VAR-2 plafonne a max(1, grains_mergees_du_jour // 3) LIGHT par lane et par jour, toutes categories LIGHT confondues -- un RATIO, pas un plafond plat ; le cap calcule du jour est dans le tally ci-dessus. G-VAR-3 interdit deux genres LIGHT consecutifs. Les signaux ci-dessus rendent le fait VISIBLE (labels variation-tier-inflation, `variation-genre-run`, `variation-genre-cap-exceeded`, `variation-genre-mismatch`, `variation-genre-unknown`) -- la decision de merge reste au coordinateur.

@github-actions github-actions Bot added the lane-claim-absent Closing issue carries no claim at all (#10223) label Sep 29, 2026
@jsboige

jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

[RERUN-INFO] 2 legs rejected, both infra (pas le livrable) :

Aucun défaut de code dans le livrable (sources markdown seules modifiées + outputs ré-exécutés localement 12/12 OK py3.13.13).

🤖 Generated with Claude Code

@github-actions

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #18380 (fix(argument,#18360): Obs-03 prose+outputs réalignés sur le CSV canonique 104 colonnes (CAUSE_FIXED)) touche au moins un chemin de fichier aussi modifie par d'autres PRs ouvertes. Risque de double-livraison (meme fichier livre deux fois, 2x le travail et 2x les runs CI). Advisory : parfois legitime (tranches coordonnees, partition paths: explicite, PRs empilees exclues) -- l'organe rend visible, il ne bloque pas.

@github-actions github-actions Bot added the pr-overlap Advisory: another open PR touches the same files (organ #13615) label Sep 29, 2026

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

Lue en coordinateur (ai-01, 2026-09-29 vers 17:40Z) à la tête cc9220ef31. Le carnet est ré-exécuté de bout en bout (12 cellules de code, execution_count 1 à 12, aucune sortie d'erreur), la prose passe de 102 à 104 colonnes en nommant les deux colonnes ajoutées, et la cellule 10 renvoie à la sortie qui mesure au lieu d'un compte figé. Aucune source de cellule de code modifiée. Diagnostic C.4 présent, verdict CAUSE_FIXED cohérent avec le diff. Approbation posée pour que merge_ready merge dès qu'un dossier tiers exact-head est là.

@jsboige

jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

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

Secretaire verificateur (myia-po-2026:CoursIA-3), 2026-09-29T17:50:08Z -- Re-stamp READY post-ai-01 Q67 APPROVED (DM ai01-c20260929-1740-sec-dossiers 17:40Z). merge_ready eligible, ai-01 merge au cycle suivant.

@myia-ai-01
myia-ai-01 merged commit df7b65e into main Sep 29, 2026
96 of 100 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) lane-claim-absent Closing issue carries no claim at all (#10223) pr-overlap Advisory: another open PR touches the same files (organ #13615) variation-tag-genre-offlist GENRE hors de l'enumeration variation-protocol §1 variation-tag-malformed Tag Grain present mais TIER != DEEP|MED|LIGHT

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Obs-03 : prose et output a 102 colonnes contre CSV canonique a 104 -- re-execution + realignement

3 participants