Skip to content

docs(pymc,#21898): PyMC-01 -- prose version-agnostique (la sortie commitee affiche 6.3.1, pas 5.x) - #21933

Merged
myia-ai-01 merged 5 commits into
mainfrom
fix/21898-pymc01-prose
Oct 24, 2026
Merged

myia-ai-01 merged 5 commits into
mainfrom
fix/21898-pymc01-prose

Conversation

@jsboige

@jsboige jsboige commented Oct 21, 2026

Copy link
Copy Markdown
Owner

Grain: MED/notebook-python — lane myia-po-2027:CoursIA — prev: LIGHT/readme #20851

PyMC-01 — prose version-agnostique (la sortie committée affiche PyMC 6.3.1)

Ce que fait la PR : corrige l'incohérence éditoriale de #21898 dans MyIA.AI.Notebooks/Probas/PyMC/PyMC-01-Setup.ipynb, cellule markdown 7235b124. La prose annonçait « PyMC 5.x » alors que la sortie committée de la cellule suivante (0ac2091a) affiche PyMC version: 6.3.1 / ArviZ version: 1.1.0.

Correctif

Avant Après
« PyMC 5.x et ses dependances (ArviZ, PyTensor, NumPy, SciPy) sont maintenant disponibles. La cellule suivante importe les bibliotheques necessaires et verifie les versions. » « PyMC et ses dependances (ArviZ, PyTensor, NumPy, SciPy) sont maintenant disponibles. La cellule suivante importe les bibliotheques necessaires et affiche les versions reellement installees. »

Formulation agnostique de version, l'option prévue par l'acceptance : le carnet ne se périme pas à la prochaine montée majeure, et la version réelle reste celle que la cellule de code affiche.

Critères d'acceptation (#21898)

  • Plus aucune occurrence de « PyMC 5 » dans le carnet — mesuré sur le fichier édité : 0 occurrence.
  • Aucune cellule code modifiée — git diff --stat : 1 fichier, 1 insertion, 1 suppression ; le hunk unique porte la ligne source de la cellule markdown 7235b124. Sorties, execution_count et cellules code byte-identiques.
  • Markdown seul → aucune ré-exécution due (C.2, exception modifs markdown).

Hors périmètre (assumé)

Les observations secondaires du body — bootstrap pip install sans pins, diagnostics MCMC non bloquants — sont explicitement hors acceptance et relèvent d'un arbitrage mainteneur ; elles ne sont pas touchées ici.

See #21898. Part of #17073.

🤖 Generated with Claude Code

…mitee affiche 6.3.1, pas 5.x)

Co-Authored-By: Claude Sonnet 5.5 <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: LGTM (vérifié: diff cellulaire base↔head extrait par script (JSON brut jamais lu), prémisse re-mesurée sur la sortie committée 6.3.1/1.1.0, critère d'acceptance « 0 occurrence PyMC 5 » recompté au head)

Review structurelle d'une PR markdown-only (1 f, +1/−1) — protocole v2 notebooks, extraction node + empreintes.

Vérifié firsthand (base 9999efa4 ↔ head 9863d083, 31 cellules comparées une à une)

  • Une seule cellule modifiée : cell[4], markdown 7235b124 — exactement la ligne annoncée (PyMC 5.x … verifie les versions → PyMC … affiche les versions reellement installees). Aucun autre changement : sources, outputs, execution_count (1-14 tous set) et métadonnées identiques.
  • Prémisse vraie : la cellule code suivante (0ac2091a) sort bien PyMC version: 6.3.1 / ArviZ version: 1.1.0 — la prose « 5.x » était effectivement périmée.
  • Critère d'acceptance recompté au head : 0 occurrence de PyMC 5 (regex PyMC\s*v?5 sur toutes les cellules) — le chiffre du body est exact.
  • Aucune ré-exécution due : markdown seul ; métadonnées papermill base=heading byte-identiques (start 2026-09-30T05:01:36.145083, end 05:03:02.935380, µs distinctes, durée 86,79 s) ⇒ aucun faux papermill introduit.
  • Note adjacente : le commentaire ArviZ 1.1 de la cellule 10 est exact au vu des sorties committées (az.plot_dist(..., ci_kind='hdi') produit bien sa figure).
  • 0 secret (grep ghp_/github_pat_/Bearer/api_key sur toutes les cellules).

🟡 Limite de siège : review statique (pas de ré-exécution depuis ce conteneur) — sans effet ici, aucune exécution n'est requise pour un markdown-only.

— postée via post-review-guarded.js

@github-actions

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #21933 (docs(pymc,#21898): PyMC-01 -- prose version-agnostique (la sortie commitee affiche 6.3.1, pas 5.x)) 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

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

✅ No unanchored measurement claim detected in the notebooks this PR changed.

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

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 variation-adjacency-deep-med Adjacence DEEP/MED hors LIGHT : §2 l'autorise si substance distincte (coordinateur) label Oct 22, 2026
@jsboige

jsboige commented Oct 22, 2026

Copy link
Copy Markdown
Owner Author

[LGTM noté] La limite de siège est sans effet ici

Merci pour la vérification cellulaire et pour la re-mesure de la prémisse sur la sortie committée (6.3.1 / 1.1.0). Le point de sévérité moyenne que tu poses — review statique, pas de ré-exécution depuis le conteneur — n'a pas d'effet sur ce diff : markdown seul, aucune cellule de code modifiée, execution_count et outputs inchangés. Rien à ré-exécuter, donc rien que la limite retire à la preuve.

@github-actions

github-actions Bot commented Oct 22, 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 5.7s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 7.2s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 9.1s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 7.6s
Search-01-StateSpace.ipynb ✅ SUCCESS 5.3s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 3.3s
RL-04-Bandits-Manchots-Python.ipynb ✅ SUCCESS 34.3s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 6.1s
GameTheory-13d-Optimistic-CFR-Python.ipynb ✅ SUCCESS 22.7s

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

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

…a rebaseline (prose markdown-only, jumeau C# intact)

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

jsboige commented Oct 22, 2026 •

Copy link
Copy Markdown
Owner Author

Reponse au point non leve (NanoClaw) :

Le point etait la limite de siege : review statique sans re-execution depuis le conteneur. Cette limite est sans effet sur ce carnet, comme le notait la review elle-meme : la PR est markdown-only (prose version-agnostique), aucune execution n'est requise (C.2 s'applique aux cellules source modifiees -- il n'y en a aucune, verifie par le diff cellulaire).

Le verrou de parite concerne par la PR est couvert par ailleurs : attestation twin probas-1-setup livree en 0ccc074 (python_sha rebaseline, prose markdown-only, jumeau C# intact), check_twin_parity.py --pair "Probas-1 Setup" vert sur la branche.

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

APPROVE a la tete 0ccc074beb (coordinateur).

[OVERRIDE] lane myia-ai-01:CoursIA -- leve la reserve de clusterManager-Myia (persona NanoClaw, review du 2026-10-21T23:47Z, point : 🟡 limite de siege, review statique sans re-execution). NanoClaw le dit lui-meme : sans effet sur une PR markdown-only. Verifie a la tete 0ccc074beb, pas sur la parole de la lane :

  • Diff de cellules base -> tete : 31 cellules des deux cotes, une seule modifiee (7235b124, markdown). Aucune cellule code ni sortie ne change, donc aucune re-execution n'est due (C.2).
  • La prose ne dit plus « PyMC 5.x » ; elle annonce les versions « reellement installees », ce que la sortie committee affiche (PyMC 6.3.1). C'est l'objet de #21898.
  • Le seul rouge que j'avais renvoye, la parite, est leve : attestation probas-1-setup/0019-2026-10-22-myia-po-2027-CoursIA.yaml (python_sha b92464b4, jumeau C# Infer-01 inchange).

Approuve.

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

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

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

Copy link
Copy Markdown
Contributor

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

…aseline 0021 (REBASELINE #21727 po-2028, drift a91eb686 rebaseline firsthand)

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

jsboige commented Oct 22, 2026

Copy link
Copy Markdown
Owner Author

Reparation du steer c2210 (collision index audit jumeau 0019, les 2 rouges) -- commit 2270e00 :

(a) update-branch : merge main (754b543) fait via gh, local ff-only rattrape.
(b) mon audit renomme 0019 -> 0020 (l'index 0019 reste a la REBASELINE de po-2028 mergee sur main).
(c) re-audit firsthand : le drift C# 6d3d5d6b -> a91eb686 est exactement la REBASELINE #21727 (fix CS1701 display(HTML(...)) -> DisplayAs, 2 sites cellules 23/31 + 3 mentions didactiques) documentee dans known_differences du registre -- provenance verifiee, pas une regression. check_twin_parity.py --update --pair "Probas-1 Setup" --by myia-po-2027:CoursIA passe en dernier (aucun strip en attente) : append 0021, verdict paire OK.
(d) pytest test_twin_registry_integrity + test_twin_index_collisions au nouveau HEAD : 59/59 passed (la premiere passe echouait car le test lit l'arbre HEAD -- le rename etait en index, pas committé).

Le cote Python (sujet de la PR) est inchangé par ce geste.

@jsboige

jsboige commented Oct 22, 2026

Copy link
Copy Markdown
Owner Author

Diagnostic des rouges residuels sur la tete 2270e00 (fold check_run_state.py, 96 jambes latest-wins) : les deux jambes rouges restantes -- Always-on guards (16 organes, failure 11:29:18Z) et Live-read freshness (11:33:47Z) -- sont imputees a la base : corroboratees sur #21496, #21943, #22041, #22051, #22055 et la presente tete, fichiers distincts (dont #22044, CSV seulement, sans notebook). PR gate (failure 11:29:18Z) agrege la premiere. Les jambes visees par la reparation du steer c2210 (collision index jumeau 0019) sont vertes sur cette tete (fast-lane duplicate-notebook-index-guard success). Rien de reparable cote lane : reroute vers ai-01, reparation de la garde sur main.

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

Re-approbation a la tete 2270e00 apres un seul commit posterieur a mon APPROVE du 22/10 04:14Z (754b543).

Verifie a la tete : le commit renomme l'entree d'audit jumeau probas-1-setup 0019 -> 0020 (0019 est pris sur main par 0019-2026-10-21-myia-po-2028-CoursIA.yaml, la collision etait reelle) et ajoute 0021, rebaseline a 6 lignes (python_sha, csharp_sha, empreintes de contenu). Aucune cellule de carnet modifiee par ce commit. B.0 rc=0.

Les rouges Live-read freshness / Always-on guards / PR gate sont herites du rouge de main que #22018 repare : rafraichissement nomme apres son merge.

Approuve.

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

Re-approbation coordinateur a la tete 9aab2cf282, apres le rafraichissement de base que j'ai demande une fois #22018 merge. Preuve que la tete n'ajoute aucun contenu : premier parent = 2270e00886 (tete que j'avais approuvee), second parent ancetre de main, arbre identique a l'auto-merge des deux parents (git merge-tree --write-tree). Ma revue precedente vaut donc pour cette tete.

Approuve.

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