Live Testnet Report
Status: current 0.1.0-alpha.10 funded live harness run.
Generated: 2026-08-10T07:21:05.896Z
Network: kaspa:testnet-10
Node: operator-controlled private TN10 node, synced with UTXO index enabled.
Virtual DAA score at run start: 539876359
The proof used the NodeJS SDK built from reviewed rusty-kaspa commit 78257f273a26c4be085bab0f79437dee99ca8835. It executed all 18 required Alpha.10 flows. The raw report and signing material remain in an ignored owner-only local directory; this file contains only sanitized public evidence. Hosted-gateway evidence is tracked separately in docs/testnet-gateway.md.
Controlled Funding Split
- Transaction id:
6840c8f0a5cb4ee578cd8b0ba25a7185d616bbc8135973f1e7156fed9b3a78d4 - Transaction version:
0(sdk-generated-transaction) - Requested controlled outputs:
16at500000000sompi each
The split supplied independent funding inputs for conflict and recovery tests. It did not disclose or copy wallet key material.
Standard-Native Exact
Tiny payment
- Transaction id:
9de41db6e22752777ffec39ae91bcd490e92612a8f605321ed13b388546426b9 - Transaction version:
0 - Advertised amount and merchant gain:
10000000sompi - Paid fee:
2000000sompi - Payer cost:
12000000sompi - Calculated contextual mass:
100000 - SDK policy fee calculation at the selected network profile:
10000000 - Finality:
accepted - Duplicate identical request: HTTP
200, cached response, handler executed once total - Re-authorized cross-request replay: HTTP
409,invalid_transaction_state
Normal payment
- Transaction id:
11a457bcc56d03cdef0e2e223668d621927ca8066dfb8881b57bdcda36e9b461 - Transaction version:
0 - Advertised amount and merchant gain:
100000000sompi - Paid fee:
2000000sompi - Payer cost:
102000000sompi - Calculated contextual mass:
10000 - SDK policy fee calculation:
1000000sompi - Finality:
accepted - Duplicate identical request: HTTP
200, handler executed once total - Re-authorized cross-request replay: HTTP
409,invalid_transaction_state
In both cases the merchant output equalled the advertised amount exactly. The tiny run records the accepted TN10 result and SDK policy calculation separately; it does not claim a universal Kaspa minimum payment or fee.
KIP-10 Additive Exact
Two independent head UTXOs were funded:
34ea914b619ebca49e729e0de74d9ea4724d4713013ab7e7e40d8e28e086476a:0467732e379f1e8f0b55ea155035997551a757b7fa1b1d4711f704ac15eae6307:0
Each started at 100000000 sompi with a 10000000 sompi application anti-churn threshold.
The primary additive payment proved:
- Transaction id:
f37e8b1eb594ced6f9c8260fb8758fec5a4605357a7deb8eafc46d8dd09e62e4 - Transaction version:
1 - Prior head amount:
100000000sompi - Successor amount:
200000000sompi - Advertised amount and sole merchant gain:
100000000sompi - Paid fee:
2000000sompi - Payer cost:
102000000sompi - Calculated mass:
1286 - Compute budgets: head input
10, payer input10 - Finality:
accepted - Duplicate identical request: cached without rerunning the handler
- Re-authorized cross-request replay: HTTP
409,invalid_transaction_state
There was no separate merchant payment output. The KIP-10 successor delta was the payment.
Concurrent Head Conflict And Retry
Two different signed transactions raced the same version-0 head:
- Winner:
916b26cab599e0b358c9f599a0b7e9f6bd073d235b5bef683d8e68e7317d5692 - Losing candidate:
f1e721fa37487de66dacd778db42857947bad2ad415544be423e562418f8e18b - Refreshed retry:
2f91763e7f0395aac2022d7a8848386a9eb2bb98cae07a582ede85e90a9eb98a
Exactly one initial request returned 200; the loser received a fresh 402 and then settled successfully against refreshed head state. Protected work ran twice total: once for the winner and once for the retry.
Verification And Recovery
- Mutated and expired request authorizations each returned a corrective
402invalid_payload; protected work ran zero times and no transaction was broadcast. - Public verify-only calls rejected valid but unobserved exact transactions at the authenticated finality gate before direct settlement.
- Transaction
528db7c4e206932c45a4da922835335fd9c5cabd028bc1b29d084b3439539d05was accepted by TN10 and then subjected to an injected post-broadcast runtime failure. A new server instance over preserved state reconciled it and ran the protected handler exactly once on retry. - Transaction
fa5b8359e3a62562a35af48addb652d796158ed0f5ca906f2c1ec75247bac9f2externally advanced a head. Trusted candidate evidence reconciled the durable head from version2to3; no address-only inference was used.
KIP-20 Batch Lifecycle
Stable covenant ID: dd5abfed8d29acedc3e85b8a1f7da7f481e627927ee1820ac98e5645f9eb6302
Singleton genesis and vouchers
- Deposit transaction:
507d27fa5b4da6ed270a2a2e3c079e2efb63a6a72dc4f01c780eccdd516fb463 - Transaction version:
1 - Singleton KIP-20 genesis independently verified: yes
- Funded covenant value after fee:
498000000sompi - Initial charge and signed lifetime ceiling:
100000000sompi - Voucher-only second charge and new lifetime ceiling:
200000000sompi - Finality:
accepted
Two partial claims against one voucher
- First claim transaction:
63cf26a0b7f7709612ea05bc1689107a42a8c3e92cbc6c7a315b51d31dab5c33 - First gross claim:
100000000sompi - First server output:
98000000sompi - First continuation value:
398000000sompi - Second claim transaction:
036b654b96c7137b948d0d9d8f6c306edc61d5c28cd1aea647096312b36631f9 - Second gross claim:
50000000sompi - Second server output:
48000000sompi - Second continuation value:
348000000sompi - Lifetime gross claimed after both claims:
150000000sompi - Buyer-signed lifetime ceiling used for both claims:
200000000sompi - Claim fee per transaction:
2000000sompi - Finality:
acceptedfor both claims
Both claims preserved the covenant ID while advancing the active outpoint, state script, and derived P2SH address. The second claim reused the same cumulative voucher without exceeding its ceiling.
Same-lineage top-up and restart reload
- Top-up transaction:
90f04eeee0da64af6f555da30e19886bfd81072283827fbe819cdf98bb96ac62 - Added value:
402000000sompi - Successor covenant value:
750000000sompi - Lifetime actual charge and new signed ceiling:
600000000sompi - Lifetime gross claimed remained:
150000000sompi - Finality:
accepted
The top-up retained the same covenant ID, S, state script, and derived P2SH address while advancing the outpoint and strictly increasing V. A fresh client/server runtime reloaded the genesis evidence, top-up evidence, active outpoint, channel state, and the exact pre-broadcast claim artifact. No open claim attempt survived the accepted top-up.
Stale-head rejection and terminal refund
- A stale claim transaction against the spent genesis outpoint was submitted to TN10 and definitively rejected while the current continuation remained present.
- Absolute refund DAA:
539878159 - Refund lock time:
539878160 - Observed DAA at submission:
539878185 - Refund transaction:
1fc6d66d515942d54ff9652252f0a12addc09a3d63dbe59be80a6619738417c8 - Refund input:
750000000sompi - Refund output:
748000000sompi - Refund fee:
2000000sompi - Finality:
accepted
The refund builder, persisted artifact, and broadcast transaction IDs matched. Restart reconciliation reloaded the exact signed bytes and captured head, applied the accepted attempt atomically, and did not rebroadcast.
Public TN10 REST independently returned all five batch transactions as accepted version-1 native-subnetwork transactions with accepting block hashes.
Required Flow Status
All 18 required flows passed:
- exact settlement, additive-head conflict/retry, idempotency, invalid and expired authorization rejection, restart recovery, and external advancement;
- verified singleton KIP-20 genesis, deposit-voucher, and voucher-only reuse;
- two partial claims using one cumulative voucher, same-lineage top-up, and durable restart reload;
- stale-head and cross-scheme replay rejection;
- terminal post-timeout refund with deterministic artifact recovery.
Mainnet Read-Only And Offline Check
The latest separate mainnet read-only check reported a synced Rusty Kaspa 2.0.1 node with UTXO index enabled beyond the recorded Toccata activation score. npm run proof:mainnet:offline constructs and signs deterministic synthetic standard-native v0 and additive v1 shapes without real UTXOs, funds, transaction submission, spend, or broadcast.
This is compatibility evidence, not a mainnet readiness claim. Mainnet remains blocked by docs/mainnet-readiness.md.
Source: /docs/live-testnet-report.md