Merge branch 'main' of github.com:steveyegge/beads
# Conflicts: # .beads/beads.jsonl
This commit is contained in:
File diff suppressed because one or more lines are too long
@@ -9,7 +9,7 @@
|
||||
"name": "beads",
|
||||
"source": "./",
|
||||
"description": "AI-supervised issue tracker for coding workflows",
|
||||
"version": "0.21.3"
|
||||
"version": "0.21.4"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -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.21.3",
|
||||
"version": "0.21.4",
|
||||
"author": {
|
||||
"name": "Steve Yegge",
|
||||
"url": "https://github.com/steveyegge"
|
||||
|
||||
60
CHANGELOG.md
60
CHANGELOG.md
@@ -7,6 +7,66 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [0.21.4] - 2025-11-02
|
||||
|
||||
### Added
|
||||
|
||||
- **New Commands**:
|
||||
- `bd status` - Database overview command showing issue counts and stats (bd-28db)
|
||||
- `bd comment` - Convenient alias for `bd comments add` (bd-d3f0)
|
||||
- `bd daemons restart` - Restart specific daemon without manual kill/start
|
||||
- `--json` flag for `bd stale` command
|
||||
|
||||
- **Protected Branch Workflow**:
|
||||
- `BEADS_DIR` environment variable for custom database location (bd-e16b)
|
||||
- `sync.branch` configuration for protected branch workflows (bd-b7d2)
|
||||
- Git worktree management with sparse checkout for sync branches (bd-a4b5)
|
||||
- Only checks out `.beads/` in worktrees, minimal disk usage
|
||||
- Only used when `sync.branch` is configured, not for default users
|
||||
- Comprehensive protected branch documentation
|
||||
|
||||
- **Migration & Validation**:
|
||||
- Migration inspection tools for AI agents (bd-627d)
|
||||
- Conflict marker detection in `bd import` and `bd validate`
|
||||
- Git hooks health check in `bd doctor`
|
||||
- External reference (`external_ref`) UNIQUE constraint and validation
|
||||
- `external_ref` now primary matching key for import updates (bd-1022)
|
||||
|
||||
### Fixed
|
||||
|
||||
- **Critical Fixes**:
|
||||
- Daemon corruption from git conflicts (bd-8931)
|
||||
- MCP `set_context` hangs with stdio transport (GH #153)
|
||||
- Double-release race condition in `importInProgress` flag
|
||||
- Critical daemon race condition causing stale exports
|
||||
|
||||
- **Configuration & Migration**:
|
||||
- `bd migrate` now detects and sets missing `issue_prefix` config
|
||||
- Config system refactored (renamed `config.json` → `metadata.json`)
|
||||
- Config version update in migrate command
|
||||
|
||||
- **Daemon & RPC**:
|
||||
- `bd doctor --json` flag not working (bd-6049)
|
||||
- `bd import` now flushes JSONL immediately for daemon visibility (bd-47f1)
|
||||
- Panic recovery in RPC `handleConnection` (bd-1048)
|
||||
- Daemon auto-upgrades database version instead of exiting
|
||||
|
||||
- **Windows Compatibility**:
|
||||
- Windows test failures (path handling, bd binary references)
|
||||
- Windows CI: forward slashes in git hook shell scripts
|
||||
- TestMetricsSnapshot/uptime flakiness on Windows
|
||||
|
||||
- **Code Quality**:
|
||||
- All golangci-lint errors fixed - linter now passes cleanly
|
||||
- All gosec, misspell, and unparam linter warnings resolved
|
||||
- Tightened file permissions and added security exclusions
|
||||
|
||||
### Changed
|
||||
|
||||
- Daemon automatically upgrades database schema version instead of exiting
|
||||
- Git worktree management for sync branches uses sparse checkout (`.beads/` only)
|
||||
- Improved test isolation and performance optimization
|
||||
|
||||
## [0.21.2] - 2025-11-01
|
||||
|
||||
### Changed
|
||||
|
||||
@@ -5,21 +5,21 @@
|
||||
class Bd < Formula
|
||||
desc "AI-supervised issue tracker for coding workflows"
|
||||
homepage "https://github.com/steveyegge/beads"
|
||||
version "0.21.2"
|
||||
version "0.21.4"
|
||||
license "MIT"
|
||||
|
||||
on_macos do
|
||||
if Hardware::CPU.intel?
|
||||
url "https://github.com/steveyegge/beads/releases/download/v0.21.2/beads_0.21.2_darwin_amd64.tar.gz"
|
||||
sha256 "c877171d54fa0270601cd48a817f8acdc3b8b091afdc5997b3aa0aa61e82b1df"
|
||||
url "https://github.com/steveyegge/beads/releases/download/v0.21.4/beads_0.21.4_darwin_amd64.tar.gz"
|
||||
sha256 "c9a922de032f1861fe928f5a817da76b18718f6a30fd36fa2f1d8845d637d2ce"
|
||||
|
||||
def install
|
||||
bin.install "bd"
|
||||
end
|
||||
end
|
||||
if Hardware::CPU.arm?
|
||||
url "https://github.com/steveyegge/beads/releases/download/v0.21.2/beads_0.21.2_darwin_arm64.tar.gz"
|
||||
sha256 "ef06c2f8dcd72424563ab6661bba01d0493f87a74f616303b44064609d4b28ff"
|
||||
url "https://github.com/steveyegge/beads/releases/download/v0.21.4/beads_0.21.4_darwin_arm64.tar.gz"
|
||||
sha256 "b04a9ac371fbeb3d18817b18f0c0a04665cb8ae24c79c8891ca3ed477ac444ce"
|
||||
|
||||
def install
|
||||
bin.install "bd"
|
||||
@@ -29,15 +29,15 @@ class Bd < Formula
|
||||
|
||||
on_linux do
|
||||
if Hardware::CPU.intel? && Hardware::CPU.is_64_bit?
|
||||
url "https://github.com/steveyegge/beads/releases/download/v0.21.2/beads_0.21.2_linux_amd64.tar.gz"
|
||||
sha256 "1ede94b38f6f3ec5bc50b507c5491a9a508c0c88ca3299c2daed964a4816da1b"
|
||||
url "https://github.com/steveyegge/beads/releases/download/v0.21.4/beads_0.21.4_linux_amd64.tar.gz"
|
||||
sha256 "edc9a3262c0edc0f4e9a05f1fcd86d612be1434af4a38a5563879d3a54b125f8"
|
||||
def install
|
||||
bin.install "bd"
|
||||
end
|
||||
end
|
||||
if Hardware::CPU.arm? && Hardware::CPU.is_64_bit?
|
||||
url "https://github.com/steveyegge/beads/releases/download/v0.21.2/beads_0.21.2_linux_arm64.tar.gz"
|
||||
sha256 "4eaee34c8adb38707f9b82a4b52530d17582fff3b9892377afa448272e5a8d73"
|
||||
url "https://github.com/steveyegge/beads/releases/download/v0.21.4/beads_0.21.4_linux_arm64.tar.gz"
|
||||
sha256 "a0bcd71c6f00ce7149123bd6e60a755f4b8bb4f2b3ce7eeacbe37afb00b846ad"
|
||||
def install
|
||||
bin.install "bd"
|
||||
end
|
||||
|
||||
@@ -29,6 +29,37 @@ export PATH="$PATH:$(go env GOPATH)/bin"
|
||||
go install github.com/steveyegge/beads/cmd/bd@latest
|
||||
```
|
||||
|
||||
### Wrong version of bd running / Multiple bd binaries in PATH
|
||||
|
||||
If `bd version` shows an unexpected version (e.g., older than what you just installed), you likely have multiple `bd` binaries in your PATH.
|
||||
|
||||
**Diagnosis:**
|
||||
```bash
|
||||
# Check all bd binaries in PATH
|
||||
which -a bd
|
||||
|
||||
# Example output showing conflict:
|
||||
# /Users/you/go/bin/bd <- From go install (older)
|
||||
# /opt/homebrew/bin/bd <- From Homebrew (newer)
|
||||
```
|
||||
|
||||
**Solution:**
|
||||
```bash
|
||||
# Remove old go install version
|
||||
rm ~/go/bin/bd
|
||||
|
||||
# Or remove mise-managed Go installs
|
||||
rm ~/.local/share/mise/installs/go/*/bin/bd
|
||||
|
||||
# Verify you're using the correct version
|
||||
which bd # Should show /opt/homebrew/bin/bd or your package manager path
|
||||
bd version # Should show the expected version
|
||||
```
|
||||
|
||||
**Why this happens:** If you previously installed bd via `go install`, the binary was placed in `~/go/bin/`. When you later install via Homebrew or another package manager, the old `~/go/bin/bd` may appear earlier in your PATH, causing the wrong version to run.
|
||||
|
||||
**Recommendation:** Choose one installation method (Homebrew recommended) and stick with it. Avoid mixing `go install` with package managers.
|
||||
|
||||
### `zsh: killed bd` or crashes on macOS
|
||||
|
||||
Some users report crashes when running `bd init` or other commands on macOS. This is typically caused by CGO/SQLite compatibility issues.
|
||||
|
||||
@@ -100,5 +100,6 @@ func init() {
|
||||
staleCmd.Flags().IntP("days", "d", 30, "Issues not updated in this many days")
|
||||
staleCmd.Flags().StringP("status", "s", "", "Filter by status (open|in_progress|blocked)")
|
||||
staleCmd.Flags().IntP("limit", "n", 50, "Maximum issues to show")
|
||||
staleCmd.Flags().BoolVar(&jsonOutput, "json", false, "Output JSON format")
|
||||
rootCmd.AddCommand(staleCmd)
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ import (
|
||||
|
||||
var (
|
||||
// Version is the current version of bd (overridden by ldflags at build time)
|
||||
Version = "0.21.3"
|
||||
Version = "0.21.4"
|
||||
// Build can be set via ldflags at compile time
|
||||
Build = "dev"
|
||||
)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[project]
|
||||
name = "beads-mcp"
|
||||
version = "0.21.3"
|
||||
version = "0.21.4"
|
||||
description = "MCP server for beads issue tracker."
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.10"
|
||||
|
||||
@@ -4,4 +4,4 @@ This package provides an MCP (Model Context Protocol) server that exposes
|
||||
beads (bd) issue tracker functionality to MCP Clients.
|
||||
"""
|
||||
|
||||
__version__ = "0.21.3"
|
||||
__version__ = "0.21.4"
|
||||
|
||||
Reference in New Issue
Block a user