Skip to content

eips: finalize native-ETH A2A escrow as a Standards-Track ERC (#50)#128

Merged
abhicris merged 1 commit into
mainfrom
pattermesh/issue-50-escrow-eip
Jun 23, 2026
Merged

eips: finalize native-ETH A2A escrow as a Standards-Track ERC (#50)#128
abhicris merged 1 commit into
mainfrom
pattermesh/issue-50-escrow-eip

Conversation

@Pattermesh

Copy link
Copy Markdown
Collaborator

Finalizes the AgentEscrow EIP to Standards-Track ERC quality (addresses #50).

  • ERC-165 interface id 0x5c3738e9 verified by selector-XOR.
  • Adds ethereum-magicians post draft + ethereum/EIPs submission checklist.
  • Flags one gap to close pre-submission: reference AgentEscrow.sol lacks supportsInterface.

🤖 Generated with Claude Code

Bring eips/draft-native-eth-a2a-escrow.md to editor-ready ERC quality and
add the two submission-support docs.

Draft:
- ERC-165 interface id VERIFIED = 0x5c3738e9. Reproduced the six selectors
  from keccak256 of the canonical signatures and showed the running XOR
  in the spec; matches the pinned value. cast-sig recipe included.
- New "ERC-165 interface identifier" subsection: states explicitly that
  selectors depend only on argument types (return shape, payable/view,
  address-vs-address-payable are irrelevant) — this is why the reference
  contract's bool/struct return forms keep the same id.
- New "Errors" subsection in §Specification: normative revert table per
  function + RECOMMENDED custom-error set. Closes the missing-errors gap.
- Reference Implementation section corrected to the real repo layout
  (test/AgentEscrow.t.sol + contracts/test/AgentEscrowOracle.t.sol +
  contracts/mocks/MockOracleAggregator.sol), describes the contract as a
  superset of IAgentEscrow, and flags two honest conformance gaps:
  (1) reference contract does not yet expose ERC-165 supportsInterface,
  (2) reference enum has extra members. Neither affects the interface id.
- Test Cases table replaced with the actual Foundry test names (the prior
  table listed tests that do not exist, incl. a fictional supportsInterface
  test).
- Frontmatter: eip/discussions-to placeholders annotated with an editor
  note explaining they are assigned during the ethereum/EIPs PR.

Added:
- eips/magicians-post-draft.md — forum pitch + 6 open questions.
- eips/SUBMISSION-CHECKLIST.md — fork, eip-XXXX naming, editor number
  assignment, eipw lint gates, what an editor will/won't gate on.

Hardening from stale branch eip/native-eth-a2a-escrow (commit 63c7377)
was already folded into main (drafts were byte-identical); this commit
builds on it and reconciles the spec with the actual reference contract.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@abhicris abhicris merged commit 9139e1b into main Jun 23, 2026
4 checks passed
@abhicris

Copy link
Copy Markdown
Contributor

Merged — thank you, @Pattermesh. Your first kcolbchain contribution is in. 🎉

A few things that unlocked with this merge:

If you want to stay in the loop on what we're shipping: https://kcolbchain.com/ROADMAP.md

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants