Question the premise
Skill Fergius-Engineering/instincts/skills/question-the-premise
Working-instinct skills for Claude Code: verify claims against the source, log for the bug you can't reproduce, write like a human, test so the test bites. A reflex layer on top of superpowers.
npx -y skills add Fergius-Engineering/instincts --skill question-the-premiseAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Use when several well-reasoned fixes on the same hypothesis have all failed, or when a symptom looks impossible.
SKILL.md
2.0 KB, as published. Nobody here has run it
The rule
Working by hypothesis, test, confirm only helps inside the right frame. If two or three well-reasoned fixes all fail, the likely problem is your premise, not your next fix. Stop and ask: have I actually confirmed the bug is in the layer I'm attacking?
This sharpens superpowers' systematic-debugging: that skill runs the loop; this one says when to stop looping and suspect the frame itself.
Fires when
Two or three fixes on the same hypothesis have all failed. A symptom that looks impossible — works in one path, fails in another that shares the same code. You're about to do a big rewrite or a deep dive to force the current theory to work.
How to apply
After about two or three failed fixes, treat the premise as the suspect, not the code. Get an outside view from someone or something that sees the whole story and has no stake in your theory.
Chase the impossible-looking discrepancy. It points at the layer you're not looking at.
If your evidence for the premise is a missing log line, load logging-for-remote-diagnosis first: absence is not proof.
Worked example
A test is flaky. You add a retry, still flaky. You add a sleep, still flaky. You mock the clock, still flaky. Three reasoned fixes, all failed.
The premise was wrong. Another test in the suite mutates a shared global, and the run order decides the outcome. Every timing fix was reading the wrong layer entirely.
The tell was right there the whole time: it passed alone but failed in the suite. That impossible-looking symptom was pointing at the real layer.
Red flags
| Thought | Reality |
|---|---|
| "Just one more fix and it'll work" after 2–3 have failed | Suspect the premise instead. |
| "The data confirms my theory" | Data read inside a wrong frame confirms the frame. Check the layer. |
| "I'll just rewrite this module" | Before you've confirmed the bug is even in that module. |