docs(harness,#15204): deporter le recit de B.0 hors de CLAUDE.md (-722 o/requete) - #16010
Conversation
…2 o/requete) Trois recits ne vivaient que dans CLAUDE.md (#12798 auteur, #12347 levee 32 s apres le merge, #10761 rebase muet de 19:41). Ils sont fusionnes dans docs/reference/pr-review-context.md AVANT d'etre retires de la source, et chaque temoin est verifie present dans la cible (git grep >= 1). Les temoins deja preserves ailleurs (recit #10761, #14658/#14682) sont reduits a un pointeur. Aucune regle HARD n'est supprimee ni affaiblie : la table des trois surfaces, les trois mecanismes de levee, la clause AUTEUR-et-HEURE et l'organe restent integralement. Mesure: TOTAL AUTO-CHARGE 181 314 o -> 180 592 o. See #15204. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
G-VAR-2 light cap reached (advisory, 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 |
|
Trivial-diff advisory (#15740, non bloquant). |
Grain: MED/docs — lane myia-ai-01:CoursIA — prev: MED/docs #15936
Ce que fait cette PR
Deuxième tranche du levier B de #15204 (déporter le récit daté hors du harnais auto-chargé), sur
CLAUDE.md§B.0 — le fichier auto-chargé le plus gros du dépôt.Mesure — organe
scripts/audit/measure_autoloaded_harness.py, surfaces machine incluses :origin/main@ddbd773501)CLAUDE.md−722 o par requête, pour tout agent de la flotte, à chaque session.
Je le dis tel quel plutôt que de l'habiller : c'est modeste, et la mesure corrige mon propre pronostic. §B.0 est dense en prescription, pas en récit — l'essentiel de son volume est la table des trois surfaces, les trois mécanismes de levée et l'organe, qui restent intégralement. Seul le récit part, et le récit n'y pesait que 722 o.
Note de mesure : sous
--root <worktree>, l'organe signaleMANQUANTE MEMORY.md(le chemin per-machine ne vit pas à côté d'un worktree) et la décompte explicitement plutôt que de la compter zéro. Les 9 416 o deMEMORY.mdsont donc réintégrés à la main dans le tableau ci-dessus — sans quoi la ligne « règles » paraîtrait chuter de 9 ko sans qu'une seule règle ait bougé.Préservation AVANT réduction — vérifiée, pas déclarée
« Consolider != Archiver » exige que le contenu durable soit écrit dans la cible avant d'être retiré de la source, preuve citée. Trois récits ne vivaient que dans
CLAUDE.md:#12798— réserve d'un tiers éteinte par l'auteur de la PRpr-review-context.md§ Qui lèveCle presente False— le livrable réel derrière #12798#12347— levée postée après le merge21:24:28Z— l'heure exacte qui fonde la clause19:41/11:07— #10761, le rebase muetLe troisième n'était pas prévu. Je l'ai découvert en recomptant les témoins dans le worktree avant d'éditer : la section #10761 déjà déportée (2026-08-21) couvre les deux nits et la correction Sendov → Mazur, mais pas le rebase de 19:41 qui fonde « un push muet est indiscernable d'un push qui répond ». Le retirer sans l'avoir fusionné d'abord aurait été exactement la perte que la règle interdit — et elle serait passée inaperçue, puisque
#10761restait présent dans la cible par ailleurs. Un témoin présent ne prouve pas que le récit l'est : c'est la phrase qui se compte, pas le numéro.Les témoins déjà préservés ailleurs (récit #10761, #14658/#14682) sont réduits à un pointeur, leur contenu vivant déjà à
pr-review-context.md:116-120et:132-136.Ce qui ne bouge pas
§B.0 garde son interdit, sa table des trois surfaces (
comments[].body· préfixe dereviews[].body·reviewThreads/isResolved), ses trois mécanismes de levée, la clause AUTEUR et HEURE, l'organe et son avertissement («exit 0ne dit ni qui l'a écrite, ni avant ou après le merge, ni si la substance est traitée »).Aucune règle HARD n'est supprimée ni affaiblie. Le diff est de −5/+5 lignes sur
CLAUDE.md: c'est le récit qui part, pas la prescription.Vérification
python scripts/audit/measure_autoloaded_harness.py --root . --with-machine— chiffres ci-dessus.git grepde chaque témoin : tous ≥ 1 dansdocs/reference/pr-review-context.md.git worktree list+gh pr list --search head:+ PRs ouvertes touchantCLAUDE.md→ aucune collision, puis[CLAIMED]posé sur harnais: redescendre le contexte auto-charge sous 70k tokens (mesure: 98,5k, cible -29%) #15204 avant toute édition (issuecomment-5654909534,paths: CLAUDE.md, docs/reference/pr-review-context.md).Variation
MED/docs, genre META : cette PR ne tient pas le plancher G-VAR-1 du cycle, et c'est assumé — elle exécute un mandat user explicite de slimming du harnais.G-VAR-3 : second
docsconsécutif après #15936, couvert par l'exception #14357 — second grain MED et intersection de fichiers vide (#15936 touchaitsecrets-hygiene.md,submodule-maintenance.md,secrets-and-coord-detail.md,submodule-maintenance-detail.md; aucun n'est touché ici).See #15204.
🤖 Generated with Claude Code