Skip to content

Conversation

@wbj-cb
Copy link

@wbj-cb wbj-cb commented Dec 6, 2025

What

  • Updates Attribution.fromData to deserialize the variable length registry section from schema 1
  • Updates Attribution.toDataSuffix to serialize the variable length registry section when schema 1
  • Updates tests and adds additional tests cases to verify round tripping results in the same payload

Why:

EIP‑8021 changed to have variable‑length chainId for Schema 1:

Schema ID 1 builds on top of 0, but also defines a custom Code Registry chain and address

  1. codesLength (1 byte): Length of the codes array in bytes, including delimiters
  2. codes (variable length): Array of attribution codes using ASCII encoding with comma (0x2C) as delimiter
  3. codeRegistryChainIdLength (1 byte): Length of the chain id hosting the custom Code Registry
  4. codeRegistryChainId (variable bytes): Chain id hosting the custom Code Registry
  5. codeRegistryAddress (20 bytes): Address of a smart contract implementing ICodeRegistry
    Custom Code Registries can be referenced across chains for ease of connecting identity for multi-chain apps.

From https://eip.tools/eip/8021

@vercel
Copy link

vercel bot commented Dec 6, 2025

@wbj-cb is attempting to deploy a commit to the Wevm Team on Vercel.

A member of the Team first needs to authorize it.

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