observeBlocks
Observe the chain's new-block stream (#255). Each emission is a freshly-produced BlockInfo (height, hash, timestamp, ledger params). This is the same stream that drives com.midnight.kuira.core.compact.MidnightContract.observeLedger; exposed here so a dApp can react to chain progress directly (e.g. a tip indicator, time-gating). Cold — collecting opens an indexer subscription; cancel the collection to close it.