From f3fdacd8711e5a36cb48935cc621797ef990b0f0 Mon Sep 17 00:00:00 2001 From: Brummel Date: Sat, 16 May 2026 13:26:55 +0200 Subject: [PATCH] =?UTF-8?q?planner:=20Step-5=20self-review=20item=206=20?= =?UTF-8?q?=E2=80=94=20pin/replacement=20substring=20contiguity?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Recurring-class plan defect, now twice (iter-revert Concern 2; iter effect-doc-honesty Task 2): a presence-pin asserts a single-line contains()/grep substring while the verbatim replacement body that must contain it soft-wraps the substring across two lines — two authoritative artefacts that cannot both be applied literally. The implementer absorbs it (preserve wording + pin, move the wrap column) but it is a planner self-review miss, not an implementer judgement call. Add an explicit Step-5 checklist item so plans pairing a presence-pin with a verbatim text edit are scrubbed before handoff. --- skills/planner/SKILL.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/skills/planner/SKILL.md b/skills/planner/SKILL.md index 266b82a..32d47bd 100644 --- a/skills/planner/SKILL.md +++ b/skills/planner/SKILL.md @@ -179,6 +179,17 @@ Before handing the plan off, run this checklist inline: 5. **No commit steps:** task templates must not contain `git commit` instructions. Implement tasks leave work in the working tree. +6. **Pin/replacement substring contiguity:** when a task ships a + test asserting `contains("")` (or a grep) AND another + task's verbatim replacement body is what must contain that + substring, the substring must appear *contiguously* in that + replacement body — no soft-wrap splitting it across two lines. + Two authoritative artefacts (exact pin vs. exact replacement) + that cannot both be applied literally is a plan defect, not an + implementer judgement call. This is the recurring grep/contains + line-wrap family (iter-revert Concern 2; iter effect-doc-honesty + Task 2) — scrub it here, every plan that pairs a presence-pin + with a verbatim text edit. Fix issues inline.