Steve Yegge
2c6c7f36f3
chore: update beads.jsonl
2025-11-20 19:01:30 -05:00
Steve Yegge
6a25f5eaa6
fix: resolve remaining hyphenated ID issues in memory store and doctor
2025-11-20 19:01:30 -05:00
Steve Yegge
7b865eb541
Remove legacy issues.jsonl and update defaults to beads.jsonl
...
Amp-Thread-ID: https://ampcode.com/threads/T-ae11b392-24b5-4060-b431-606dd81c1763
Co-authored-by: Amp <amp@ampcode.com >
2025-11-20 19:00:36 -05:00
Steve Yegge
f3a678fc9d
Fix MCP schema generation recursion bug (GH#346)
...
Co-authored-by: Amp <amp@ampcode.com >
Amp-Thread-ID: https://ampcode.com/threads/T-c992b759-8dac-467d-b87c-5633ae29aef8
2025-11-20 18:57:19 -05:00
Steve Yegge
4560f55795
bd sync: 2025-11-20 14:25:18
2025-11-20 14:25:18 -05:00
Steve Yegge
6a562d53fa
Merge remote-tracking branch 'origin/main'
...
Amp-Thread-ID: https://ampcode.com/threads/T-aa765a68-5cc4-465b-a2f6-aa008933c11e
Co-authored-by: Amp <amp@ampcode.com >
2025-11-20 14:21:06 -05:00
Steve Yegge
7665ff0763
Merge branch 'fix-issue-325' into main
...
Amp-Thread-ID: https://ampcode.com/threads/T-aa765a68-5cc4-465b-a2f6-aa008933c11e
Co-authored-by: Amp <amp@ampcode.com >
2025-11-20 14:20:45 -05:00
Steve Yegge
49a42a5e3a
bd sync: 2025-11-20 12:47:14
2025-11-20 12:47:14 -05:00
Steve Yegge
4031e88cd5
Merge remote-tracking branch 'origin/main'
2025-11-20 12:40:51 -05:00
Steve Yegge
09666b4219
Fix FOREIGN KEY constraint failed when operating on non-existent issues
...
Fixes #325
- Fix CloseIssue to check rows affected before inserting event
- Fix RemoveLabel to check rows affected before inserting event
- Fix UpdateIssueID to check rows affected before inserting event
- Prevent orphan events and confusing error messages
Amp-Thread-ID: https://ampcode.com/threads/T-aa765a68-5cc4-465b-a2f6-aa008933c11e
Co-authored-by: Amp <amp@ampcode.com >
2025-11-20 12:35:26 -05:00
Steve Yegge
fcf37bae63
Update beads.jsonl after merge
2025-11-20 12:35:10 -05:00
Steve Yegge
e5428abbb7
Merge branch 'main' into fix-monitor
...
Amp-Thread-ID: https://ampcode.com/threads/T-7bbd9558-2eb4-483a-bf7b-c61ea9c22092
Co-authored-by: Amp <amp@ampcode.com >
2025-11-20 12:34:30 -05:00
Steve Yegge
20ffe60316
Merge origin/main
2025-11-20 12:27:47 -05:00
Steve Yegge
800b0c3fca
Update bd JSONL
2025-11-20 12:17:02 -05:00
Steve Yegge
a5b7c51590
Update beads issues
2025-11-20 12:16:27 -05:00
Ryan
fb65163692
fix: address critical resource leaks and error handling issues ( #327 )
...
* fix: address critical resource leaks and error handling issues
Fixes 5 critical and high-priority issues identified in codebase analysis:
1. bd-vavh: Fix row iterator resource leak in recursive dependency queries
- Move defer rows.Close() to execute on all code paths
- Previously leaked connections on scan errors
- Location: internal/storage/sqlite/sqlite.go:1121-1145
2. bd-qhws: Configure database connection pool limits for daemon mode
- Set MaxOpenConns to runtime.NumCPU() + 1 for file-based databases
- Prevents connection exhaustion under concurrent RPC load
- Only affects daemon mode (long-running server)
- Location: internal/storage/sqlite/sqlite.go:108-125
3. bd-jo38: Add WaitGroup tracking to FileWatcher goroutines
- Track goroutines with sync.WaitGroup for graceful shutdown
- Wait for goroutines to finish before cleanup in Close()
- Prevents race condition on debouncer access during shutdown
- Location: cmd/bd/daemon_watcher.go (Start, startPolling, Close)
4. bd-2d5r: Fix silent error handling in RPC response writing
- writeResponse now returns errors instead of ignoring them
- Prevents sending partial JSON and client hangs
- Closes connection on marshal/write errors
- Location: internal/rpc/server_lifecycle_conn.go:227-246
5. bd-zqmb: Fix goroutine leak in daemon restart
- Add 10-second timeout to daemon Wait() goroutine
- Kill process if it doesn't fork within timeout
- Prevents goroutine accumulation on restart failures
- Location: cmd/bd/daemons.go:250-268
All changes follow Go best practices and maintain backward compatibility.
* Add feature request for .beads/README.md generation during init
Created bd-m7ge to automatically generate a promotional/documentation
README in the .beads directory when running 'bd init'. This will help
advertise Beads in open source repositories and provide quick reference
documentation for developers using AI coding agents.
The README will include:
- Brief explanation of Beads (AI-native issue tracking)
- Link to steveyegge/beads repository
- Quick reference of essential commands
- Compelling messaging to encourage adoption
2025-11-20 08:13:06 -08:00
Matt Wilkie
ca52600d7e
bd sync: 2025-11-19 15:01:56
2025-11-19 15:01:56 -07:00
Matt Wilkie
2682fc7003
add panic func in case of early exit
...
During 1st test monitor quit early with no error. Subsequent runs were fine. Added this func to give a wee bit of feedback for next time.
2025-11-19 14:44:26 -07:00
Matt Wilkie
4ba610dbae
bd sync: 2025-11-19 09:48:30
2025-11-19 09:48:30 -07:00
Codex Agent
4cd26c8e5a
Fix Windows concurrent issue creation
2025-11-17 10:41:05 -07:00
Codex Agent
7b63b5a30b
Fix CI regressions and stabilize tests
2025-11-17 10:06:35 -07:00
matt wilkie
6d390f7728
Merge branch 'main' into show-rev-in-dev
...
# Conflicts:
# .beads/beads.jsonl
2025-11-16 15:50:09 -07:00
Steve Yegge
42233073bc
Update bd JSONL after closing 8-char hash issues
...
Amp-Thread-ID: https://ampcode.com/threads/T-5358ea57-e9ea-49e9-aedf-7044ebf8b52a
Co-authored-by: Amp <amp@ampcode.com >
2025-11-15 14:14:06 -08:00
Steve Yegge
33b913f3dd
bd sync: 2025-11-15 14:13:53
2025-11-15 14:13:53 -08:00
Steve Yegge
3c9cf957ad
Update bd JSONL
...
Amp-Thread-ID: https://ampcode.com/threads/T-5358ea57-e9ea-49e9-aedf-7044ebf8b52a
Co-authored-by: Amp <amp@ampcode.com >
2025-11-15 14:08:03 -08:00
Steve Yegge
59e635dbc7
bd sync: 2025-11-15 14:07:55
2025-11-15 14:07:55 -08:00
Steve Yegge
1c2e88c621
bd sync: 2025-11-15 13:19:53
2025-11-15 13:19:53 -08:00
Steve Yegge
6f7e7fa930
Fix lint errors: handle error return values
2025-11-15 12:52:34 -08:00
Steve Yegge
944ed1033d
Fix bd-yvlc: in-memory database deadlock in migrations
...
- Force single connection for all in-memory databases (including file::memory:)
- Close rows before executing statements in external_ref migration
- Prevents connection pool deadlock with MaxOpenConns(1)
- Fixes test failures in syncbranch_test.go
2025-11-15 12:42:02 -08:00
Steve Yegge
38792964a4
bd sync: 2025-11-12 12:46:43
2025-11-12 12:46:43 -08:00
Steve Yegge
f4a2f87aff
Fix #274 : Add automatic .beads/.gitignore upgrade ( #300 )
...
* Fix #274 : Add automatic .beads/.gitignore upgrade
Implements three mechanisms to ensure users get updated gitignore:
1. bd doctor --fix: Manually upgrade gitignore
2. Daemon auto-upgrade: Upgrades on startup if outdated
3. bd init idempotent: Safe to re-run, always updates gitignore
The gitignore template now lives in cmd/bd/doctor/gitignore.go
for consistent updates across all three mechanisms.
Fixes : #274
* Remove test binary
Amp-Thread-ID: https://ampcode.com/threads/T-7042cfcc-ac97-43d7-a40f-3fa1bb4e1c2b
Co-authored-by: Amp <amp@ampcode.com >
* Fix critical issues: remove merge artifact and apply gitignore template
- Remove .beads/beads.left.jsonl (merge artifact that shouldn't be committed)
- Apply new gitignore template to .beads/.gitignore (was missing patterns)
Amp-Thread-ID: https://ampcode.com/threads/T-7042cfcc-ac97-43d7-a40f-3fa1bb4e1c2b
Co-authored-by: Amp <amp@ampcode.com >
* bd sync: 2025-11-12 11:09:30
* Retrigger CI
Amp-Thread-ID: https://ampcode.com/threads/T-8d532264-6d5e-4b68-88e9-e4511851b64a
Co-authored-by: Amp <amp@ampcode.com >
* Fix duplicate DoctorCheck type definition
* Trigger CI after fixing type conflict
Amp-Thread-ID: https://ampcode.com/threads/T-8d532264-6d5e-4b68-88e9-e4511851b64a
Co-authored-by: Amp <amp@ampcode.com >
---------
Co-authored-by: Amp <amp@ampcode.com >
2025-11-12 12:46:27 -08:00
Codex Agent
70c36f8a4d
update beads db
2025-11-12 13:23:11 -07:00
Ryan
f7e80dd80c
feat: add context optimization features for AI agents ( #297 )
...
* feat: add bd prime and setup commands for AI agent integration
This commit consolidates context optimization features for AI agents:
## New Commands
**bd prime** - AI-optimized workflow context injection
- Outputs ~1-2k tokens of workflow context
- Context-aware: adapts to MCP vs CLI mode
- MCP mode: minimal reminders (~500 tokens)
- CLI mode: full command reference (~1-2k tokens)
- Warns against TodoWrite tool and markdown TODOs
- Designed for SessionStart/PreCompact hooks
**bd setup claude** - Claude Code integration installer
- Installs hooks via JSON configuration (not file scripts)
- Supports --project for project-only installation
- Supports --check to verify installation
- Supports --remove to uninstall hooks
- Idempotent (safe to run multiple times)
- Merges with existing settings
**bd setup cursor** - Cursor IDE integration installer
- Creates .cursor/rules/beads.mdc with workflow rules
- Simplified implementation (just overwrites file)
## bd doctor Enhancements
- New: CheckClaude() verifies Claude Code integration
- Detects plugin, MCP server, and hooks installation
- Provides actionable fix suggestions
- Extracted legacy pattern detection to doctor/legacy.go
- Detects JSONL-only mode and warns about legacy issues.jsonl
## Core Improvements
- FindBeadsDir() utility for cross-platform .beads/ discovery
- Works in JSONL-only mode (no database required)
- Sorted noDbCommands alphabetically (one per line for easy diffs)
## Testing
- Unit tests for setup command hook manipulation
- Tests for idempotency, adding/removing hooks
- All tests passing
## Documentation
- cmd/bd/doctor/claude.md - Documents why beads doesn't use Claude Skills
- commands/prime.md - Slash command for bd prime
- Fixed G304 gosec warnings with nosec comments
## Token Efficiency
The bd prime approach reduces AI context usage dramatically:
- MCP mode: ~500 tokens (vs ~10.5k for full MCP tool scan)
- CLI mode: ~1-2k tokens
- 80-99% reduction in standing context overhead
* fix: resolve linting errors in setup utils and remove obsolete test
- Add error check for tmpFile.Close() in setup/utils.go to fix golangci-lint G104
- Remove TestCheckMultipleJSONLFiles test that referenced deleted checkMultipleJSONLFiles function
Fixes golangci-lint errcheck violations introduced in the bd prime/setup feature.
2025-11-12 10:48:36 -08:00
Steve Yegge
6422d4fc6b
Update bd JSONL
2025-11-10 10:50:54 -08:00
Steve Yegge
811eb46b03
Merge remote changes
...
Amp-Thread-ID: https://ampcode.com/threads/T-87e6732c-f7bf-4e8d-9ebc-f778ac6f0c40
Co-authored-by: Amp <amp@ampcode.com >
2025-11-10 10:21:46 -08:00
Steve Yegge
6d1c594c82
bd sync: 2025-11-10 10:21:27
2025-11-10 10:21:27 -08:00
Steve Yegge
b49f9b730e
File bd-77gm: Import command reports misleading count
...
Misleading '0 created, 0 updated' message when actually importing
all issues on fresh database. Discovered during VC database sync.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-09 16:26:35 -08:00
Steve Yegge
deaa463d29
Update bd JSONL
...
Amp-Thread-ID: https://ampcode.com/threads/T-5dad0ca8-ac77-4ae0-8de6-208b23ea47af
Co-authored-by: Amp <amp@ampcode.com >
2025-11-09 16:17:08 -08:00
Steve Yegge
4de9f015d6
Support local-only git repos without remote origin (bd-biwp)
...
- Add hasGitRemote() helper to detect if any remote exists
- Gracefully skip git pull/push when no remote configured
- Daemon now works in local-only mode (RPC, auto-flush, JSONL export)
- Add comprehensive test coverage for local-only workflows
- Fixes GH#279: daemon crash on repos without origin remote
Amp-Thread-ID: https://ampcode.com/threads/T-5dad0ca8-ac77-4ae0-8de6-208b23ea47af
Co-authored-by: Amp <amp@ampcode.com >
2025-11-09 16:16:45 -08:00
Steve Yegge
83472aca3d
bd sync: 2025-11-09 14:53:59
2025-11-09 14:53:59 -08:00
Steve Yegge
d482d9ea6e
bd sync: 2025-11-09 14:13:48
2025-11-09 14:13:48 -08:00
Steve Yegge
052255a2e8
bd sync: 2025-11-09 12:55:37
2025-11-09 12:55:37 -08:00
Steve Yegge
b56527d101
Use -short flag in release.sh to avoid test deadlock (bd-82dv)
2025-11-08 22:58:43 -08:00
Steve Yegge
98f2e85618
Fix version test error message assertion
2025-11-08 22:57:49 -08:00
Steve Yegge
05b9fb4808
Close bd-auf1
2025-11-08 22:48:20 -08:00
Steve Yegge
f015f45419
bd sync: 2025-11-08 22:47:57
2025-11-08 22:47:57 -08:00
Steve Yegge
0ecf94143c
bd sync: 2025-11-08 22:42:14
2025-11-08 22:42:14 -08:00
Steve Yegge
75d91c665f
bd sync: Close bd-6221bdcd
2025-11-08 22:41:27 -08:00
Steve Yegge
7d17ad5d77
bd sync: 2025-11-08 19:33:18
2025-11-08 19:33:34 -08:00
Steve Yegge
4fd9e1c9cc
Add Go agent example with Agent Mail support
...
Amp-Thread-ID: https://ampcode.com/threads/T-b50a2f5e-cad0-43f0-b3ec-afe9bd5fa654
Co-authored-by: Amp <amp@ampcode.com >
2025-11-08 19:33:33 -08:00