v0.1 · independent measurement
alpenglow-watch
Independent Solana mainnet finality measurement — D+1 after Alpenglow activation (2026-10-22, observed from Seoul)
0 slots
processed−finalized slot gap · 50/50 samples (p50 = max = 0)
legacy TowerBFT: ~32 slots = 6.4s
≤ ~160ms
confirmed→finalized upper bound p50 (incl. 145ms RTT)
60/60 txs already final at first check
0.85–1.36s
age of latest finalized block, p50 (per provider)
includes 1s blockTime granularity + provider lag
60 / 60
memo-program probe transactions · 2 public RPCs
no wallet, no cost — pure observation
Per-provider detail
| provider | n | final@1st poll | disc→fin p50 | p95 | RTT | gap p→f | block age p50/max |
| api.mainnet-beta.solana.com | 30 | 100% | 158ms | 405ms | 145ms | 0 / 0 slots | 0.85 / 1.33s |
| solana-rpc.publicnode.com | 30 | 100% | 269ms | 505ms | 259ms | 0 / 0 slots | 1.36 / 2.34s |
The dispute: announced 150ms vs dashboard 6.6s
- On activation day the Foundation dashboard showed 6.6 seconds. On D+1, our measured post-landing finality depth is 0 slots — 50/50 samples. The two numbers measure different things: submission→landing (mempool + leader wait) vs landing→final. Alpenglow changed the latter.
- In our upper-bound measurement, disc→final p50 (158ms) ≈ RTT (145ms). By the time the RPC answered "confirmed", the tx was already final — post-landing finality sits below measurement resolution (tens of ms).
- Conclusion: from the landing viewpoint, finality is effectively immediate. Remaining latency lives in the submission→landing segment — that's v0.2's job.
Methodology
- Probe: newest tx of the memo program (MemoSq4g…) discovered at commitment confirmed → poll getSignatureStatuses at 120ms until finalized. No wallet, no cost.
- Chain metric: simultaneous getSlot processed/confirmed/finalized triple query (25×2) + getBlock(finalized) blockTime age (25×2).
- All calls via curl. RTT baseline: getBlockHeight ×8 median.
- Window: 2026-10-22 07:12–07:14 UTC · vantage: Seoul (KR) · providers answer from their own regions.
Limitations (stated plainly)
① Upper-bound: we prove confirmed→finalized is "≤", not an exact value — 60/60 censoring is itself the finding (finality resolves faster than poll granularity). ② RPC view: provider-reported finality, not direct validator observation. ③ blockTime has 1s granularity. ④ Single vantage (Seoul), 2 providers — regional comparison comes after VPS deployment (v0.3). ⑤ Submission→landing not measured (needs a funded wallet, v0.2).