Skip to content

Conversation

@nazreen
Copy link
Contributor

@nazreen nazreen commented Jan 16, 2026

Problem

  • Solana transaction data is displayed as hex in wiring transactions preview and in output files.
  • This leads to needing an additional step for developers that want to simulate transaction or import transaction into Squads UI
    • Developers must manually convert hex to base58 before proceeding

Solution

  • Detect Solana transactions by checking the endpoint ID chain type.
  • Convert hex transaction data to base58 for Solana endpoints.

Changes

  • packages/devtools/src/transactions/format.ts:
    • Added isSolanaEid helper to check if an endpoint is Solana.
    • Added formatTransactionData to convert hex to base58 for Solana transactions.
    • Updated formatOmniTransaction to use the new data formatting.
  • packages/ua-devtools-evm-hardhat/src/tasks/oapp/wire/index.ts:
    • Applied formatOmniTransaction when writing transactions to output file.

Before and After

Before (npx lz:oapp:wire --oapp-config layerzero.config.ts --output-file txns.json):

[
{
  "Endpoint": "ARBSEP_V2_TESTNET",
  "OmniAddress": "0x033b77856F15F91Dd8Ea6f0841b45A6173F272eE",
  "Description": "Setting peer for eid 40168 (SOLANA_V2_TESTNET) to address 0x8a78a2b0265c9f41aeadc72c737a008cb3076088e2e3254861b6fb669498bf71",
  "Data": "0x3400288b0000000000000000000000000000000000000000000000000000000000009ce88a78a2b0265c9f41aeadc72c737a008cb3076088e2e3254861b6fb669498bf71"
},
{
  "Endpoint": "SOLANA_V2_TESTNET",
  "OmniAddress": "AKXxGgrT3Mp6FyM2fmpAgj7yGkWxiALUwdjR2PDHcT92",
  "Description": "Setting peer for eid 40231 (ARBSEP_V2_TESTNET) to address 0x000000000000000000000000033b77856f15f91dd8ea6f0841b45a6173f272ee EKXXXF8kzh4Bnq1HBHVwZgA5egJJWLDYqXmJTQtbbd5D EKXXXF8kzh4Bnq1HBHVwZgA5egJJWLDYqXmJTQtbbd5D",
  "Data": "01000509c5e6e695fea2780025efd3d9211876ab08ca14af52d8bc3fac40034da287901495532101a8a4275375f56be0ed8035e692430b440ea7c85139b14144c8a8ece0dba989149a82282854604a9cc0771bc66d1db755142a60d7be444576752177be06b2da72856a58cf2c1be407070553940d42706a7a8f9256a1e31491395a823800000000000000000000000000000000000000000000000000000000000000005aad76da514b6e1dcf11037e904dac3d375f525c9fbafcb19507b78907d8c18b8a78a2b0265c9f41aeadc72c737a008cb3076088e2e3254861b6fb669498bf71eff74af6924cd55b014ff481b2c6e37638ebd7c0dc5d9880fd51060e71640e3808201e53726850a25ffe203cfe039668c12bdacb8ed8b854af944f624bcf2df10c7339cbc2014464a93d3aaedb806c1f06fe3b2eadc49ad4dbc1c872c4e7ee0a040704000106042d4fbba8398b8c5d2f279d000000000000000000000000000000033b77856f15f91dd8ea6f0841b45a6173f272ee070400010604194fbba8398b8c5d2f279d000002020000000003020000000003070400010604104fbba8398b8c5d2f279d000001010000050500080302044cccab10d6b6bf1bc48a78a2b0265c9f41aeadc72c737a008cb3076088e2e3254861b6fb669498bf71279d0000000000000000000000000000033b77856f15f91dd8ea6f0841b45a6173f272ee"
},
...

After (npx lz:oapp:wire --oapp-config layerzero.config.ts --output-file txns.json):

[
{
  "Endpoint": "ARBSEP_V2_TESTNET",
  "OmniAddress": "0x033b77856F15F91Dd8Ea6f0841b45A6173F272eE",
  "Description": "Setting peer for eid 40168 (SOLANA_V2_TESTNET) to address 0x8a78a2b0265c9f41aeadc72c737a008cb3076088e2e3254861b6fb669498bf71",
  "Data": "0x3400288b0000000000000000000000000000000000000000000000000000000000009ce88a78a2b0265c9f41aeadc72c737a008cb3076088e2e3254861b6fb669498bf71"
},
{
  "Endpoint": "SOLANA_V2_TESTNET",
  "OmniAddress": "AKXxGgrT3Mp6FyM2fmpAgj7yGkWxiALUwdjR2PDHcT92",
  "Description": "Setting peer for eid 40231 (ARBSEP_V2_TESTNET) to address 0x000000000000000000000000033b77856f15f91dd8ea6f0841b45a6173f272ee EKXXXF8kzh4Bnq1HBHVwZgA5egJJWLDYqXmJTQtbbd5D EKXXXF8kzh4Bnq1HBHVwZgA5egJJWLDYqXmJTQtbbd5D",
  "Data": "4aa3c17UA5PYvwe5BLLC8rLhSSwzNvrh4AxpuBb7FJoGtbCNBCDDuAqxt81Qvyap8bai2n3wVJRML72QqosEVTqDHWXNYSKy2aozZcSNdnmZBwpWKn3L1DjLEb9yvm3nGbD3cuPt6NZ5akLn5WS1qXkxaj9TZc2REx8cR6YqVS7cJ9nG9oyYLGpNKTz55E3KaWg5S95RfJnDhfWfbukVnhJH2ssLTAn2NX8ic9mJa75H5GypobQrb3gccebzWGgadviL9ewL4uDz8uzX1zfKCaH8RKzjdeyD5YTCfogUc7BUSwYCd6WoTn1E8fjdY4B4FBxzyVe3a2MSA9ukEz1sxG6SjfvSDL5LLgmgo3JFzDQg35wUSWdU6kJUtycNvYP3eyAA85VbxTWmrcTSJ1RzEzsVKrjw5J8Fs4mSmvWtbafp6zDpWpVJ4o6iVJJN9z4Pi7HvBz6wmdBcep4j5CXnsZ4MKpiLv9TVR5arSVw1iAVwqViMBKuCdS7vfSboyktXKANdkCTw3VwPJs2ofsWVaiMbSptPwnF6EPHV92dcph3pgt76ALWGEijCDriAuAFLrUXYDWSWqQ97iCMAUjXo9Pn9P8HRXwLV6Sq9BG4DqrdWdXWHoJLFmEUfP83dUWHJV8NSbmeYamV9pn6FCJtxLDUNCtW8PqtiY7E3mS4T5B1DwJTQcrGGLN7KL2bp9RiM"
},
...

@github-actions
Copy link
Contributor

github-actions bot commented Jan 16, 2026

🧪 E2E Test Status

E2E tests are non-blocking and validate real blockchain interactions. Failures may occur due to network issues, RPC rate limits, or external service downtime.

Test Runs (Newest First):

  • Run #6572 - Passed - 2026-01-16 23:31 (UTC)
  • Run #6567 - Passed - 2026-01-16 20:57 (UTC)

@nazreen nazreen marked this pull request as ready for review January 16, 2026 21:36
@cursor
Copy link

cursor bot commented Jan 16, 2026

PR Summary

Displays Solana transaction data as base58 in previews and generated output files.

  • In packages/devtools/src/transactions/format.ts, add isSolanaEid and formatTransactionData to detect Solana via endpointIdToChainType and convert hex data to base58; update formatOmniTransaction to use it
  • In packages/ua-devtools-evm-hardhat/src/tasks/oapp/wire/index.ts, apply formatOmniTransaction when writing transactions to outputFilename
  • Add changeset: patch bumps for @layerzerolabs/ua-devtools-evm-hardhat and @layerzerolabs/devtools

Written by Cursor Bugbot for commit 6d9e8bb. This will update automatically on new commits. Configure here.

Copy link
Contributor

@St0rmBr3w St0rmBr3w left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

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.

2 participants