Skip to content

docs: sync deployed-contracts registry with live chain + verify ERC-4337 infra#176

Merged
hanwencheng merged 1 commit into
mainfrom
claude/deployed-contracts-registry-sync
Jun 2, 2026
Merged

docs: sync deployed-contracts registry with live chain + verify ERC-4337 infra#176
hanwencheng merged 1 commit into
mainfrom
claude/deployed-contracts-registry-sync

Conversation

@hanwencheng
Copy link
Copy Markdown
Member

What

Audited docs/spec/deployed-contracts.md against the live Heima mainnet (cast code). The registry is complete — all 8 deployed contracts are present — but it carried stale/missing bytecode counts and two operational-tracking gaps for the ERC-4337 pair.

Changes

docs/spec/deployed-contracts.md

  • Fix stale bytecode counts: SidecarRegistry 4572→7200, CredentialAudit 3043→2584 (the 4572 was a copy-paste of AgentKeysScope's count).
  • Add live counts for the previously count-less rows: P256Verifier 3428, K11Verifier 2033, EntryPoint 11810, P256AccountFactory 4591 — drift-detection anchors.
  • Note VerifyingPaymaster.sol is intentionally not deployed (direct EntryPoint.handleOps from a pre-funded account; no paymaster).

scripts/operator-workstation.env

scripts/verify-heima-contracts.sh

  • New step 5: verifies the ERC-4337 EntryPoint + P256AccountFactory bytecode presence and the factory's entryPoint() / k11Verifier() constructor wiring. Conditional on the env vars being set, so non-ERC-4337 chains (Paseo) skip cleanly.

Verification

AGENTKEYS_CHAIN=heima bash scripts/verify-heima-contracts.shall 5 steps pass, exit 0 against live Heima mainnet; the run's byte counts match the corrected doc.

🤖 Generated with Claude Code

…4337 infra

- Fix stale bytecode counts: SidecarRegistry 4572->7200, CredentialAudit 3043->2584 (verified via cast code against Heima mainnet).
- Add live bytecode counts for P256Verifier (3428), K11Verifier (2033), EntryPoint (11810), P256AccountFactory (4591) as drift-detection anchors.
- Note VerifyingPaymaster.sol is intentionally NOT deployed (direct EntryPoint.handleOps; no paymaster).
- operator-workstation.env: add ENTRYPOINT_ADDRESS_HEIMA + P256_ACCOUNT_FACTORY_ADDRESS_HEIMA (#164) -- the operational source of truth was missing the deployed ERC-4337 pair.
- verify-heima-contracts.sh: add step 5 -- checks EntryPoint + P256AccountFactory bytecode + the factory entryPoint()/k11Verifier() constructor wiring, conditional so non-ERC-4337 chains skip cleanly. Verified green end-to-end.
@hanwencheng hanwencheng merged commit be0eb09 into main Jun 2, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant