principle-attack-the-premise
Apply when two or more fixes that share one premise have failed the same gate.
- License 许可
- MIT
- 最近更新
- 2026-11-03
- Stars
- ★ 10
- Forks
- 2
01 前言 Front Matter
- name
- principle-attack-the-premise
- description
- Apply when two or more fixes that share one premise have failed the same gate.
- user-invokable
- false
- disable-model-invocation
- false
03 SKILL.md 正文
Attack the Premise
When two or more fixes that share one premise have failed the same gate, suspect the premise, not the fixes.
Why: Each failed fix is evidence against the belief it assumed. A third fix on the same premise spends effort where the evidence already says the cause is not.
Pattern:
- Write the premise down. The premise is the one sentence that every failed fix assumed.
- Test the premise before the next fix. Find an observation that would come out differently if the premise were false, and make it. Look at how the failures are distributed, not only at how large they are. When the next fix swaps in a part that stands in for the real consumer, such as a parser standing in for GitHub's renderer, that stand-in is the new premise: test it against the consumer's own output, on inputs outside the family the earlier failures came from. Make the check rerunnable per Build the Lever.
- Follow the evidence. If it contradicts the premise, the cause is elsewhere. Look for what the failures have in common that the premise did not predict. If it confirms the premise, ask the next "why" per Fix Root Causes. The earlier fixes may have treated a consequence instead of the cause.
- Remove the condition instead of compensating for it, per the Laziness Protocol. If the evidence shows that one part always lands on the losing side, change what puts it there. A mechanism that cleans up after it leaves the cause in place and adds work on every run.
Stop: Do not start the next fix before the premise is written down and tested.
This principle is distinct from Redesign from First Principles, which rebuilds a design around a new requirement. It questions a fact the current design assumes.
04 同仓库更多 Skills
changelog
Write the changelog entry for a pull request. Use when a PR changes behavior that users, operators, or integrators can notice.
writing-good-tickets
Write, file, or update an issue or ticket that an agent or a developer can take to one PR. Use when filing a bug or feature, updating an issue, or breaking a plan into tickets.
writing-good-prs
Write or update a pull request title and body that a reviewer can trust and own. Use when opening a PR or editing its description.
writing-good-commits
Write or reword a git commit message and size the commit it describes. Use when committing, or when reshaping commits during a rebase.
writing-for-agents
Writing documents for agents. Use when creating or editing skills, or modifying AGENTS.md or CLAUDE.md.
wizard
Generate an interactive bash wizard that walks a human through steps only they can perform. Use when provisioning infrastructure, setting up credentials or CI secrets, walking an unfamiliar third-party dashboard, or running a one-off migration or cutover. Don't invoke this for steps the agent can perform itself.