brainstorming: check YAGNI cuts against the goals the user stated, not only the features they named
- I searched existing issues and this has not been proposed before
What problem does this solve?
The user described the purpose of a pantry feature explicitly: "with expiry dates, so things don't go bad". In the design section, an expiry reminder was nevertheless listed under "deliberately left out", because it had not been requested literally as a feature. The user had to ask and request it again. Without it, the stated goal is reached only if the user remembers to look — the cut removed the mechanism of the goal.
Proposed solution
Next to "YAGNI ruthlessly" in brainstorming: before anything goes onto a "left out" list, hold each cut against the goals the user stated ("so that X", "because Y"). If the cut feature carries a stated goal, ask about it instead of cutting it silently.
What alternatives did you consider?
Weakening YAGNI: no, it prevents real scope creep. Asking about every cut: too noisy; the trigger is narrow — only cuts that touch a stated goal.
Is this appropriate for core Superpowers?
Yes; it concerns the design dialogue in general.
Environment (required)
| Field | Value |
|---|---|
| Superpowers version | observed on 6.3.0; the gap is still present on dev as of 2026-10-01 |
| Harness (Claude Code, Cursor, etc.) | Claude Code (desktop app, Code tab) |
| Harness version | 2.1.272 |
| Your model + version | Claude Opus 5.5 (claude-opus-5-5) |
| All plugins installed | superpowers, task-observer, claude-mem, context7, plus private skill plugins unrelated to this area |
| OS + shell | Windows 11, Git Bash |
Context
Principle: YAGNI measures against the stated purpose, not the literally named feature — a function without which the declared goal is reached only by self-discipline is not speculative scope.
Source: obra/superpowers