musicchain v0.9.1 — BlockPropagator + dynamic quorum + relay-credit + wallet save-to-file
Core (musicchain):
- Replace SyncManager with BlockPropagator: bitcoin-style block distribution (block.hello / getblocks / inv / getdata / data) over librats typed messages, with DHT bootstrap and per-block DHT announce for multi-source catch-up.
- Dynamic confirmation quorum scaling with peer count: solo = 1, +1 per peer, capped at MAX_CONFIRMATIONS = 5.
- Block.signing_hash() so verifiers check signatures against the header-minus-confirmations hash that producers actually sign.
- Mini-node carries its wallet in mini.hello so the full node can credit the right address on RelayRewardTx via RelayCreditTracker.
Player (musicchain_player):
- Wallet first-launch show-seed step gets a Save to a file button alongside Copy to clipboard (uses file_picker bytes for mobile sandbox, manual writeAsString for desktop).
- Direct librats connect to the home node from LibratsDiscovery so player RPCs route peer-to-peer rather than tunneling through the VPS.
- NDK bumped to 28.2.13676358 to match the :jni plugin.
APK: arm64-v8a only, ~83 MB, signed with the debug keys (replace before production).