Repository navigation
Conversation
Les 6 drifts de base mesures par l'artefact twin-parity-report (job "Twin Parity Check", run 41865447308, base 49e4406) sont tous DRIFT_PRE_EXISTING, unilateraux et de contenu : chaque cote derive a bouge par une PR deja mergee, posterieure a la derniere attestation. Cette PR re-atteste les 4 paires sans collision ni contenu en mouvement : app-34-15-puzzle 0003 (C# derive par bd5d53b, #24473) app-4-jobshopscheduling 0011 (Python derive par f3f0eb9, #23317) csp-1-fundamentals 0034 (C# derive par 9325ad8, #23344) sudoku-06-aima-csp 0014 (Python derive par a5fbf9c, #23656) Deux paires sont volontairement exclues : search-03-informed deja re-attestee par #24640 (entree 0028, memes SHA) -- ecrire une seconde entree produirait une collision d'index au merge ; search-09-linearprogramming le cote C# derive est encore modifie par #24695 -- une attestation ecrite maintenant serait perimee a son merge. --update joue en derniere operation (#8957) : aucune normalisation outillee n'a ete appliquee apres. Aucun carnet n'est touche par ce diff. See #22267 See #21822 Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Avertissements consultatifsTrivial-diff advisory (#15740, non bloquant). G-VAR-2/3 GENRE signals (advisory, non bloquant, #10020).
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 G-VAR-2 light cap reached (advisory, non bloquant). Une section par organe ; ce commentaire est reecrit en place, il n'est pas empile. |
Grain: MED/ledger — lane myia-ai-01:CoursIA-2 — prev: MED/guard #24697
Le geste
Rebaseline de 4 attestations de parite twin devenues perimees sur
main. Cette PR ne touche aucun carnet : elle n'ecrit que des entrees d'audit dans le registrescripts/notebook_tools/twin_pairs.d/(forme file-per-audit, #14911).--updatea ete joue en derniere operation, conformement a #8957 : aucune normalisation outillee (strip_probe_banner.py,strip_machine_paths.py,scrub_papermill_paths.py) n'a ete appliquee apres.Les 6 drifts de base mesures
Source de la liste : l'artefact
twin-parity-reportdu jobTwin Parity Check(run41865447308, tete6b5e600e997bde #24662, base49e440607d24) — il modeper_pairsur 169 paires et distingue le drift INTRODUIT (rouge, imputable a la PR) du drift PREEXISTANT (herite demain) :drift_introduceddrift_pre_existingokLes 6 drifts sont unilatéraux (un seul cote de la paire a bouge depuis la derniere attestation) et de contenu (le SHA-256 metadonne-immune differe), pas de blob.
mainposterieurebd5d53b1129a2026-11-04 — #24473f3f0eb924feb2026-10-31 — #233179325ad89a90c2026-10-30 — #233448310e2ab47bc2026-10-30 — #229640dc89ac41d482026-10-31 — #23112a5fbf9c85a892026-10-31 — #23656Audit firsthand de chaque paire :
git logsur le fichier derive (la mutation est posterieure a la date d'attestation, et provient d'une PR deja mergee) + lecture de l'ecart de SHA de contenu. Aucun des 6 derives n'est une degradation : ce sont des attestations perimees par des travaux legitimes merges entre-temps.Ce que cette PR ecrit
4 entrees d'audit nouvelles, une par paire, avec l'index alloue contre
origin/main(le garde d'integrite refuse un index deja publie pour la meme paire) :app-34-15-puzzle/0003-2026-11-04-myia-ai-01-CoursIA-2.yamlcontent_csharp_sha=8cad0271…)app-4-jobshopscheduling/0011-2026-11-04-myia-ai-01-CoursIA-2.yamlcontent_python_sha=26472593…)csp-1-fundamentals/0034-2026-11-04-myia-ai-01-CoursIA-2.yamlcontent_csharp_sha=f1ade393…)sudoku-06-aima-csp/0014-2026-11-04-myia-ai-01-CoursIA-2.yamlcontent_python_sha=f2fcedc6…)Chaque entree reprend les deux cotes de la paire (SHA de blob et SHA de contenu des deux jumeaux), comme le veut la forme append-only du registre : l'entree decrit l'etat de la paire entiere, pas le seul cote qui avait bouge.
Les 2 paires exclues, et pourquoi
Search-03 Informed — deja traite par la lane
myia-po-2028:CoursIA-2: la PR Fix(search,#24558): les sorties d'exercice C# ne simulent plus une mesure #24640 ecrit l'entreesearch-03-informed/0028-2026-11-04-myia-po-2028.yamlavecpython_sha: bde4cf18…etcontent_python_sha: 8b5a8e02…, c'est-a-dire exactement les valeurs courantes que j'aurais ecrites. Ecrire ma propre entree produirait deux entrees concurrentes pour la meme paire et un collision d'index au merge (gardetwin-index-collision-gate). Je n'en ecris pas.Search-09 LinearProgramming — la PR Fix(search,#10921): titres H1 residuels alignes sur le zero-pad #12933 -- 6 carnets #24695 (lane
myia-po-2023:CoursIA) modifie encoreSearch-09-LinearProgramming-CSharp.ipynb, qui est le cote derive de cette paire. Rebaseline maintenant produirait une attestation perimee a la minute de son merge (le SHA de blob du cote C# changerait), c'est-a-dire un drift re-apparu. Le rebaseline de cette paire se fait apres le merge de Fix(search,#10921): titres H1 residuels alignes sur le zero-pad #12933 -- 6 carnets #24695.Ces deux exclusions sont des barrieres reelles (collision d'index, contenu en mouvement), pas des preferences de triage.
Verification
Mesure par paire sur le worktree (organe
check_twin_parity.py --check --json --pair <nom>), apres le--update:DRIFT(C#, contenu)OKDRIFT(Python, contenu)OKDRIFT(C#, contenu)OKDRIFT(Python, contenu)OKDRIFT(Python, contenu)DRIFT— couvert par #24640DRIFT(C#, contenu)DRIFT— rebaseline apres #24695Les 4 paires rebaselinees passent en
OK; les 2 exclues gardent exactement l'etat demain(aucune degradation introduite par cette PR).Le job
Twin Parity Checkde la CI refait le meme calcul en modeper_paircontreorigin/main: il ne peut signaler que le drift INTRODUIT, et cette PR n'introduit aucun carnet.Portee
See #22267(registre twin — 21 paires en derive) : cette PR en rebaseline 4 ; le solde releve surmainapres ce merge est de 2 paires, dont une deja couverte par Fix(search,#24558): les sorties d'exercice C# ne simulent plus une mesure #24640 et une bloquee par Fix(search,#10921): titres H1 residuels alignes sur le zero-pad #12933 -- 6 carnets #24695.See #21822(registre twin — attestations perimees surmain).🤖 Generated with Claude Code