Reports

Agent402: what we found

payment-verify: Solana payments sent as version 1 transactions are reported as "transaction not found on chain".

Public since 2026-10-28. GitHub issue MikeyPetrillo/Agent402/issues/1775 was posted.

Code: MikeyPetrillo/Agent402, their default branch on 2026-10-28. Reported to them: MikeyPetrillo/Agent402/issues/1775.

Status: Fixed: merged in pull request #1773 (commit 7557ce1); every getTransaction call now asks for version 1

Findings

breaks money

payment-verify: Solana payments sent as version 1 transactions are reported as "transaction not found on chain"

verifySolana in src/payment-verify.js (line 194) calls getTransaction with maxSupportedTransactionVersion: 0 through the plain rpc() helper. For a payment sent as a version 1 transaction every RPC answers error -32015, so the loop ends with fail("transaction not found on chain (Transaction version (1) is not supported ...)") and a paid request is refused.

The history reads already handle this since yesterday's solana-history-rpc.js change (it re-asks with the version the node names), but payment-verify.js, src/solana-buyer.js (lines 127, 396) and src/solana-leaderboard.js (line 199) still make the version 0 call directly.

Version 1 transactions are a large share of mainnet now (about 40% of non-vote transactions in a block I sampled), so this depends only on which wallet or SDK the payer uses.

  • src/payment-verify.js:194
  • src/solana-buyer.js:127
  • src/solana-buyer.js:396
  • src/solana-leaderboard.js:199
getTransaction(<v1 signature>, { maxSupportedTransactionVersion: 0 })  -> error -32015 "Transaction version (1) is not supported by the requesting client"
getTransaction(<v1 signature>, { maxSupportedTransactionVersion: 1 })  -> the transaction (version 1, meta present)

Fix: maxSupportedTransactionVersion: 1 at those calls (the jsonParsed shape is the same for every version), or route them through solanaHistoryRead.

What we measured

WhatResultHowChecked
Reported to themMikeyPetrillo/Agent402/issues/1775, posted 2026-10-28https://github.com/MikeyPetrillo/Agent402/issues/1775Oct 28, 2026, 2:30 AM UTC
StatusFixed: merged in pull request #1773 (commit 7557ce1); every getTransaction call now asks for version 1Their main branch, src/payment-verify.js:194Oct 28, 2026, 6:00 PM UTC

Tools run on this project

Check it yourself

Every Pulse tool, live on mainnet, starting with tx_version. Paste any signature from this report, or your own.

Toolbox

Pick any tool, change any input, run it on mainnet, and reopen any call to change it and run it again.

Ctrl ↵ runs the tool

25/25 free, then $0.01

Run when code can't find or read a transaction that is on chain, or before relying on code that reads other people's transactions. Read the docs

Response

Run the request to see the live response. The inputs are real mainnet data, so it works as it is.

Your calls 0

Calls you run appear here and stay in this browser. Open one to change its inputs and run it again.