MCP tools don't populate output.output in the tool.execute.after hook — the MCP content flows through OpenCode's internal parts pipeline instead. This caused a crash: undefined is not an object (evaluating 'text.length') in the truncate function.
34 lines
1.1 KiB
Markdown
34 lines
1.1 KiB
Markdown
---
|
|
description: Checklist for investigation setup: orientations, hypothesis, and circuit breaker baselines
|
|
---
|
|
|
|
# Research Setup
|
|
|
|
**Goal**: Build a grounded mental model before acting.
|
|
|
|
## Investigation Checklist
|
|
|
|
Before every hypothesis cycle:
|
|
|
|
- [ ] Hypothesis written (one sentence: "I believe X because Y")
|
|
- [ ] Falsification criterion written ("if wrong, I'd expect to see ___")
|
|
- [ ] Falsification test run BEFORE confirmation test
|
|
- [ ] Result recorded (ELIMINATED with reason, or CONFIRMED with evidence)
|
|
- [ ] Hypothesis re-evaluated at this tool-call boundary
|
|
- [ ] All traces/instrumentation removed before next hypothesis
|
|
|
|
## Orientations
|
|
|
|
**Understand (Grounded Theory)** — Read code, name what you see. Compare new
|
|
observations against earlier ones. Connect categories (what calls what, data
|
|
flows). Write findings to session memory. Stop at saturation.
|
|
|
|
**Diagnose (Strong Inference + Satisficing)** — Simple check first: can a
|
|
single log answer the question. When no single log answers the question,
|
|
triage (see `research-triage.md`).
|
|
|
|
## Mode Switching
|
|
|
|
These compose recursively:
|
|
Understand -> anomaly -> Diagnose -> need context -> Understand -> ...
|