How the work is divided
Specialisation by source and by question. One agent reads job boards and knows how six of them shape their responses. Another compares dated captures of pricing pages. Another reads filings. A scoring agent decides what survives. A corroboration agent counts independent sources. A writing agent produces the prose at the end.
The alternative - one agent with access to everything - is harder to test and impossible to explain. When output is wrong, the question is always which stage produced it.
Everything is bounded
Each agent runs with a timeout, a concurrency limit and an error boundary. A slow source is abandoned rather than allowed to consume the run. A failing source is recorded as failed and the run continues without it.
This sounds like plumbing, and it is what separates a system that produces something every night from one that produces nothing on the night one API changes shape.
Why the model comes last
Collection, deduplication and scoring are deterministic problems with well-understood algorithms. Using a model for them is slower, more expensive and less reproducible, and it makes the selection unexplainable.
The model earns its place at the end, where the task is genuinely linguistic: turning a small set of selected documents into a paragraph a person can act on, citing the documents it was handed.
What a run should report about itself
A trustworthy run produces a second output alongside the findings: which sources answered, which were skipped for a legitimate reason such as the company not being listed on that board, which failed, how long each took, and how many documents each contributed.
That report is how you tell a quiet week from a broken pipeline, and the two look identical without it.