---
name: deep-research-workflows
description: Run a full deep-research workflow: scope the question, deploy parallel research streams, triangulate claims across independent sources, verify citations, and deliver a sourced report. Triggers on "deep research", "research this thoroughly", "investigate this", or any request needing verified findings from multiple sources rather than a quick lookup.
---

# Deep Research Workflows

## Purpose

Turn an open research question into a verified, cited report. The pipeline is designed so parallelism buys epistemic robustness, not just speed: independent research streams cross-check each other, every factual claim is triangulated, and anything that cannot be verified is labeled, never asserted.

Do not use this for simple factual lookups or single-source Q&A. A valid research run must include multiple independent sources, evidence curation, and verification.

## Workflow

### Phase 1: Scope
Clarify before searching. Write down:
- The exact question and what a good answer looks like
- Timeframe (what dates matter, how fresh must sources be)
- Source mix required (academic, official docs, news, primary data)
- Deliverable shape (brief memo vs full report) and audience
- Hard exclusions: what is out of scope

If any of these are ambiguous and the answer matters, ask. Otherwise record your best read and keep moving.

### Phase 2: Plan
Decompose the topic into 3-6 subtopics that are MECE (mutually exclusive, collectively exhaustive). For each subtopic, note the search streams you will run:
- **Web/current**: news, trends, recent announcements
- **Academic/technical**: papers, specs, standards bodies, textbooks
- **Primary**: official docs, help centers, government data, filings
- **Skeptical**: known critiques, fact-checks, contrary positions

Assign streams to parallel workers (subagents or your own sequential passes). Workers get the subtopic plus instructions to return raw findings with source metadata, never polished prose. Polishing hides weak sourcing.

### Phase 3: Collect
Each stream returns findings in a common evidence format:
- Claim (one sentence, falsifiable)
- Source: author/org, title, date, URL
- Source rating A-E (see references/triangulation-protocol.md)
- Exact quote or data point when available

Workers must flag when a stream comes up thin: zero hits on a subtopic is data, not a failure to report.

### Phase 4: Triangulate
Feed the evidence ledger through the triangulation protocol (references/triangulation-protocol.md), or run `bin/triangulate.py ledger.json`:
- **VALIDATED**: 2+ independent sources agree
- **UNCONFIRMED**: only 1 source found, or sources are not independent (same wire story, circular citations)
- **CONFLICT**: sources disagree. Present both with evidence strength, weight primary and recent sources, explain methodology differences. Never silently pick the convenient number.
- Drop anything rated E, and anything unverifiable that cannot be reframed as opinion.

### Phase 5: Synthesize
Write the report from validated claims only. Structure: executive summary, findings per subtopic, conflicts and open questions, gaps (what you could not find), bibliography. Every factual claim carries an inline citation. See references/citation-style.md.

### Phase 6: Verify
Before delivery, run the verification checklist:
- [ ] Every factual claim has an inline citation with author, date, title, URL
- [ ] Bibliography is complete and every citation maps to an entry
- [ ] No claim rated above its evidence: UNCONFIRMED items are labeled as such in the text
- [ ] Numbers and dates checked against the source, not from memory
- [ ] No marketing content or single-source claims presented as settled fact
- [ ] Gaps and conflicts are stated plainly

## Output Contract

A research delivery includes:
1. `README.md` or top-level summary with the question, verdict, and confidence level
2. `full_report.md`: findings with inline citations
3. `bibliography.md`: complete source list with A-E ratings
4. `methodology.md`: what was searched, what was excluded, known gaps
5. Optionally `triangulation.json`: the machine-readable evidence ledger

## Operating Rules
1. Never invent numbers, dates, quotes, or events. Unverifiable = cut it or frame as opinion.
2. Source independence matters more than source count. Two outlets quoting the same press release is one source.
3. Read laterally when a source looks off: check what others say about the source before trusting it (SIFT).
4. Freshness is a property of the claim, not the page. A 2021 statistic is stale for pricing, fine for history. Date every number.
5. Report the null result. "No reliable source found" is a finding.
6. When evidence conflicts, the conflict is the story. Do not average disagreements into a fake consensus.
