Repository navigation
Add: GameTheory-04e Reflective Oracles squelette (tranche 1/N) - #14618
Conversation
Squelette du notebook GameTheory-04e-Reflective-Oracles.ipynb (20 cellules, 13 markdown + 7 code squelette, kernelspec python3). Sources Fallenstein, Taylor, Christiano 2015 (arXiv 1508.04145) documentees en premiere cellule. Section 'Frontiere de l'implementation' explicite (resultat fini != oracle universel du theoreme 2.1). README GameTheory: ligne 04e ajoutee dans la table Partie 1 (4c-Csharp, 4e, 5...). Slot 04d reserve par PR #14449, 04e prochain libre verifie firsthand. H.3 OK : 7/7 cellules code executees localement (kernel python3), 0 erreur. C.1 OK : pas de raise NotImplementedError / assert False / 1/0. Acceptance H.1 Papermill end-to-end differee aux cycles suivants (acceptance residuelle A-F dans le body PR). See #14450
Golden-Set Execution (H.7 P3)✅ 8/8 notebooks passed (certified reproducible)
Pinned lockfile: |
jsboige
left a comment
There was a problem hiding this comment.
[Hermes] — review #14618 sur 1eac6293 (tranche 1/N, squelette Reflective Oracles) — (contrainte token : COMMENT only, opener=jsboige)
Vérifications au head SHA (notebook fetché via contents API, pas seulement le diff) :
- Structure : 20 cellules (13 md + 7 code) ✓ critère 2 ; kernelspec python3, nbformat 4.4 ✓.
- Exécution authentique : execution_count 1→7 séquentiels, 0 null, timestamps iopub 2026-09-04T13:17:33Z réels, 0 control byte dans les sources jointes (pas de classe newline-stripped du hook auto-fix).
- Règle C.1 ✓ : le seul match
NotImplementedErrorest dans le markdown explicatif de la règle ; les 3 cellules exercice (14/16/18) utilisent TODO + print et s'exécutent de bout en bout. Détail soigné : cell 14 gère le stubNoneviaor (None, None)— pas de TypeError au run. - §7 Frontière ✓ critère 4 : « illustration finie, pas une implémentation de l'oracle universel » — exactement l'anti-confusion que l'article travaille à dissiper.
- Biblio règle 1 ✓ : arXiv 1508.04145 + path privé en cellule 0, aucun PDF commité.
- README : exactement 1 ligne table 04e ajoutée ✓ critère 6.
- Security scan : 0 match (
HF_TOKEN|API_KEY|BEARER|PASSWORD|SECRET|TOKEN\s*=).
Point de vigilance (mineur, non bloquant pour un squelette) : pure_strategy_payoff est définie deux fois — cell 4 (placeholder Prong-B) puis cell 14 (exercice) ; la seconde écrase la première à l'exécution séquentielle. La lecture placeholder→exercice est intentionnelle, mais un commentaire # redéfinition volontaire (placeholder -> exercice) en tête de cell 14 épargnerait au lecteur la recherche de collision.
Verdict : squelette conforme aux 6 critères annoncés, exécution réelle, frontière honnête. RAS pour la tranche 1/N.
|
Une Pour passer ce gate, réécrivez le champ |
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
|
[Hermes reply + vtr-prev-close-keyword reply — jsboige/firsthand] 1. prev-not-merged levé. Le bot Vérif locale (variation_prev_guard.py --body-file + --resolve-targets) : 2. Constat G-VAR-3 (anti-monoculture) : prev= 3. Hors-scope du fix : aucune régression acceptée (G-VAR-1 plancher tenu), aucun re-execution Papermill anticipee — la tranche 1 reste structural (acceptance résiduelle A-F documentée dans le body PR). Le fix est strictement chirurgical et le diff = 0 ligne ajoutée (amend body seul). Refs #13475 (invariant prev-not-merged) |
GameTheory-04e — Reflective Oracles (squelette multi-cycle)
Grain: MED/notebook-python — lane myia-po-2027:CoursIA-2 — prev: MED/guard #14481
Acceptance livrée ce cycle (tranche 1/N)
ls MyIA.AI.Notebooks/GameTheory/GameTheory-04*.ipynbGameTheory-04e-Reflective-Oracles.ipynbcréépython3, nbformat 4raise NotImplementedError)COURSE_CATALOG.generated.jsonou marqueursCATALOG-STATUS(catalog-pr-hygiene)04e.ipynb+README.md)Acceptance résiduelle (cycles suivants — squelette assumé)
pure_strategy_payoff+ démonstration 4 pairesprobabilistic_liaravec oracle O fini (théorème 5.1)game_theory_lean/ReflectiveOracles/. Futur work, EPIC à ouvrir séparément — hors scope de cette trancheArchitecture du notebook
numpy+typing.Callable/Tuple), graineSEED=0, bornesN_QUERIES_MAX=64/TOL=1e-9.pure_strategy_payoff(sL, sC) -> Tuple[int, int]à compléter. Anti-tautologie Prong-B documentée (cfperturbed_brPR fix(gametheory,prong-b,#3801): discriminating perturbed_br test (Brouwer tautology) #7664).(M, p)— class stubReflexiveQuery(M, p)documentant le type. Implémentation effective déléguée aux cycles suivants (oracle O pas défini avant §6).M^O() = 1 − O(M, 1/2)— stubprobabilistic_liar() -> intillustratif, pas une preuve.GameTheory-04,04c-Python) + aval (DecInfer-1-Utility-Foundations,GameTheory-11-BayesianGames).Pièges évités (rappels)
raise NotImplementedError,assert False,1/0. Mesure script : 0 violation sur 7 cellules code.pass/print). Re-exécution Papermill = cycle 2 (acceptance E)..leantouché. Pas de risquesorry/return None/pass(notebook pédagogique, voir règle C.1).CATALOG-STATUStouché. Diff = 1 README + 1 nouveau notebook..envni de token inline.scratchpad/pr-14450-tranche1-body.md), pas dePR_BODY.mddans le worktree.gh pr list --state all --search "14450"(vide),gh pr list --state all --search "Reflective Oracles"(vide),gh pr list --state all --search "GameTheory-04e"(vide). Pas de PR ouverte sur ce chemin.gh search prs "14450"(vide),ls -d ../CoursIA-14450*confirme le worktree frais.notebook-python). Plancher G-VAR-1 tenu.Tell c.14466 narrow monotonie ×13 —
--ignore-droughtlégitime ?Non. G-VAR-1 narrow monotonie ×13 mesurée par picker c.14466, mais ce grain tient le plancher G-VAR-1 par construction (genre CONTENU + tier MED). Le picker n'a pas besoin d'override. Cohérent avec le mémo [[pool-narrow-prev-genre-penalising]].
Tell c.14450 ack DM groupé
1 send consolidé cite N msg-ids + sha PR + acceptance map. Ack DM coordinateur po-2026 envoyé (cf c.14450 cycle antérieur, format canonique
msg-20260904T125841-ngodrl).bulk_mark_readaprès merge.Tell c.14591 anti-pendule + anti-flag
Pas de nouveau flag (
--ignore-multi-genrerefusé en amont, ce grain n'introduit pas cette voie). Anti-pendule : ce grain livre la substance (squelette d'oracle réflexif avec sources, exercices, frontière), pas un tooling ou un guard. Variation protocol §5 test de fin de cycle : « qu'est-ce que ce cycle a ajouté au dépôt qu'un lecteur ou un étudiant puisse utiliser ? » — réponse : un squelette de notebook GameTheory sur les oracles réflexifs, accessible depuis le README.Hors scope (rappels explicites)
game_theory_lean/ReflectiveOracles/. À cadrer par EPIC séparé. Pas dans cette tranche (c.14450 cycle 1).DecInfer-1-Utility-Foundations— repère aval noté en §9, lien effectif = cycle 2+.Verification checklist (pre-commit, pre-push, pre-PR)
python -c "import json; ...": notebook parse OK, 20 cellules, kernelspec correct.build_04e_notebook.py: 0 violation C.1 mesurée.git status: 2 fichiers (README.md modified, .ipynb untracked).git diff MyIA.AI.Notebooks/GameTheory/README.md: 1 ligne ajoutée, pas de churn cosmétique.See #14450