feat(writing-plans): Global Constraints + per-task Interfaces as the two narrow exceptions to reference discipline (stacked on #1715)#1746
Draft
obra wants to merge 1 commit into
Conversation
… Interfaces blocks Builds on #1715's reference discipline: the two structures are framed as the narrow exceptions for spec content subagents must see (they get the plan or one task of it, never the spec). Exception wording micro-validated as PRI-2173 arm B: adopts 6/6 with zero restatement leak (lowest spec-copy rate of all arms, plans -15% bytes vs dev control); Global Constraints header elicited 0/5->5/5 with verbatim values, Interfaces 0->100% signature availability (L1 micros). Value = lens determinism + mechanical extraction into task briefs and reviewer constraints blocks, plus fix-wave reduction (1 vs 2-4 in L1 full runs); the values themselves survive reference discipline by riding code blocks.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Who is submitting this PR? (required)
claude-fable-5)7c4a7741-5e94-44b9-8c0f-3800d1241f89)What problem are you trying to solve?
Three failure modes observed in real SDD eval runs (quorum harness driving actual Claude Code sessions,
sdd-go-fractals/ svelte scenarios):go 1.21floor AND the gradient string). In execution, scattered constraints surfaced as review fix waves — e.g. a go.mod version-floor fix that was only catchable because the experimental plan had a constraints header to check against.Separately, #1715 ("plans reference the spec; they never restate it") landed while this branch existed, and the obvious worry was that reference discipline would strip exactly the verbatim values these structures carry. We ran a head-to-head to find out (PRI-2173, below) instead of assuming.
What does this PR change?
+24 lines to
skills/writing-plans/SKILL.md, nothing else: a Task Right-Sizing section, a## Global Constraintssection in the plan-header template, a per-task**Interfaces:**block in the task template, and one paragraph framing the latter two as the two narrow exceptions to #1715's reference discipline (subagents see the plan, never the spec, so these two kinds of spec content must travel in the plan — everything else stays referenced).Complete diff (24 insertions, 1 file)
@@ -74,6 +92,12 @@ [task template]
exact/path/to/existing.py:123-145tests/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