Skip to content

note(txverifier): Sui Transfer Verifier Improvements - #5111

Open
pleasew8t wants to merge 4 commits into
wormhole-foundation:mainfrom
pleasew8t:sui-transfer-verifier-improvements
Open

pleasew8t wants to merge 4 commits into
wormhole-foundation:mainfrom
pleasew8t:sui-transfer-verifier-improvements

Conversation

@pleasew8t

@pleasew8t pleasew8t commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

This pull request brings some improvements to the Sui transfer verifier in preparation for enabling it.

Add optional digest check and return error in case of zero message publications

  • Updates ProcessDigest to return an error when no outbound transfers were found. In the happy path, ProcessDigest should only ever receive digests for transactions that contain message publications.
  • Adds an optional digest check to the GetTransaction Sui gRPC implementation. Unlikely to be the case, but the point is that the digest returned from the RPC server must match the one requested.

Ensure RPC errors result in early-exits instead of being ignored

  • This is more of a consistency update, and puts the behaviour in line with EVM.
  • Note that it does not change the behaviour in the event of a parsing error.

Handle the case where same-tx tokens are created and transferred

  • If the InputVersion is nil, it is assumed that the asset was created in this transaction.
  • If the asset is newly-created, initialize the "previous" asset info with a zero balance.

Bump sui-go-sdk version to 1.3.1

  • This addresses some OOM issues we were concerned about recently

Review Notes

The changes are mostly hardening certain checks, and making sure certain failures are reported more consistently. The PR shouldn't introduce any hard functional changes.

This branch has not been deployed

No deployments
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