Skip to content

Conversation

@x3c41a
Copy link
Contributor

@x3c41a x3c41a commented Jan 12, 2026

Key Fixes

Smoldot Bootnode Issue

  • Problem: Smoldot light client couldn't connect to parachain nodes. Smoldot supports only WebSocket transport, but zombienet bootnodes used only TCP.
  • Fix: I added convertBootNodeToWebSocket() that converts TCP multiaddrs to WebSocket format using convention ws_port = tcp_port + 1. Zombienet nodes configured with --listen-addr /ip4/0.0.0.0/tcp/{port+1}/ws

Transaction Indexing

  • Problem: Parachain wasn't properly indexing transactions for the TransactionStorage pallet,
  • Fix: Enabled transaction-index feature on cumulus-pallet-parachain-system:
    cumulus-pallet-parachain-system = { features = ["transaction-index"], workspace = true }
    @bkontur

CI apt-get 403 Errors

  • Problem: Microsoft package repos on Github runners returned 403 Forbidden
  • Fix: Removed Microsoft repo lists before apt-get update

Other Changes

  • Added waitForChainReady to verify chain accessibility
  • Refactored smoldot script for parachain support (relay + para chain specs)

@x3c41a x3c41a marked this pull request as draft January 12, 2026 09:44
@x3c41a
Copy link
Contributor Author

x3c41a commented Jan 12, 2026

The CI fails because of a timeout, my local run is stuck on Verifying polkadot version... step. Investigating...

…zombienet nodes with --listen-addr for WebSocket (port+1)

  Converted TCP bootnodes to WebSocket in smoldot script automatically
  Removed continue-on-error from CI now that smoldot parachain works
@bkontur
Copy link
Collaborator

bkontur commented Jan 13, 2026

@x3c41a after your WS magic :) the authorize is finalized and store just waits to be included in the block: https://github.com/paritytech/polkadot-bulletin-chain/actions/runs/20950357905/job/60202260127?pr=170#step:12:151

maybe few things to try:

  • can we increase smoldot level to see more logs?
  • check PAPI repo issues/examples and/or fill the issue there with full logs and reference to this code

@x3c41a x3c41a force-pushed the fix_smoldot_westend branch from 33bfe7a to a9e328b Compare January 13, 2026 10:05
@x3c41a
Copy link
Contributor Author

x3c41a commented Jan 13, 2026

Reverted to the previous version,
Applied your suggestion (mine was buggy),
Increased smoldot log level
Waiting for the CI 👀

if (tcpMatch) {
const [, hostPart, portStr, peerId] = tcpMatch;
const tcpPort = parseInt(portStr, 10);
const wsPort = tcpPort + 1; // Convention: WS port = TCP port + 1
Copy link
Contributor Author

Choose a reason for hiding this comment

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

That's a convention that lives as a code comment here and in zombienet/bulletin-westend-local.toml implicitly.

Maybe it's worth extracting this convention somewhere? But where? @bkontur

p2p_port = 30333
rpc_port = 9942
balance = 2000000000000
# WebSocket P2P on p2p_port + 1 for smoldot light client support
Copy link
Contributor Author

Choose a reason for hiding this comment

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

comments to be moved or removed

@x3c41a x3c41a marked this pull request as ready for review January 13, 2026 17:58
@x3c41a x3c41a requested a review from bkontur January 13, 2026 17:58
Copy link
Collaborator

@bkontur bkontur left a comment

Choose a reason for hiding this comment

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

@x3c41a thank you, nice one, please just remove bulletin-westend-spec.json file and we can merge

@x3c41a
Copy link
Contributor Author

x3c41a commented Jan 14, 2026

remove bulletin-westend-spec.json file

I also thought that it was redundant but it actually contains account balance overwrites which allow Alice (IIRC) to sign and send/spend the transaction. Otherwise Westend DAG test fails

@x3c41a
Copy link
Contributor Author

x3c41a commented Jan 14, 2026

May I merge? @bkontur

@bkontur
Copy link
Collaborator

bkontur commented Jan 14, 2026

May I merge? @bkontur

that file is generated by create_bulletin_westend_spec.sh and should be copied to the ./zombienet dir when running, please remove and let's see the CI

@x3c41a
Copy link
Contributor Author

x3c41a commented Jan 14, 2026

@x3c41a
Copy link
Contributor Author

x3c41a commented Jan 14, 2026

Ahhh, I see. I simplified that script too

@x3c41a x3c41a enabled auto-merge (squash) January 14, 2026 10:26
@x3c41a
Copy link
Contributor Author

x3c41a commented Jan 14, 2026

Fixes #172

@x3c41a x3c41a merged commit 0a3b63f into main Jan 14, 2026
8 checks passed
@x3c41a x3c41a deleted the fix_smoldot_westend branch January 14, 2026 11:03
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.

3 participants