bd sync: 2025-12-23 20:30:29
This commit is contained in:
@@ -187,7 +187,7 @@
|
||||
{"id":"bd-csnr","title":"activity --follow: Silent error handling","description":"In activity.go:175-179, when the daemon is down or errors occur during polling in --follow mode, errors are silently ignored:\n\n```go\nnewEvents, err := fetchMutations(lastPoll)\nif err != nil {\n // Daemon might be down, continue trying\n continue\n}\n```\n\nThis means:\n- Users won't know if the daemon is unreachable\n- Could appear frozen when actually failing\n- No indication of lost events\n\nShould at least show a warning after N consecutive failures, or show '...' indicator to show polling status.\n\nDiscovered during code review of bd-xo1o implementation.","status":"closed","priority":3,"issue_type":"task","created_at":"2025-12-23T04:06:18.590743-08:00","updated_at":"2025-12-23T04:16:04.64978-08:00","closed_at":"2025-12-23T04:16:04.64978-08:00","close_reason":"Added error tracking with warning after 5 consecutive failures, reconnection message on recovery, rate-limited warnings (max once per 30s)"}
|
||||
{"id":"bd-czss","title":"Update CHANGELOG.md with release notes","description":"Add meaningful release notes to CHANGELOG.md describing what changed in {{version}}","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-19T22:55:59.909641-08:00","updated_at":"2025-12-20T17:59:26.262153-08:00","closed_at":"2025-12-20T01:23:51.407302-08:00","dependencies":[{"issue_id":"bd-czss","depends_on_id":"bd-6s61","type":"parent-child","created_at":"2025-12-19T22:56:14.862724-08:00","created_by":"daemon"},{"issue_id":"bd-czss","depends_on_id":"bd-qkw9","type":"blocks","created_at":"2025-12-19T22:56:23.145894-08:00","created_by":"daemon"}]}
|
||||
{"id":"bd-d148","title":"GH#483: Pre-commit hook fails unnecessarily when .beads removed","description":"Pre-commit hook fails on bd sync when .beads directory exists but user is on branch without beads. Should exit gracefully. See GitHub issue #483.","status":"tombstone","priority":2,"issue_type":"bug","created_at":"2025-12-16T01:03:40.049785-08:00","updated_at":"2025-12-17T16:11:17.070763-08:00","deleted_at":"2025-12-17T16:11:17.070763-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"bug"}
|
||||
{"id":"bd-d28c","title":"Test createTombstone and deleteIssue wrappers","description":"Add tests for the createTombstone and deleteIssue wrapper functions in cmd/bd/delete.go.\n\n## Functions under test\n- createTombstone (cmd/bd/delete.go:335) - Wrapper around SQLite CreateTombstone\n- deleteIssue (cmd/bd/delete.go:349) - Wrapper around SQLite DeleteIssue\n\n## Test scenarios for createTombstone\n1. Successful tombstone creation\n2. Tombstone with reason and actor tracking\n3. Error when issue doesn't exist\n4. Verify tombstone status set correctly\n5. Verify audit trail recorded\n6. Rollback/error handling\n\n## Test scenarios for deleteIssue\n1. Successful issue deletion\n2. Error on non-existent issue\n3. Verify issue removed from database\n4. Error handling when storage backend doesn't support delete\n\n## Coverage target\nCurrent: 0%\nTarget: \u003e85%\n\n## Related\n- Parent epic: bd-kyll\n- Original issue: bd-7z4","status":"open","priority":1,"issue_type":"task","created_at":"2025-12-18T13:08:37.669214532-07:00","updated_at":"2025-12-18T13:08:37.669214532-07:00","dependencies":[{"issue_id":"bd-d28c","depends_on_id":"bd-kyll","type":"parent-child","created_at":"2025-12-18T13:08:37.70588226-07:00","created_by":"mhwilkie"}]}
|
||||
{"id":"bd-d28c","title":"Test createTombstone and deleteIssue wrappers","description":"Add tests for the createTombstone and deleteIssue wrapper functions in cmd/bd/delete.go.\n\n## Functions under test\n- createTombstone (cmd/bd/delete.go:335) - Wrapper around SQLite CreateTombstone\n- deleteIssue (cmd/bd/delete.go:349) - Wrapper around SQLite DeleteIssue\n\n## Test scenarios for createTombstone\n1. Successful tombstone creation\n2. Tombstone with reason and actor tracking\n3. Error when issue doesn't exist\n4. Verify tombstone status set correctly\n5. Verify audit trail recorded\n6. Rollback/error handling\n\n## Test scenarios for deleteIssue\n1. Successful issue deletion\n2. Error on non-existent issue\n3. Verify issue removed from database\n4. Error handling when storage backend doesn't support delete\n\n## Coverage target\nCurrent: 0%\nTarget: \u003e85%\n\n## Related\n- Parent epic: bd-kyll\n- Original issue: bd-7z4","status":"in_progress","priority":1,"issue_type":"task","assignee":"beads/capable","created_at":"2025-12-18T13:08:37.669214532-07:00","updated_at":"2025-12-23T20:30:29.522537-08:00","dependencies":[{"issue_id":"bd-d28c","depends_on_id":"bd-kyll","type":"parent-child","created_at":"2025-12-18T13:08:37.70588226-07:00","created_by":"mhwilkie"}]}
|
||||
{"id":"bd-d3e5","title":"Test issue 2","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-14T11:21:13.878680387-07:00","updated_at":"2025-12-14T11:21:13.878680387-07:00","closed_at":"2025-12-14T00:32:13.890274-08:00"}
|
||||
{"id":"bd-d4jl","title":"Commit and push release","description":"git add -A \u0026\u0026 git commit -m 'chore: bump version to 0.32.1' \u0026\u0026 git push","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-20T21:53:21.928138-08:00","updated_at":"2025-12-20T21:57:12.81943-08:00","closed_at":"2025-12-20T21:57:12.81943-08:00","close_reason":"Committed and pushed to origin","dependencies":[{"issue_id":"bd-d4jl","depends_on_id":"bd-an4s","type":"parent-child","created_at":"2025-12-20T21:53:21.930015-08:00","created_by":"daemon"},{"issue_id":"bd-d4jl","depends_on_id":"bd-tj00","type":"blocks","created_at":"2025-12-20T21:53:29.884457-08:00","created_by":"daemon"}]}
|
||||
{"id":"bd-d73u","title":"Re: Thread Test 2","description":"Great! Thread is working well.","status":"tombstone","priority":2,"issue_type":"message","created_at":"2025-12-16T18:21:46.655093-08:00","updated_at":"2025-12-17T16:11:17.070763-08:00","dependencies":[{"issue_id":"bd-d73u","depends_on_id":"bd-vpan","type":"replies-to","created_at":"2025-12-18T13:45:31.137191-08:00","created_by":"migration"}],"deleted_at":"2025-12-17T16:11:17.070763-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"message"}
|
||||
@@ -271,7 +271,7 @@
|
||||
{"id":"bd-iq7n","title":"Audit and fix JSONL filename mismatches across all repo clones","description":"## Problem\n\nMultiple clones of repos are configured with different JSONL filenames (issues.jsonl vs beads.jsonl), causing:\n1. JSONL files to be resurrected after deletion (one clone pushes issues.jsonl, another pushes beads.jsonl)\n2. Agents unable to see issues filed by other agents after sync\n3. Merge conflicts and data inconsistencies\n\n## Root Cause\n\nWhen repos were \"bd doctored\" or initialized at different times, some got issues.jsonl (old default) and others got beads.jsonl (Beads repo specific). These clones push their respective files, creating duplicates.\n\n## Task\n\nScan all repo clones under ~/src/ (1-2 levels deep) and standardize their JSONL configuration.\n\n### Step 1: Find all beads-enabled repos\n\n```bash\n# Find all directories named 'beads' at levels 1-2 under ~/src/\nfind ~/src -maxdepth 2 -type d -name beads\n```\n\n### Step 2: For each repo found, check configuration\n\nFor each directory from Step 1, check:\n- Does `.beads/metadata.json` exist?\n- What is the `jsonl_export` value?\n- What JSONL files actually exist in `.beads/`?\n- Are there multiple JSONL files (problem!)?\n\n### Step 3: Create audit report\n\nGenerate a report showing:\n```\nRepo Path | Config | Actual Files | Status\n----------------------------------- | ------------- | ---------------------- | --------\n~/src/beads | beads.jsonl | beads.jsonl | OK\n~/src/dave/beads | issues.jsonl | issues.jsonl | MISMATCH\n~/src/emma/beads | issues.jsonl | issues.jsonl, beads.jsonl | DUPLICATE!\n```\n\n### Step 4: Determine canonical name for each repo\n\nFor repos that are the SAME git repository (check `git remote -v`):\n- Group them together\n- Determine which JSONL filename should be canonical (majority wins, or beads.jsonl for the beads repo itself)\n- List which clones need to be updated\n\n### Step 5: Generate fix script\n\nCreate a script that for each mismatched clone:\n1. Updates `.beads/metadata.json` to use the canonical name\n2. If JSONL file needs renaming: `git mv .beads/old.jsonl .beads/new.jsonl`\n3. Removes any duplicate JSONL files: `git rm .beads/duplicate.jsonl`\n4. Commits the change\n5. Syncs: `bd sync`\n\n### Expected Output\n\n1. Audit report showing all repos and their config status\n2. List of repos grouped by git remote (same repository)\n3. Fix script or manual instructions for standardizing each repo\n4. Verification that after fixes, all clones of the same repo use the same JSONL filename\n\n### Edge Cases\n\n- Handle repos without metadata.json (use default discovery)\n- Handle repos with no git remote (standalone/local)\n- Handle repos that are not git repositories\n- Don't modify repos with uncommitted changes (warn instead)\n\n### Success Criteria\n\n- All clones of the same git repository use the same JSONL filename\n- No duplicate JSONL files in any repo\n- All configurations documented in metadata.json\n- bd doctor passes on all repos","status":"closed","priority":0,"issue_type":"task","created_at":"2025-11-21T23:58:35.044762-08:00","updated_at":"2025-12-17T23:13:40.531403-08:00","closed_at":"2025-12-17T16:50:59.510972-08:00"}
|
||||
{"id":"bd-is6m","title":"Add gate checking to Deacon patrol loop","description":"Integrate gate checking into Deacon's patrol cycle.\n\n## Patrol Integration\n```go\nfunc (d *Deacon) checkGates(ctx context.Context) {\n gates, _ := d.store.ListOpenGates(ctx)\n \n for _, gate := range gates {\n // Check timeout\n if time.Since(gate.CreatedAt) \u003e gate.Timeout {\n d.notifyWaiters(gate, \"timeout\")\n d.closeGate(gate, \"timed out\")\n continue\n }\n \n // Check condition\n if d.checkCondition(gate.AwaitType, gate.AwaitID) {\n d.notifyWaiters(gate, \"cleared\")\n d.closeGate(gate, \"condition met\")\n }\n }\n}\n```\n\n## Note\nThis task is in Gas Town (gt), not beads. May need to be moved there.","status":"closed","priority":2,"issue_type":"task","created_at":"2025-12-23T11:44:36.839709-08:00","updated_at":"2025-12-23T12:19:44.204647-08:00","closed_at":"2025-12-23T12:19:44.204647-08:00","close_reason":"Moved to gastown: gt-dh65","dependencies":[{"issue_id":"bd-is6m","depends_on_id":"bd-udsi","type":"parent-child","created_at":"2025-12-23T11:44:52.909253-08:00","created_by":"daemon"},{"issue_id":"bd-is6m","depends_on_id":"bd-u66e","type":"blocks","created_at":"2025-12-23T11:44:56.428084-08:00","created_by":"daemon"}]}
|
||||
{"id":"bd-iw4z","title":"Compound visualization in bd mol show","description":"Enhance bd mol show to display compound structure.\n\nENHANCEMENTS:\n- Show constituent protos and how they're bonded\n- Display bond type (sequential/parallel) between components\n- Indicate attachment points\n- Show combined variable requirements across all protos\n\nEXAMPLE OUTPUT:\n\n Compound: proto-feature-with-tests\n Bonded from:\n └─ proto-feature (root)\n └─ proto-testing (sequential, after completion)\n \n Variables: {{name}}, {{version}}, {{test_suite}}\n \n Structure:\n proto-feature-with-tests\n ├─ Design feature {{name}}\n ├─ Implement core\n ├─ Write unit tests ← from proto-testing\n └─ Run test suite {{test_suite}} ← from proto-testing","status":"deferred","priority":2,"issue_type":"task","created_at":"2025-12-21T00:59:26.71318-08:00","updated_at":"2025-12-21T11:12:44.012871-08:00","dependencies":[{"issue_id":"bd-iw4z","depends_on_id":"bd-o5xe","type":"parent-child","created_at":"2025-12-21T00:59:51.500865-08:00","created_by":"daemon"},{"issue_id":"bd-iw4z","depends_on_id":"bd-rnnr","type":"blocks","created_at":"2025-12-21T00:59:51.891643-08:00","created_by":"daemon"}]}
|
||||
{"id":"bd-iz5t","title":"Swarm: 13 beads backlog issues for polecat execution","description":"## Swarm Overview\n\n13 issues prepared for parallel polecat execution. All issues have been enhanced with concrete implementation guidance, file lists, and success criteria.\n\n## Issue List\n\n### Bug (1) - HIGH PRIORITY\n| ID | Priority | Title |\n|----|----------|-------|\n| bd-phtv | P1 | Pinned field overwritten by subsequent commands |\n\n### Test Coverage (3)\n| ID | Package | Target |\n|----|---------|--------|\n| bd-io8c | internal/syncbranch | 27% → 70% |\n| bd-thgk | internal/compact | 17% → 70% |\n| bd-tvu3 | internal/beads | 48% → 70% |\n\n### Code Quality (3)\n| ID | Task |\n|----|------|\n| bd-qioh | FatalError pattern standardization |\n| bd-rgyd | Split queries.go (1704 lines → 5 files) |\n| bd-u2sc.3 | Split cmd/bd files (sync/init/show/compact) |\n\n### Features (4)\n| ID | Task |\n|----|------|\n| bd-au0.5 | Search date/priority filters |\n| bd-ykd9 | Doctor --fix auto-repair |\n| bd-g4b4 | Close hooks system |\n| bd-likt | Gate daemon RPC |\n\n### Polish (2)\n| ID | Task |\n|----|------|\n| bd-4qfb | Doctor output formatting |\n| bd-u2sc.4 | slog structured logging |\n\n## Issue Details\n\nAll issues have been enhanced with:\n- Concrete file lists to modify\n- Code snippets and patterns\n- Success criteria\n- Test commands\n\nRun `bd show \u003cid\u003e` for full details on any issue.\n\n## Execution Notes\n\n- All issues are independent (no blockers between them)\n- bd-phtv (P1 bug) should get priority - affects bd pin functionality\n- Test coverage tasks are straightforward but time-consuming\n- File split tasks (bd-rgyd, bd-u2sc.3) are mechanical but important\n\n## Completed During Prep\n\n- bd-ucgz (P2 bug) - Fixed inline: external deps orphan check (commit f2db0a1d)\n- Moved 5 gastown issues out of beads backlog (gt-dh65, gt-ng6g, gt-fqcz, gt-gswn, gt-rw2z)\n- Deferred 4 premature/post-1.0 issues\n- Closed bd-udsi epic (core implementation complete)","status":"open","priority":1,"issue_type":"epic","created_at":"2025-12-23T12:43:58.427835-08:00","updated_at":"2025-12-23T13:10:15.691136-08:00"}
|
||||
{"id":"bd-iz5t","title":"Swarm: 13 beads backlog issues for polecat execution","description":"## Swarm Overview\n\n13 issues prepared for parallel polecat execution. All issues have been enhanced with concrete implementation guidance, file lists, and success criteria.\n\n## Issue List\n\n### Bug (1) - HIGH PRIORITY\n| ID | Priority | Title |\n|----|----------|-------|\n| bd-phtv | P1 | Pinned field overwritten by subsequent commands |\n\n### Test Coverage (3)\n| ID | Package | Target |\n|----|---------|--------|\n| bd-io8c | internal/syncbranch | 27% → 70% |\n| bd-thgk | internal/compact | 17% → 70% |\n| bd-tvu3 | internal/beads | 48% → 70% |\n\n### Code Quality (3)\n| ID | Task |\n|----|------|\n| bd-qioh | FatalError pattern standardization |\n| bd-rgyd | Split queries.go (1704 lines → 5 files) |\n| bd-u2sc.3 | Split cmd/bd files (sync/init/show/compact) |\n\n### Features (4)\n| ID | Task |\n|----|------|\n| bd-au0.5 | Search date/priority filters |\n| bd-ykd9 | Doctor --fix auto-repair |\n| bd-g4b4 | Close hooks system |\n| bd-likt | Gate daemon RPC |\n\n### Polish (2)\n| ID | Task |\n|----|------|\n| bd-4qfb | Doctor output formatting |\n| bd-u2sc.4 | slog structured logging |\n\n## Issue Details\n\nAll issues have been enhanced with:\n- Concrete file lists to modify\n- Code snippets and patterns\n- Success criteria\n- Test commands\n\nRun `bd show \u003cid\u003e` for full details on any issue.\n\n## Execution Notes\n\n- All issues are independent (no blockers between them)\n- bd-phtv (P1 bug) should get priority - affects bd pin functionality\n- Test coverage tasks are straightforward but time-consuming\n- File split tasks (bd-rgyd, bd-u2sc.3) are mechanical but important\n\n## Completed During Prep\n\n- bd-ucgz (P2 bug) - Fixed inline: external deps orphan check (commit f2db0a1d)\n- Moved 5 gastown issues out of beads backlog (gt-dh65, gt-ng6g, gt-fqcz, gt-gswn, gt-rw2z)\n- Deferred 4 premature/post-1.0 issues\n- Closed bd-udsi epic (core implementation complete)","status":"closed","priority":1,"issue_type":"epic","created_at":"2025-12-23T12:43:58.427835-08:00","updated_at":"2025-12-23T20:26:50.629471-08:00","closed_at":"2025-12-23T20:26:50.629471-08:00","close_reason":"All 13 swarm issues completed by polecats"}
|
||||
{"id":"bd-j0tr","title":"Phase 1.3: Basic TOON read/write operations","description":"Add basic TOON read/write operations to bdt executable. Implement create, list, and show commands that use the internal/toon package for encoding/decoding to TOON format.\n\n## Subtasks\n1. Implement bdt create command - Create issues and serialize to TOON format\n2. Implement bdt list command - Read issues.toon and display all issues\n3. Implement bdt show command - Display single issue by ID\n4. Add file I/O operations for issues.toon\n5. Integrate internal/toon package (EncodeTOON, DecodeJSON)\n6. Write tests for create, list, show operations\n\n## Files to Create/Modify\n- cmd/bdt/create.go - Create command\n- cmd/bdt/list.go - List command \n- cmd/bdt/show.go - Show command\n- cmd/bdt/storage.go - File I/O helper\n\n## Success Criteria\n- bdt create \"Issue title\" creates and saves to issues.toon\n- bdt list displays all issues in human-readable format\n- bdt list --json shows JSON output\n- bdt show \u003cid\u003e displays single issue\n- Issues round-trip correctly: create → list → show\n- All tests passing with \u003e80% coverage","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-19T12:59:54.270296918-07:00","updated_at":"2025-12-19T13:09:00.196045685-07:00","closed_at":"2025-12-19T13:09:00.196045685-07:00"}
|
||||
{"id":"bd-j3il","title":"Add bd reset command for clean slate restart","description":"Implement a command to reset beads to a clean starting state.\n\n**Context:** GitHub issue #479 - users sometimes get beads into an invalid state after updates, and there's no clean way to start fresh. The git backup/restore mechanism that protects against accidental deletion also makes it hard to intentionally reset.\n\n**Current workaround** (from maphew):\n```bash\nbd daemons killall\ngit rm .beads/*.jsonl\ngit commit -m 'remove old issues'\nrm .beads/*\nbd init\nbd onboard\n```\n\n**Desired:** A proper `bd reset` command that handles this cleanly and safely.","status":"closed","priority":2,"issue_type":"feature","created_at":"2025-12-13T08:41:34.956552+11:00","updated_at":"2025-12-13T08:43:49.970591+11:00","closed_at":"2025-12-13T08:43:49.970591+11:00"}
|
||||
{"id":"bd-j6lr","title":"GH#402: Add --parent flag documentation to bd onboard","description":"bd onboard output is missing --parent flag for epic subtasks. Agents guess wrong syntax (--deps parent:). See GitHub issue #402.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-16T01:03:56.594829-08:00","updated_at":"2025-12-17T16:11:17.070763-08:00","deleted_at":"2025-12-17T16:11:17.070763-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"}
|
||||
|
||||
Reference in New Issue
Block a user