v0.5.0
v0.5.0 — evidence over inspection
The release that turned "reviewed by reading" into observation, and found
five defects doing it — none reachable by reading code.
A serialized script larger than MAX_SCRIPT_SIZE is consensus-legal, and
refusing to parse one froze a live scan permanently at the first real block
carrying one: found by a sustained signet soak within its first hour, fixed,
and verified in the field by the frontier moving again. The privacy cover
leaked a window per background cycle. An error message echoed imported
descriptors — which can carry private keys — back onto the screen. The secret
detector caught an xprv in prose but missed a recovery phrase with any text
around it. And the differential harness deadlocked on any reply over 64KB,
which had silently capped what it could ever check.
Silent payments moved out of the shipped app to the alpha branch, behind a
fail-closed refusal: a wallet holding a silent-payment coin will not open in
a build that cannot spend it, and says where it can. Bitcoin Core now
co-signs a 2-of-3 vault script-path spend on chain — the mixed-implementation
evidence the gate asked for — and the bundled fallback peers are generated at
release time by the wallet's own handshake instead of curated by hand.
The reorg edge case closes: a spend whose confirming block is disconnected is
re-pended, its inputs stay reserved, and the broadcaster re-announces it. The
review screen says when a locktime will lag the tip. The cfheaders cross-check
pair spans peer source classes, so one acquisition channel can no longer agree
with itself. The story runner moved to its own repository.