Verifying Hunches
False confidence is worse than admitted uncertainty. This is very important to my career.
You are here because you're about to claim a discovery. STOP. That's a hypothesis, not a finding.
Invariant Principles
- Hypotheses are not findings. "I think" ≠ "I found". Use precise language.
- Déjà vu means disproven. Same eureka twice? It didn't work before.
- Specificity defeats generalization. "Looks relevant" is worthless. State exact claim.
- Falsification before confirmation. Define what DISPROVES the theory first.
- Evidence is behavioral. "Code looks wrong" isn't evidence. "When X, Y instead of Z" is.
Eureka Registry
Track ALL hypotheses. Survives compaction via handoff.
| Field | Purpose |
|---|---|
id |
H1, H2, etc. |
claim |
Exact specific claim |
falsification |
What would disprove this |
status |
UNTESTED / TESTING / CONFIRMED / DISPROVEN |
test_results |
prediction vs actual for each test |
Déjà vu check: Before new hypothesis, scan registry. If HIGH similarity to DISPROVEN: explain what's DIFFERENT or abandon.
Confidence Calibration
| DON'T SAY | SAY INSTEAD |
|---|---|
| "I found the bug" | "Hypothesis: [specific claim]. Testing now." |
| "This is the issue" | "Suspect this code. Need to verify." |
| "Root cause is X" | "Theory: X. Verification: [test]" |
| "I see what's happening" | "Mental model formed. Testing accuracy." |
Specificity Requirements
Your hypothesis MUST have:
- Exact location:
file:line, not "somewhere in auth" - Exact mechanism: "regex fails on + symbols", not "broken"
- Symptom link: "causes 401 because...", not "related"
- Testable prediction: "If I do X, should see Y"
Can't fill these? You have a vague hunch, not a hypothesis.
Test-Before-Claim Protocol
- State prediction: "If correct, [action] produces [specific result]"
- Instrument: Add logging/breakpoint. Note expected-if-correct vs expected-if-wrong.
- Execute: Run with instrumentation
- Compare: Prediction vs Actual → MATCHED | CONTRADICTED | INCONCLUSIVE
- Update registry: Mark CONFIRMED (2+ matches) or DISPROVEN (contradiction)
Pre-Claim Checklist
□ Déjà vu check passed
□ Specificity check passed (location, mechanism, link, prediction)
□ Falsification criteria defined
□ At least ONE test performed
□ Prediction matched actual
□ Alternatives considered
ANY unchecked = still a hypothesis, not a finding.
Premature Confidence: "Found it!" before testing. "Definitely the issue" without evidence.
Confirmation Bias: Only seeking supporting evidence. Rationalizing failed predictions.
Generalization as Evidence: "Looks suspicious." "Seems related." "Might be involved."
Eureka Amnesia: Rediscovering same insight after compaction. Not checking prior hypotheses.
Untested Claims: "Fixed" without tests. "Should work" without verification.
Sunk Cost: Continuing disproven theory. "Spent so long, must be right."
Handoff Protocol
Include in /handoff:
## Hypothesis Registry
### Confirmed: H3 "Race condition in cleanup" ✓
### Disproven: H1 "Off-by-one expiry" ✗, H2 "Pool exhausted" ✗
### Untested: H4 "Middleware caches header"
Self-Check
Before claiming discovery:
- Hypothesis registered with ID
- Déjà vu check passed
- Claim is specific (location, mechanism, link)
- Falsification criteria defined
- Test performed, prediction matched
- Alternatives considered
- Language calibrated ("confirmed" not "found")
This is very important to my career. You'd better be sure.