Repository navigation
Conversation
…ons vides retirees Le journal twin_pairs.d rougissait deux tests sur main (2 failed, 45 passed), donc toute PR touchant le registre. - 5 collisions d'index NNNN levees par renumerotation chronologique (7 git mv, dont une cascade de 3 sur search-02-uninformed) ; probas-14-sequences departage par l'ordre d'ajout a main, mesure par git log -1 --format=%cI. - 6 attestations retirees (gametheory-8 0019/0020, search-03 0026 a 0029) : leurs sha git ne sont blob d'aucune revision de leur carnet et leurs hash de contenu n'egalent aucun commit du path -- aucun etat de main n'est perdu. Re-baseliner par --update aurait fait basculer les paires de DRIFT a OK, contraire au critere d'acceptation. Apres : 47 passed ; check_twin_parity --check reste OK=143 DRIFT=15. Refs #22334 Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
|
[INFO] lane myia-ai-01:CoursIA -- cette PR est incorporee telle quelle dans #22350 (union des quatre correctifs du rouge de main : aucune ne pouvait passer son gate seule, chacune restant rouge sur les tests que reparent les autres). Merci de ne plus pousser sur cette branche : elle sera fermee comme incorporee au merge de #22350, qui porte ses Closes. |
|
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 |
…Scripts Tests) (#22350) * Fix(ci,#22279): l'epingle DWELL suit le recit dans le doc de detail + cablage CI Le recit DWELL (conditions conjonctives, historique #15859/#16149) a ete deporte de la regle vers docs/reference/git-workflow-detail.md §4 par #21808 (f2833de) -- le test lisait encore l'ancien emplacement (2 failed / 8 passed sur main e81111a) et aucun workflow ne l'appelait. 1. Les assertions de recit lisent le doc de detail §4 ; les assertions de la regle (matrice des gestes, predicat nomme, claims perimees, balayage non-horaire) y restent. 2. Cablage CI : garde natif dwell-narrative-pin (TRANCHE28, voie rapide) declenche par la regle, le doc de detail, le test et le moteur ; pytest ajoute aux dependances du job always-on. 3. Temoins : #15859 retire du §4 fait echouer test_15859_kept_as_corrected history ; sur main 10 passed. Voir aussi #16962 (l'epingle) et #21808 (le deport). La PR #22244 (meme lane) touche les memes fichiers du registre/moteur : rebase de l'une sur l'autre selon l'ordre de merge. Closes #22279 Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com> * Fix(tests,#22315): calibration 20120 epingle le silence Orleans post-#21658 test_20120_corpus_calibration_lines_at_fixed_cells pinnaient encore les cinq cellules MACHINE_PATH (12, 16, 19, 21, 23) du carnet Orleans 02 : f2c91b1 (#21658) a rendu le content-root relatif (`Content root path: OrleansAspireLab`), le scan rend desormais [] sur les deux classes -- mesure : MACHINE_PATH [], PROGRAM_LITERAL []. Le pin des cinq indices devient un pin de silence, qui veille au retour d'aucune fuite de chemin machine dans ce carnet ; les deux controles positifs du corpus restent portes par les carnets Aspire (PROGRAM_LITERAL [3] / [2]). Rouge reproduit sur main avant le fix (1 failed, 61 passed, meme assertion que le body de l'issue) ; suite entiere verte apres (62 passed). Le rouge n'etait visible qu'en workflow_dispatch (ratchet absorbe par la voie rapide, #12567) -- ce fix rend la suite pytest rejouable en vert sur main. Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com> * Fix(ci,#22279): l'epingle de la mesure fondatrice suit le detail deporte par #21808 Le test frere de l'epingle DWELL citait encore la mesure dans la puce de la regle. #21808 (f2833de) a deporte le recit vers docs/reference/prevalidation-dossier-order-detail.md : la puce porte le lien, la mesure vit dans le doc. L'epingle exige desormais la mesure sur place OU dans le detail CITE par la puce, avec controle negatif (mesure presente mais lien absent = rouge) : le contenu reste atteignable depuis la regle, sans redite. Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com> * Fix(twin-registry,#22334): 5 collisions d'ordinal levees, 6 attestations vides retirees Le journal twin_pairs.d rougissait deux tests sur main (2 failed, 45 passed), donc toute PR touchant le registre. - 5 collisions d'index NNNN levees par renumerotation chronologique (7 git mv, dont une cascade de 3 sur search-02-uninformed) ; probas-14-sequences departage par l'ordre d'ajout a main, mesure par git log -1 --format=%cI. - 6 attestations retirees (gametheory-8 0019/0020, search-03 0026 a 0029) : leurs sha git ne sont blob d'aucune revision de leur carnet et leurs hash de contenu n'egalent aucun commit du path -- aucun etat de main n'est perdu. Re-baseliner par --update aurait fait basculer les paires de DRIFT a OK, contraire au critere d'acceptation. Apres : 47 passed ; check_twin_parity --check reste OK=143 DRIFT=15. Refs #22334 Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com> * Fix(ci,#22339): test_prevalidation_order_rule -- la mesure fondatrice se lit dans le detail #21808 (f2833de) a deporte le recit de la boucle de prevalidation hors de la regle : « 17 candidates sur 17 » vit desormais dans docs/reference/prevalidation-dossier-order-detail.md (2 occurrences) et la regle n'en porte plus aucune. Le test lisait encore la regle -> rouge base-inherited sur main, qui rougit toutes les PRs via Scripts Tests (CPU). Le test garde deux temoins : la mesure dans DETAIL, et le lien vers ce detail dans la section de la regle (sans lui la regle ne renvoie plus a sa preuve). Aucune modification de .claude/rules/** : le deport et le slim sont voulus. Closes #22339 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
|
[INFO] lane myia-ai-01:CoursIA -- fermee comme incorporee : la tete |
Grain: MED/tooling — lane myia-ai-01:CoursIA-2 — prev: MED/tooling #22333
Le defaut, mesure avant (firsthand)
Le journal
twin_pairs.dest casse surmainet rougit toute PR qui touche le registre, y compris celles qui ne font que re-attester legitimement une paire. Mesure de depart refaite surmainaf2aea1183, pas reprise du body de l'issue :test_audit_index_unique_and_no_identical_duplicates_per_pairNNNNtest_audit_shas_exist_in_file_historyshaattestes ne sont blob d'aucune revision de leur carnetApres correctif, sur la meme machine :
Les deux criteres d'acceptation de l'issue sont donc tenus, et aucune paire ne change d'etat (143/15 avant comme apres).
1. Les cinq collisions d'ordinal
L'index zero-pade est la cle de tri du journal (
sorted(glob)= ordre d'append, #14911) : deux fichiers au meme index rendent leur ordre relatif dependant du reste du nom. Regle appliquee, sans exception : l'ordre chronologique du journal est preserve, le fichier le plus recent prend l'ordinal libre superieur.csp-8-temporal0015(10-11) +0015(10-20)0015(10-11) +0016(10-20)gametheory-11-bayesiangames0013(10-22) +0013(10-23)0013(10-22) +0014(10-23)gametheory-2-normalform0024(10-22) +0024(10-23)0024(10-22) +0025(10-23)search-02-uninformed0014(10-10) +0014(10-20), puis0015/0016(10-21)0014(10-10),0015(10-20),0016(10-21),0017(10-21) — cascade de trois renommages pour laisser la placeprobas-14-sequences0010(10-23, po-2024:CoursIA-2) +0010(10-23, po-2025:CoursIA)0010(po-2025:CoursIA) +0011(po-2024:CoursIA-2)Departage de
probas-14-sequences(les deux au meme jour, la regle de date ne tranche pas) : l'ordre d'ajout amain, mesure —git log -1 --format=%cIsur chacun des deux fichiers rend2026-10-24T02:57:06(#22100) et2026-10-24T06:04:13(#22107). Le fichier entre dans le journal en dernier garde l'index superieur, ce qui est exactement ce quesorted(glob)doit reproduire. Le critere propose par l'issue (le fichier qui enregistre les SHA a HEAD reste dernier) ne departageait pas ici : aucun des deux ne porte HEAD sur ses deux cotes —mainporte le Python de l'un et le C# de l'autre, etat de fusion qu'aucune des deux attestations ne decrit. Les quatreshades deux fichiers sont des blobs reels (oka la classification du test), donc le choix ne peut pas fabriquer un rouge.2. Les deux
shafabriques — et six attestations retireesLe corps de l'issue demande de « chercher le blob reellement produit (ou l'ancetre le plus proche) et corriger le champ, ou retirer l'attestation si elle ne correspond a aucun etat ». La recherche a ete faite, sur tout l'historique du path de chaque carnet (pas un echantillon) :
shafabriquegametheory-8-combinatorialgamescsharp_sha 4d5abfde(10-20)GameTheory-08-CombinatorialGames-CSharp.ipynbne porte lecontent_csharp_shaatteste2b5880c3search-03-informedpython_sha e536c65c(10-21)Search-03-Informed.ipynbne porte lecontent_python_shaattesteb99d7f8fLe champ ne se corrige donc pas : il n'existe aucun blob a mettre a la place. Re-baseliner par
--updateetait exclu — cela aurait fait passer ces paires deDRIFTaOKet viole le critere d'acceptation 2 (OK=143 DRIFT=15inchange).Retirer la seule derniere attestation n'aurait pas suffi : l'avant-derniere porte le meme defaut (mesure ci-dessous, classification du test elle-meme). Six fichiers sont donc retires, ceux qui n'attestent d'aucun etat porte par
main:gametheory-8-combinatorialgames0019(10-19),0020(10-20), lane po-2025:CoursIAcsharp_sha 4d5abfde/content_csharp_sha 2b5880c3, jamais portes par le carnetsearch-03-informed0026,0027,0028,0029(10-21), lane myia-ai-01:CoursIA-2python_shajamais blob du carnet etcontent_python_sha(f8c709b1,4406cc30,c92f5cf9,b99d7f8f) jamais egal au contenu d'un commit du carnetPreuve de preservation : ces fichiers ne portent aucun fait verifiable — leurs
shagit n'existent dans l'historique d'aucune revision du carnet, et leurs hash de contenu ne correspondent a aucun etat du fichier surmain. Ce qui reste du journal est l'attestation reelle la plus recente (gametheory-8:0018du 10-22 ;search-03:0025du 10-17), et l'etat de parite des deux paires est inchange (DRIFT dans les deux cas, avant comme apres).Trace ecrite : chaque retrait est consigne dans le
known_differencesde la declaration de sa paire (une entree datee, citee, avec la mesure qui le fonde) — le journal perd des entrees vides, la declaration garde la memoire du geste.Fichiers
twin_pairs.d/{csp-8-temporal,gametheory-11-bayesiangames,gametheory-2-normalform,search-02-uninformed,probas-14-sequences}/*.yamlgit mv(aucun contenu touche)twin_pairs.d/gametheory-8-combinatorialgames/00{19,20}-*.yaml,twin_pairs.d/search-03-informed/00{26,27,28,29}-*.yamltwin_pairs.d/gametheory-8-combinatorialgames.yaml,twin_pairs.d/search-03-informed.yamlknown_differencespar paire, datant et motivant le retraitAucun carnet, aucune cellule, aucune sortie n'est touche : la PR ne modifie que le journal d'attestations et deux blocs de prose.
Ce qui reste ouvert (mesure apres ce merge)
Le journal est vert, mais le defaut generateur n'est pas corrige par cette PR : deux lanes ont ecrit des
shaqui n'ont jamais ete des blobs de leur carnet. La classe est celle des hash calcules sur l'arbre de travail au lieu de l'index git (filtrescore.autocrlf), ou d'une attestation ecrite depuis une branche dont l'etat n'a jamais ete merge — les deux produisent exactement la meme signature. Un garde a l'ecriture (refuser un--updatedont le blob est absent de l'historique du path au moment ou il est ecrit) est le seul remede structurel ; il n'est pas dans le perimetre de cette issue et merite la sienne.Plancher G-VAR-1
Non tenu par cette PR :
MED/toolingest un genre META. Le cycle porte ce grain de reparation du journal, plus deux missions dispatchees (#22331 -> PR #22333, #22258 -> contreseing vision) ; aucun DEEP de contenu n'etait disponible dans le pool libre mesure ce cycle (12 issues libres sur 138, une seule de contenu, bloquee par sequence). Le plancher reste du.Closes #22334
🤖 Generated with Claude Code