What's Changed
Closed Beads
- beads_rust-3r45.1: Make legacy sync --merge globally atomic across DB, JSONL, base, and bookkeeping
- beads_rust-3r45.2: Capture one secure immutable JSONL source snapshot for no-db, recovery, and reconcile
- beads_rust-3r45.3: Complete additive reconcile adversarial unit and end-to-end proof matrix
- beads_rust-di3tb.3: Bring this repository's own .beads workspace doctor to green (stale merge base, retained recovery artifacts)
- beads_rust-di3tb.5: Re-verify and own the eleven existing sync/portability beads against current main
- beads_rust-dk45: Track B: storage-engine governance, the #476 byte-identity bug, and an engine-independent correctness oracle
- beads_rust-dk45.6: Give each open engine-boundary bead a repro test and an upstream frankensqlite issue (ro3m, f3r4, ajui, 891u, avhq)
- beads_rust-dk45.7: Model-based differential test: random op sequences against SqliteStorage vs an in-memory reference model
- beads_rust-dk45.8: Multi-process linearizability checker: record N=8 concurrent br histories and verify them against the sequential model
- beads_rust-hrhx: doctor fixture suite: 14 fixtures fail on RCH workers (11 need sqlite3 CLI in corrupt.sh; metadata_json_drift / startup_cache_poisoned / doctor_mutates_without_fix need triage)
- beads_rust-iw7k: Track D: CLI ergonomics — accept the forms the docs promise, hint on docs-shaped mistakes, structured acceptance criteria
- beads_rust-iyony: close --json prints two JSON documents on stdout when every requested issue is skipped
- beads_rust-suzw: Track G: output-layer decisions, dormant modules, and the as-built architecture record
- beads_rust-suzw.2: Dormant-module decision table, tests/dormant_modules.rs, and removal of stale WP1-scaffold dead_code markers
- beads_rust-suzw.3: Operator decision: isomorphic split of storage/sqlite.rs (38k lines) or amend the plan to as-built
- beads_rust-uze9.3: Rewrite ci.yml as a shard matrix from gates.toml, add a Windows shard, re-enable workflows, and guard against disabled workflows
- beads_rust-uze9.4: Extend release.yml reliability gates with fmt, clippy, cargo test --lib, stress, version audit, and a post-release canary; give DSR the same gates
- beads_rust-uze9.8: Decide the coverage gate: enforce a no-decrease threshold or remove the job
- beads_rust-v7o2: Track E: doctor completeness — selftest canary, a real doctor explain, and an evidence bundle
- beads_rust-v7o2.1: Implement br doctor --selftest: full lifecycle in a throwaway workspace with a platform/filesystem receipt
- beads_rust-v7o2.2: Selftest e2e, release canary job, and issue-template request for the receipt
- beads_rust-wqmw.2: tests/e2e_readme_examples.rs: run every br example in README in a scratch workspace and assert the documented exit code
- beads_rust-wqmw.6: ARCHITECTURE.md 'As built (2026-09)' section and historical banners on the porting and RICH plan documents
- beads_rust-zxfz.3: Run Go-bd conformance on a warm worker, triage failures into fixes or documented divergences, and re-enable the workflow
- beads_rust-zxfz.4: Close e2e holes: br agents, info --schema, delete --cascade, a behavior-checking GH384 guard, ignored-test links, mzpz and hrhx
- beads_rust-zxfz.5: Snapshot suite drift on main: bv robot goldens pin v0.19.0 while hosts run 0.22.0, and stale search/schema snapshots
Commits
- chore(release): bump to 0.5.10 (6c8283c)
- ci(reliability): make the stress gate's binary and family paths absolute before it changes directory (a5f2af5)
- docs(agents): TMPDIR-inside-checkout and shared-worker notes for RCH runs (39aff3d)
- test: keep e2e workspaces out of a TMPDIR that sits inside the checkout (0fa3e0b)
- doctor(selftest): pin child commands to the throwaway workspace with BEADS_DIR (a4cf2f0)
- test(linearizability): describe the measured per-mutation cost instead of the refuted flush-lock hypothesis (dbe7e6a)
- chore(beads): tracker flush after the merge-anchor repair (e059d46)
- docs(changelog): #487 fresh-clone auto-flush fix in v0.5.9; tracker (b0fb52b)
Release Verification
Release reliability gates completed before artifacts were built:
failure-corpus replay, crash-injection sync matrix, long-lived single-workspace stress,
concurrent command-family integrity stress, and doctor/recovery postcondition checks.
Platforms
| Platform | Architecture | File |
|---|---|---|
| Linux | x86_64 (gnu) | br-0.5.10-linux_amd64.tar.gz |
| Linux | x86_64 (musl, static) | br-0.5.10-linux_musl_amd64.tar.gz |
| Linux | ARM64 (gnu) | br-0.5.10-linux_arm64.tar.gz |
| Linux | ARM64 (musl, static) | br-0.5.10-linux_musl_arm64.tar.gz |
| macOS | x86_64 (Intel) | br-0.5.10-darwin_amd64.tar.gz |
| macOS | ARM64 (Apple Silicon) | br-0.5.10-darwin_arm64.tar.gz |
| Windows | x86_64 | br-0.5.10-windows_amd64.zip |
Installation
Quick Install (Recommended)
curl -fsSL https://raw.githubusercontent.com/Dicklesworthstone/beads_rust/main/install.sh | bashCargo Install
cargo install --git https://github.com/Dicklesworthstone/beads_rust.git beads_rust --tag v0.5.10 --lockedManual Download
Download the appropriate binary for your platform from the assets below.
Verify checksum:
# Download checksums.sha256 and your binary
sha256sum -c checksums.sha256 --ignore-missingVerify signature (optional):
Binaries are signed with Ed25519 using minisign. Install minisign and verify:
# Download the .minisig file for your binary
# Public key: RWTQoKUb0Ue4NsqTpPWnABCrIU0+m25zsMlbv6UcRClQ7jmRP3A7NmTB
minisign -Vm br-0.5.10-linux_amd64.tar.gz \
-P 'RWTQoKUb0Ue4NsqTpPWnABCrIU0+m25zsMlbv6UcRClQ7jmRP3A7NmTB'Full Changelog
See CHANGELOG.md for the complete history.