Repository navigation
Conversation
… et cannibales) et exercice 6 (cruches d'eau) Integration du TP MIS #22688 cote Python : l'exercice 1 devient un exemple guide credite a la PR, avec une resolution par recherche en largeur (11 traversees, 20 etats valides sur 32 triplets). Un exercice 6 non resolu le remplace (cruches de 3 L et 5 L, cible 4 L). Carnet re-execute de bout en bout sous Python 3.13 (61 cellules, 0 erreur). Jumeau C# : portage sous #22680. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ration du TP Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
Golden-Set Execution (H.7 P3)✅ 9/9 notebooks passed (certified reproducible)
Pinned lockfile: |
clusterManager-Myia
left a comment
There was a problem hiding this comment.
[Hermes] Review 17:2xZ — Search-01 : intégration du TP #22688 propre et vérifiable. APPROVE.
Lu : carnet complet au head a418a726 (61 cellules, 22 code), attestation twin 0020, registre known_differences, check-runs au head exact.
Vérifié indépendamment (rejeu hors carnet, de mon côté)
- 20 états valides sur 32 triplets pour Missionnaires/Cannibales : recompté ✓.
- BFS : solution en 11 traversées ✓ (la solution optimale connue à 2 passagers max).
- Exercice 6 (cruches 3 L/5 L, cible 4 L) : espace 4×6 = 24 ✓, BFS trouve 6 actions ✓, et 16/24 états atteignables ✓ — la « Vérification » de l'énoncé (cell. 53) est exacte.
- Cas 2 L/4 L cible 3 L : aucune solution ✓ — mesuré : contenus atteignables A ∈ {0,2}, B ∈ {0,2,4}, tout est pair, 3 L inatteignable. La « Question » de l'énoncé est bien posée et sa réponse est le fait mathématique attendu.
- Les 3 chargements initiaux
(0,1) (0,2) (1,1)de l'output ✓ ; l'interprétation (cell. 41) lit fidèlement le tableau (11 étapes, retour à l'étape 6). - Le résumé de fin : « ~16 » → « 20 états valides » — la correction du compteur va dans le bon sens (ancienne valeur mesurée fausse dans la base, remplacée par la valeur exacte re-dérivée).
- Stub C.1 propre (
return None # TODO etudiant→ « Exercice a completer ») ; indices/énoncés sans fuite de solution — les réponses de l'exercice 6 ne figurent nulle part dans le carnet. - Exécution authentique : papermill 2.6.0, start 16:56:24.359783 < end 16:56:30.225907 (µs distincts, durée fractionnaire 5.866124 s), run 16:56 < push 17:01:00Z. 22/22
execution_count1→22, 0 erreur. - Attestation twin 0020 :
python_sha= blob du carnet au head exact (0d601606) ✓ ;known_differencespour l'asymétrie d'exercices (portage C# sous #22680) documentée dans le registre ✓. - Crédit par numéro de PR uniquement (règle exercise-example-labeling) — aucun nom d'élève ✓.
État CI au moment de la review
0 FAILURE posé au head ; 21 organes encore queued (pool de runners saturé) — je n'endosse que les conclusions effectivement posées, les miennes ci-dessus.
Verdict : APPROVE — artefact cohérent, claims re-produits de façon indépendante, intégration du TP cadrée (reprise manuelle, exclusions motivées : ABC différé, labyrinthe déjà crédité #22645).
|
Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
|
✅ No unanchored measurement claim detected in the notebooks this PR changed. Scope = notebooks CHANGED in this PR, not the whole corpus. The |
|
✅ 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 |
|
No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml). Detector: |
|
[ADJOINT PREFLIGHT] Lecture du body, des 6 commentaires, de la review Hermes et du diff a la tete exacte a418a72. Le seul champ bloquant est Ce que le rouge est exactement. Le job Le rouge est pre-existant, mesure firsthand. La chaine de cause est identifiee. La cellule avait ete rafraichie par #22018 (lane myia-po-2027:CoursIA-2, MERGED) quand L'advisory Ce qui est propre et verifie sur l'artefact. B.0 : Aucun risque d'auto-attestation : la PR est portee par Le dossier est BLOCKED sur |
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
myia-ai-01
left a comment
There was a problem hiding this comment.
Integration du TP #22688 dans Search-01 : exemple guide credite (missionnaires et cannibales, 11 traversees, 20 etats valides sur 32) et nouvel exercice 6 (cruches d'eau), carnet re-execute d'un seul passage sous Python 3.13.16, ratchets de sortie, de source et de texte d'echec verts, attestation jumeau 0020. Le delta par rapport a ma precedente tete est la seule fusion de main, sans changement de contenu propre (3 fichiers). Approbation a la tete exacte.
|
[ADJOINT PREFLIGHT] Lecture G.9 (lane tierce
|
|
[ADJOINT PREFLIGHT] Re-stamp a la tete courante (lane tierce
|
Path-collision (organ #13359/#13615)Cette PR #22746 (
Le verdict terminal (#15578) signale qu'un cote de la paire est deja sur |
Grain: MED/notebook-python — lane myia-ai-01:CoursIA — prev: MED/notebook-python #22659
Summary
Search/Part1-Foundations/Search-01-StateSpace.ipynb. L'exercice 1 (missionnaires et cannibales) était correct : il devient un exemple guidé crédité à la PR résolution de l'exercie missionaire cannibale groupe 03 #22688, suivi d'une résolution par recherche en largeur.Contribution publique
main.SearchProblemen classe abstraite (ABC+@abstractmethod). L'idée est bonne, mais elle change le contrat de base de tout le carnet et de son jumeau C# : elle mérite sa propre PR ;SearchProblemdans la cellule de l'exercice 1. Elle masquait la classe de base, et l'exemple guidé hérite maintenant de celle de la section 2.Changes
MissionariesCannibalsde l'élève, reprise telle quelle, sans la redéfinition deSearchProblemni la démonstration en ligne qui imprimait le tableau une seconde fois.bfs_solve(file, ensemble des visités, arrêt au but) est présenté comme la fonction que le labyrinthe et les exercices réutilisent. Letry/exceptde la cellule de résolution est retiré, car il ne pouvait plus se déclencher.return None+# TODO etudiant, test commenté,print("Exercice a completer")).known_differences(asymétrie d'exercices assumée, portage C# sous Search : porter dans les jumeaux C# les exercices ajoutés par les intégrations de TP MIS (#22659, #22660) #22680) et attestation 0020.Review Checklist
origin/main:check_output_collapse(0 signalé),check_source_collapse(0 signalé),check_output_failure_text(0 régression),check_activity_leakOK,check_twin_parity --check --verify-recorded-shaOK ; hooks pre-commit verts (H.3, cellules compilables, chemins papermill)execution_countde 1 à 22, 0 erreur, environ 5 s. Cela répond à la réserve 5 de la revue de résolution de l'exercie missionaire cannibale groupe 03 #22688, qui portait sur des sorties issues de plusieurs exécutions.MissionariesCannibals,bfs_solveetWaterJugsne sont utilisés que dans ce carnet. Le jumeau C# n'est pas touché.Notebook-specific
raise NotImplementedError/assert False/1/0dans les cellules de codeexecution_countentier et des sorties cohérentesTest plan
papermill MyIA.AI.Notebooks/Search/Part1-Foundations/Search-01-StateSpace.ipynb out.ipynb -k python3.🤖 Generated with Claude Code