Compatibility: Pactmark 0.1.x. This scenario mirrors the
research-evidence-agent example.
Fixture mode is offline and mandatory in CI; createExternalSearchAdapter fails closed unless live
access is explicitly enabled, and the repository ships no provider implementation.The situation
A market intelligence team wants a research brief: gather sources on a topic, extract claims, cite them, and produce something a human can check. The failure mode everyone knows is the fabricated citation — a plausible URL and title for a page that does not exist. Pactmark cannot stop a model from producing a plausible-looking citation. What it can do is make the difference between checked and unchecked structurally visible.The two questions people conflate
Is this citation well-formed and internally consistent?
A deterministic check. Does the URL parse, does the quoted span exist in the retrieved bytes, does
the digest match what was fetched?
Is this source authoritative and the conclusion correct?
Not a check at all. It is a judgement, and no verifier makes it a fact.
The WorkOrder
maxRunToolResultContextBytes matters more here than anywhere else. Research agents pull large
documents, and an unbounded context is both a cost problem and an injection surface.
Egress is the security story
Figure 1. Boundaries 6 and 7 are where a research agent lives. Everything it reads is untrusted, and everything it reaches must be declared in advance.Verification: shape, not truth
This is the strongest available answer to citation fabrication, and it is still not “the source is
correct”. A well-formed citation to a wrong source is well-formed.
The evidence
Figure 2. For research work, the right-hand column is the one that keeps the record honest.Offline by default
The reference example runs in fixture mode: deterministic sources, no network, mandatory in CI.createExternalSearchAdapter fails closed unless live access is explicitly enabled, and no provider
implementation ships in the repository.
Why this matters for tests
A research agent whose tests hit the live internet is a research agent with flaky tests and an
unbounded bill.
Why this matters for review
An offline default means enabling network access is a visible, reviewable decision.
What you still own
Research evidence example
The runnable version of this scenario.
MCP integration
Adding external search tools without adopting their authority.