Problem
From 30 cold-start runs against Paseo, Asset Hub Paseo, smoldot 3.1.0 via polkadot-api/smoldot, browser, fully cold (no IndexedDB):
| Phase |
Median |
p90 |
Max |
| Warp sync (GRANDPA fragment verification) |
2 s |
2.6 s |
2.9 s |
| Wait for first relay-chain finalization |
17 s |
51 s |
67 s |
| Parachain bootstrap (runtime + Aura proofs) |
2.4 s |
4.8 s |
13 s |
| Asset Hub header (compare bootstrap height and relay's current finalized parahead) |
2.1 s |
4.3 s |
10 s |
Proposal
At the consumer side (e.g. parachain.rs:1129) accept Notification::BestBlockChanged / Block { is_new_best } in addition to Finalized. Trades strict-finality on the first useful block for lower latency; reconciliation when a real finalized notification later arrives.
Related
Problem
From 30 cold-start runs against Paseo, Asset Hub Paseo, smoldot 3.1.0 via
polkadot-api/smoldot, browser, fully cold (no IndexedDB):Proposal
At the consumer side (e.g.
parachain.rs:1129) acceptNotification::BestBlockChanged/Block { is_new_best }in addition toFinalized. Trades strict-finality on the first useful block for lower latency; reconciliation when a real finalized notification later arrives.Related