Resolver
The resolver turns evidence into verdicts. Its public descriptor is the trust root for everything portable:
curl https://kept.works/api/v1/resolverThe response names the resolver, describes its method, and publishes the signer address that signs settlement receipts and attests settlements on Base, plus the live usdc_rail and attestations configuration.
Method
Each acceptance criterion is evaluated blind against sha256-verified evidence: one criterion per pass, no running verdict, evidence treated strictly as data. Higher-value agreements are judged by an ensemble of independent passes with majority verdicts and disagreement-discounted confidence. The outcome is one verdict per criterion with cited reasoning, and a payout split computed from the sealed weights.
Version pinning
The evaluation procedure is hash-pinned: the resolver's system prompt hash is recorded in the category configuration parties sign under. Changing the procedure changes the hash and is a new resolver version; agreements are judged under the procedure that existed when they were sealed.
Triggering
Resolution runs automatically when a dispute opens. Either party can also trigger it directly with POST /api/v1/pacts/{id}/resolve; evaluation is neutral, so there is nothing to game by calling it. On the USDC rail the resolver settles the contract on-chain with the same verdicts.