Skip to content

fix(ci): fix CI test failures for 3.0.0-beta release#2718

Merged
shamardy merged 4 commits intostagingfrom
fix/3.0.0-beta-ci-fixes
Mar 9, 2026
Merged

fix(ci): fix CI test failures for 3.0.0-beta release#2718
shamardy merged 4 commits intostagingfrom
fix/3.0.0-beta-ci-fixes

Conversation

@shamardy
Copy link
Collaborator

@shamardy shamardy commented Mar 9, 2026

Summary

Fix CI failures from #2717 (3.0.0-beta staging merge).

1. Sia container crash

walletd v2.12.0 (coreutils v0.20.0) added sanityCheckNetwork() requiring hardfork heights in chronological order. Our config had hardforkV2.allowHeight=0 which violates v2 hardfork must not precede Foundation hardfork (height 30). Set allowHeight to 30.

2. Sia flaky balance test

test_sia_client_address_balance used a fixed 100ms sleep after mining. walletd's debug/mine returns after consensus applies blocks, but address balance indexing runs asynchronously in a background goroutine (wallet/manager.go syncStore). Replaced with a polling loop.

3. IRIS testnet endpoint dead

All Tendermint unit tests used http://34.80.202.172:26657 which is no longer reachable. Updated to the official nyancat-9 RPC at https://rpc.nyancat.irisnet.org.

4. Tendermint test fixtures pruned

8 unit tests referenced historical tx hashes that were pruned by the nyancat-9 node (earliest_block_height: 25800001). Created fresh on-chain transactions:

  • 3 successful txs (MsgSend transfer, CreateHTLC, faucet tx)
  • 3 failed txs (HTLC claims with wrong secret — passes CheckTx but fails DeliverTx)
  • HTLC create/claim pair with known secret for spend detection tests
  • Reverse-direction HTLC (PAIR2→PAIR1) for payment validation test
  • Refund HTLC (expired timelock) for refund detection test

Added an ignored test_create_nyancat_fixtures test for reproducible fixture generation when transactions get pruned again in the future.

CI Failures from #2717

  • Docker / Sia — Fixed: allowHeight config + balance polling
  • Docker / ZCoin — Passed (was transient)
  • Unit / Linux — Fixed: IRIS endpoint + fresh test fixtures
  • Unit / macOS — Fixed: same as Linux
  • Unit / Windows — Fixed: same as Linux
  • WASM — Fixed: IRIS endpoint updated

Test plan

  • All 8 Tendermint unit tests verified passing locally
  • cargo clippy -p coins --tests clean
  • Verify all CI jobs green

🤖 Generated with Claude Code

walletd v2.12.0 (via coreutils v0.20.0) added sanityCheckNetwork()
which enforces hardfork heights must be in chronological order.
Our CI network config had hardforkV2.allowHeight=0 which violates
the rule "v2 hardfork must not precede Foundation hardfork" (height 30).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@shamardy shamardy force-pushed the fix/3.0.0-beta-ci-fixes branch from f5dd377 to 78becba Compare March 9, 2026 15:27
shamardy and others added 3 commits March 9, 2026 17:53
walletd's debug/mine endpoint returns after blocks are applied to
consensus, but address balance indexing runs asynchronously in a
background goroutine. The previous 100ms fixed sleep was a race
condition that became unreliable with walletd v2.12.0. Replace with
a polling loop that retries until the balance is visible.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The old endpoint (34.80.202.172:26657) is no longer reachable.
Replace with the official nyancat testnet RPC at
rpc.nyancat.irisnet.org. Some tests that reference pruned historical
tx hashes may still fail and will need fresh transactions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…actions

Replace pruned historical tx hashes with fresh on-chain transactions on
IRIS nyancat-9 testnet. All 8 previously failing Tendermint unit tests
now pass with new fixture data including successful transfers, HTLC
create/claim/refund operations, and intentionally failed transactions.

Add ignored test_create_nyancat_fixtures test for reproducible fixture
generation when transactions get pruned again in the future.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@shamardy shamardy changed the title fix(ci): fix docker test CI failures for 3.0.0-beta release fix(ci): fix CI test failures for 3.0.0-beta release Mar 9, 2026
@shamardy shamardy merged commit 2c51103 into staging Mar 9, 2026
53 of 55 checks passed
@shamardy shamardy deleted the fix/3.0.0-beta-ci-fixes branch March 9, 2026 19:40
shamardy added a commit that referenced this pull request Mar 9, 2026
…o-dev

chore(release): propagate #2718 (staging→dev)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant