Skip to content

Commit c14fc2b

Browse files
committed
chore: bump version to 0.56.0
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Executed-By: beads/crew/emma Rig: beads Role: crew
1 parent e7d0d93 commit c14fc2b

13 files changed

Lines changed: 96 additions & 11 deletions

File tree

.claude-plugin/marketplace.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
"name": "beads",
1010
"source": "./claude-plugin",
1111
"description": "AI-supervised issue tracker for coding workflows",
12-
"version": "0.55.4"
12+
"version": "0.56.0"
1313
}
1414
]
1515
}

CHANGELOG.md

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,75 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [0.56.0] - 2026-02-23
11+
12+
### Removed
13+
14+
- **Embedded Dolt mode** — beads now requires a running Dolt SQL server. The embedded Dolt driver (`dolthub/driver`) and all CGO build-tag bifurcation have been removed. Binary size drops from 168MB to ~41MB. Use `bd dolt start` or `dolt sql-server` to run the server.
15+
- **SQLite ephemeral store** — ephemeral issues (wisps) now live in Dolt-backed `wisps` table with `dolt_ignore`, replacing the separate SQLite database. Run `bd migrate wisps` to migrate existing data.
16+
- **JSONL sync pipeline** — the entire JSONL-based sync system (`bd sync`, git-portable mode, belt-and-suspenders mode) has been removed. Dolt-native push/pull via git remotes is the only sync mechanism. `bd sync` is now a deprecated no-op.
17+
- **JSONL bootstrap** — clone initialization uses Dolt clone only; JSONL bootstrap path removed.
18+
- **JSONL plumbing** — cross-rig JSONL flush, JSONL recovery in doctor, and JSONL-based restore have been removed.
19+
20+
### Added
21+
22+
- **Metadata query support**`bd list`, `bd search`, and `bd query` now support `--metadata-field key=value` and `has_metadata_key` filters (#1908)
23+
- **Metadata visibility**`bd show` and `bd list --long` display metadata in human-readable format (#1905)
24+
- **Wisps table** — ephemeral issues stored in dedicated Dolt-backed table with `dolt_ignore` for compaction-friendly lifecycle
25+
- **`bd migrate wisps`** — migration command for SQLite-to-Dolt ephemeral data
26+
- **Batch auto-commit mode** — reduces Dolt commit bloat by batching writes with SIGTERM/SIGHUP flush
27+
- **`--agents-template` flag**`bd init` now supports named AGENTS.md templates via `embed.FS`
28+
- **Mux setup recipe**`bd setup mux` with layered AGENTS.md and managed hooks
29+
- **Standalone formula execution**`bd mol wisp` supports expansion formulas (#1903)
30+
- **Sentinel errors**`ErrNotFound`, `ErrNotInitialized`, `ErrPrefixMismatch` for cleaner error handling
31+
- **`--skip-prefix-validation`**`bd import` flag for legacy data migration
32+
- **Protocol invariant test suite** — data integrity and blocking semantics regression tests (#1910)
33+
- **OpenTelemetry instrumentation** — opt-in OTLP tracing for hooks and storage operations (#1940)
34+
- **Transaction infrastructure**`RunInTransaction` with commit messages, isolation, retry, and batch wrapping for Dolt concurrency
35+
36+
### Fixed
37+
38+
- **`bd ready` ordering** — respect SortPolicy and preserve result ordering (#1883)
39+
- **`waits-for` readiness**`bd ready` and molecule analysis now correctly handle `waits-for` dependencies (#1900)
40+
- **Dependency tree parent ID** — populate ParentID in tree output and show [BLOCKED] for root (#1992)
41+
- **Parent-child display**`bd list` now separates parent-child deps from blocking deps (#1948)
42+
- **Hook shim templates** — use `bd hooks run` instead of nonexistent `bd hook` command
43+
- **Cross-expansion dependencies**`bd mol cook` propagates deps across formula expansions (#1901)
44+
- **Wisp auto-close** — wisp root automatically closes after squash (#1898)
45+
- **Dolt server writes** — commit via `execContext` when server runs with `--no-auto-commit`
46+
- **Metadata normalization** — normalize metadata and waiters in `UpdateIssue`
47+
- **Batch import** — persist labels, comments, and deps during import
48+
- **Noms LOCK detection** — use `flock` probe instead of file existence (#1960)
49+
- **Doctor backend awareness** — deep validation checks configured backend, not directory presence
50+
- **Doctor federation** — use configured database name in federation and health checks (#1904, #1924, #1925)
51+
- **Doctor orphan deps** — exclude `external:` deps from orphan check (#1593)
52+
- **Jira sync** — use correct API v3 `/search/jql` endpoint (#1953)
53+
- **Plugin dep order** — correct inverted `bd dep add` argument order in plugin docs (#1928)
54+
- **Wisp routing** — fix multiple ephemeral store routing gaps for create, read, promote, and gc
55+
- **Prime output** — remove stale `--from-main` flag reference
56+
- **`bd list` resolved blockers** — treat missing/unreachable blockers as resolved (#1884)
57+
- **Wisp search parity** — add ~15 missing filter fields to `searchWisps`
58+
- **Wisp label hydration** — hydrate labels in `getWispsByIDs` for search results
59+
- **Query nil guard** — prevent panic in `GetBlockedIssues` and `GetEpicsEligibleForClosure`
60+
- **Issue prefix clobber** — guard `SetConfig` to prevent overwrite when rigs share a Dolt database
61+
- **Atomic bond/squash**`bd mol bond`, `bd mol squash`, and `bd mol cook` now run in single transactions (bd-wvplu, bd-4kgbq)
62+
- **`bd ready` parent filter** — pass `--parent` filter to `GetReadyWork`/`GetBlockedIssues` and propagate blocked status to children (#2009, #1495)
63+
- **`bd list` sort/limit**`--limit` now applies after `--sort`; trim whitespace in `bd edit` (#1237, #1234)
64+
- **Doctor lock false positive** — use `flock` probe for noms LOCK, remove stale `bd sync` references (#1981, #2007)
65+
- **Repo sync consistency** — cross-prefix hydration and close guard consistency (#1945, #1524)
66+
- **DOLT_COMMIT in CRUD** — all write operations now produce Dolt commits for history tracking
67+
- **Double JSON encoding** — fix daemon-mode RPC response unmarshaling across show, dep, label, reopen (bd-4ec8)
68+
- **G304 gosec finding** — annotate `os.ReadFile` in tips.go with `#nosec` for constructed paths (bd-8g8)
69+
- **Stale daemon references** — remove obsolete `bd daemon` references from all documentation (#1982)
70+
71+
### Performance
72+
73+
- **Binary size** — 168MB → ~41MB (dropped `dolthub/driver` and wazero WASM runtime)
74+
- **Linux/Windows startup** — eliminated 2-second wazero JIT compilation penalty on every invocation
75+
- **Test suite** — doctor tests 89s → 28s; shared DB pattern across cmd/bd suites
76+
- **Test isolation** — dolt package and cmd/bd tests now isolated from production Dolt server (bd-2lf6)
77+
- **N+1 queries** — batch dependency/label/comment queries with per-invocation caching (#1874)
78+
1079
## [0.55.4] - 2026-02-20
1180

1281
### Fixed

claude-plugin/.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "beads",
33
"description": "AI-supervised issue tracker for coding workflows. Manage tasks, discover work, and maintain context with simple CLI commands.",
4-
"version": "0.55.4",
4+
"version": "0.56.0",
55
"author": {
66
"name": "Steve Yegge",
77
"url": "https://github.com/steveyegge"

cmd/bd/info.go

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,22 @@ type VersionChange struct {
209209

210210
// versionChanges contains agent-actionable changes for recent versions
211211
var versionChanges = []VersionChange{
212+
{
213+
Version: "0.56.0",
214+
Date: "2026-02-23",
215+
Changes: []string{
216+
"REMOVED: Embedded Dolt mode — server-only; binary 168MB → 41MB",
217+
"REMOVED: SQLite ephemeral store — wisps now in Dolt-backed table",
218+
"REMOVED: JSONL sync pipeline — Dolt-native push/pull only",
219+
"NEW: OpenTelemetry opt-in instrumentation for hooks and storage",
220+
"NEW: Transaction infrastructure with isolation, retry, and batch wrapping",
221+
"NEW: Metadata query support in bd list, bd search, bd query",
222+
"FIX: Atomic bond/squash/cook operations (single transaction)",
223+
"FIX: Double JSON encoding in daemon-mode RPC calls",
224+
"FIX: bd ready parent filter and blocked status propagation",
225+
"PERF: Test isolation from production Dolt server",
226+
},
227+
},
212228
{
213229
Version: "0.55.4",
214230
Date: "2026-02-20",

cmd/bd/templates/hooks/post-checkout

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/usr/bin/env sh
22
# bd-shim v1
3-
# bd-hooks-version: 0.55.4
3+
# bd-hooks-version: 0.56.0
44
#
55
# bd (beads) post-checkout hook - thin shim
66
#

cmd/bd/templates/hooks/post-merge

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/usr/bin/env sh
22
# bd-shim v1
3-
# bd-hooks-version: 0.55.4
3+
# bd-hooks-version: 0.56.0
44
#
55
# bd (beads) post-merge hook - thin shim
66
#

cmd/bd/templates/hooks/pre-commit

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/usr/bin/env sh
22
# bd-shim v2
3-
# bd-hooks-version: 0.55.4
3+
# bd-hooks-version: 0.56.0
44
#
55
# bd (beads) pre-commit hook — thin shim
66
#

cmd/bd/templates/hooks/pre-push

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/usr/bin/env sh
22
# bd-shim v1
3-
# bd-hooks-version: 0.55.4
3+
# bd-hooks-version: 0.56.0
44
#
55
# bd (beads) pre-push hook - thin shim
66
#

cmd/bd/version.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212

1313
var (
1414
// Version is the current version of bd (overridden by ldflags at build time)
15-
Version = "0.55.4"
15+
Version = "0.56.0"
1616
// Build can be set via ldflags at compile time
1717
Build = "dev"
1818
// Commit and branch the git revision the binary was built from (optional ldflag)

default.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{ pkgs, self }:
22
pkgs.buildGoModule {
33
pname = "beads";
4-
version = "0.55.4";
4+
version = "0.56.0";
55

66
src = self;
77

0 commit comments

Comments
 (0)