Skip to content

Fix(notebooks,#17040): redressement densite tranche RL -- 14 findings -> 0 sur 7 carnets (markdown-only) - #19828

Merged
myia-ai-01 merged 8 commits into
mainfrom
fix/density-redressement-rl
Oct 9, 2026
Merged

myia-ai-01 merged 8 commits into
mainfrom
fix/density-redressement-rl

Conversation

@jsboige

@jsboige jsboige commented Oct 8, 2026

Copy link
Copy Markdown
Owner

Grain: DEEP/notebook-python -- lane myia-po-2024:CoursIA -- prev: DEEP/tooling #19802

Redressement densité #17040 — tranche RL : 14 findings -> 0 sur 7 carnets

Claim du 2026-10-08 (c.6049389139) : reprise partielle des paquets P13/P14 (claims du 2026-09-20 périmés — gel de la campagne entre-temps, levé le 07/10), limitée aux 7 carnets RL porteurs de findings. Mesure sur origin/main eadde577e45 par check_split_reading_cells.py (artefacts _output exclus) : 14 findings. Re-scan post-fix sur la branche : 0 finding.

Garde byte-identity (script de vérification, sortie dans le transcript) : cellules code, outputs, execution_count, metadata et IDs byte-identiques sur les 7 carnets — uniquement les cellules markdown listées ci-dessous sont modifiées ou supprimées. Aucune re-exécution (markdown-only, C.2).

Les 7 carnets

Carnet Findings Cellules Geste (ids)
RL/PostTraining/RLPT-00e-DPO-TRL-Python.ipynb 5 48 -> 44 fusions : d4f63f1e+16f9902d (idée propre de la lecture préexistante — $r^*$ jamais observé, reconstruction depuis les paires — appendée à la lecture chiffrée) · 35ec6fa0+9749c4b3 (score appris directement / pont vers DPO, réf RLPT-00 §11 conservée) · 73dbb6a7+6b2bf571 (nuance « à une transformation croissante près ») · 7e093680+7ab50111 (verdict multi-seed inline : B ≈ C > A non tranchable, seul écart 2σ = RM, « le niveau transfère » ; la référence avant vers « la cellule suivante » disparaît avec sa cible). retitle b4d50114 : marqueur déplié
RL/PostTraining/RLPT-00f-GRPO-TRL-contre-PPO-Maison-Python.ipynb 3 44 -> 43 suppression a6441220 : cellule campagne citant des valeurs absentes de la sortie committée (68.0 s / 0.219->0.815 contre la sortie réelle 57.5 s / 0.252->0.981) — critère 3 du mandat (valeurs fabriquées) ; la lecture préexistante d2b5f06d3016 couvre le mécanisme (vloss, calage du critic). retitles b699d9fc888e, db34e148 : marqueurs dépliés
RL/PostTraining/RLPT-00g-PPO-TRL-Experimental-Python.ipynb 1 25 -> 24 suppression 3b009f8c : doublon strict de c20952b4 (garde-fous) et dda5934c (verdict INTRINSIC 6 axes), aucune valeur de 49862830 lue
RL/PostTraining/RLPT-02-GRPO-Minimal-Python.ipynb 2 29 -> 28 fusion 8afce09f -> 4c0e7f1c : série dents de scie (creux double 0.300/0.300 avant la montée) et accuracy sampling 0.50 -> 0.62 intégrés à la lecture préexistante — dont le verdict (« GRPO n'a rien créé ») est cité par la mise en regard JohnEnev qui suit, il devait survivre
RL/RL-04-Bandits-Manchots-Python.ipynb 1 53 retitle 9c8bdb74 : lecture légitime de la sortie quasi muette de bf58e7b5 ; la paire avec c8758d44 (lecture d'une AUTRE sortie) se dissout sans perdre une lecture
RL/RL-06-DQN-Policy-Gradient-Python.ipynb 1 38 -> 37 fusion 4e8edfaa -> a12518-interp : la colonne « Graines individuelles » de la table recopiait la moyenne (162/250/153 etc. désormais réels), chevauchement inter-graines et timing 1153 s intégrés. Complète le redressement P14 #17054
RL/RL-14-RL-Hierarchique-Options-Python.ipynb 1 41 -> 40 fusion 5aefb68c -> a05905c7 : artefact de bord 0.52 (convolution mode="same", ~31/60), protocole ε fixe/600 épisodes/3 seeds et garde Agg intégrés à la lecture de la courbe

Les deux gestes, et pourquoi

  • Fusion (5 carnets) : deux lectures de la même sortie — contenu propre de chacune réordonné et fondu, redondances supprimées, la cellule campagne porte la fusion et la préexistante disparaît sauf quand la préexistante est l'ancre citée en aval (4c0e7f1c cité par la section JohnEnev, a05905c7 lecture canonique de la courbe).
  • Marqueur déplié (4 retitles) : deux lectures légitimes de sorties différentes, chacune correctement positionnée après sa sortie — l'organe les flagge comme paire car les DEUX titres portent le marqueur « Lecture (chiffrée) — ». Retirer le marqueur du titre (le contenu, lui, ne bouge pas) dissout la fausse paire : c'est la prolifération du marqueur qui créait la lecture d'un split. Geste listé ici explicitement pour la review.
  • Suppression pure (2 carnets) : valeurs fabriquées (a6441220) et doublon strict (3b009f8c) — les deux critères de suppression du mandat.

Aucune cellule antérieure à la campagne n'a été supprimée hors consolidation : les cellules supprimées sont soit ajoutées par les commits densité (#16506, #16505, #16489, #16498 — ids extraits par diff des commits), soit nées avec un carnet postérieur au gel (3b009f8c, RLPT-00g créé 10-02).

Preuves

  • Re-scan organe : check_split_reading_cells.py MyIA.AI.Notebooks/RL --json -> 0 finding (14 avant).
  • Garde byte-identity : séquences (id, source, outputs, execution_count) des cellules code identiques HEAD vs branche, sur les 7 carnets ; modified/deleted markdown = exactement les tableaux ci-dessus, added = vide.
  • Hooks pre-commit : 10/10 Passed sur chacun des 7 commits (gitleaks, H.3, bannières .NET, etc.).
  • Diff : 7 fichiers, +33/−202 — des délétions majoritaires, attendu pour une campagne dont le mandat est la consolidation, pas l'ajout (règle 4 : le seuil 1200 n'est pas une cible).

See #17040 (tranche, ne clôt pas la campagne — 125 findings restants sur les autres séries) · See #13410 (EPIC densité, dégelée 07/10) · précédent partiel #17054 (P14, RL-06) · référence de forme #18689 (tranche SC+SW livrée)

🤖 Generated with Claude Code

jsboige and others added 7 commits October 8, 2026 02:20
…queur deplie (5 findings -> 0)

Fusions : [d4f63f1e]+[16f9902d] (r* jamais observe), [35ec6fa0]+[9749c4b3]
(score direct + pont DPO), [73dbb6a7]+[6b2bf571] (transformation croissante),
[7e093680]+[7ab50111] (verdict multi-seed inline, ref avant supprimee).
Retitle [b4d50114] : marqueur deplie, deux lectures legitimes de sorties
differentes. Markdown-only, code cells byte-identiques.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…(valeurs fabriquees), 2 marqueurs deplies (3 findings -> 0)

Suppression [a6441220] : cellule campagne citant des valeurs absentes de la
sortie commitee (68.0s / 0.219->0.815 vs sortie reelle 57.5s / 0.252->0.981)
-- critere 3 du mandat. Retitles [b699d9fc888e] et [db34e148] : lectures
legitimes de sorties differentes, marqueur deplie. Markdown-only.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…doublon strict (1 finding -> 0)

Suppression [3b009f8c] : doublon de [c20952b4] (garde-fous) et [dda5934c]
(verdict INTRINSIC), aucune valeur de [49862830] lue. Markdown-only.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…nts de scie dans la lecture du resultat (2 findings -> 0)

Fusion [8afce09f]->[4c0e7f1c] : serie de reward + accuracy sampling integrees
a la lecture preexistante, dont le verdict est cite par la mise en regard
JohnEnev qui suit -- le verdict doit survivre. Markdown-only.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…ur la lecture du code muet (1 finding -> 0)

Retitle [9c8bdb74] : lecture legitime de la sortie quasi muette [bf58e7b5],
marqueur deplie pour dissoudre la fausse paire avec [c8758d44] (lectures de
sorties differentes, chacune bien positionnee). Markdown-only.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…ns la table degeneree (1 finding -> 0)

Fusion [4e8edfaa]->[a12518-interp] : colonne graines individuelles completee
avec les vraies valeurs (la table recopiait la moyenne), chevauchement
inter-graines et timing 1153 s integres. Complete le redressement P14 #17054.
Markdown-only.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…0.52 fondu dans la lecture de la courbe (1 finding -> 0)

Fusion [5aefb68c]->[a05905c7] : artefact convolution mode=same (0.52 en bord
de serie), protocole epsilon fixe et garde Agg integres a la lecture
preexistante de la courbe. Markdown-only.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 8, 2026

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 commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

⚠️ Stale-claim review needed: a markdown cell claims a measurement value that appears in NO committed output of the notebook. Advisory, NOT a merge gate — triage against the JSON artifact.

Scope = notebooks CHANGED in this PR, not the whole corpus. The stale-claim-report run artifact holds the structured JSON.
Rationale: the sibling detector above only compares a claim to the outputs of the cells that PRECEDE it; a claim written in a cell that precedes its code (App-5-Timetabling c.2/c.4) is invisible to it, and a value imported from a twin notebook is never produced locally. See python scripts/check_stale_claims.py --help.

@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

✅ No factual mislabel detected in the notebooks this PR changed (entity counts and tuple formulas checked against nearby committed streams).

Scope = notebooks CHANGED in this PR, not the whole corpus. The factual-mislabel-report run artifact holds the structured JSON.
Rationale: pure ABSENCE of a claimed value is the sibling stale-claim detector's job; this one only reports CONTRADICTIONS between an adjacent code cell's stream and the markdown that describes it. See python scripts/check_factual_mislabel.py --help.

@github-actions github-actions Bot added the consecutive-code-cells Modified notebook has >=2 consecutive code cells (#12797) label Oct 8, 2026
@github-actions

github-actions Bot commented Oct 8, 2026

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

github-actions Bot commented Oct 8, 2026

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 Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

Golden-Set Execution (H.7 P3)

✅ 9/9 notebooks passed (certified reproducible)

Notebook Status Time
2.1-Workflow-ML.ipynb ✅ SUCCESS 3.8s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 3.8s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 4.6s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 4.7s
Search-01-StateSpace.ipynb ✅ SUCCESS 3.2s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 2.2s
RL-04-Bandits-Manchots-Python.ipynb ✅ SUCCESS 20.2s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 3.7s
GameTheory-13d-Optimistic-CFR-Python.ipynb ✅ SUCCESS 11.1s

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

@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

  • Notebooks checked: 7
  • Code cells validated: 107
  • 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 Oct 8, 2026

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #19828 (Fix(notebooks,#17040): redressement densite tranche RL -- 14 findings -> 0 sur 7 carnets (markdown-only)) 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.

@jsboige

jsboige commented Oct 8, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2025:CoursIA-2
pr: 19828
head: 489fd2e
complete: true
body: read
comments-reviewed: 8
reviews-reviewed: 0
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 5ef628f699f980b23b15ae62b530c49e01faa07fb5947d5071825a5f1b37a9be
diff-files: 7
diff-additions: 33
diff-deletions: 202
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
organ: check_adjoint_prevalidation.py
organ-command: python scripts/check_adjoint_prevalidation.py --derive-verdict 19828
organ-rc: 0
[/ADJOINT PREFLIGHT]

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

CHANGES_REQUESTED — tête 489fd2e.

La consolidation des lectures a un défaut visible dans le diff de RLPT-00e, cellule 7e093680 : l'ancien paragraphe est conservé en entier puis ses deux moitiés sont répétées dans les deux lignes ajoutées. La « tension à lire honnêtement » et le coût 7.3 s / 159.3 s sont donc chacun racontés deux fois. De plus, la phrase « la lecture correcte est celle de la cellule suivante » survit alors que cette cellule a été supprimée. Le body affirme précisément que ce renvoi disparaît : le diff contredit cette affirmation.

Fusionner réellement ce passage : un seul paragraphe sur le verdict dans le bruit, un seul sur le coût, et aucune référence à la cellule supprimée. Conserver les nuances apportées par la lecture préexistante.

La ligne ajoutée de RL-14 incorpore aussi la lecture quantitative mais perd la réserve méthodologique supprimée : le code acc/3 calcule une moyenne, alors que le titre du graphe dit « médiane ». Cette distinction n'est pas redondante avec l'artefact de bord ; la préserver dans la lecture fusionnée.

Ces corrections sont markdown-only. Les cellules code et sorties doivent rester byte-identiques ; valider les positions et la conservation des contenus propres après correction, puis rafraîchir le dossier tiers exact-head. Le zéro finding de l'organe ne prouve pas la conservation pédagogique.

@jsboige

jsboige commented Oct 8, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 19828
head: 489fd2e
complete: true
body: read
comments-reviewed: 9
reviews-reviewed: 1
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 94476083ba72aaf8a471da6661aaab218b429d4929e095b0d294d238414b4d54
diff-files: 7
diff-additions: 33
diff-deletions: 202
checks: BLOCKED
b0: clear
scope: pass
domain: pass
verdict: BLOCKED
organ: check_adjoint_prevalidation.py
organ-command: python scripts/check_adjoint_prevalidation.py --derive-verdict 19828
organ-rc: 3
[/ADJOINT PREFLIGHT]

…680 + reserve moyenne/median RL-14

RLPT-00e : le paragraphe ancien et la fusion ajoutee racontaient deux fois
la tension et le cout, et le renvoi "cellule suivante" survivait a la
suppression de sa cible. Fusion reelle : un paragraphe verdict-dans-le-bruit
(lecture honnete B ~ C > A, RM explicite ~0.02, niveau au plafond de Bayes),
un paragraphe cout (7.3 s / 159.3 s), plus aucun renvoi mort.

RL-14 cellule a05905c7 : la reserve methodologique supprimee est restauree
dans la parenthese fusionnee -- le code acc/3 calcule une moyenne alors que
le titre du graphe dit "median".

Markdown-only : cellules code et sorties byte-identiques ; validateurs
markdown 0 nouvelle violation.

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

jsboige commented Oct 8, 2026

Copy link
Copy Markdown
Owner Author

Réserve levée en code — commit d80c0f88d22 (tête 489fd2e7a761 → d80c0f88d22). Les deux points de la review sont traités :

1. RLPT-00e cellule 7e093680 — fusion réelle. La cellule ne porte plus que deux paragraphes :

  • verdict dans le bruit : titre + tableau acc ± σ + « la tension à lire honnêtement : l'écart maison-trl vaut 0.001 pour une dispersion de ±0.008 — le verdict imprimé tranche par argmax mécanique des moyennes, DANS le bruit ; la lecture honnête est B ≈ C > A, avec B vs C non tranchable. Le seul écart qui franchit tout juste le critère 2σ est celui du RM explicite (~0,02 de plafond en plus) ; et ce qui transfère d'un bras à l'autre est le niveau : les trois voies apprennent le juge à une distance du plafond de Bayes de l'ordre du dixième. »
  • coût : « L'écart réellement significatif est ailleurs… 7.3 s contre 159.3 s par run (x21.8)… » — raconté une seule fois (l'ancien paragraphe portait une copie, supprimée).

Le renvoi « la lecture correcte est celle de la cellule suivante » a disparu (c.2214 dans le diff supprimait la cible ; le texte ne la référence plus). La nuance de la lecture préexistante (« indiscernables ») est préservée par la formule « B vs C non tranchable ».

2. RL-14 cellule a05905c7 — réserve méthodologique restaurée. La parenthèse fusionnée porte à nouveau : « (Détail : le calcul est une moyenne sur les 3 runs, acc/3, alors que le titre du graphe dit « médiane » ; le UserWarning du backend Agg est bénin ; une moyenne glissante sous-estime systématiquement en bord de série — lire la valeur brute ou le last-100 avant de conclure.) » — distincte de l'artefact de bord, comme demandé.

Validation : markdown-only — diff 2 insertions / 3 délétions sur les deux seules cellules visées ; cellules code et sorties byte-identiques (JSON revalidé : RLPT-00e 44 cellules 26 md / 18 code, RL-14 40 cellules 24 md / 16 code, inchangés). detect_code_in_markdown_cells : 0 violation ; detect_markdown_rendering : RL-14 0 violation, RLPT-00e 2 math_bare_macro préexistants à la tête 489fd2e (cellules d60ee4a8/bfe24cd5, non touchées par ce commit). Dossier tiers exact-head à rafraîchir sur la nouvelle tête.

Grain: MED/notebook-python -- lane myia-po-2024:CoursIA -- prev: MED/lean #19439

🤖 Generated with Claude Code

@jsboige

jsboige commented Oct 8, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2025:CoursIA-2
pr: 19828
head: d80c0f8
complete: true
body: read
comments-reviewed: 11
reviews-reviewed: 1
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: c681d787c775ca55d50c743bc4cf579a9292696139c19e4147141abae25725c5
diff-files: 7
diff-additions: 32
diff-deletions: 202
checks: latest-wins-green
b0: blocked
scope: pass
domain: not-applicable
verdict: BLOCKED
organ: check_adjoint_prevalidation.py
organ-command: python scripts/check_adjoint_prevalidation.py --derive-verdict 19828
organ-rc: 3
[/ADJOINT PREFLIGHT]

@jsboige

jsboige commented Oct 8, 2026

Copy link
Copy Markdown
Owner Author

[INFO] Point hors de portée de la lane — justification écrite (échappatoire picker)

Le seul point que l'organe B.0 (check_unaddressed_nits.py) compte encore comme non levé sur cette PR est le CHANGES_REQUESTED d'ai-01 du 2026-10-08T18:29:12Z. Ce qui reste à faire n'est pas à la portée de cette lane :

  1. La réserve est traitée en code et en prose — réponse écrite du 2026-10-08T21:09:46Z (c.6069105604), qui traite les deux points un par un (fusion réelle de RLPT-00e cellule 7e093680, restauration de la réserve moyenne/médiane en RL-14 cellule a05905c7) et cite le commit d80c0f88d22 ;
  2. Un dossier [ADJOINT PREFLIGHT] existe à la tête exacte — posté le 2026-10-08T22:13:32Z par myia-po-2025:CoursIA-2, tête d80c0f88d22, complete: true, checks: latest-wins-green ;
  3. Les checks sont verts — PR gate en minuteur DWELL (tête 21:09:10Z), toutes les autres jambes vertes.

Ce qui manque est la levée de la réserve, et sous le login partagé jsboige elle appartient au coordinateur (CLAUDE.md §B.0 : une phrase écrite par l'auteur de la PR ne lève pas une réserve posée par un tiers ; la levée par phrase se fait sous myia-ai-01 avec [OVERRIDE]). Un push muet ou un nouveau commit ne lèveraient rien de plus — la garde le resterait ouverte, en le lisant comme une réserve non répondue.

Signalé au coordinateur par DM (lane myia-po-2024:CoursIA).

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

Approuvée à la tête d80c0f88d2. Cette approbation lève ma réserve (review 5461170594).

Points vérifiés à cette tête : la cellule 7e093680 de RLPT-00e raconte le verdict et le coût une seule fois, sans renvoi à une cellule supprimée ; la réserve moyenne/médiane (acc/3 contre le titre « médiane ») est restaurée dans RL-14 ; delta markdown seul, code et sorties byte-identiques ; dossier exact-head 6070080962.

[lane myia-ai-01:CoursIA]

@jsboige

jsboige commented Oct 9, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2025:CoursIA-2
pr: 19828
head: d80c0f8
complete: true
body: read
comments-reviewed: 13
reviews-reviewed: 2
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: e844f4f808c089e0dc254a1e6b11c4aa78bf2b21dc4820812e8e13836fcd260e
diff-files: 7
diff-additions: 32
diff-deletions: 202
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
organ: check_adjoint_prevalidation.py
organ-command: python scripts/check_adjoint_prevalidation.py --derive-verdict 19828
organ-rc: 0
supersedes: 12
supersedes-why: ai-01 a leve les reviews CHANGES_REQUESTED par APPROVE aux tetes vives (DM msg-20261009T033613) ; le dossier supersede attestait ce b0 desormais leve
[/ADJOINT PREFLIGHT]

@myia-ai-01
myia-ai-01 merged commit fd51ba9 into main Oct 9, 2026
95 of 101 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)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants