From 710f031ad0685cd7fc5600af526deea060312b54 Mon Sep 17 00:00:00 2001 From: Jesse Vincent Date: Wed, 10 Jun 2026 20:44:48 -0700 Subject: [PATCH] writing-plans: task right-sizing, Global Constraints header, per-task Interfaces blocks Claims are fidelity and variance, not dollars (full attribution in the superpowers-evals experiment log, 2026-06-11 L1 entry): - Global Constraints header: 0/5 -> 5/5 adoption in micro-tests, exact values verbatim; makes constraints mechanically propagatable to briefs and reviewers (a version-floor violation class shipped because they weren't). The one fix wave in the elicited full runs was a version-floor catch this header enabled. - Per-task Interfaces blocks: 0 -> 100% of tasks, exact signatures, within-plan consistent; removes the controller's per-dispatch interface re-derivation. - Task right-sizing: 9.4 -> 8.4 mean tasks at svelte scale (kills standalone Types/README micro-tasks); no effect at small scale. - End-to-end (opus-written plan executed under SDD): guidance plan ran 1 fix wave vs control's 2-4 (control plan shipped a real Sierpinski bug); execution cost equal within noise. --- skills/writing-plans/SKILL.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/skills/writing-plans/SKILL.md b/skills/writing-plans/SKILL.md index 847412ec..b1613eb0 100644 --- a/skills/writing-plans/SKILL.md +++ b/skills/writing-plans/SKILL.md @@ -33,6 +33,15 @@ Before defining tasks, map out which files will be created or modified and what This structure informs the task decomposition. Each task should produce self-contained changes that make sense independently. +## Task Right-Sizing + +A task is the smallest unit that carries its own test cycle and is worth a +fresh reviewer's gate. When drawing task boundaries: fold setup, +configuration, scaffolding, and documentation steps into the task whose +deliverable needs them; split only where a reviewer could meaningfully +reject one task while approving its neighbor. Each task ends with an +independently testable deliverable. + ## Bite-Sized Task Granularity **Each step is one action (2-5 minutes):** @@ -57,6 +66,13 @@ This structure informs the task decomposition. Each task should produce self-con **Tech Stack:** [Key technologies/libraries] +## Global Constraints + +[The spec's project-wide requirements — version floors, dependency limits, +naming and copy rules, platform requirements — one line each, with exact +values copied verbatim from the spec. Every task's requirements implicitly +include this section.] + --- ``` @@ -70,6 +86,12 @@ This structure informs the task decomposition. Each task should produce self-con - Modify: `exact/path/to/existing.py:123-145` - Test: `tests/exact/path/to/test.py` +**Interfaces:** +- Consumes: [what this task uses from earlier tasks — exact signatures] +- Produces: [what later tasks rely on — exact function names, parameter + and return types. A task's implementer sees only their own task; this + block is how they learn the names and types neighboring tasks use.] + - [ ] **Step 1: Write the failing test** ```python