v0.6.1 — re-release 0.6.0 through the pipeline, with provenance
First published build of the single-CLI work. (0.6.0 was withdrawn before general availability and is not installable; 0.6.1 is the same tree, released through the tag pipeline with Sigstore provenance linking the tarball to its commit. npm treats name@version as permanently spent, so the corrected build ships under a new number rather than as a re-cut 0.6.0.)
Security
- One CLI, and its name is ours: the five per-command bins collapse into a single
sparkbtcbot <command>dispatcher. The 0.4.x–0.5.x bins (sparkbtcbot-setup,sparkbtcbot-reveal-mnemonic,sparkbtcbot-leaf-vault,sparkbtcbot-set-policy,sparkbtcbot-reset-ledger) were five unregistered npm names — each a separate landing spot for npx's registry fallback when the local bin is missing, at wallet-bootstrap or seed-reveal time. The single bin is namedsparkbtcbot, and an in-repo name-reservation stub (stub/sparkbtcbot/, published separately to npm) owns that name on the registry: a wrong-directorynpx sparkbtcbot ...lands on project-owned code that prints where you went wrong and exits 1, never a squatter's. The dispatcher also gives the ceremonies one argument gate with no default action (the 0.4.3--help-minted-a-wallet class of bug cannot recur per-script),sparkbtcbotwith no arguments prints the subcommand list instead of hitting the registry with a half-remembered name, and every command module is now inert on import with an exportedmain()—set-policy,reset-ledger, andleaf-vaultpreviously executed at top level on import. Old invocations migrate mechanically:npm exec --no -- sparkbtcbot-setup→npm exec --no -- sparkbtcbot setup. Thenpm runscript names in the cloned repo are unchanged. Breaking: the five old bin names are gone; docs-lint fails any living doc that resurrects one.
Changed
- Docs, in-code error messages (
spend-ledger,spark-agent), evals, and tests all speak thesparkbtcbot <command>form; README/SKILL.md/AGENTS.md npx guidance updated for the owned-name fallback.