easyBTX v0.2.0 — mega-audit polish
easyBTX v0.2.0 — 4 CRIT + 10 HIGH + 13 MED fixes from a full security + functional audit, plus a 4-tier power-aware mining animation and a public changelog page.
cargo test --lib: 149/149.
Verify the DMG
shasum -a 256 easyBTX.dmg
# should print:
# 733bcf4c01b000bee20a33b608da61f2939c6b53ef92aaed8519458ee641e51f
What's new
- Multi-wallet wipe blocked on datadir relocation
- Pool + Metal solver shut down cleanly on Quit (no more orphaned GPU pin)
snapshot.datdeletion gated on truthfulloadtxoutsetsuccess- Solver nonce-cursor monotonic guard (no more duplicate-share rejections)
repair_nodehonors the active wallet (no more silent fallback to "miner")move_datadir_torefuses FAT / exFAT volumesapply_node_updateactually swaps to the new btxd binary- Send "Max" is an explicit flag (no more 1-sat heuristic)
- 4-tier mining animation responds to the power slider — whisper / steady / active / overdrive (the last one with red-orange hot tint and faster fusion bursts)
gpu_uuidsent to the pool is now salted SHA-256, not the rawIOPlatformUUID- Pool log moved to
~/.easybtx/pool.log(mode0600,O_NOFOLLOW) - ...and a couple dozen more — see the changelog for everything.
First-time install
If macOS says "easyBTX is damaged and can't be opened":
xattr -dr com.apple.quarantine /Applications/easyBTX.app
This only clears the "downloaded from the internet" tag macOS adds to unsigned apps; it doesn't change the app. Apple notarization is on the roadmap and will remove this step.
🤖 Generated with Claude Code