Skip to content

Fix(Tweety): 5 notebooks C# et la sonde IKVM sous Linux et macOS, RID dérivé de la machine (hors flotte) - #18444

Merged
myia-ai-01 merged 1 commit into
mainfrom
claude/affectionate-mccarthy-6dvuea
Sep 29, 2026
Merged

myia-ai-01 merged 1 commit into
mainfrom
claude/affectionate-mccarthy-6dvuea

Conversation

@jsboige

@jsboige jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner

Hors flotte : PR de la session cloud d'agnosticisme du mainteneur (branche claude/*, exemption #17713, rôle décrit dans docs/reference/agent-cloud-agnosticisme.md). Pas de tag Grain:, pas de lane. See #17654, sous l'EPIC de parité Linux #10643. Suite directe de #18067 (lot A, mergée).

Summary

Changes

Cellules de configuration IKVM, dans les six notebooks :

  • La déclaration ikvmRid = "win-x64" devient une expression (win, osx ou linux, suivi de - et de l'architecture du processus en minuscules), précédée d'une ligne de commentaire.
  • La ligne #r "nuget: IKVM.Image.runtime.win-x64, <version>" est retirée là où elle existait (Aspic, Belief-Revision, 5-Abstract-Argumentation, 11-Causal, sonde) : IKVM.Image tire déjà les onze runtimes natifs. Tweety-10-MLN (IKVM 8.14.0) ne référençait que IKVM ; vérifié dans le .nuspec du cache : IKVM 8.14.0 dépend de IKVM.Image, qui dépend des onze IKVM.Image.runtime.<rid>.

Markdown :

  • Tweety-4-Belief-Revision, cellule 2 : la configuration « exige trois paquets » dont IKVM.Image.runtime.win-x64 devient « référence deux paquets », IKVM.Image tirant le runtime de chaque plateforme. Cellule 5 : home=ikvm-home-8.15.0-win-x64 devient home=ikvm-home-8.15.0-<rid>.
  • Sonde, cellule 1 et commentaire de la cellule 3 : « any/any + win-x64 » devient « any/any + le RID de la machine ».
  • Tweety-10-MLN, cellule 18 : elle recopiait la sortie de la cellule 17 (durées 1.56 s et 0.10 s, valeur échantillonnée 0.8874). Ces trois valeurs dépendent de la machine ou du tirage ; la cellule renvoie désormais à la sortie, garde le rapport « environ 15× » (15.6× sur la base, 15.3× ici) et la vraie valeur 0.8301, et cite la valeur échantillonnée de ce run.

Registre de parité jumelle : quatre des six notebooks appartiennent à une paire (Tweety-4 Belief-Revision, Tweety-5 Abstract-Argumentation, Tweety-10 MLN, Tweety-11 Causal). Chacune reçoit une attestation --update --by claude-cloud:hors-flotte, posée après les strips outillés. Les YAML de paire ne changent pas : les écarts sont des écarts d'environnement, décrits ci-dessous, pas des différences entre le jumeau Python et le jumeau C#.

Le diff compte 10 fichiers : les 6 notebooks et les 4 attestations.

Diagnostic dérive

Comparaison cellule par cellule entre la base (flotte, Windows) et cette tête (clone vierge Linux), sur le texte des sorties, CRLF normalisés :

Notebook Cellules code Sorties identiques Écarts
Tweety-4-Aspic 12 11 culture (8,0 Mo → 8.0 Mo)
Tweety-4-Belief-Revision 11 9 RID, culture
Tweety-5-Abstract-Argumentation 14 12 culture (séparateur décimal d'un tableau et d'une taille de DLL)
Tweety-10-MLN 9 4 RID ; ordre d'affichage de trois ensembles Java ; durées et valeur échantillonnée (cellule 17)
Tweety-11-Causal 14 14 aucun
Sonde IKVM 5 3 chemin du home (/tmp/ikvm-home-8.15.0-linux-x64), culture

Classement des causes :

  • (a) env/kernel : RID du home IKVM (objet de la PR), culture du poste (séparateur décimal), durées mesurées au Stopwatch. Verdict CAUSE_FIXED pour le RID ; la culture et les durées relèvent de la machine.
  • (e) non déterministe : ordre d'itération des ensembles Java sur Tweety-10-MLN (contenu identique) et valeur de SimpleSamplingMlnReasoner, Monte-Carlo non seedé (0.8874 sur la base, 0.8633 ici, vraie valeur 0.8301 identique). La prose de la cellule 18, qui citait ces valeurs, est reformulée (voir Changes). Verdict CAUSE_INTRINSIC.
  • Les résultats calculés déterministes (extensions, révisions, marginales exactes, modèles causaux) sont identiques à la base. Aucune sortie n'a été touchée à la main.

language_info.version ne change sur aucun des six notebooks (13.0 partout).

Verdict SOTA : SOTA-OK. Le vrai moteur (TweetyProject 1.30 via IKVM) s'exécute. Il n'y a ni substitution ni réimplémentation. L'organe-first ne s'applique pas : rien n'est réimplémenté.

Review Checklist

  • 1. Scope — cellules de configuration IKVM, prose qui les décrit, une cellule d'interprétation de Tweety-10-MLN rendue fidèle à la sortie ; le registre de parité suit.
  • 2. Post-fix validation — relancés après le dernier commit :
    • validate_pr_notebooks.py origin/main : PASS ;
    • check_output_failure_text.py origin/main : 0 regressed ;
    • check_output_collapse.py et check_source_collapse.py : 0 flagged ;
    • check_kernel_drift.py origin/main : 0 regression ;
    • check_twin_parity.py --per-pair --base origin/main --check : INTRO=0 ; les 3 PRE sont antérieurs et hors périmètre ;
    • check_prose_quantitative_claims.py --diff origin/main...HEAD --strict : OK ;
    • check_docs_links.py --check --base origin/main : 0 nouveau lien cassé ;
    • check_machine_dep_timing.py : 0 ;
    • strip_machine_paths.py --scan : 0 ;
    • check_markdown_claims_output.py : 13 findings sur la tête contre 12 sur la base. Le seul nouveau est 1.5 en cellule 19 de Tweety-10-MLN : c'est le poids d'une règle dans l'énoncé de l'exercice 2, que l'ancienne sortie 1.56s ancrait par coïncidence. Faux positif, énoncé non modifié.
  • 3. Pedagogical coherence — exercices et stubs inchangés.
  • 4. Real execution — notebook_tools.py execute <nb> --kernel .net-csharp sur les six, sous Linux (dotnet-interactive 1.0.617701, .NET 9) : exec_count 12/12, 11/11, 14/14, 9/9, 14/14, 5/5, et 0 erreur. Puis strip_probe_banner.py --apply et scrub_papermill_paths.py --apply. La cellule 18 de Tweety-10-MLN a été modifiée après l'exécution ; c'est une cellule markdown, sans ré-exécution due.
  • 5. Regression check — plus aucune cellule de code de ces six notebooks ne code le RID win-x64 ; restent les notebooks du lot B2.

Anti-regression

  • Pas de Lean/Coq touché.
  • Aucun test désactivé.
  • Aucune suppression de code métier : une ligne #r redondante retirée dans cinq des six notebooks (Tweety-10-MLN n'en avait pas), justifiée par le .nuspec.

Notebook-specific

  • Aucun raise NotImplementedError / assert False / 1/0 introduit.
  • Toutes les cellules code ont execution_count et des sorties cohérentes.
  • Seuls les notebooks dont une cellule source a changé sont committés (C.3).

Test plan

Sur un poste Linux ou macOS, avec .NET 9 et dotnet-interactive 1.0.617701 :

python scripts/notebook_tools/notebook_tools.py execute MyIA.AI.Notebooks/SymbolicAI/Tweety/_probes/Tweety-IKVM-Init-Probe.ipynb --kernel .net-csharp

La sonde doit aller au bout et afficher IKVM_HOME = .../ikvm-home-8.15.0-<rid> avec le RID de la machine.

Chemin partagé avec #18429 (séparateurs markdown de Tweety-5-Abstract-Argumentation) : git merge-tree fusionne les deux PR sans conflit.

Environnement de mesure : conteneur Linux x64, 4 threads, clone vierge, hors flotte.

🤖 Generated with Claude Code

https://claude.ai/code/session_01VuVMY5fhzd5cQhzHiyvjka


Generated by Claude Code

… derive de la machine

Lot B1 de la serie Tweety, suite de #18067 : Tweety-4-Aspic, 4-Belief-Revision,
5-Abstract-Argumentation, 10-MLN (IKVM 8.14.0) et 11-Causal, plus la sonde
_probes/Tweety-IKVM-Init-Probe. Le RID IKVM passe de win-x64 code en dur a
OperatingSystem + RuntimeInformation.ProcessArchitecture ; la reference NuGet
explicite IKVM.Image.runtime.win-x64 est retiree (IKVM.Image la tire, avec les
dix autres RID). Prose generalisee la ou elle citait win-x64 (Belief-Revision,
sonde).

Re-execution complete sous Linux (dotnet-interactive 1.0.617701) : 0 erreur.
Sorties identiques a la base hors RID, culture et ordre d'affichage d'ensembles
Java ; sur 10-MLN, les durees et la valeur echantillonnee changent (Monte-Carlo
non seede), et la cellule 18 cessait de correspondre a la sortie : reformulee
pour ne citer que des valeurs non dependantes de la machine. Parite jumelle
rebaselinee sur les quatre paires concernees.

Hors flotte (session cloud d'agnosticisme). See #17654.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VuVMY5fhzd5cQhzHiyvjka
@github-actions github-actions Bot added the consecutive-code-cells Modified notebook has >=2 consecutive code cells (#12797) label Sep 29, 2026
@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

⚠️ 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

Golden-Set Execution (H.7 P3)

✅ 8/8 notebooks passed (certified reproducible)

Notebook Status Time
2.1-Workflow-ML.ipynb ✅ SUCCESS 4.2s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 4.7s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 7.9s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 4.1s
Search-01-StateSpace.ipynb ✅ SUCCESS 3.1s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 2.0s
rl_4_multi_armed_bandits.ipynb ✅ SUCCESS 18.4s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 3.1s

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

@github-actions github-actions Bot added the variation-tag-missing PR sans tag Grain: <TIER>/<GENRE> (variation-protocol) label Sep 29, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

  • Notebooks checked: 6
  • Code cells validated: 65
  • 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)

@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 intégrale base↔head des 6 notebooks + attestations twin-parity = blobs réels + sweep RID actif = 0 résiduel) — la seule garde rouge est le minuteur DWELL, classe connue, pas un verdict de contenu.

[NanoClaw] Review structurelle (protocole v2, 6 notebooks) — head dc117887, extraction intégrale base (102974ee) ↔ head des 6 .ipynb, lecture complète des cellules modifiées, outputs réduits à des empreintes puis décodés en texte pour les cellules de configuration, attestations YAML relues firsthand, SHAs recoupés contre les blobs git au head.

Vérifié (premier degré) :

  • Recette RID uniforme et intégrale : la même expression (OperatingSystem.IsWindows() ? "win" : OperatingSystem.IsMacOS() ? "osx" : "linux") + "-" + RuntimeInformation.ProcessArchitecture.ToString().ToLowerInvariant() est posée aux 6 endroits de configuration (Aspic c3, Belief-Revision c4, Abstract-Argumentation c26, MLN c1, Causal c22, Probe c3), précédée du même commentaire d'une ligne, avec retrait du #r "nuget: IKVM.Image.runtime.win-x64, …" là où il existait (5 notebooks ; MLN en IKVM 8.14 n'en avait pas — cohérent avec le claim nuspec du body, IKVM tirant IKVM.Image). La recette est identique à celle du lot A #18067, dont la forme est présente dans Tweety-3-Dung-Csharp.ipynb sur main (vérifié). Sweep complet des heads : zéro win-x64 en code actif ni en output — les 9 occurrences résiduelles sont toutes en commentaire/prose explicitante (« par exemple win-x64 ou linux-x64 »), légitimes.
  • Markdown ajusté aux 3 endroits annoncés, rien d'autre : Belief-Revision c2 (« trois paquets » → « deux paquets » + runtime tiré par IKVM.Image) et c5 (win-x64 → <rid> avec exemples par plateforme), Probe c1 (any/any + win-x64 → any/any + le RID de la machine), MLN c18 reformulée fidèle à la sortie (durées machine-dépendantes retirées, « environ 15× » conservé avec les deux mesures 15.6×/15.3×, vraie valeur 0.8301 citée, tirage du run 0.8633 ancré dans l'output de c17 — la formule est strictement meilleure que la base qui figeait des chronomètres). Aucun autre markdown touché sur les 6 notebooks ; zéro doublon.
  • Ré-exécution Linux réelle sur les 6 : papermill 17:34:22→17:37:41Z séquentiel (48,3 s / 7,8 s / 10,2 s / 107,7 s / 6,1 s / 10,5 s), exception: null partout, exec counts séquentiels, zéro output d'erreur. Les témoins de santé IKVM sont dans les outputs committés : ikvm-home-8.15.0-linux-x64 (ou 8.14.0 pour MLN), tzdb=True/OK, bin/ikvm.properties: True, les 4 DLL copiées. Le détail .nuspec du body (IKVM 8.14.0 → IKVM.Image → 11 runtimes) est cohérent avec le résultat observé sous Linux.
  • Diagnostic de dérive du body confirmé au caractère sur le point vérifiable : Tweety-5 c26, stream DLL tweety-dung chargée base bd7d270f « 8,67 Mo » (virgule, culture fr-FR) ↔ head 5c507424 « 8.67 Mo » (point) — le claim « culture (séparateur décimal d'une taille de DLL) » est exact. Les autres écarts (RID du home, durées Stopwatch, ordre d'ensembles Java, sampling non seedé) sont de la classe annoncée (env/kernel ou intrinsèque), et les sorties déterministes clés sont inchangées (ex. les 5 extensions CF2 de Tweety-5 c26 : {b,e},{c,e},{a,c,f},{a,d,f},{b,d,f} dans les mêmes tailles de stream à 1 octet près = la culture).
  • Attestations twin-parity (#8057) = la bonne pratique, vérifiée : les 4 paires de la PR reçoivent chacune leur YAML --by claude-cloud:hors-flotte daté du jour, et les csharp_sha portés correspondent exactement aux blobs git des notebooks au head (recoupé 4/4 : 9f7f17b6…, 59799525…, dea724df…, cbd1d230…). C'est précisément le geste que la garde attendait sur #18428 (où il manquait) — ici il est fait, et fait correctement.
  • Checks : tous les organes de contenu verts (validate-notebooks, kernel drift, exec-sequence ratchet, outputs-required, Golden-set, prose-quantitative-claims, Always-on 16 organes, CodeQL…). Le seul rouge = PR gate, jambe DWELL : minuteur de plancher 120 min sur une tête de 17:41Z (log explicite « Rien a corriger dans le code : cette jambe est un minuteur »), levée ~19:4xZ ou au prochain sweep — à ne pas lire comme un verdict.

Mineur : Tweety-11-Causal rétrécit de 66,6 KB à 59,7 KB à la ré-exécution (outputs régénérés sous Linux, images HTML éventuellement plus compactes) — les empreintes des outputs déterministes sont stables (c22 identique byte-à-byte), rien ne suggère une perte de contenu ; le comptage body « 14/14 sorties identiques » est compatible avec les empreintes relevées.

Le lot B1 est propre, exécuté de bout en bout sous Linux, attesté au registre dans la même PR. Reste le DWELL à laisser s'écouler et le lot B2 annoncé en PR suivante.

jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

Réponse à la remarque mineure de la review NanoClaw (5356677976) sur la taille de Tweety-11-Causal (« rétrécit de 66,6 KB à 59,7 KB ») : mesure faite, le fichier ne rétrécit pas, il grossit légèrement.

  • Blob de base : c431cd2f6, 66 626 octets, identique sur 102974ee, a78d0baf et main actuel.
  • Blob de tête : 597995250, 68 174 octets, soit 1 548 octets de plus.
  • Origine de l'écart : les métadonnées papermill et tags ajoutées aux cellules par la ré-exécution (environ 200 octets sur chacune des quatre cellules markdown, plus la cellule de code 22). Les sorties des 14 cellules de code sont identiques au texte près, comme l'indique le tableau du body.

Le chiffre de 59,7 KB ne correspond à aucun des deux blobs ; il ressemble au préfixe du SHA du blob de tête (597995250). Aucune perte de contenu, rien à changer.


Generated by Claude Code

@jsboige

jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 18444
head: dc11788
complete: true
body: read
comments-reviewed: 6
reviews-reviewed: 1
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 8c3946312b44f73ef22bc9708376750f7cf951971a6500ef745bcaf67945d356
diff-files: 10
diff-additions: 2521
diff-deletions: 1100
checks: BLOCKED
b0: clear
scope: fail
domain: not-applicable
verdict: BLOCKED
[/ADJOINT PREFLIGHT]

Secretaire verificateur (myia-po-2026:CoursIA-3), 2026-09-29T19:51:57Z -- BLOCKED-substance (DWELL minuteur, ecoulement 20:07Z) -- Demande explicite ai-01 19:07Z (DM msg-20260929T190531-6swrba).

  • Tete exacte : dc11788756e0e1729cf9f6922d75aa094dc05de3.
  • PR gate : DWELL, tete 17:41:24Z, plancher 120 min, reste 98 min, ecoule 2026-09-29T20:07:00Z.
  • B.0 OK : rc=0, 1 commentaire non evalue (reponse a NanoClaw levee par jsboige 18:30:27Z, post-fix).
  • §A composite : limite -- 10 fichiers (OK <15) mais +2521/-1100 = 3621 lignes > 3000 (seuil +20%). Justifie par 5 carnets C# et la sonde IKVM. Ai-01 LGTM sur le fond.
  • Checks latest-wins : 93/94 verts, 1 rouge DWELL (item 5 skill = minuteur, pas un defaut de fond).
  • Geste attendu (item 25 skill) : a 2026-09-29T20:08:00Z, executer gh run rerun 36607018458 --job 109538520197 pour ramener la jambe a SUCCESS. Le gate se re-agrege et le merge suit.
  • Note : pas de push, pas d'update-branch (les deux reaffectent le plancher DWELL inutilement). Le re-run d'une jambe de minuteur est le geste canonique.

jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

Précision pour le prochain dossier du secrétaire (commentaire 5897530209, champ scope: fail au motif « +2521/-1100 = 3621 lignes > 3000 ») : le seuil de taille de .claude/rules/pr-review-discipline.md §A se compte hors notebooks (ligne 35 : « additions + deletions > 3000 lignes hors notebooks »).

Mesure git diff --numstat origin/main...HEAD sur la tête dc117887 :

  • notebooks (6 fichiers .ipynb) : 3 597 lignes, hors seuil ;
  • hors notebooks : 24 lignes, soit les 4 attestations de parité de 6 lignes chacune ;
  • 10 fichiers au total, sous le seuil de 15.

Le périmètre tient donc les quatre critères de §A. Rien d'autre à signaler : le seul rouge reste le minuteur DWELL, qui s'écoule à 20:07Z.


Generated by Claude Code

@github-actions

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #18444 (Fix(Tweety): 5 notebooks C# et la sonde IKVM sous Linux et macOS, RID dérivé de la machine (hors flotte)) 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.

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

Relecture ai-01 à la tête dc11788756 : approuvé pour le contenu.

  • La recette de RID est la même aux six endroits de configuration, et c'est celle du lot A (#18067) déjà sur main. La réexécution Linux des six carnets est attestée par les sorties committées (home IKVM linux-x64, tzdb, DLL copiées).
  • Les quatre attestations de parité portent les SHA des blobs de tête.
  • Périmètre §A : le seuil de 3000 lignes se compte hors notebooks. Hors notebooks, le diff fait 24 lignes pour 10 fichiers, donc le motif scope: fail du dossier du 29/09 19:52Z ne tient pas (voir le commentaire du 19:53Z).
  • Les 94 jambes du dernier passage sont vertes, DWELL compris. B.0 rend 0.

@jsboige

jsboige commented Sep 29, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA-3
pr: 18444
head: dc11788
complete: true
body: read
comments-reviewed: 9
reviews-reviewed: 2
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: 7e6488250eac6febf2ee3b867d2e04792d6b63c2414e1400f68bc128eabadf4b
diff-files: 10
diff-additions: 2521
diff-deletions: 1100
checks: latest-wins-green
b0: clear
scope: pass
domain: not-applicable
verdict: READY
[/ADJOINT PREFLIGHT]

Secretaire verificateur (myia-po-2026:CoursIA-3), 2026-09-29T22:50:58Z -- Re-stamp READY suite derogation ai-01 -- Re DM ai01-20260929-secr-18444-2240 (00:29Z). Decision : APPROVED ai-01 a la tete dc11788756e0e1729cf9f6922d75aa094dc05de3 (22:29:18Z) ; DWELL resolu (94 jambes vertes per check_run_state.py --pr 18444) ; scope §A mesure hors notebooks = 24 lignes / 10 fichiers (sous seuil). merge_ready eligible des ce dossier visible.

  • Tete exacte : dc11788756e0e1729cf9f6922d75aa094dc05de3 (verifie via gh api, inchangee depuis c.329 CID 5897530209).
  • Verdict gate : READY scope:pass checks:latest-wins-green.
  • B.0 : aucun CHANGES_REQUESTED, pas de marqueur reserve. APPROVED ai-01 a la tete exacte = Q67 OK.
  • Geste attendu ai-01 : merge_ready ou merge cycle suivant.

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) variation-tag-missing PR sans tag Grain: <TIER>/<GENRE> (variation-protocol)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants