From 763d0022bf3e5908a78c06c51f754174524e22ae Mon Sep 17 00:00:00 2001 From: Bastien Chanot Date: Mon, 24 Aug 2026 13:44:01 +0200 Subject: [PATCH] =?UTF-8?q?chore(memory):=20TODO=20=E2=80=94=20W9=20human?= =?UTF-8?q?=20merge=20signal=20+=20Palier=203=20trigger=20(won't-build-now?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .claude/tasks/TODO.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/.claude/tasks/TODO.md b/.claude/tasks/TODO.md index 18687b9..109b9d3 100644 --- a/.claude/tasks/TODO.md +++ b/.claude/tasks/TODO.md @@ -1187,4 +1187,15 @@ Health Stack = shellcheck). corrigée (aucun floor à ce poids). 2026-08-24. - [x] W11 RED comportemental : 16/16 runs frais non-amorcés conformes (verifier ×9, feater ×2, orchestrateur ×5) → EVAL-027. 2026-08-24. -- [ ] W9 PAS de merge — gate humain explicite. +- [x] W9 merge sur signal humain explicite (2026-08-24, "merge dans develop"). + +**Won't-build-now — Palier 3 unlazy (OWNS/leases), trigger documenté :** +Différé volontairement (BDR-083) : tous les dispatches parallèles actuels +sont read-only — le problème (2 exécuteurs ÉCRIVAINS concurrents) n'existe +pas. Pattern [[LRN-080]] : ne pas construire sans menace mesurée. +TRIGGER = le jour où un flow dispatche ≥2 exécuteurs écrivains en parallèle : +(1) FILE SCOPE du contrat = déclaration OWNS (champ existant, zéro format +neuf) ; (2) ~40 l dans gates.sh ou lib/owns.sh — intersection CONSERVATRICE +des FILE SCOPE des contrats actifs avant fan-out, conflit possible → refus + +dispatch séquentiel (pas de locks disque tant que l'orchestrateur est +unique) ; (3) locks + tests.