ERC-8274: AI Inference Proof Verification

@JimmyShi22 @Damonzwicker , picking up the two open points.

WYRIWE citation

Same path as OCP for now, plain text citation until the PR lands. WYRIWE has a Magicians thread (https://ethereum-magicians.org/t/wyriwe-what-you-read-is-what-you-execute-input-provenance-for-verifiable-ai-inference/28655) and a formal ERC draft in the repo ( wyriwe/ERC-draft.md at main · TMerlini/wyriwe · GitHub ). PR to ethereum/ERCs is the next step once WYRIWE has a number it can go into requires: alongside ERC-8263 and the relative link resolves cleanly.

ERC-8183 composition

The BountySettlement contract is the reference impl for IProofVerifier in ERC-8274. In the ERC-8183 settlement flow, verify() gates complete() / reject() , the ProofEvaluator pattern already in the PR captures this. The inputHash passed to verify() is WYRIWE’s input_hash committed at fund time; the outcome envelope’s commitmentRef field maps to that same hash. The BountySettlement source is at BountySettlement.sol — ERC-8263 / ERC-8274 / OCP proof-of-concept. Verifies L4 EIP-712 InferenceAttestation on-chain, releases bounty if valid. Reference implementation for IProofVerifier.verify() pattern (ERC-8274). Deployed on Base Sepolia: 0x57fe09a6Eb8d5741b24fF640AA8Bc4D2010B93D7 · GitHub if useful as an inline reference.

ERC-8004 composition

The agentId and registry fields in the WyriweAttestation struct are ERC-8004 anchors. In the reference deployment at gateway.ensub.org, the gateway attestor key is resolved via IErc8004IdentityRegistry.getAgentWallet(agentId) , this is the binding that separates infrastructure signing from agent self-signing. The pattern is already in the PR’s ERC-8004 composition example (decoding agentId from metadata as bytes32(uint256(erc8004AgentId))). Once ERC-8004 has a stable PR number it can also move into requires: if that’s the right call.

Happy to expand either example if more detail helps pass CI.

Tiago

2 Likes