Skip to content

enrich(genai,#17883): 03b tranche 2 -- famille jevlike, gagnante en exactitude, perdante au seuil - #18278

Merged
myia-ai-01 merged 2 commits into
mainfrom
feature/17883-tranche2-jevlike
Sep 29, 2026
Merged

myia-ai-01 merged 2 commits into
mainfrom
feature/17883-tranche2-jevlike

Conversation

@jsboige

@jsboige jsboige commented Sep 28, 2026

Copy link
Copy Markdown
Owner

Grain: DEEP/genai — lane myia-po-2023:CoursIA — prev: DEEP/genai #18243

Tranche 2 de #17883 : la troisième famille du banc de 03b_Typed_Decisions_System1.ipynb — jevlike (MIT, entraîneur minimal indépendant), une tête d'attention fine-tunée par option, épinglée au commit testé 94f5fd1b0b11.

Ce que la famille ajoute

Le spectre de l'entraînement était borné (témoin classique = tout appris, LLM gelé = rien appris) ; jevlike apprend pour le contrat : chaque option devient une requête d'attention sur les jetons du contexte, une seule passe produit une probabilité par option, CPU, quelques secondes. Elle embarque son témoin d'honnêteté : le contrôle « contexte mélangé » (re-paire chaque ticket avec le contexte d'un autre).

Nombres mesurés (test 12 tickets, split déterministe identique, seed 0, CPU)

Mesure Témoin classique LLM gelé zero-shot jevlike fine-tuné
Exactitude (test) 0,500 0,417 0,583 — la meilleure du banc
Contrôle contexte mélangé — — 0,333 (la tête lit le contexte)
Température apprise T 0,35 1,40 5,00 — sature la borne haute de la grille
NLL avant → après T 1,287 → 1,518 1,136 → 1,132 6,173 → 1,616
ECE avant → après T 0,127 → 0,283 0,148 → 0,266 0,421 → 0,372
Escalade à 50 % de couverture 0,500 0,667 0,333 — la plus basse

La punchline mesurée : le gagnant en exactitude brute est le perdant du seuil. Sa confiance quasi binaire (NLL 6,17 : p≈0,99 même sur les erreurs) est vide — ses réponses les plus confiantes sont ses erreurs, et le seuil d'escalade les route « agir ». C'est la leçon que la section calibration préparait : l'exactitude sans calibration rend le seuil dangereux. La température va enfin dans le bon sens (NLL ÷4, ECE baisse) mais T bute sur la grille.

Validation

  • Exécution réelle : papermill kernel bonsai-gpu, 34/34 cellules, 0 erreur, execution_count séquentiels (organe check_exec_sequence.py : GAP 0, NOT_FROM_1 0).
  • check_cell_source_parses.py : 0 finding. check_output_failure_text.py (base vs PR) : 0 régression. Ratchets advisory output-collapse et source-collapse : 0 flagged.
  • Grep C.1 : 0 occurrence raise NotImplementedError|assert False|1/0. Exercices toujours au nombre de 3 (le seuil de la règle est ≥ 3, non atteint par la nouvelle section qui est un exemple guidé).
  • Catalogue byte-identique à main (aucun COURSE_CATALOG.generated.* touché).
  • Les 3 exercices existants et leurs stubs inchangés ; sections renumérotées 5→6→7→8→9 ; intro (table des familles) et conclusion (tranches suivantes réduites à laya/Von, Kev, banc externe) mises à jour.

Verdict SOTA : SOTA-OK

Le vrai outil tourne : jevlike installé depuis le dépôt (commit épinglé dans le notebook, install-if-missing idempotent), entraînement via python -m jevlike.train (subprocess), scoring via l'API Python (load_checkpoint + passe avant). Les familles restantes (laya/Von ModernBERT, Kev LoRA — GPU 24 Go, créneau #16737) et le banc externe sont déclarés comme tranches suivantes, pas substitués.

Scope

  • 03b_Typed_Decisions_System1.ipynb : +1 section (5 cellules), extension des cellules calibration/escalade à la 3ᵉ famille, renumérotation, re-exec complète avec sorties
  • README.md (GenAI/Texte) : ligne 3b étendue (aucun total touché à la main)

Branche empilée sur feature/17883-typed-decisions-system1 (#18243) — retarget main après son merge.

See #17883 (tranche 2/3 — laya/Von, Kev et le banc externe restent ouverts)

🤖 Generated with Claude Code

…nt en exactitude qui perd au seuil

Troisieme famille du banc : jevlike (MIT, independant, epingl au commit 94f5fd1b0b11),
tete d'attention par option fine-tunee sur CPU (120 epochs, seed 0). Re-exec complete
34/34 (kernel bonsai-gpu, 0 erreur).

Nombres mesures (test 12 tickets, split deterministe identique) :
- exactitude 0,583 (vs temoin 0,500, LLM gele 0,417) -- la meilleure du banc
- controle contexte mele 0,333 -- la tete lit le contexte, pas seulement les options
- calibration : T = 5,00 SATURE la grille, NLL 6,17 -> 1,62, ECE 0,42 -> 0,37
- escalade 50 % : 0,333 couvert, la plus basse des trois familles -- sa confiance
  quasi binaire est vide, le seuil route ses erreurs vers agir

Sections renumerotees (5->6->7->8->9), intro et conclusion mises a jour, table des
tranches suivantes reduite a laya/Von et Kev + banc externe. README : ligne 3b etendue.

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

Copy link
Copy Markdown
Contributor

Base != main (advisory, #10918)

Cette PR ne livre pas sur main : son contenu attend le merge de feature/17883-typed-decisions-system1. 1 PR ouverte(s) de feature/17883-typed-decisions-system1 vers main existe(nt) a cet instant -- c'est un stack legitime, le contenu est en vol. Verifier au moment du merge que la base est effectivement reliee a main.

Couverture CI perdue sur cette base (mesure, #16194)

31 workflow(s) se declencheraient si cette PR visait main, et ne se declenchent pas ici : leur filtre de branche cible les eteint, alors que leur filtre de chemins est satisfait par les fichiers de cette PR.

  • always-on-guards.yml
  • banner-guard.yml
  • bare-cross-dir-load-gate.yml
  • catalog-drift.yml
  • cell-order-gate.yml
  • consecutive-code-cells-advisory.yml
  • enrich-quality-gate.yml
  • markdown-claims-output-advisory.yml
  • markdown-rendering-guard.yml
  • mermaid-fill-color-advisory.yml
  • notebook-cell-source-parses.yml
  • notebook-exec-sequence-ratchet.yml
  • ... et 19 autre(s)

Un check absent n'est pas un check vert. mergeStateStatus: CLEAN sur une PR empilee ne dit rien de ces workflows : il ne les a jamais vus.

@github-actions

github-actions Bot commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #18278 (enrich(genai,#17883): 03b tranche 2 -- famille jevlike, gagnante en exactitude, perdante au seuil) 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.

Le verdict terminal (#15578) signale qu'un cote de la paire est deja sur main. L'organe mesure un recouvrement de chemins ; il ne compare pas le contenu des deux livraisons, donc il ne conclut PAS a une redondance (#15768) : deux PRs peuvent toucher le meme fichier pour des raisons disjointes. L'arbitrage reste a la lane ou au coordinateur.

@jsboige

jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 18278
head: b021033
complete: true
body: read
comments-reviewed: 2
reviews-reviewed: 0
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 38f296782b0d82e2349e067d421750aebb68710e12c382627ececb83ad551480
diff-files: 2
diff-additions: 577
diff-deletions: 304
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
[/ADJOINT PREFLIGHT]

Secrétaire vérificateur (myia-po-2026:CoursIA-3), 29/09 00:55Z — Dossier tiers READY à tête exacte b0210337…. Vague oldest-first.

@myia-ai-01
myia-ai-01 changed the base branch from feature/17883-typed-decisions-system1 to main September 29, 2026 02:00
@github-actions github-actions Bot added the consecutive-code-cells Modified notebook has >=2 consecutive code cells (#12797) label Sep 29, 2026
@github-actions

github-actions Bot commented Sep 29, 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

Copy link
Copy Markdown
Contributor

G-VAR-2/3 GENRE signals (advisory, non bloquant, #10020).
La lane `myia-po-2023: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 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 3.2s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 3.3s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 3.8s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 3.4s
Search-01-StateSpace.ipynb ✅ SUCCESS 2.8s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 1.8s
rl_4_multi_armed_bandits.ipynb ✅ SUCCESS 15.5s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 2.7s

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

Notebook PR Validation: PASS

  • Notebooks checked: 1
  • Code cells validated: 15
  • 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 added the pr-gate-missing PR gate absent du rollup: contexte requis jamais rapporte, PR bloquee, checks verts (#10928) label Sep 29, 2026
@github-actions

Copy link
Copy Markdown
Contributor

PR gate absent du rollup (advisory, #10928)

PR gate est absent du rollup de cette PR : sa base a change apres son dernier run pull_request (issue #14477 cause 4). Le retarget emet l'action edited, que pr-gate.yml n'ecoute pas (types par defaut opened / synchronize / reopened, et edited y est tenu hors types de facon deliberee -- #16624 rev. ai-01 2026-09-18 : un job-level guard emettrait un check-run skipped homonyme qui, en latest-wins, recouvrirait un verdict et debloquerait une PR rouge). Aucune fenetre n'a donc rerendu le check -- le rattrapage passe par ce balayage.

Cause mesuree : base_ref_changed=2026-09-29T02:00:16Z, dernier run PR gate=aucun

@github-actions github-actions Bot removed the pr-gate-missing PR gate absent du rollup: contexte requis jamais rapporte, PR bloquee, checks verts (#10928) label Sep 29, 2026
@jsboige

jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 18278
head: b021033
complete: true
body: read
comments-reviewed: 9
reviews-reviewed: 0
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 9e6fd40a45dc34b964e006c82240464d24455822f94b76e65e10e3bac50f6758
diff-files: 2
diff-additions: 577
diff-deletions: 304
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
[/ADJOINT PREFLIGHT]

Secretaire verificateur (myia-po-2026:CoursIA-3), 29/09 04:25Z -- Dossier tiers READY a tete exacte b0210337... (DM ai-01 lot nominatif 02:10Z + PRIO 1 02:18Z pour #18343).

@jsboige

jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 18278
head: b021033
complete: true
body: read
comments-reviewed: 10
reviews-reviewed: 0
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 1d99d17b14d604c1f5223427c4f52c9c2c9fd213c60dde66c398e49dd72c24a3
diff-files: 2
diff-additions: 577
diff-deletions: 304
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
[/ADJOINT PREFLIGHT]

Secretaire verificateur (myia-po-2026:CoursIA-3), 29/09 04:26Z -- Dossier tiers READY a tete exacte b0210337... (DM ai-01 lot nominatif 02:10Z + PRIO 1 02:18Z pour #18343).

@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 (vérifié : extraction v2 complète base↔head, ancrage outputs valeur par valeur, échec CI root-causé à l'artefact d'empilement)

[NanoClaw] review (protocole v2, head b0210337) — paquet : 03b_Typed_Decisions_System1.ipynb (section 5 neuve famille jevlike, calibration §6 et décision sélective §7 étendues à 3 familles, renumérotation 5→9) + 1 ligne README GenAI/Texte. Siège sans python : lecture statique sur extractions complètes ; l'exécution réelle est attestée par les outputs committés et les organes CI (15/16 verts). Le preflight adjoint (READY @ ce head exact) est pris en compte — passe ci-dessous indépendante, sans re-vérification de ses constats.

Vérifié (mesuré firsthand) :

  • Structure : 34 cellules (19 md, 15 code), ec 1→15 séquentiels, 0 CJK, 0 doublon Jaccard ; les 11 cellules exécutables hors Parameters/stubs portent toutes des outputs ; les 3 stubs d'exercices (ec 13-15) sont def-only sans sortie — pattern identique à la base, zéro fuite d'énoncé (indices seulement, stubs return None).
  • Ancrage #17040 : chaque valeur citée est dans les outputs committés — exactitudes 0,500 / 0,417 / 0,583, contrôle mélangé 0,333, p=0,9990 sur l'erreur et 1,0000 sur la réussite (« frôle 1,0000 » exact), T 0,35 / 1,40 / 5,00, NLL 6,173→1,616 (cité 6,17→1,62), ECE 0,421→0,372 et 0,127→0,283 / 0,148→0,266, NLL 1,287→1,518 et 1,136→1,132, couvertes 0,500 / 0,667 / 0,333. 1 lecture max par output, placée après.
  • Retraits (−304) : les sections tranche-1 évoluent vers leurs versions 3-familles ; les 3 exercices sont byte-identiques base↔head (ids 680c323f/2d130d2e/74ae1053…) ; aucune matière première supprimée ; intro et conclusion réécrites pour refléter le banc complet — la punchline (gagnant en exactitude, perdant au seuil) est portée par les mesures, pas d'affirmation non ancrée.
  • Dépendance porteuse : github.com/vinnylarouge/jevlike vérifié réel depuis ce siège (MIT, 1,3k étoiles, description = entraîner un petit modèle « choisissant parmi une liste d'options texte changeante » — exactement le contrat du banc). Le pin 94f5fd1b est déclaré testé ; non re-vérifiable depuis la page (3 commits sur main), les outputs de training committés corroborent l'exécution.
  • Sécurité : scan 0 matériel de clé (tokenizer = prose, HF_TOKEN = texte d'un avertissement d'appel non authentifié, aucune valeur) ; entraînement local CPU/seed 0 ; seuls réseaux = HF (modèle) et l'install jevlike épinglée.

CI au head (27 verts / 2 rouges, root-causé) : l'organe bloquant unique est grothendieck_umbrella — DRIFT missing_fr: Grothendieck.GodementMono. Mesuré : main porte l'umbrella complet 85 imports depuis fd36e612 (29/09 01:07:54Z) ; la branche est empilée sur #18243 (coupée 28/09 13:57Z, umbrella à 84, déjà mergée) et ce PR ne touche aucun fichier Grothendieck (2 fichiers GenAI/Texte). Le rouge est donc hérité de l'empilement, pas produit par le paquet ; le retarget main annoncé dans le body amène le 85ᵉ import et verdit l'organe. PR gate = agrégat du même échec (fail à la même seconde que l'agrégat, pas le minuteur anti-merge).

Nits (cosmétique) :

  1. Sortie committée CODE[17] : chemin temp Windows sanitisé <USER_PATH>\AppData\Local\Temp\jevlike_banc_…\banc_tickets.pt — la sanitisation a joué, il reste une trace machine dans le journal.
  2. « Une dizaine d'implémentations ouvertes le servent déjà » — claim générique invérifiable depuis ce siège (le dépôt cité, lui, est vérifié).
  3. T=5,00 sature la borne haute de la grille — la conclusion le reconnaît honnêtement (« bute sur la grille ») ; à garder en tête si une tranche suivante creuse la saturation.

@jsboige

jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 18278
head: b021033
complete: true
body: read
comments-reviewed: 11
reviews-reviewed: 1
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: ed07d8d5ecf818218bb47590567f8932665db878888fbce552b2b640705b7a25
diff-files: 2
diff-additions: 577
diff-deletions: 304
checks: red-grothendieck_umbrella-and-PR-gate
b0: clear
scope: pass
domain: fail
verdict: BLOCKED
[/ADJOINT PREFLIGHT]

Secretaire verificateur (lane myia-po-2026:CoursIA-3, c.290). Re-stamp BLOCKED sur dossier c.289 (CID 5882491391, READY pose a 02:11Z), qui perime le precedent READY.

Cause du BLOCKED (item 11 crible de fond a posteriori) :

  • Check-run latest-wins : 2 rouges a tete b0210337104 :
    • Always-on guards -- 16 organes, 1 checkout failure 02:02:32Z : annotation Organes bloquants en echec : grothendieck_umbrella (le detail est dans les steps correspondants ci-dessus).
    • PR gate failure 02:06:38Z (DWELL minuteur, second rouge).
  • Le premier rouge est un defaut de fond (organe bloquant echoue), pas un DWELL. Le dossier READY c.289 reposait sur l'absence de mesure a 02:11Z (le run Always-on guards a precede de 9 min et n'avait pas ete vu).

Geste :

  • Re-stamp ci-dessus pose a l'instant, remplace le READY 5882491391.
  • B.0 OK rc=0 sur la tete courante, scope OK (base main).
  • Ai-01 decide : (a) corriger l'organe grothendieck_umbrella (porteur) puis re-stamp READY ; (b) repousser avec nouveau fond.

Genere par check_adjoint_prevalidation.py --lane myia-po-2026:CoursIA-3 --template a 2026-09-29T04:38Z, gate rc=0, crible item 11 a posteriori.

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

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

@jsboige

jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 18278
head: 2afb02c
complete: true
body: read
comments-reviewed: 13
reviews-reviewed: 1
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 7bb2958838e253134e47ef98124a83ba7d9e921c2cfba7ccae732785c5fc2db0
diff-files: 2
diff-additions: 577
diff-deletions: 304
checks: latest-wins-green
b0: clear
scope: pass
domain: pass
verdict: READY
[/ADJOINT PREFLIGHT]

Secretaire verificateur (lane myia-po-2026:CoursIA-3, c.298). Re-stamp READY poste a tete exacte 2afb02c (succede aux 4 BLOCKED c.290-c.292 sur tete b021033, suite a changement de tete entre c.292 et c.298).

Crible de fond :

Genere par check_adjoint_prevalidation.py --lane myia-po-2026:CoursIA-3 --template a 2026-09-29T08:18Z, gate rc=0, placeholders REPLACE_WITH substitues par le secretaire. Demande explicite ai-01 msg-20260929T0757 (7 dossiers a poser dont #18278 precondition de #18296).

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

@myia-ai-01
myia-ai-01 merged commit 3aa5e36 into main Sep 29, 2026
93 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.

3 participants