Resolve
When the records disagree, somebody has to ask.
Resolve does the asking — on a channel whose lineage we can show, to a person whose standing to answer we checked — and records exactly what came back, including nothing.
Independence is about lineage, not count
Two websites showing the same number are not two sources if they copied it from one place. Independence means no shared root with the claim being checked, and an unknown lineage is not independent.
A qualified respondent, or UNKNOWN
Answering the phone does not make someone authorised to confirm a payment change. Qualification needs prior admin evidence within 90 days, or a second independent already-trusted channel.
It is allowed to finish without an answer
No answer, voicemail or an ambiguous reply is UNKNOWN. No suitable independent channel is INCONCLUSIVE with the reason NO_INDEPENDENT_CHANNEL. We do not lower the bar to raise a completion rate.
A contradiction is not averaged away
A qualified denial creates a denied claim. Any simultaneously current opposite assertion becomes CONFLICT and goes to a person. Two disagreeing facts never blend into one confident number.
What the model is and is not allowed to do
Documents, transcripts and web pages are untrusted input. Instructions found inside them are text, not commands.
The model proposes
a typed action or outcome, with a citation for every assertion.
The executor decides
re-checking schema, allow-list, the bound claim, the contact, eligibility, entitlement and budget. Model text is never executed as code, a URL or a query.