feat: verify --path solana-program — the cross-VM works-gate - #15
Merged
Conversation
An EVM-lane call drives a Solana program via CPI. Deploys a thin CPI wrapper (CpiMemoProbe — its constructor self-provisions the contract's external-auth PDA), then pings it to CPI the SPL Memo program through the 0xff..08 precompile. A successful EVM receipt is the proof; a failed CPI reverts the tx. EVM-lane only (ROME_EVM_KEY; no Solana key). --solana-rpc adds an opt-in deep check that confirms the memo in the Solana settlement logs (rome_solanaTxForEvmTx). Funded-verified on Hadrian: deploy + ping + memo confirmed in the program's logs. 83 unit tests + MCP smoke green.
anil-rome
added a commit
that referenced
this pull request
Jul 22, 2026
Pins the released/installed surface to main. Since v0.5.0, main gained `verify --path solana-program` (#15) — an EVM-lane call drives a Solana program via CPI (funded-GREEN on Hadrian). Bumps package.json and the github install pins (README, GUIDES) 0.5.0 -> 0.6.0.
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.
Completes
verifyfor the bring-a-Solana-program path: prove an EVM-lane call drives a Solana program via CPI.What it does
rome verify <chain> --path solana-programdeploys a thin CPI wrapper (CpiMemoProbe— its constructor self-provisions the contract's external-auth PDA), then an EVM-lanepingdrives the SPL Memo program through the CPI precompile (0xff…08). A successful EVM receipt is the proof — a failed CPI reverts the tx.ROME_EVM_KEY, not a Solana key (per-path key scoping; solidity still needs both).--solana-rpc <url>— opt-in deep check: resolves the EVM tx to its Solana settlement (rome_solanaTxForEvmTx) and confirms the memo in the program's logs. The core gate needs no Solana RPC.Why a wrapper (not a direct precompile call)
It mirrors the real "bring your Solana program" pattern — a deployed Solidity contract that CPIs the program — and is faithful to the SPEC's works-gate intent.
Validation
deploy → ping → memo confirmed in the Solana settlement logs,ok: true:0x206d7101…, evmTx0x82aae391…, settlement2TUoaZ7n…,memoConfirmed: trueMissingRequiredSignature.verifyremains absent from the MCP surface.Notes
probe/CpiMemoProbe.sol; build artifacts git-ignored).chore(release).--path from-homefollows (coupled with the bridge-outbound rail; egress isn't registry-declared yet).