docs: document originOf, resolveAddress and the alias RPCs - #459
Draft
pecornilleau wants to merge 1 commit into
Draft
docs: document originOf, resolveAddress and the alias RPCs#459pecornilleau wants to merge 1 commit into
pecornilleau wants to merge 1 commit into
Conversation
Add an Address translation section to both NAC usage pages describing the originOf and resolveAddress gateway functions (Solidity interface and Michelson view types, classification and resolution codes, when origins are recorded, failure behavior). Document the tez_getTezosEthereumAddress / tez_getEthereumTezosAddress JSON-RPC methods on the Michelson RPC reference and cross-link everything from Accounts and Aliases. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
NicNomadic
reviewed
Sep 8, 2026
NicNomadic
left a comment
Collaborator
There was a problem hiding this comment.
A first comment on the main page, I'm still reviewing the other pages
|
|
||
| Michelson's `SOURCE` instruction returns the null address (`tz1Ke2h7sDdakHJQh8WX4Z372du1KChsksyU`) for operations originating from cross-interface calls — not the actual alias address. This is because Michelson requires the source to be a user account. | ||
|
|
||
| ## Translating addresses |
Collaborator
There was a problem hiding this comment.
Should be part of the same section as the 2 above subsections:
Suggested change
| ## Translating addresses | |
| ### Translating addresses |
NicNomadic
reviewed
Sep 8, 2026
|
|
||
| ## Alias RPCs | ||
|
|
||
| EVM nodes<!--TXN--> also expose two Etherlink<!--TX-->-specific JSON-RPC methods that compute the alias of an address (see [Accounts and Aliases](/overview/accounts-and-aliases#aliases)). They are served on the node's JSON-RPC endpoint (the base URL, alongside the `eth_*` methods), not under `/tezlink`. The alias is derived from the address alone, so these methods work for any address, whether or not it has been used on chain. |
Collaborator
There was a problem hiding this comment.
All RPCs served by the node are Tezos X-specific, no need to mention that (and indeed, these don't seem to be EVM-specific):
Suggested change
| EVM nodes<!--TXN--> also expose two Etherlink<!--TX-->-specific JSON-RPC methods that compute the alias of an address (see [Accounts and Aliases](/overview/accounts-and-aliases#aliases)). They are served on the node's JSON-RPC endpoint (the base URL, alongside the `eth_*` methods), not under `/tezlink`. The alias is derived from the address alone, so these methods work for any address, whether or not it has been used on chain. | |
| EVM nodes<!--TXN--> also expose two JSON-RPC methods that compute the alias of an address (see [Accounts and Aliases](/overview/accounts-and-aliases#aliases)). They are served on the node's JSON-RPC endpoint (the base URL, alongside the `eth_*` methods), not under `/tezlink`. The alias is derived from the address alone, so these methods work for any address, whether or not it has been used on chain. |
Collaborator
|
LGTM modulo the open threads above |
This was referenced Sep 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The cross-runtime address-translation primitives were undocumented. This PR adds:
originOf/resolveAddress, the classification codes (Unknown / Native / Alias) and resolution codes (Recorded / Derived), when the kernel records an account's origin, short examples, and a failure-behavior entry.VIEW "resolveAddress"snippet in the style of the existingstaticcall_evmone.tez_getTezosEthereumAddress/tez_getEthereumTezosAddress, noting they are served on the main JSON-RPC endpoint rather than under/tezlink.All statements were checked against the kernel and node code (
runtime_gateway.rs,enshrined_contracts.rs, the two runtimeread_originimplementations,rpc_encodings.ml/services.ml). No gas figures were added, since the pages list none for the other gateway functions.Test plan
npm run buildpasses (only pre-existing theme warnings)npm run mochapasses🤖 Generated with Claude Code