bd daemon sync: 2026-01-11 18:17:47

This commit is contained in:
beads/refinery
2026-01-11 18:17:47 -08:00
committed by Steve Yegge
parent e08910123c
commit 9c0a8ece52

View File

@@ -816,8 +816,8 @@
{"id":"bd-beads-crew-dave","title":"Crew worker dave in beads - human-managed persistent workspace.","description":"Crew worker dave in beads - human-managed persistent workspace.\n\nrole_type: crew\nrig: beads\nagent_state: idle\nhook_bead: null\nrole_bead: gt-crew-role\ncleanup_status: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-30T23:14:04.538389-08:00","created_by":"deacon","updated_at":"2026-01-11T18:17:43.565846-08:00"}
{"id":"bd-beads-crew-emma","title":"Crew worker emma in beads - human-managed persistent workspace.","description":"Crew worker emma in beads - human-managed persistent workspace.\n\nrole_type: crew\nrig: beads\nagent_state: idle\nhook_bead: null\nrole_bead: gt-crew-role\ncleanup_status: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-30T23:14:04.604042-08:00","created_by":"deacon","updated_at":"2026-01-06T23:51:55.013518-08:00"}
{"id":"bd-beads-crew-fang","title":"Crew worker fang in beads - human-managed persistent workspace.","description":"Crew worker fang in beads - human-managed persistent workspace.\n\nrole_type: crew\nrig: beads\nagent_state: idle\nhook_bead: null\nrole_bead: gt-crew-role\ncleanup_status: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-30T23:14:04.672037-08:00","created_by":"deacon","updated_at":"2026-01-11T18:09:25.79245-08:00"}
{"id":"bd-beads-crew-giles","title":"Crew worker giles in beads - human-managed persistent workspace.","description":"Crew worker giles in beads - human-managed persistent workspace.\n\nrole_type: crew\nrig: beads\nagent_state: idle\nhook_bead: null\nrole_bead: gt-crew-role\ncleanup_status: null\nactive_mr: null\nnotification_level: null","status":"open","priority":2,"issue_type":"agent","created_at":"2026-01-04T11:22:11.009942-08:00","created_by":"mayor","updated_at":"2026-01-11T18:14:48.452835-08:00"}
{"id":"bd-beads-crew-grip","title":"Crew worker grip in beads - human-managed persistent workspace.","description":"Crew worker grip in beads - human-managed persistent workspace.\n\nrole_type: crew\nrig: beads\nagent_state: idle\nhook_bead: null\nrole_bead: gt-crew-role\ncleanup_status: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-30T23:14:04.739788-08:00","created_by":"deacon","updated_at":"2026-01-11T18:14:50.872523-08:00"}
{"id":"bd-beads-crew-giles","title":"Crew worker giles in beads - human-managed persistent workspace.","description":"Crew worker giles in beads - human-managed persistent workspace.\n\nrole_type: crew\nrig: beads\nagent_state: idle\nhook_bead: null\nrole_bead: gt-crew-role\ncleanup_status: null\nactive_mr: null\nnotification_level: null","status":"open","priority":2,"issue_type":"agent","created_at":"2026-01-04T11:22:11.009942-08:00","created_by":"mayor","updated_at":"2026-01-11T18:17:46.971272-08:00"}
{"id":"bd-beads-crew-grip","title":"Crew worker grip in beads - human-managed persistent workspace.","description":"Crew worker grip in beads - human-managed persistent workspace.\n\nrole_type: crew\nrig: beads\nagent_state: idle\nhook_bead: null\nrole_bead: gt-crew-role\ncleanup_status: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-30T23:14:04.739788-08:00","created_by":"deacon","updated_at":"2026-01-11T18:17:46.652644-08:00"}
{"id":"bd-beads-crew-testcrew456","title":"Crew worker testcrew456 in beads - human-managed persistent workspace.","description":"Crew worker testcrew456 in beads - human-managed persistent workspace.\n\nrole_type: crew\nrig: beads\nagent_state: idle\nhook_bead: null\nrole_bead: hq-crew-role\ncleanup_status: null\nactive_mr: null\nnotification_level: null","status":"open","priority":2,"issue_type":"agent","created_at":"2026-01-09T22:03:44.377795-08:00","created_by":"deacon","updated_at":"2026-01-09T22:03:44.639847-08:00"}
{"id":"bd-beads-crew-wolf","title":"Crew worker wolf in beads - human-managed persistent workspace.","description":"Crew worker wolf in beads - human-managed persistent workspace.\n\nrole_type: crew\nrig: beads\nagent_state: idle\nhook_bead: null\nrole_bead: gt-crew-role\ncleanup_status: null","status":"open","priority":2,"issue_type":"agent","created_at":"2025-12-30T23:14:04.805884-08:00","created_by":"deacon","updated_at":"2026-01-11T18:14:57.509602-08:00"}
{"id":"bd-beads-polecat-amber","title":"bd-beads-polecat-amber","description":"bd-beads-polecat-amber\n\nrole_type: polecat\nrig: beads\nagent_state: spawning\nhook_bead: bd-uuo9\nrole_bead: hq-polecat-role\ncleanup_status: has_stash\nactive_mr: bd-3mky\nnotification_level: null","status":"closed","priority":2,"issue_type":"agent","created_at":"2026-01-04T16:17:26.278115-08:00","created_by":"mayor","updated_at":"2026-01-10T16:38:00.102831-08:00","closed_at":"2026-01-05T19:45:45.481449-08:00","close_reason":"Polecat cleaned up","labels":["gt:agent"]}
@@ -1024,7 +1024,7 @@
{"id":"bd-e1085716","title":"bd validate - Comprehensive health check","description":"Run all validation checks in one command.\n\nChecks:\n- Duplicates\n- Orphaned dependencies\n- Test pollution\n- Git conflicts\n\nSupports --fix-all for auto-repair.\n\nDepends on bd-cbed9619.1, bd-0dcea000, bd-31aab707, bd-9826b69a.\n\nFiles: cmd/bd/validate.go (new)","status":"tombstone","priority":1,"issue_type":"task","created_at":"2025-10-29T23:05:13.980679-07:00","updated_at":"2025-12-25T01:21:01.952723-08:00","deleted_at":"2025-12-25T01:21:01.952723-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"}
{"id":"bd-e166","title":"Improve timestamp comparison readability in import","description":"The timestamp comparison logic uses double-negative which can be confusing:\n\nCurrent code:\nif !incoming.UpdatedAt.After(existing.UpdatedAt) {\n // skip update\n}\n\nMore readable:\nif incoming.UpdatedAt.After(existing.UpdatedAt) {\n // perform update\n} else {\n // skip (local is newer)\n}\n\nThis is a minor refactor for code clarity.\n\nRelated: bd-1022\nFiles: internal/importer/importer.go:411, 488","status":"closed","priority":4,"issue_type":"chore","created_at":"2025-11-02T15:32:12.27108-08:00","updated_at":"2025-12-09T18:38:37.688877572-05:00","closed_at":"2025-11-26T22:25:27.124071-08:00"}
{"id":"bd-e16b","title":"Replace BEADS_DB with BEADS_DIR environment variable","description":"Implement BEADS_DIR as a replacement for BEADS_DB to point to the .beads directory instead of the database file directly.\n\nRationale:\n- With --no-db mode, there's no .db file to point to\n- The .beads directory is the logical unit (contains config.yaml, db files, jsonl files)\n- More intuitive: point to the beads directory not the database file\n\nImplementation:\n1. Add BEADS_DIR environment variable support\n2. Maintain backward compatibility with BEADS_DB\n3. Priority order: BEADS_DIR \u003e BEADS_DB \u003e auto-discovery\n4. If BEADS_DIR is set, look for config.yaml in that directory to find actual database path\n5. Update documentation and migration guide\n\nFiles to modify:\n- beads.go (FindDatabasePath function)\n- cmd/bd/main.go (initialization)\n- Documentation (CLI_REFERENCE.md, TROUBLESHOOTING.md, etc.)\n- MCP integration (integrations/beads-mcp/src/beads_mcp/config.py)\n\nTesting:\n- Ensure BEADS_DB still works (backward compatibility)\n- Test BEADS_DIR with both db and --no-db modes\n- Test priority order when both are set\n- Update integration tests\n\nRelated to GitHub issue #179","status":"closed","priority":2,"issue_type":"feature","created_at":"2025-11-02T18:19:26.131948-08:00","updated_at":"2025-11-02T18:27:14.545162-08:00","closed_at":"2025-11-02T18:27:14.545162-08:00"}
{"id":"bd-e1bp5","title":"Review \u0026 merge PR #1013: Hyphenated prefix support","description":"## PR Review Task\n\n**PR:** https://github.com/steveyegge/beads/pull/1013\n**Author:** sukhodolin\n\n## Summary\nFix ValidateIDFormat to support hyphenated prefixes (e.g., 'bead-me-up-3e9').\n\n## Changes\n- internal/validation/bead.go: Use utils.ExtractIssuePrefix instead of naive first-hyphen split\n- internal/validation/bead_test.go: Add comprehensive test cases\n\n## The Bug\nBefore: 'bead-me-up-3e9' → prefix 'bead' (wrong)\nAfter: 'bead-me-up-3e9' → prefix 'bead-me-up' (correct)\n\nThis fixes `bd create --parent` failing for projects with hyphenated prefixes.\n\n## Review Checklist\n1. Pull branch locally: `gh pr checkout 1013 --repo steveyegge/beads`\n2. Run tests: `go test ./internal/validation/...`\n3. Verify all new test cases pass\n4. If all good, merge: `gh pr merge 1013 --repo steveyegge/beads --squash`\n\n## Classification\nEasy-win: Bug fix using existing utility, excellent test coverage.","status":"open","priority":2,"issue_type":"task","owner":"steve.yegge@gmail.com","created_at":"2026-01-11T18:17:33.24321-08:00","created_by":"beads/crew/emma","updated_at":"2026-01-11T18:17:33.24321-08:00"}
{"id":"bd-e1bp5","title":"Review \u0026 merge PR #1013: Hyphenated prefix support","description":"dispatched_by: beads/crew/emma\n\n## PR Review Task\n\n**PR:** https://github.com/steveyegge/beads/pull/1013\n**Author:** sukhodolin\n\n## Summary\nFix ValidateIDFormat to support hyphenated prefixes (e.g., 'bead-me-up-3e9').\n\n## Changes\n- internal/validation/bead.go: Use utils.ExtractIssuePrefix instead of naive first-hyphen split\n- internal/validation/bead_test.go: Add comprehensive test cases\n\n## The Bug\nBefore: 'bead-me-up-3e9' → prefix 'bead' (wrong)\nAfter: 'bead-me-up-3e9' → prefix 'bead-me-up' (correct)\n\nThis fixes `bd create --parent` failing for projects with hyphenated prefixes.\n\n## Review Checklist\n1. Pull branch locally: `gh pr checkout 1013 --repo steveyegge/beads`\n2. Run tests: `go test ./internal/validation/...`\n3. Verify all new test cases pass\n4. If all good, merge: `gh pr merge 1013 --repo steveyegge/beads --squash`\n\n## Classification\nEasy-win: Bug fix using existing utility, excellent test coverage.","status":"hooked","priority":2,"issue_type":"task","assignee":"beads/crew/giles","owner":"steve.yegge@gmail.com","created_at":"2026-01-11T18:17:33.24321-08:00","created_by":"beads/crew/emma","updated_at":"2026-01-11T18:17:47.082466-08:00"}
{"id":"bd-e1d645e8","title":"Rapid 4","status":"closed","priority":3,"issue_type":"task","created_at":"2025-10-29T19:11:57.484329-07:00","updated_at":"2025-12-14T12:12:46.554853-08:00","closed_at":"2025-11-07T23:18:52.316948-08:00"}
{"id":"bd-e2e6","title":"Implement postinstall script for binary download","description":"Create npm/scripts/postinstall.js that downloads platform-specific binaries:\n\n## Platform detection\n- Detect os.platform() and os.arch()\n- Map to GitHub release asset names:\n - linux-amd64 → bd-linux-amd64\n - linux-arm64 → bd-linux-arm64\n - darwin-amd64 → bd-darwin-amd64\n - darwin-arm64 → bd-darwin-arm64\n - win32-x64 → bd-windows-amd64.exe\n\n## Download logic\n- Fetch from GitHub releases: https://github.com/steveyegge/beads/releases/latest/download/${asset}\n- Save to npm/bin/bd (or bd.exe on Windows)\n- Set executable permissions (chmod +x)\n- Handle errors gracefully with helpful messages\n\n## Error handling\n- Check for unsupported platforms\n- Retry on network failures\n- Provide manual download instructions if automated fails\n- Skip download if binary already exists (for local development)","status":"closed","priority":1,"issue_type":"task","created_at":"2025-11-02T23:39:56.652829-08:00","updated_at":"2025-11-03T10:31:45.382215-08:00","closed_at":"2025-11-03T10:31:45.382215-08:00","dependencies":[{"issue_id":"bd-e2e6","depends_on_id":"bd-febc","type":"parent-child","created_at":"2025-11-02T23:40:32.94671-08:00","created_by":"daemon"}]}
{"id":"bd-e2q9","title":"bd sync fails when run from directory with beads redirect","description":"\n## Bug\n\n`bd sync` fails with 'git status failed in worktree: exit status 128' when run from a directory that uses a beads redirect (e.g., crew/gus/.beads/redirect pointing to mayor/rig/.beads).\n\n## Reproduction\n\n1. Be in gastown/crew/gus (has .beads/redirect → ../../mayor/rig/.beads)\n2. Run `bd sync`\n3. Error: 'git status failed in worktree: exit status 128'\n\n## Workaround\n\nRun `bd sync` from the actual beads location:\n```bash\ncd /Users/stevey/gt/gastown/mayor/rig \u0026\u0026 bd sync\n```\n\n## Root Cause\n\nThe worktree path resolution in `getBeadsWorktreePath()` likely uses the crew/gus repo root instead of following the redirect to mayor/rig. The git worktree for beads-sync is in mayor/rig/.git/beads-worktrees/, not crew/gus/.git/beads-worktrees/.\n\n## Impact\n\nCrew workers with redirected beads cannot sync directly from their workspace.\n","status":"closed","priority":1,"issue_type":"bug","created_at":"2025-12-31T11:58:39.875764-08:00","created_by":"gastown/crew/gus","updated_at":"2025-12-31T13:31:39.510735-08:00","closed_at":"2025-12-31T13:31:39.510735-08:00","close_reason":"Fixed: use getRepoRootFromPath(ctx, beadsDir) instead of syncbranch.GetRepoRoot(ctx) to resolve repo root from redirect target"}
@@ -1128,7 +1128,6 @@
{"id":"bd-fd56","title":"Wrap git operations in GitClient interface","description":"Create internal/daemonrunner/git.go with GitClient interface (HasUpstream, HasChanges, Commit, Push, Pull). Default implementation using os/exec. Use in Syncer and Run loop for testability.","status":"closed","priority":1,"issue_type":"task","created_at":"2025-11-01T11:41:14.88734-07:00","updated_at":"2025-11-02T12:32:00.159595-08:00","closed_at":"2025-11-02T12:32:00.159597-08:00"}
{"id":"bd-fd8753d9","title":"Document bd edit command and verify MCP exclusion","description":"Follow-up from PR #152:\n1. Add \"bd edit\" to AGENTS.md with \"Humans only\" note\n2. Verify MCP server doesn't expose bd edit command\n3. Consider adding test for command registration","status":"closed","priority":2,"issue_type":"task","created_at":"2025-10-26T13:23:47.982295-07:00","updated_at":"2025-12-14T12:12:46.527274-08:00","closed_at":"2025-11-06T19:41:08.675575-08:00"}
{"id":"bd-fdiuw","title":"Session ended: gt-beads-witness","status":"closed","priority":2,"issue_type":"event","created_at":"2026-01-10T21:10:18.24073-08:00","created_by":"beads/witness","updated_at":"2026-01-10T21:10:18.280577-08:00","closed_at":"2026-01-10T21:10:18.280577-08:00","close_reason":"auto-closed session cost wisp","ephemeral":true}
{"id":"bd-fdojn","title":"Issue 1","status":"open","priority":1,"issue_type":"task","owner":"steve.yegge@gmail.com","created_at":"2026-01-11T18:16:01.147009-08:00","created_by":"beads/crew/wolf","updated_at":"2026-01-11T18:16:01.147009-08:00"}
{"id":"bd-febc","title":"npm package for bd with native binaries","description":"Create an npm package that wraps native bd binaries for easy installation in Claude Code for Web and other Node.js environments.\n\n## Problem\nClaude Code for Web sandboxes are full Linux VMs with npm support, but cannot easily download binaries from GitHub releases due to network restrictions or tooling limitations.\n\n## Solution\nPublish bd as an npm package that:\n- Downloads platform-specific native binaries during postinstall\n- Provides a CLI wrapper that invokes the native binary\n- Works seamlessly in Claude Code for Web SessionStart hooks\n- Maintains full feature parity (uses native SQLite)\n\n## Benefits vs WASM\n- ✅ Full SQLite support (no custom VFS needed)\n- ✅ All features work identically to native bd\n- ✅ Better performance (native vs WASM overhead)\n- ✅ ~4 hours effort vs ~2 days for WASM\n- ✅ Minimal maintenance burden\n\n## Success Criteria\n- npm install @beads/bd works in Claude Code for Web\n- All bd commands function identically to native binary\n- SessionStart hook documented for auto-installation\n- Package published to npm registry","status":"closed","priority":1,"issue_type":"epic","created_at":"2025-11-02T23:39:37.684109-08:00","updated_at":"2025-11-03T10:39:44.932565-08:00","closed_at":"2025-11-03T10:39:44.932565-08:00"}
{"id":"bd-fedb","title":"Polecats should spawn with auto-accept mode enabled","description":"During swarm bd-784c, polecats (Toast, Nux) were spawned without --dangerously-skip-permissions or equivalent auto-accept mode.\n\n**Problem:**\nEvery edit, bash command, and tool use required manual confirmation via tmux send-keys. This defeats the purpose of autonomous polecat operation.\n\n**Expected:**\nPolecats in a swarm should run with permissions bypassed so they can work autonomously.\n\n**Workaround used:**\n- Manually sent Enter keys via tmux to accept prompts\n- Eventually polecats entered 'bypass permissions on' mode after restart\n\n**Suggestion:**\n- gt sling should pass --dangerously-skip-permissions by default for polecats\n- Or polecats should have a .claude/settings.local.json pre-configured for auto-accept","status":"closed","priority":2,"issue_type":"bug","created_at":"2025-12-28T16:17:47.061327-08:00","created_by":"beads/crew/dave","updated_at":"2025-12-28T22:14:19.109728-08:00","closed_at":"2025-12-28T22:14:19.109728-08:00"}
{"id":"bd-fej5","title":"bd hook: detect agent from cwd instead of defaulting to $USER","description":"**Problem:**\n`bd hook` without `--agent` defaults to `$USER` (e.g., \"stevey\") instead of detecting the agent identity from the current working directory.\n\n**Expected behavior:**\nWhen running from `/Users/stevey/gt/beads/crew/dave`, the agent should be detected as `beads/crew/dave`.\n\n**Current behavior:**\n```bash\n$ pwd\n/Users/stevey/gt/beads/crew/dave\n$ bd hook\nHook: stevey\n (empty)\n\n$ bd hook --agent beads/crew/dave\nHook: beads/crew/dave\n 📌 bd-hobo (mol) - open\n```\n\n**Fix:**\nbd hook should use the same cwd-based agent detection that other commands use (similar to how `gt mail` determines identity from cwd).","status":"closed","priority":2,"issue_type":"bug","created_at":"2025-12-24T20:01:27.613892-08:00","updated_at":"2025-12-25T12:41:10.65257-08:00","closed_at":"2025-12-25T12:41:10.65257-08:00"}