From 88a6438c80c04c6da52f905fa8f5b30007bf3732 Mon Sep 17 00:00:00 2001 From: emma Date: Sat, 17 Jan 2026 04:36:03 -0800 Subject: [PATCH] chore(release): bump version to 0.48.0 Release highlights: - VersionedStorage interface for pluggable backends - bd types command and enhancement type alias - bd close -m flag (git commit convention) - RepoContext API for centralized git operations - Dolt backend improvements (WIP) - Many bug fixes for doctor, sync, hooks, worktrees Co-Authored-By: Claude Opus 4.5 --- .claude-plugin/marketplace.json | 2 +- CHANGELOG.md | 79 ++++++++++++++++++++++++ claude-plugin/.claude-plugin/plugin.json | 2 +- cmd/bd/info.go | 17 +++++ cmd/bd/version.go | 2 +- default.nix | 2 +- integrations/beads-mcp/pyproject.toml | 4 +- npm-package/package.json | 2 +- 8 files changed, 103 insertions(+), 7 deletions(-) diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index 66d0a1b4..7215a46b 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -9,7 +9,7 @@ "name": "beads", "source": "./claude-plugin", "description": "AI-supervised issue tracker for coding workflows", - "version": "0.47.2" + "version": "0.48.0" } ] } diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d86cf90..ff71aa2f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,85 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.48.0] - 2026-01-17 + +### Added + +- **VersionedStorage interface** - Abstract storage layer with history/diff/branch operations + - Enables pluggable backends (SQLite, Dolt) with unified API + - Supports time-travel queries and branching semantics + +- **`bd sync` command specification** - Formalized sync workflow implementation + - Clearer separation between export, import, and merge phases + +- **`bd types` command** - List valid issue types (#1102) + - Shows all available types with descriptions + +- **"enhancement" type alias** - Alternative name for "feature" type + - Matches GitHub issue label conventions + +- **`bd close -m` flag** - Alias for `--reason` (git commit convention) + - More intuitive for git users: `bd close -m "reason"` + +- **RepoContext API** - Centralized git operations context (#1102) + - Consistent git directory handling across codebase + +- **Dolt backend improvements (WIP)** + - Automatic bootstrap from JSONL on first access + - Git hook infrastructure for Dolt operations + - `bd compact --dolt` flag for Dolt garbage collection + +### Fixed + +- **Doctor sync branch health check** - Removed destructive --fix behavior (GH#1062) + - No longer warns about expected source file differences + - Prevents accidental sync branch history destruction + +- **Duplicate merge target selection** - Use combined weight (GH#1022) + - Considers both dependents and dependencies when choosing merge target + - Prevents closing issues with children/dependencies + +- **Worktree exclude paths** - Use --git-common-dir for correct paths (GH#1053) + - Fixes `bd init --stealth` in git worktrees + +- **Daemon git.author config** - Apply configured author to sync commits + - Respects `git.author` config and `BD_GIT_AUTHOR` env var + +- **Hook chaining preservation** - Prevent --chain from destroying original hooks (#1120) + - Backs up existing hooks before chaining + +- **Sync routed prefixes** - Allow routed prefixes in import validation + - Fixes multi-prefix workflow issues + +- **Windows CGO-free builds** - Enable building without CGO (#1117) + - Improved Windows compatibility + +- **Shell completions without database** - Work without .beads/ (#1118) + - Completions function in non-beads directories + +- **Timestamp normalization** - Normalize to UTC for validation (#1123) + - Prevents timezone-related validation failures + +- **Symlinked .beads directories** - Correct routing for symlinks (#1112) + - Proper resolution of symlinked beads directories + +- **Nil pointer in ResolvePartialID** - Prevent panic (#1132) + - Guards against nil pointer dereference + +- **Orphaned dependencies on delete** - Mark dependents dirty (#1130) + - Prevents orphan deps in JSONL after issue deletion + +- **Git hooks in worktrees** - Fix hook execution (#1126) + - Hooks now work correctly in linked worktrees + +### Documentation + +- **CLI skill reference** - Synced with v0.47.1 commands + - Updated command documentation in claude-plugin + +- **AGENTS.md fixes** - Removed references to nonexistent CLAUDE.md + - Corrected cross-references in documentation + ## [0.47.2] - 2026-01-14 ### Added diff --git a/claude-plugin/.claude-plugin/plugin.json b/claude-plugin/.claude-plugin/plugin.json index 2e74cfc6..5947ec2a 100644 --- a/claude-plugin/.claude-plugin/plugin.json +++ b/claude-plugin/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "beads", "description": "AI-supervised issue tracker for coding workflows. Manage tasks, discover work, and maintain context with simple CLI commands.", - "version": "0.47.2", + "version": "0.48.0", "author": { "name": "Steve Yegge", "url": "https://github.com/steveyegge" diff --git a/cmd/bd/info.go b/cmd/bd/info.go index f149e0f0..fd20c2e4 100644 --- a/cmd/bd/info.go +++ b/cmd/bd/info.go @@ -296,6 +296,23 @@ type VersionChange struct { // versionChanges contains agent-actionable changes for recent versions var versionChanges = []VersionChange{ + { + Version: "0.48.0", + Date: "2026-01-17", + Changes: []string{ + "NEW: VersionedStorage interface - Abstract storage layer with history/diff/branch operations", + "NEW: bd types command - List valid issue types with descriptions", + "NEW: bd close -m flag - Alias for --reason (git commit convention)", + "NEW: RepoContext API - Centralized git operations context", + "WIP: Dolt backend improvements - Bootstrap from JSONL, hook infrastructure, bd compact --dolt", + "FIX: Doctor sync branch check - Removed destructive --fix behavior (GH#1062)", + "FIX: Duplicate merge target - Use combined weight for better selection (GH#1022)", + "FIX: Worktree exclude paths - Correct --git-common-dir usage (GH#1053)", + "FIX: Daemon git.author - Apply configured author to sync commits", + "FIX: Windows CGO-free builds - Enable building without CGO (#1117)", + "FIX: Git hooks in worktrees - Fix hook execution in linked worktrees (#1126)", + }, + }, { Version: "0.47.2", Date: "2026-01-14", diff --git a/cmd/bd/version.go b/cmd/bd/version.go index db4adaad..5149749b 100644 --- a/cmd/bd/version.go +++ b/cmd/bd/version.go @@ -14,7 +14,7 @@ import ( var ( // Version is the current version of bd (overridden by ldflags at build time) - Version = "0.47.2" + Version = "0.48.0" // Build can be set via ldflags at compile time Build = "dev" // Commit and branch the git revision the binary was built from (optional ldflag) diff --git a/default.nix b/default.nix index 54ea1d97..efb45734 100644 --- a/default.nix +++ b/default.nix @@ -1,7 +1,7 @@ { pkgs, self }: pkgs.buildGoModule { pname = "beads"; - version = "0.47.2"; + version = "0.48.0"; src = self; diff --git a/integrations/beads-mcp/pyproject.toml b/integrations/beads-mcp/pyproject.toml index 1af4f7ca..3ded1d3e 100644 --- a/integrations/beads-mcp/pyproject.toml +++ b/integrations/beads-mcp/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "beads-mcp" -version = "0.47.2" +version = "0.48.0" description = "MCP server for beads issue tracker." readme = "README.md" requires-python = ">=3.10" @@ -66,7 +66,7 @@ warn_return_any = false check_untyped_defs = false [tool.ruff] -target-version = "0.47.2" +target-version = "0.48.0" line-length = 115 [tool.ruff.lint] diff --git a/npm-package/package.json b/npm-package/package.json index 6af9adf4..89193111 100644 --- a/npm-package/package.json +++ b/npm-package/package.json @@ -1,6 +1,6 @@ { "name": "@beads/bd", - "version": "0.47.2", + "version": "0.48.0", "description": "Beads issue tracker - lightweight memory system for coding agents with native binary support", "main": "bin/bd.js", "bin": {