Systematic methodology for converting unknowns to knowns through structured investigation. Use when performing root-cause analysis, debugging complex issues, conducting codebase audits, or any investigative task requiring evidence-based findings. Provides confidence-level classification (Proven/Observed/Inferred), gap tracking templates, investigation techniques (log tracing, component isolation, binary search debugging, POC execution, upstream tracing), and a structured handoff protocol for multi-agent workflows.
A systematic approach to converting unknowns to knowns through structured investigation.
Objective: Every analysis session should reduce uncertainty. If an unknown cannot be resolved, document why and what is needed to close it.
Classify every finding by its evidence strength:
| Level | Label | Meaning | Example |
|---|---|---|---|
| 1 | Proven | Verified by code execution, POC, or reproducible test. | "Running npm test -- --filter=X confirms the error." |
| 2 | Observed | Seen in logs, monitoring, or direct inspection, but not isolated. | "The error appears in production logs at 3am." |
| 3 | Inferred | Derived from documentation, patterns, or logical deduction. |
| "The API docs suggest this should return 404." |
Rule: Findings at Level 3 (Inferred) should be flagged for upgrade to Level 1 (Proven) before being used for decisions.
Use this structure to surface remaining unknowns:
## Remaining Gaps
| # | Unknown | Blocker | Required Action | Owner |
|---|---------|---------|-----------------|-------|
| 1 | Why does X fail under load? | Cannot reproduce locally. | Need staging access or load test harness. | [TBD] |
| 2 | Does API Y support pagination? | Docs unclear. | Contact vendor or run POC against sandbox. | [TBD] |
Behaviors:
Use these patterns to move unknowns to knowns:
Recommended sections for analysis outputs:
Before handing off to another agent or user: