AgentDesk turns a company name into a researched outreach email using three
separate AI agents — but the point of this project isn't the emails. It's that
the pipeline is governed so it structurally cannot ship a claim
nobody can back up.
Researcher
Haiku
web search · read-only
→
Drafter
Sonnet
no internet access
→
QA Reviewer
Opus
different model family · can't edit
Five checkpoints stand between a company name and a human inbox — only one is a model:
- Prompt contract — each agent's rules of engagement
- Schema validation — malformed output is rejected, never retried
- Deterministic checks — word count, banned phrases, every claim traced to a source
- Adversarial review — the one model judgment call, scored against the brief
- Release decision — recomputed in code; the reviewer's own verdict is advisory
ESCALATED and HALTED are success states, not errors. If research comes up
thin, the pipeline refuses to draft rather than invent facts — that's a halt. If
the reviewer keeps blocking a draft after the retry budget runs out, the system
routes it to a human instead of quietly lowering the bar — that's an escalation.
Both mean a gate did its job.
Quality gate, measured honestly: on a small 14-case mutation harness,
deterministic code alone catches 10 of 14 bad drafts at zero false positives.
The remaining four need a model's judgment call to catch, and that measurement
hasn't been run yet — stated here as a limitation, not rounded up.