Solana

Planned, not supported: what a Solana binding would need, and what is decided so far.

Planned, not supported

Nothing in the profile spec covers Solana, and no package reads an Anchor IDL. There is no Solana profile, pack, resolved form or consent text today. This page records what a binding would need, so the gaps are visible; none of it is implemented.

Where it stands#

Solana is planned, and nothing more is settled. The EVM binding came first (EVM contracts, experimental), and it is the test of whether the split between the interface layer and the profile layer holds on a chain whose interfaces are not Candid. open The plan is to start on Solana only once that binding shows the split holds; no date and no design for it are recorded in the repository.

What a binding would need#

The Solana column below comes from a design proposal, not from the spec. Every entry in it is an assumption to check or an open question; nothing in it is a commitment. The ICP and EVM columns describe what exists, for comparison.

ICPEVM (experimental)SOL (planned)
Interface file Candid .did, compiled to a Contract graph the ABI, in binds.abi assumption the Anchor IDL; Codama converts Anchor and Shank IDLs
A call a method with an argument tuple a function, matched by selector; its parameters are one record at argument 0 assumption an instruction with named arguments and an ordered list of accounts
Where decimals live the ledger: query:icrc1_decimals the token: query:decimals, an eth_call open in the mint account, which no dynamic value can read today: a new source would be needed
Addresses principals and ICRC-1 account text 0x and 40 hex digits, EIP-55 assumption 32-byte keys written in base58; a token transfer goes to a derived token account, not to the owner's key
Retry safety created_at_time, deduplicated inside the ledger's window not yet: idempotency by nonce is a later phase assumption a transaction lands at most once while its blockhash is valid, about 150 blocks by Solana's documentation
Settling an unknown outcome the ledger's ICRC-3 blocks not yet: receipts are a later phase assumption the status of the transaction's signature
Errors result variant cases, each with an outcome class not yet: outcome classes over reverts are a later phase assumption program error codes
Consent standard ICRC-21 consent text without an envelope, and ERC-7730 files open none found
Local tests PocketIC none run yet; Anvil would be the local chain assumption solana-test-validator

Each row is a place where the profile layer would have to grow: a new interface reader, a new kind of address, a new source of dynamic values, and new rules for retries and reconciliation. Where the spec stands on each chain today: Internet Computer, EVM contracts and Open questions.