Fan-out research, with adversarial verification
Launching searches in parallel speeds up collection, not judgement: speed changes nothing about reliability. Every claim kept must be actively contested through a distinct source before being cited with its source, and a claim that does not withstand it drops out of the draft instead of staying in a softened form.
Opening four searches at once on the same question is faster than launching them one by one, but speed changes nothing about the reliability of what comes out of it. What changes reliability is the step that follows collection: every claim kept must first be actively contested before being cited with its source.
The fan-out speeds up collection, not judgement
Launching searches in parallel cuts waiting time, since the queries run at the same time rather than one after another. This exempts nothing from the following steps: sorting a primary source from a secondary one, checking its date, and comparing claims that contradict each other across the results. Faster collection that skips this sort simply produces more unverified material, not a better answer.
Contest before citing
The attempt at refutation is made through a source distinct from the one carrying the initial claim, never through a second reading of the same page. A claim that withstands this attempt enters the final answer with its source in brackets, right after the sentence it supports. A claim that does not withstand it, or that no independent source allows to be checked against, drops out of the draft rather than staying in it in a softened form.
# Liste fabriquée pour illustrer le tri, aucune recherche réelle n'est lancée ici
affirmations = [
{"texte": "le taux mesuré est de 12 pour cent", "source_initiale": "blog A", "confrontee_a": "rapport B", "resiste": True},
{"texte": "le taux mesuré est de 30 pour cent", "source_initiale": "forum C", "confrontee_a": None, "resiste": False},
]
retenues = [a for a in affirmations if a["confrontee_a"] and a["resiste"]]
print(len(affirmations), "affirmations collectées,", len(retenues), "retenues après confrontation")
In this fabricated example, only one claim out of two passes the sort: the one that was never checked against an independent source stays out of the answer, whatever its apparent plausibility. This same requirement for direct proof rather than claim alone is what structures the four real traps where a claim replaces a measurement.
Two diverging sources remain more useful than a fast answer
When two independent sources agree on the same figure, confidence in that figure rises. When they diverge, the divergence itself is the information worth keeping: it signals that the question needs a third source, or a rephrasing, before any citation. Writing the final answer directly from the first source found, without launching the confrontation, amounts to replacing the fan-out with a single search disguised as several.
A collector that stops early
A cheap collector subagent sent over a long list handles a handful of lines, then declares the rest "not found" for lack of budget: the word reads as a result and hides the work not done. Split the list into batches of about twenty lines, with one mandatory search per line, and require figures from the very first brief, for example two listed queries before any negative answer.
found: value and reopened source
not found: two listed queries, no source
not searched: no query launched
The "not searched" status stays distinct from "not found". Then have the sources reopened by an agent that did not collect them, as above, before keeping a result. On the tool side, the WebSearch budget of an interactive Claude Code session now refills over time instead of ending for good after a cap on calls: a fan-out inquiry that exhausted it can resume later.
The path of a reliable search, from fan-out to citation
Sequential search against fan-out search
| Two ways to collect before sorting | Collection time | Sources seen before the first sort | Confrontation step required |
|---|---|---|---|
| Sequential search | Sum of the time for each query, one after another | Limited by the number of queries already launched at the time of the sort | Identical: every claim kept is checked before citation |
| Fan-out search | Bounded by the longest query launched, not by their sum | Broader for the same duration, since the queries run in parallel | Identical: every claim kept is checked before citation |
An analyst launches four searches at the same time on the same question, gathers the claims found by each, tries to refute each claim with a distinct source, then keeps the ones that withstand this attempt with their source in brackets.
Write in one sentence what this situation establishes, and in one sentence what it does not establish.
What this establishes: The claims kept each underwent an attempt at refutation by a distinct source before being cited in brackets.
What this does not establish: This situation does not establish that the claims kept are accurate, it only establishes that they withstood an attempt at refutation carried out by this same analyst.
The three most common miscalibrations
- Too broad The claims kept by this analyst are necessarily true since they withstood an attempt at refutation.
- Too narrow This result proves nothing, since a single attempt at refutation per claim always remains insufficient.
- Beside the point This situation shows that launching four searches in parallel is faster than launching them one by one.
- Launching several searches in parallel cuts collection time, but exempts nothing from the sorting or confrontation steps.
- A claim that is kept must be checked against a source distinct from the one that first carried it, never against a second reading of the same page.
- A claim that does not withstand this confrontation, or that no independent source allows to be checked, drops out of the draft rather than staying in it softened.
- When two independent sources diverge on the same figure, that divergence is itself the information worth keeping before citing anything.
- A collector that declares "not found" without having searched hides work not done, hence a distinct "not searched" status.
Take a question you genuinely have, launch three distinct searches on it, and for every claim found, look for an independent source that could contradict it before keeping it.
Every datable claim in this lesson links here to the public text behind it. A source that does not open proves nothing.
- Claude Code changelog consultée le 2026-10-24