From 2ca76dcae8ceb12364ce5cdf50dbd00b1eec3090 Mon Sep 17 00:00:00 2001 From: Steve Yegge Date: Mon, 29 Dec 2025 17:10:34 -0800 Subject: [PATCH] bd sync: 2025-12-29 17:10:34 --- .beads/issues.jsonl | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/.beads/issues.jsonl b/.beads/issues.jsonl index d4b4caa7..804cd4d6 100644 --- a/.beads/issues.jsonl +++ b/.beads/issues.jsonl @@ -454,7 +454,7 @@ {"id":"bd-kyo","title":"Run tests and linting","description":"Run the full test suite and linter:\n\n```bash\nTMPDIR=/tmp go test -short ./...\ngolangci-lint run ./...\n```\n\nFix any failures. Linting warnings acceptable (see LINTING.md).","status":"tombstone","priority":1,"issue_type":"task","created_at":"2025-12-18T22:42:59.290588-08:00","updated_at":"2025-12-24T16:25:30.300951-08:00","dependencies":[{"issue_id":"bd-kyo","depends_on_id":"bd-qqc","type":"parent-child","created_at":"2025-12-18T22:43:16.370234-08:00","created_by":"daemon"},{"issue_id":"bd-kyo","depends_on_id":"bd-8hy","type":"blocks","created_at":"2025-12-18T22:43:20.570742-08:00","created_by":"daemon"}],"deleted_at":"2025-12-24T16:25:30.300951-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-kzda","title":"Implement conditional bond type for mol bond","description":"The mol bond command accepts 'conditional' as a bond type but doesn't implement any conditional-specific behavior. It currently behaves identically to 'parallel'.\n\n**Expected behavior:**\nConditional bonds should mean 'B runs only if A fails' per the help text (mol.go:318).\n\n**Implementation needed:**\n- Add failure-condition dependency handling\n- Possibly new dependency type or status-based blocking\n- Update bondProtoProto, bondProtoMol, bondMolMol to handle conditional\n\n**Alternative:**\nRemove 'conditional' from valid bond types until implemented.\n\nThis is new functionality, not a regression.","status":"closed","priority":3,"issue_type":"feature","created_at":"2025-12-21T10:23:01.966367-08:00","updated_at":"2025-12-23T01:33:25.734264-08:00","closed_at":"2025-12-23T01:33:25.734264-08:00"} {"id":"bd-l13p","title":"Add GetWorkerStatus RPC endpoint","description":"New RPC endpoint to get all workers and their current molecule/step in one call. Returns: assignee, moleculeID, moleculeTitle, currentStep, totalSteps, stepTitle, lastActivity, status. Enables activity feed TUI to show worker state without multiple round trips.","status":"closed","priority":2,"issue_type":"feature","created_at":"2025-12-23T16:26:36.248654-08:00","updated_at":"2025-12-23T16:40:59.772138-08:00","closed_at":"2025-12-23T16:40:59.772138-08:00"} -{"id":"bd-l6yk","title":"bd mol burn should work on mols, not just wisps","description":"Currently `bd mol burn` only works on wisps (Ephemeral=true):\n\n```\n$ bd mol burn bd-mol-p7i\nError: molecule bd-mol-p7i is not a wisp (Ephemeral=false)\nHint: mol burn only works with wisp molecules\n Use 'bd delete' to remove non-wisp issues\n```\n\nThe name 'burn' implies destruction - it should work on any molecule, not just wisps. When called on a regular mol, it should convert to `bd delete --cascade`.\n\n**Proposed behavior:**\n- If wisp: current behavior (delete without tombstones)\n- If mol: `bd delete \u003cid\u003e --cascade` (delete with tombstones)\n\nThis makes the metaphor consistent: burn = destroy a molecule, regardless of phase.","status":"open","priority":3,"issue_type":"feature","created_at":"2025-12-29T17:05:08.115592-08:00","created_by":"beads/crew/emma","updated_at":"2025-12-29T17:05:08.115592-08:00"} +{"id":"bd-l6yk","title":"bd mol burn should work on mols, not just wisps","description":"Currently `bd mol burn` only works on wisps (Ephemeral=true):\n\n```\n$ bd mol burn bd-mol-p7i\nError: molecule bd-mol-p7i is not a wisp (Ephemeral=false)\nHint: mol burn only works with wisp molecules\n Use 'bd delete' to remove non-wisp issues\n```\n\nThe name 'burn' implies destruction - it should work on any molecule, not just wisps. When called on a regular mol, it should convert to `bd delete --cascade`.\n\n**Proposed behavior:**\n- If wisp: current behavior (delete without tombstones)\n- If mol: `bd delete \u003cid\u003e --cascade` (delete with tombstones)\n\nThis makes the metaphor consistent: burn = destroy a molecule, regardless of phase.","status":"closed","priority":3,"issue_type":"feature","created_at":"2025-12-29T17:05:08.115592-08:00","created_by":"beads/crew/emma","updated_at":"2025-12-29T17:10:19.034979-08:00","closed_at":"2025-12-29T17:10:19.034979-08:00","close_reason":"Implemented: mol burn now works on both wisps and mols"} {"id":"bd-l7y3","title":"bd mol bond --pour should set Wisp=false","description":"In mol_bond.go bondProtoMol(), opts.Wisp is hardcoded to true (line 392). This ignores the --pour flag. When user specifies --pour to make an issue persistent, the Wisp field should be false so the issue is not marked for bulk deletion.\n\nCurrent behavior:\n- --pour flag correctly selects regular storage (not wisp storage)\n- But opts.Wisp=true means spawned issues are still marked for cleanup when closed\n\nExpected behavior:\n- --pour should set Wisp=false so persistent issues are not auto-cleaned\n\nComparison with mol_spawn.go (line 204):\n wisp := !pour // Correctly respects --pour flag\n result, err := spawnMolecule(ctx, store, subgraph, vars, assignee, actor, wisp)\n\nFix: Pass pour flag to bondProtoMol and set opts.Wisp = !pour","status":"closed","priority":2,"issue_type":"bug","created_at":"2025-12-23T15:15:00.562346-08:00","updated_at":"2025-12-23T15:25:22.53144-08:00","closed_at":"2025-12-23T15:25:22.53144-08:00"} {"id":"bd-ldb0","title":"Rename ephemeral → wisp throughout codebase","description":"## The Change\n\nRename 'ephemeral' to 'wisp' throughout the beads codebase.\n\n## Why\n\n**Ephemeral** is:\n- 4 syllables (too long)\n- Greek/academic (doesn't match bond/burn/squash)\n- Overused in tech (K8s, networking, storage)\n- Passive/descriptive\n\n**Wisp** is:\n- 1 syllable (matches bond/burn/squash)\n- Evocative - you can SEE a wisp\n- Steam engine metaphor - Gas Town is engines, steam wisps rise and dissipate\n- Will-o'-the-wisp - transient spirits that guide then vanish\n- Unique - nobody else uses it\n\n## The Steam Engine Metaphor\n\n```\nEngine does work → generates steam\nSteam wisps rise → execution trace\nSteam condenses → digest (distillate)\nSteam dissipates → cleaned up (burned)\n```\n\n## Full Vocabulary\n\n| Term | Meaning |\n|------|---------|\n| bond | Attach proto to work (creates wisps) |\n| wisp | Temporary execution step |\n| squash | Condense wisps into digest |\n| burn | Destroy wisps without record |\n| digest | Permanent condensed record |\n\n## Changes Required\n\n### Code\n- `Ephemeral bool` → `Wisp bool` in types/issue.go\n- `--ephemeral` flag → remove (wisp is default)\n- `--persistent` flag → keep as opt-out\n- `bd cleanup --ephemeral` → `bd cleanup --wisps`\n- Update all references in mol_*.go files\n\n### Docs\n- Update all documentation\n- Update CLAUDE.md examples\n- Update CLI help text\n\n### Database Migration\n- Add migration to rename field (or keep internal name, just change API)\n\n## Example Usage After\n\n```bash\nbd mol bond mol-polecat-work # Creates wisps (default)\nbd mol bond mol-xxx --persistent # Creates permanent issues\nbd mol squash bd-xxx # Condenses wisps → digest\nbd cleanup --wisps # Clean old wisps\nbd list --wisps # Show wisp issues\n```","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-21T14:44:41.576068-08:00","updated_at":"2025-12-22T00:32:31.153738-08:00","closed_at":"2025-12-22T00:32:31.153738-08:00"} {"id":"bd-lfak","title":"bd preflight: PR readiness checks for contributors","description":"## Vision\n\nEncode project-specific institutional knowledge into executable checks. CONTRIBUTING.md is documentation that's read once and forgotten; `bd preflight` is documentation that runs at exactly the right moment.\n\n## Problem Statement\n\nContributors face a \"last mile\" problem - they do the work but stumble on project-specific gotchas at PR time:\n- Nix vendorHash gets stale when go.sum changes\n- Beads artifacts leak into PRs (see bd-umbf for namespace solution)\n- Version mismatches between version.go and default.nix\n- Tests/lint not run locally before pushing\n- Other project-specific checks that only surface when CI fails\n\nThese are too obscure to remember, exist in docs nobody reads end-to-end, and waste CI round-trips.\n\n## Why beads?\n\nBeads already has a foothold in the contributor workflow. It knows:\n- Git state (staged files, branch, dirty status)\n- Project structure\n- The specific issue being worked on\n- Project-specific configuration\n\n## Proposed Interface\n\n### Tier 1: Checklist Mode (v1)\n\n $ bd preflight\n PR Readiness Checklist:\n\n [ ] Tests pass: go test -short ./...\n [ ] Lint passes: golangci-lint run ./...\n [ ] No beads pollution: check .beads/issues.jsonl diff\n [ ] Nix hash current: go.sum unchanged or vendorHash updated\n [ ] Version sync: version.go matches default.nix\n\n Run 'bd preflight --check' to validate automatically.\n\n### Tier 2: Check Mode (v2)\n\n $ bd preflight --check\n ✓ Tests pass\n ✓ Lint passes\n ⚠ Beads pollution: 3 issues in diff - are these project issues or personal?\n ✗ Nix hash stale: go.sum changed, vendorHash needs update\n Fix: sha256-KRR6dXzsSw8OmEHGBEVDBOoIgfoZ2p0541T9ayjGHlI=\n ✓ Version sync\n\n 1 error, 1 warning. Run 'bd preflight --fix' to auto-fix where possible.\n\n### Tier 3: Fix Mode (v3)\n\n $ bd preflight --fix\n ✓ Updated vendorHash in default.nix\n ⚠ Cannot auto-fix beads pollution - manual review needed\n\n## Checks to Implement\n\n| Check | Description | Auto-fixable |\n|-------|-------------|--------------|\n| tests | Run go test -short ./... | No |\n| lint | Run golangci-lint | Partial (gofmt) |\n| beads-pollution | Detect personal issues in diff | No (see bd-umbf) |\n| nix-hash | Detect stale vendorHash | Yes (if nix available) |\n| version-sync | version.go matches default.nix | Yes |\n| no-debug | No TODO/FIXME/console.log | Warn only |\n| clean-stage | No unintended files staged | Warn only |\n\n## Future: Configuration\n\nMake checks configurable per-project via .beads/preflight.yaml:\n\n preflight:\n checks:\n - name: tests\n run: go test -short ./...\n required: true\n - name: no-secrets\n pattern: \"**/*.env\"\n staged: deny\n - name: custom-check\n run: ./scripts/validate.sh\n\nThis lets any project using beads define their own preflight checks.\n\n## Implementation Phases\n\n### Phase 1: Static Checklist\n- Implement bd preflight with hardcoded checklist for beads\n- No execution, just prints what to check\n- Update CONTRIBUTING.md to reference it\n\n### Phase 2: Automated Checks\n- Implement bd preflight --check\n- Run tests, lint, detect stale hashes\n- Clear pass/fail/warn output\n\n### Phase 3: Auto-fix\n- Implement bd preflight --fix\n- Fix vendorHash, version sync\n- Integrate with bd-umbf solution for pollution\n\n### Phase 4: Configuration\n- .beads/preflight.yaml support\n- Make it useful for other projects using beads\n- Plugin/hook system for custom checks\n\n## Dependencies\n\n- bd-umbf: Namespace isolation for beads pollution (blocking for full solution)\n\n## Success Metrics\n\n- Fewer CI failures on first PR push\n- Reduced \"fix nix hash\" commits\n- Contributors report preflight caught issues before CI","status":"open","priority":2,"issue_type":"epic","created_at":"2025-12-13T18:01:39.587078-08:00","updated_at":"2025-12-13T18:01:39.587078-08:00","dependencies":[{"issue_id":"bd-lfak","depends_on_id":"bd-umbf","type":"blocks","created_at":"2025-12-13T18:01:46.059901-08:00","created_by":"daemon"}]} @@ -478,18 +478,27 @@ {"id":"bd-m964","title":"Consider FTS5 for text search at scale","description":"SearchIssues uses LIKE patterns for text search which can't use indexes.\n\n**Current query (queries.go:1475-1477):**\n```sql\n(title LIKE ? OR description LIKE ? OR id LIKE ?)\n```\n\n**Problem:** Full table scan on every text search. At 100K+ issues, this becomes slow.\n\n**SQLite FTS5 solution:**\n```sql\nCREATE VIRTUAL TABLE issues_fts USING fts5(\n id, title, description, design, notes,\n content='issues',\n content_rowid='rowid'\n);\n\n-- Triggers to keep FTS in sync\nCREATE TRIGGER issues_ai AFTER INSERT ON issues BEGIN\n INSERT INTO issues_fts(rowid, id, title, description, design, notes)\n VALUES (new.rowid, new.id, new.title, new.description, new.design, new.notes);\nEND;\n-- (similar for UPDATE, DELETE)\n```\n\n**Trade-offs:**\n- Database size increase (~30-50% for text content)\n- Additional write overhead (trigger execution)\n- Better search capabilities (ranking, phrase search)\n\n**Decision needed:** Is full-text search a priority feature? Current LIKE search may be acceptable for most use cases.\n\n**Benchmark first:** Measure SearchIssues at 100K scale before implementing.","status":"open","priority":4,"issue_type":"feature","created_at":"2025-12-22T22:58:56.466121-08:00","updated_at":"2025-12-22T22:58:56.466121-08:00","dependencies":[{"issue_id":"bd-m964","depends_on_id":"bd-h0we","type":"discovered-from","created_at":"2025-12-22T22:58:56.466764-08:00","created_by":"daemon"}]} {"id":"bd-mh4w","title":"Rename 'bond' to 'spawn' for instantiation","description":"Rename the bd mol bond command to bd mol spawn for instantiating protos.\n \n- Rename molBondCmd to molSpawnCmd\n- Update command Use/Short/Long descriptions \n- Keep 'bond' available for the new bonding feature\n- Update all documentation references\n- Add 'protomolecule' as easter egg alias for 'proto'","status":"closed","priority":1,"issue_type":"task","created_at":"2025-12-21T00:58:44.529026-08:00","updated_at":"2025-12-21T01:19:42.942819-08:00","closed_at":"2025-12-21T01:19:42.942819-08:00","dependencies":[{"issue_id":"bd-mh4w","depends_on_id":"bd-o5xe","type":"parent-child","created_at":"2025-12-21T00:59:51.167902-08:00","created_by":"daemon"}]} {"id":"bd-mol-0qm","title":"mol-beads-release","description":"attached_args: Release v0.38.0 - execute each step in order, verify before proceeding to next\n\nRelease checklist for beads version 0.38.0.\n\nThis molecule ensures all release steps are completed properly.\nVariable: 0.38.0 - target version (e.g., 0.35.0)\n\n## Step: update-release-notes\nUpdate cmd/bd/info.go with release notes for 0.38.0.\n\nAdd a new VersionChange entry at the top of versionChanges slice:\n```go\n{\n Version: \"0.38.0\",\n Date: \"YYYY-MM-DD\",\n Changes: []string{\n \"NEW: Feature description\",\n \"FIX: Bug fix description\",\n \"IMPROVED: Enhancement description\",\n },\n},\n```\n\nRun `git log --oneline v\u003cprevious\u003e..HEAD` to see what changed.\n\n## Step: update-changelog\nUpdate CHANGELOG.md with detailed release notes.\n\nAdd a new section after [Unreleased]:\n```markdown\n## [0.38.0] - YYYY-MM-DD\n\n### Added\n- **Feature name** (issue-id) - Description\n\n### Changed\n- **Change description** (issue-id)\n\n### Fixed\n- **Bug fix** (issue-id) - Description\n```\n\nSort by importance, not chronologically.\nNeeds: update-release-notes\n\n## Step: bump-version\nRun the version bump script.\n\n```bash\n./scripts/bump-version.sh 0.38.0\n```\n\nThis updates version in all files:\n- cmd/bd/version.go\n- .claude-plugin/*.json\n- integrations/beads-mcp/pyproject.toml\n- npm-package/package.json\n- Hook templates\n\nNeeds: update-changelog\n\n## Step: run-tests\nRun tests and verify lint passes.\n\n```bash\ngo test -short ./...\n```\n\nCI will run full lint, but fix any obvious issues first.\nNeeds: bump-version\n\n## Step: commit-release\nCommit the release changes.\n\n```bash\ngit add -A\ngit commit -m \"chore: bump version to v0.38.0\"\n```\n\nNeeds: run-tests\n\n## Step: push-and-tag\nPush commit and create release tag.\n\n```bash\ngit push origin main\ngit tag v0.38.0\ngit push origin v0.38.0\n```\n\nThis triggers GitHub Actions release workflow.\nNeeds: commit-release\n\n## Step: wait-for-ci\nWait for GitHub Actions to complete.\n\nMonitor: https://github.com/steveyegge/beads/actions\n\nCI will:\n- Build binaries via GoReleaser\n- Create GitHub Release with assets\n- Publish to npm (@beads/bd)\n- Publish to PyPI (beads-mcp)\n- Update Homebrew tap\n\nWait until all jobs succeed (~5-10 min).\nNeeds: push-and-tag\n\n## Step: verify-release\nVerify the release is complete.\n\n```bash\n# Check GitHub release\ngh release view v0.38.0\n\n# Check Homebrew\nbrew update \u0026\u0026 brew info steveyegge/beads/bd\n\n# Check npm\nnpm view @beads/bd version\n\n# Check PyPI\npip index versions beads-mcp\n```\n\nNeeds: wait-for-ci\n\n## Step: update-local\nUpdate local installations.\n\n```bash\n# Upgrade Homebrew\nbrew upgrade steveyegge/beads/bd\n\n# Or install from source\n./scripts/bump-version.sh 0.38.0 --install\n\n# Install MCP locally\npip install -e integrations/beads-mcp\n\n# Restart daemons\npkill -f \"bd daemon\" || true\n```\n\nVerify: `bd --version` shows 0.38.0\nNeeds: verify-release\n\n## Step: manual-publish\n(Optional) Manual publish if CI failed.\n\n```bash\n# npm (requires npm login)\n./scripts/bump-version.sh 0.38.0 --publish-npm\n\n# PyPI (requires TWINE credentials)\n./scripts/bump-version.sh 0.38.0 --publish-pypi\n\n# Or both\n./scripts/bump-version.sh 0.38.0 --publish-all\n```\n\nOnly needed if CI publishing failed.\nNeeds: wait-for-ci","status":"tombstone","priority":2,"issue_type":"molecule","created_at":"2025-12-27T00:29:46.694495-08:00","updated_at":"2025-12-28T01:24:39.173644-08:00","deleted_at":"2025-12-28T01:24:39.173644-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"molecule"} +{"id":"bd-mol-0rq","title":"Verify npm package","description":"Confirm npm package published.\n\n```bash\nnpm show @beads/bd version\n```\n\nShould show 0.99.0-test.\n\nAlso check: https://www.npmjs.com/package/@beads/bd","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.467054-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-0x4","title":"Preflight: Pull latest","description":"Ensure we're up to date with origin.\n\n```bash\ngit pull --rebase\n```\n\nResolve any conflicts before proceeding.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.299205-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"Already up to date","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-117","title":"Restart daemons","description":"Restart bd daemons to pick up new version.\n\n```bash\nbd daemons killall\n```\n\nDaemons will auto-restart with new version on next bd command.\n\nVerify:\n```bash\nbd daemons list\n```","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:31:50.999837-08:00","updated_at":"2025-12-28T01:24:39.175701-08:00","dependencies":[{"issue_id":"bd-mol-117","depends_on_id":"bd-mol-9ea","type":"parent-child","created_at":"2025-12-27T19:31:51.011531-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-28T01:24:39.175701-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-172","title":"Review changes since last release","description":"Understand what's being released.\n\n```bash\ngit log $(git describe --tags --abbrev=0)..HEAD --oneline\n```\n\nCategorize changes:\n- Features (feat:)\n- Fixes (fix:)\n- Breaking changes\n- Documentation","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:31:50.996753-08:00","updated_at":"2025-12-28T01:24:39.177206-08:00","dependencies":[{"issue_id":"bd-mol-172","depends_on_id":"bd-mol-9ea","type":"parent-child","created_at":"2025-12-27T19:31:51.0023-08:00","created_by":"beads/crew/dave"},{"issue_id":"bd-mol-172","depends_on_id":"bd-mol-408","type":"blocks","created_at":"2025-12-27T19:31:51.013483-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-28T01:24:39.177206-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-1hi","title":"Wait for CI","description":"Monitor GitHub Actions for release completion.\n\nhttps://github.com/steveyegge/beads/actions\n\nExpected time: 5-10 minutes\n\nWatch for:\n- Build artifacts (all platforms)\n- Test suite pass\n- npm publish\n- PyPI publish","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.301021-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"CI and Release workflows passed","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-1s6","title":"Release complete","description":"Release v0.99.0-test is complete!\n\nSummary:\n- All version files updated\n- Git tag pushed\n- CI artifacts built\n- npm and PyPI packages published\n- Local installation updated\n- Daemons restarted\n\nOptional next steps:\n- Announce on social media\n- Update documentation site\n- Close related milestone","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.46773-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-29b","title":"Update local installation","description":"Update local bd to the new version.\n\nOption 1 - Homebrew:\n```bash\nbrew upgrade bd\n```\n\nOption 2 - Install script:\n```bash\ncurl -fsSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash\n```\n\nVerify:\n```bash\nbd --version\n```\n\nShould show 0.99.0-test.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.467393-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-392","title":"Update info.go versionChanges","description":"Add entry to versionChanges in cmd/bd/info.go.\n\nThis powers `bd info --whats-new` for agents.\n\n```go\n\"0.99.0-test\": {\n \"summary\": \"Brief description\",\n \"changes\": []string{\n \"Key change 1\",\n \"Key change 2\",\n },\n},\n```\n\nFocus on workflow-impacting changes agents need to know.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.465438-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-3u1","title":"Verify GitHub release","description":"Check the GitHub releases page.\n\nhttps://github.com/steveyegge/beads/releases/tag/v0.99.0-test\n\nVerify:\n- Release created\n- Binaries attached (linux, darwin, windows)\n- Checksums present","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.466851-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-408","title":"Preflight: Pull latest","description":"Ensure we're up to date with origin.\n\n```bash\ngit pull --rebase\n```\n\nResolve any conflicts before proceeding.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:31:50.996456-08:00","updated_at":"2025-12-29T12:39:45.160561-08:00","dependencies":[{"issue_id":"bd-mol-408","depends_on_id":"bd-mol-9ea","type":"parent-child","created_at":"2025-12-27T19:31:51.001603-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-29T12:39:45.160561-08:00","deleted_by":"daemon","delete_reason":"stale release mol steps","original_type":"task"} +{"id":"bd-mol-43m","title":"Review changes since last release","description":"Understand what's being released.\n\n```bash\ngit log $(git describe --tags --abbrev=0)..HEAD --oneline\n```\n\nCategorize changes:\n- Features (feat:)\n- Fixes (fix:)\n- Breaking changes\n- Documentation","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.465061-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-4bi","title":"Update local installation","description":"Update local bd to the new version.\n\nOption 1 - Homebrew:\n```bash\nbrew upgrade bd\n```\n\nOption 2 - Install script:\n```bash\ncurl -fsSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash\n```\n\nVerify:\n```bash\nbd --version\n```\n\nShould show 0.39.0.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:34:09.560034-08:00","updated_at":"2025-12-28T01:24:39.180156-08:00","dependencies":[{"issue_id":"bd-mol-4bi","depends_on_id":"bd-mol-5h4","type":"blocks","created_at":"2025-12-27T19:34:09.61331-08:00","created_by":"beads/crew/dave"},{"issue_id":"bd-mol-4bi","depends_on_id":"bd-mol-v3g","type":"blocks","created_at":"2025-12-27T19:34:09.615361-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-28T01:24:39.180156-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} +{"id":"bd-mol-4xo","title":"beads-release","description":"Beads release workflow - from version bump to verified release.\n\nThis formula orchestrates a complete release cycle:\n1. Preflight checks (clean git, up to date)\n2. Documentation updates (CHANGELOG, info.go)\n3. Version bump (all components)\n4. Git operations (commit, tag, push)\n5. CI verification (GitHub Actions)\n6. Artifact verification (GitHub, npm, PyPI)\n7. Local installation update\n8. Daemon restart\n\n## Usage\n\n```bash\nbd wisp create beads-release --var version=0.37.0\n```\n\nOr assign to a polecat:\n```bash\ngt sling beads/polecats/p1 --formula beads-release --var version=0.37.0\n```","status":"tombstone","priority":2,"issue_type":"epic","created_at":"2025-12-29T17:09:12.46423-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"epic"} {"id":"bd-mol-4zt","title":"Wait for CI","description":"Monitor GitHub Actions for release completion.\n\nhttps://github.com/steveyegge/beads/actions\n\nExpected time: 5-10 minutes\n\nWatch for:\n- Build artifacts (all platforms)\n- Test suite pass\n- npm publish\n- PyPI publish","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:34:09.559177-08:00","updated_at":"2025-12-28T01:24:39.181582-08:00","dependencies":[{"issue_id":"bd-mol-4zt","depends_on_id":"bd-mol-9ry","type":"blocks","created_at":"2025-12-27T19:34:09.605511-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-28T01:24:39.181582-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} +{"id":"bd-mol-54r","title":"Run bump-version.sh","description":"Update all component versions atomically.\n\n```bash\n./scripts/bump-version.sh 0.99.0-test\n```\n\nThis updates:\n- cmd/bd/version.go\n- .claude-plugin/*.json\n- integrations/beads-mcp/pyproject.toml\n- integrations/beads-mcp/src/beads_mcp/__init__.py\n- npm-package/package.json\n- Hook templates\n- README.md\n- CHANGELOG.md (adds date)","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.465615-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-5h4","title":"Verify npm package","description":"Confirm npm package published.\n\n```bash\nnpm show @beads/bd version\n```\n\nShould show 0.39.0.\n\nAlso check: https://www.npmjs.com/package/@beads/bd","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:34:09.55961-08:00","updated_at":"2025-12-28T01:24:39.182917-08:00","dependencies":[{"issue_id":"bd-mol-5h4","depends_on_id":"bd-mol-68e","type":"blocks","created_at":"2025-12-27T19:34:09.609272-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-28T01:24:39.182917-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-678","title":"Create release tag","description":"Create annotated git tag.\n\n```bash\ngit tag -a v0.39.0 -m \"Release v0.39.0\"\n```\n\nVerify: `git tag -l | tail -5`","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:31:50.998148-08:00","updated_at":"2025-12-29T12:39:45.162388-08:00","dependencies":[{"issue_id":"bd-mol-678","depends_on_id":"bd-mol-9ea","type":"parent-child","created_at":"2025-12-27T19:31:51.006262-08:00","created_by":"beads/crew/dave"},{"issue_id":"bd-mol-678","depends_on_id":"bd-mol-8ep","type":"blocks","created_at":"2025-12-27T19:31:51.018908-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-29T12:39:45.162388-08:00","deleted_by":"daemon","delete_reason":"stale release mol steps","original_type":"task"} {"id":"bd-mol-68e","title":"Verify GitHub release","description":"Check the GitHub releases page.\n\nhttps://github.com/steveyegge/beads/releases/tag/v0.39.0\n\nVerify:\n- Release created\n- Binaries attached (linux, darwin, windows)\n- Checksums present","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:34:09.559402-08:00","updated_at":"2025-12-28T01:24:39.184285-08:00","dependencies":[{"issue_id":"bd-mol-68e","depends_on_id":"bd-mol-4zt","type":"blocks","created_at":"2025-12-27T19:34:09.607353-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-28T01:24:39.184285-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-7ix","title":"Preflight: Check git status","description":"Ensure working tree is clean before starting release.\n\n```bash\ngit status\n```\n\nIf there are uncommitted changes, either:\n- Commit them first\n- Stash them: `git stash`\n- Abort and resolve","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:34:09.556672-08:00","updated_at":"2025-12-28T01:24:39.185583-08:00","deleted_at":"2025-12-28T01:24:39.185583-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-7tp","title":"Push to main","description":"Push the release commit to origin.\n\n```bash\ngit push origin main\n```\n\nIf rejected, someone else pushed. Pull, rebase, try again.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:34:09.558743-08:00","updated_at":"2025-12-28T01:24:39.186846-08:00","deleted_at":"2025-12-28T01:24:39.186846-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} +{"id":"bd-mol-7yd","title":"Update CHANGELOG.md","description":"Write the [Unreleased] section with all changes for 0.99.0-test.\n\nFormat: Keep a Changelog (https://keepachangelog.com)\n\nSections:\n- ### Added\n- ### Changed\n- ### Fixed\n- ### Documentation\n\nThe bump script will stamp the date automatically.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.465251-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-83s","title":"Commit release","description":"Stage and commit all version changes.\n\n```bash\ngit add -A\ngit commit -m \"chore: Bump version to 0.41.0\"\n```\n\nReview the commit to ensure all expected files are included.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.300302-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"Release committed","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-8ep","title":"Commit release","description":"Stage and commit all version changes.\n\n```bash\ngit add -A\ngit commit -m \"chore: Bump version to 0.39.0\"\n```\n\nReview the commit to ensure all expected files are included.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:31:50.99794-08:00","updated_at":"2025-12-28T01:24:39.188062-08:00","dependencies":[{"issue_id":"bd-mol-8ep","depends_on_id":"bd-mol-9ea","type":"parent-child","created_at":"2025-12-27T19:31:51.005611-08:00","created_by":"beads/crew/dave"},{"issue_id":"bd-mol-8ep","depends_on_id":"bd-mol-mht","type":"blocks","created_at":"2025-12-27T19:31:51.017961-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-28T01:24:39.188062-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-8sw","title":"Verify PyPI package","description":"Confirm PyPI package published.\n\n```bash\npip index versions beads-mcp 2\u003e/dev/null | head -3\n```\n\nOr check: https://pypi.org/project/beads-mcp/\n\nShould show 0.41.0.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.301544-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"PyPI: beads-mcp 0.41.0 published","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} @@ -499,13 +508,20 @@ {"id":"bd-mol-9ry","title":"Push release tag","description":"Push the version tag to trigger CI release.\n\n```bash\ngit push origin v0.39.0\n```\n\nThis triggers GitHub Actions to build artifacts and publish.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:34:09.55896-08:00","updated_at":"2025-12-28T01:24:39.191874-08:00","dependencies":[{"issue_id":"bd-mol-9ry","depends_on_id":"bd-mol-7tp","type":"blocks","created_at":"2025-12-27T19:34:09.603722-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-28T01:24:39.191874-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-9v7","title":"Update local installation","description":"Update local bd to the new version.\n\nOption 1 - Homebrew:\n```bash\nbrew upgrade bd\n```\n\nOption 2 - Install script:\n```bash\ncurl -fsSL https://raw.githubusercontent.com/steveyegge/beads/main/scripts/install.sh | bash\n```\n\nVerify:\n```bash\nbd --version\n```\n\nShould show 0.41.0.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.301716-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"bd 0.41.0 installed to go/bin and .local/bin","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-a78","title":"Restart daemons","description":"Restart bd daemons to pick up new version.\n\n```bash\nbd daemons killall\n```\n\nDaemons will auto-restart with new version on next bd command.\n\nVerify:\n```bash\nbd daemons list\n```","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.301896-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"5 daemons stopped (will auto-restart)","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-aj8","title":"Preflight: Check git status","description":"Ensure working tree is clean before starting release.\n\n```bash\ngit status\n```\n\nIf there are uncommitted changes, either:\n- Commit them first\n- Stash them: `git stash`\n- Abort and resolve","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.464663-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-bag","title":"Preflight: Check git status","description":"Ensure working tree is clean before starting release.\n\n```bash\ngit status\n```\n\nIf there are uncommitted changes, either:\n- Commit them first\n- Stash them: `git stash`\n- Abort and resolve","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.298999-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"Git status clean","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-bfs","title":"Run bump-version.sh","description":"Update all component versions atomically.\n\n```bash\n./scripts/bump-version.sh 0.39.0\n```\n\nThis updates:\n- cmd/bd/version.go\n- .claude-plugin/*.json\n- integrations/beads-mcp/pyproject.toml\n- integrations/beads-mcp/src/beads_mcp/__init__.py\n- npm-package/package.json\n- Hook templates\n- README.md\n- CHANGELOG.md (adds date)","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:34:09.557864-08:00","updated_at":"2025-12-28T01:24:39.192947-08:00","deleted_at":"2025-12-28T01:24:39.192947-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} +{"id":"bd-mol-bv6","title":"Push to main","description":"Push the release commit to origin.\n\n```bash\ngit push origin main\n```\n\nIf rejected, someone else pushed. Pull, rebase, try again.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.466318-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-c4h","title":"Verify version consistency","description":"Confirm all versions match 0.41.0.\n\n```bash\ngrep 'Version = ' cmd/bd/version.go\njq -r '.version' .claude-plugin/plugin.json\njq -r '.version' npm-package/package.json\ngrep 'version = ' integrations/beads-mcp/pyproject.toml\n```\n\nAll should show 0.41.0.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.300123-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"All versions match 0.41.0","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-d3i","title":"Preflight: Pull latest","description":"Ensure we're up to date with origin.\n\n```bash\ngit pull --rebase\n```\n\nResolve any conflicts before proceeding.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.464865-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-fuz","title":"Push release tag","description":"Push the version tag to trigger CI release.\n\n```bash\ngit push origin v0.99.0-test\n```\n\nThis triggers GitHub Actions to build artifacts and publish.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.466489-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-hkf","title":"Release complete","description":"Release v0.41.0 is complete!\n\nSummary:\n- All version files updated\n- Git tag pushed\n- CI artifacts built\n- npm and PyPI packages published\n- Local installation updated\n- Daemons restarted\n\nOptional next steps:\n- Announce on social media\n- Update documentation site\n- Close related milestone","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.302071-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"bd v0.41.0 release complete","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-hvu","title":"Create release tag","description":"Create annotated git tag.\n\n```bash\ngit tag -a v0.99.0-test -m \"Release v0.99.0-test\"\n```\n\nVerify: `git tag -l | tail -5`","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.466141-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-j67","title":"Push to main","description":"Push the release commit to origin.\n\n```bash\ngit push origin main\n```\n\nIf rejected, someone else pushed. Pull, rebase, try again.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.300677-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"Pushed to main","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-jiq","title":"Verify npm package","description":"Confirm npm package published.\n\n```bash\nnpm show @beads/bd version\n```\n\nShould show 0.41.0.\n\nAlso check: https://www.npmjs.com/package/@beads/bd","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.30137-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"npm: @beads/bd 0.41.0 published","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-jzn","title":"Wait for CI","description":"Monitor GitHub Actions for release completion.\n\nhttps://github.com/steveyegge/beads/actions\n\nExpected time: 5-10 minutes\n\nWatch for:\n- Build artifacts (all platforms)\n- Test suite pass\n- npm publish\n- PyPI publish","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.466679-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-k9f","title":"Verify GitHub release","description":"Check the GitHub releases page.\n\nhttps://github.com/steveyegge/beads/releases/tag/v0.41.0\n\nVerify:\n- Release created\n- Binaries attached (linux, darwin, windows)\n- Checksums present","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.3012-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"Release published with all platform binaries","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-lks","title":"Verify PyPI package","description":"Confirm PyPI package published.\n\n```bash\npip index versions beads-mcp 2\u003e/dev/null | head -3\n```\n\nOr check: https://pypi.org/project/beads-mcp/\n\nShould show 0.99.0-test.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.467224-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-mht","title":"Verify version consistency","description":"Confirm all versions match 0.39.0.\n\n```bash\ngrep 'Version = ' cmd/bd/version.go\njq -r '.version' .claude-plugin/plugin.json\njq -r '.version' npm-package/package.json\ngrep 'version = ' integrations/beads-mcp/pyproject.toml\n```\n\nAll should show 0.39.0.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:31:50.997714-08:00","updated_at":"2025-12-28T01:24:39.198003-08:00","dependencies":[{"issue_id":"bd-mol-mht","depends_on_id":"bd-mol-9ea","type":"parent-child","created_at":"2025-12-27T19:31:51.00493-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-28T01:24:39.198003-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-mwh","title":"Run bump-version.sh","description":"Update all component versions atomically.\n\n```bash\n./scripts/bump-version.sh 0.41.0\n```\n\nThis updates:\n- cmd/bd/version.go\n- .claude-plugin/*.json\n- integrations/beads-mcp/pyproject.toml\n- integrations/beads-mcp/src/beads_mcp/__init__.py\n- npm-package/package.json\n- Hook templates\n- README.md\n- CHANGELOG.md (adds date)","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.299951-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"Version files updated to 0.41.0","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-p7i","title":"beads-release","description":"Beads release workflow - from version bump to verified release.\n\nThis formula orchestrates a complete release cycle:\n1. Preflight checks (clean git, up to date)\n2. Documentation updates (CHANGELOG, info.go)\n3. Version bump (all components)\n4. Git operations (commit, tag, push)\n5. CI verification (GitHub Actions)\n6. Artifact verification (GitHub, npm, PyPI)\n7. Local installation update\n8. Daemon restart\n\n## Usage\n\n```bash\nbd wisp create beads-release --var version=0.37.0\n```\n\nOr assign to a polecat:\n```bash\ngt sling beads/polecats/p1 --formula beads-release --var version=0.37.0\n```","status":"tombstone","priority":2,"issue_type":"epic","assignee":"beads/crew/emma","created_at":"2025-12-29T16:29:32.298557-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"v0.41.0 released to GitHub, PyPI, and npm","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"epic"} @@ -514,6 +530,8 @@ {"id":"bd-mol-v3g","title":"Verify PyPI package","description":"Confirm PyPI package published.\n\n```bash\npip index versions beads-mcp 2\u003e/dev/null | head -3\n```\n\nOr check: https://pypi.org/project/beads-mcp/\n\nShould show 0.39.0.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:34:09.559818-08:00","updated_at":"2025-12-28T01:24:39.202837-08:00","dependencies":[{"issue_id":"bd-mol-v3g","depends_on_id":"bd-mol-68e","type":"blocks","created_at":"2025-12-27T19:34:09.611251-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-28T01:24:39.202837-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-vk9","title":"Push release tag","description":"Push the version tag to trigger CI release.\n\n```bash\ngit push origin v0.41.0\n```\n\nThis triggers GitHub Actions to build artifacts and publish.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.300854-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"Tag v0.41.0 pushed - CI triggered","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-vo3","title":"Create release tag","description":"Create annotated git tag.\n\n```bash\ngit tag -a v0.41.0 -m \"Release v0.41.0\"\n```\n\nVerify: `git tag -l | tail -5`","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.300491-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"Tag v0.41.0 created","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-vq9","title":"Restart daemons","description":"Restart bd daemons to pick up new version.\n\n```bash\nbd daemons killall\n```\n\nDaemons will auto-restart with new version on next bd command.\n\nVerify:\n```bash\nbd daemons list\n```","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.46756-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} +{"id":"bd-mol-w8a","title":"Commit release","description":"Stage and commit all version changes.\n\n```bash\ngit add -A\ngit commit -m \"chore: Bump version to 0.99.0-test\"\n```\n\nReview the commit to ensure all expected files are included.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.465964-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-x56","title":"Update CHANGELOG.md","description":"Write the [Unreleased] section with all changes for 0.41.0.\n\nFormat: Keep a Changelog (https://keepachangelog.com)\n\nSections:\n- ### Added\n- ### Changed\n- ### Fixed\n- ### Documentation\n\nThe bump script will stamp the date automatically.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.29958-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"Updated CHANGELOG with 80+ commits","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-xga","title":"mol-beads-release","description":"Release checklist for beads version 0.37.0.\n\nThis molecule ensures all release steps are completed properly.\nVariable: 0.37.0 - target version (e.g., 0.35.0)\n\n## Step: update-release-notes\nUpdate cmd/bd/info.go with release notes for 0.37.0.\n\nAdd a new VersionChange entry at the top of versionChanges slice:\n```go\n{\n Version: \"0.37.0\",\n Date: \"YYYY-MM-DD\",\n Changes: []string{\n \"NEW: Feature description\",\n \"FIX: Bug fix description\",\n \"IMPROVED: Enhancement description\",\n },\n},\n```\n\nRun `git log --oneline v\u003cprevious\u003e..HEAD` to see what changed.\n\n## Step: update-changelog\nUpdate CHANGELOG.md with detailed release notes.\n\nAdd a new section after [Unreleased]:\n```markdown\n## [0.37.0] - YYYY-MM-DD\n\n### Added\n- **Feature name** (issue-id) - Description\n\n### Changed\n- **Change description** (issue-id)\n\n### Fixed\n- **Bug fix** (issue-id) - Description\n```\n\nSort by importance, not chronologically.\nNeeds: update-release-notes\n\n## Step: bump-version\nRun the version bump script.\n\n```bash\n./scripts/bump-version.sh 0.37.0\n```\n\nThis updates version in all files:\n- cmd/bd/version.go\n- .claude-plugin/*.json\n- integrations/beads-mcp/pyproject.toml\n- npm-package/package.json\n- Hook templates\n\nNeeds: update-changelog\n\n## Step: run-tests\nRun tests and verify lint passes.\n\n```bash\ngo test -short ./...\n```\n\nCI will run full lint, but fix any obvious issues first.\nNeeds: bump-version\n\n## Step: commit-release\nCommit the release changes.\n\n```bash\ngit add -A\ngit commit -m \"chore: bump version to v0.37.0\"\n```\n\nNeeds: run-tests\n\n## Step: push-and-tag\nPush commit and create release tag.\n\n```bash\ngit push origin main\ngit tag v0.37.0\ngit push origin v0.37.0\n```\n\nThis triggers GitHub Actions release workflow.\nNeeds: commit-release\n\n## Step: wait-for-ci\nWait for GitHub Actions to complete.\n\nMonitor: https://github.com/steveyegge/beads/actions\n\nCI will:\n- Build binaries via GoReleaser\n- Create GitHub Release with assets\n- Publish to npm (@beads/bd)\n- Publish to PyPI (beads-mcp)\n- Update Homebrew tap\n\nWait until all jobs succeed (~5-10 min).\nNeeds: push-and-tag\n\n## Step: verify-release\nVerify the release is complete.\n\n```bash\n# Check GitHub release\ngh release view v0.37.0\n\n# Check Homebrew\nbrew update \u0026\u0026 brew info steveyegge/beads/bd\n\n# Check npm\nnpm view @beads/bd version\n\n# Check PyPI\npip index versions beads-mcp\n```\n\nNeeds: wait-for-ci\n\n## Step: update-local\nUpdate local installations.\n\n```bash\n# Upgrade Homebrew\nbrew upgrade steveyegge/beads/bd\n\n# Or install from source\n./scripts/bump-version.sh 0.37.0 --install\n\n# Install MCP locally\npip install -e integrations/beads-mcp\n\n# Restart daemons\npkill -f \"bd daemon\" || true\n```\n\nVerify: `bd --version` shows 0.37.0\nNeeds: verify-release\n\n## Step: manual-publish\n(Optional) Manual publish if CI failed.\n\n```bash\n# npm (requires npm login)\n./scripts/bump-version.sh 0.37.0 --publish-npm\n\n# PyPI (requires TWINE credentials)\n./scripts/bump-version.sh 0.37.0 --publish-pypi\n\n# Or both\n./scripts/bump-version.sh 0.37.0 --publish-all\n```\n\nOnly needed if CI publishing failed.\nNeeds: wait-for-ci","status":"tombstone","priority":2,"issue_type":"molecule","created_at":"2025-12-26T01:09:49.836708-08:00","updated_at":"2025-12-28T01:24:39.204268-08:00","deleted_at":"2025-12-28T01:24:39.204268-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"molecule"} {"id":"bd-mol-xga.1","title":"Update cmd/bd/info.go with release notes for 0.37.0.","description":"Update cmd/bd/info.go with release notes for 0.37.0.\n\nAdd a new VersionChange entry at the top of versionChanges slice:\n```go\n{\n Version: \"0.37.0\",\n Date: \"YYYY-MM-DD\",\n Changes: []string{\n \"NEW: Feature description\",\n \"FIX: Bug fix description\",\n \"IMPROVED: Enhancement description\",\n },\n},\n```\n\nRun `git log --oneline v\u003cprevious\u003e..HEAD` to see what changed.\n\ninstantiated_from: bd-mol-xga\nstep: update-release-notes","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-26T01:10:16.829377-08:00","updated_at":"2025-12-28T01:24:39.20498-08:00","dependencies":[{"issue_id":"bd-mol-xga.1","depends_on_id":"bd-mol-xga","type":"parent-child","created_at":"2025-12-26T01:10:16.829843-08:00","created_by":"daemon"}],"deleted_at":"2025-12-28T01:24:39.20498-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} @@ -526,6 +544,7 @@ {"id":"bd-mol-xga.7","title":"Wait for GitHub Actions to complete.","description":"Wait for GitHub Actions to complete.\n\nMonitor: https://github.com/steveyegge/beads/actions\n\nCI will:\n- Build binaries via GoReleaser\n- Create GitHub Release with assets\n- Publish to npm (@beads/bd)\n- Publish to PyPI (beads-mcp)\n- Update Homebrew tap\n\nWait until all jobs succeed (~5-10 min).\n\ninstantiated_from: bd-mol-xga\nstep: wait-for-ci","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-26T01:10:17.019226-08:00","updated_at":"2025-12-28T01:24:39.20993-08:00","dependencies":[{"issue_id":"bd-mol-xga.7","depends_on_id":"bd-mol-xga","type":"parent-child","created_at":"2025-12-26T01:10:17.019655-08:00","created_by":"daemon"},{"issue_id":"bd-mol-xga.7","depends_on_id":"bd-mol-xga.6","type":"blocks","created_at":"2025-12-26T01:10:17.296023-08:00","created_by":"daemon"}],"deleted_at":"2025-12-28T01:24:39.20993-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-xga.8","title":"Verify the release is complete.","description":"Verify the release is complete.\n\n```bash\n# Check GitHub release\ngh release view v0.37.0\n\n# Check Homebrew\nbrew update \u0026\u0026 brew info steveyegge/beads/bd\n\n# Check npm\nnpm view @beads/bd version\n\n# Check PyPI\npip index versions beads-mcp\n```\n\ninstantiated_from: bd-mol-xga\nstep: verify-release","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-26T01:10:17.049777-08:00","updated_at":"2025-12-28T01:24:39.210624-08:00","dependencies":[{"issue_id":"bd-mol-xga.8","depends_on_id":"bd-mol-xga","type":"parent-child","created_at":"2025-12-26T01:10:17.050108-08:00","created_by":"daemon"},{"issue_id":"bd-mol-xga.8","depends_on_id":"bd-mol-xga.7","type":"blocks","created_at":"2025-12-26T01:10:17.328309-08:00","created_by":"daemon"}],"deleted_at":"2025-12-28T01:24:39.210624-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-xga.9","title":"Update local installations.","description":"Update local installations.\n\n```bash\n# Upgrade Homebrew\nbrew upgrade steveyegge/beads/bd\n\n# Or install from source\n./scripts/bump-version.sh 0.37.0 --install\n\n# Install MCP locally\npip install -e integrations/beads-mcp\n\n# Restart daemons\npkill -f \"bd daemon\" || true\n```\n\nVerify: `bd --version` shows 0.37.0\n\ninstantiated_from: bd-mol-xga\nstep: update-local","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-26T01:10:17.081154-08:00","updated_at":"2025-12-28T01:24:39.21136-08:00","dependencies":[{"issue_id":"bd-mol-xga.9","depends_on_id":"bd-mol-xga","type":"parent-child","created_at":"2025-12-26T01:10:17.081536-08:00","created_by":"daemon"},{"issue_id":"bd-mol-xga.9","depends_on_id":"bd-mol-xga.8","type":"blocks","created_at":"2025-12-26T01:10:17.354246-08:00","created_by":"daemon"}],"deleted_at":"2025-12-28T01:24:39.21136-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} +{"id":"bd-mol-xxg","title":"Verify version consistency","description":"Confirm all versions match 0.99.0-test.\n\n```bash\ngrep 'Version = ' cmd/bd/version.go\njq -r '.version' .claude-plugin/plugin.json\njq -r '.version' npm-package/package.json\ngrep 'version = ' integrations/beads-mcp/pyproject.toml\n```\n\nAll should show 0.99.0-test.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T17:09:12.46579-08:00","updated_at":"2025-12-29T17:09:32.480437-08:00","deleted_at":"2025-12-29T17:09:32.480437-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mol-yxv","title":"Update info.go versionChanges","description":"Add entry to versionChanges in cmd/bd/info.go.\n\nThis powers `bd info --whats-new` for agents.\n\n```go\n\"0.39.0\": {\n \"summary\": \"Brief description\",\n \"changes\": []string{\n \"Key change 1\",\n \"Key change 2\",\n },\n},\n```\n\nFocus on workflow-impacting changes agents need to know.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-27T19:34:09.557636-08:00","updated_at":"2025-12-28T01:24:39.212106-08:00","dependencies":[{"issue_id":"bd-mol-yxv","depends_on_id":"bd-mol-937","type":"blocks","created_at":"2025-12-27T19:34:09.594033-08:00","created_by":"beads/crew/dave"}],"deleted_at":"2025-12-28T01:24:39.212106-08:00","deleted_by":"daemon","delete_reason":"delete","original_type":"task"} {"id":"bd-mol-z5v","title":"Update info.go versionChanges","description":"Add entry to versionChanges in cmd/bd/info.go.\n\nThis powers `bd info --whats-new` for agents.\n\n```go\n\"0.41.0\": {\n \"summary\": \"Brief description\",\n \"changes\": []string{\n \"Key change 1\",\n \"Key change 2\",\n },\n},\n```\n\nFocus on workflow-impacting changes agents need to know.","status":"tombstone","priority":2,"issue_type":"task","created_at":"2025-12-29T16:29:32.299762-08:00","updated_at":"2025-12-29T17:02:15.202404-08:00","close_reason":"Added v0.41.0 to versionChanges","deleted_at":"2025-12-29T17:02:15.202404-08:00","deleted_by":"batch delete","delete_reason":"batch delete","original_type":"task"} {"id":"bd-mql4","title":"getLocalSyncBranch silently ignores YAML parse errors","description":"In autoimport.go:170-172, YAML parsing errors are silently ignored. If a user has malformed YAML in config.yaml, sync-branch will just silently be empty with no feedback.\n\nRecommendation: Add debug logging since this function is only called during auto-import, and debugging silent failures is painful.\n\nAdd: debug.Logf(\"Warning: failed to parse config.yaml: %v\", err)","status":"open","priority":4,"issue_type":"task","created_at":"2025-12-07T02:03:44.217728-08:00","updated_at":"2025-12-07T02:03:44.217728-08:00"}