Repository navigation
fix(telos): restore replay parity and add opt-in transaction retry - #22
Conversation
|
Testnet beta qualification update for
Sealed operational evidence is stored on rpc9 under |
|
Mainnet beta rollout update for
Sealed evidence is stored on rpc9 under
This changes only the mainnet beta pool. |
|
Fresh transaction-retry validation passed on 2026-08-14 UTC against build Testnet:
Mainnet beta:
Sealed evidence on rpc9:
|
|
Follow-up boundary test: a nonce-gapped EVM transaction is not a supported transaction-retry case. I submitted nonce 25 while the native contract expected nonce 24, then mined nonce 24 without resubmitting nonce 25 afterward. The higher-nonce transaction remained absent after 150 seconds. This is expected: Antelope defines This does not invalidate the successful supported-path qualification above:
The remaining retry-specific chaos test is to withhold P2P propagation from an otherwise valid native transaction for more than the configured 20-second interval and prove retransmission. That needs an isolated nodeos instance; it was not forced on the shared testnet nodeos because doing so could disrupt the incumbent testnet RPC. Boundary evidence:
Reference: https://github.com/AntelopeIO/leap/releases/tag/v3.1.0#new-transaction-submission-api |
Isolated P2P-loss retry qualification — PASSA real Telos EVM testnet transaction was submitted through the PR build while its dedicated, loopback-only nodeos instance had zero P2P connections.
Transaction: This proves the retry queue retained and propagated a validated transaction across a controlled loss of P2P connectivity. The forwarding client had already exhausted its expected blocking timeout before reconnect; it did not resubmit afterward. Safety/cleanup:
Sealed evidence on rpc10:
Note: the native speculative head can be numerically ahead of the canonical EVM receipt block. The ordering assertion therefore uses the peer-connection log and canonical receipt block timestamp, not a cross-layer height comparison. |
rpc11 testnet retry configuration rollout — PASSrpc11's testnet nodeos HTTP instance now has the same transaction-retry configuration as rpc9 and rpc10:
Rollout safety:
Retry-path validation:
Post-restore full qualification:
Sealed evidence on rpc11:
Result: transaction retry is now configured consistently across rpc9, rpc10, and rpc11 testnet beta origins. |
|
Final qualification evidence for head 5d40d86:
Sealed runtime evidence is stored on rpc11 under /telos/telos-reth-v2-bootstrap/retry-replay-13ca85cfa-v1/evidence/ with matching local/remote checksums. |
|
Final side-by-side qualification is complete for merge commit
The upgraded stack is qualified for controlled side-by-side production canary admission. The incumbent was not modified or replaced. |
Fixes canonical chain-ID-3 withdrawal burn handling so replayed state matches the authoritative Telos account delta, and adds opt-in native transaction retry through nodeos send_transaction2 while retaining push_transaction as the default.
Also enables canonical WebSocket subscriptions and refreshes the controlled dependency-security policy. The corrected build has been qualified side by side on all three mainnet beta origins and the testnet beta path without modifying or replacing incumbent RPC services.