Andrew Fong
770e09004d
Add docs/ directory to links ( #242 )
...
* Add docs/ prefix to links
Some old links that broke when moving docs probably
* Fix a few more spots
Add `docs/` directory to some more broken links
2025-11-07 00:24:00 -08:00
Steve Yegge
0106371e12
Prevent nested .beads directories (bd-eqjc)
...
Add validation in bd init to detect if current directory is inside
a .beads directory and exit with clear error message. This prevents
the common issue of accidentally creating .beads/.beads/ nested
directories.
2025-11-06 22:23:54 -08:00
Steve Yegge
769cd7b1d3
bd sync: 2025-11-06 22:23:46
2025-11-06 22:23:46 -08:00
Steve Yegge
ef8585bd2e
feat: Add automatic Homebrew formula update to release workflow
2025-11-06 20:35:25 -08:00
Steve Yegge
626cd44a28
chore: Bump version to 0.22.1
...
Updated all component versions:
- bd CLI: 0.22.0 → 0.22.1
- Plugin: 0.22.0 → 0.22.1
- MCP server: 0.22.0 → 0.22.1
- npm package: 0.22.0 → 0.22.1
- Documentation: 0.22.0 → 0.22.1
Generated by scripts/bump-version.sh
2025-11-06 20:25:36 -08:00
Steve Yegge
e47d258f54
fix: Handle missing PLUGIN.md in git add during version bump
2025-11-06 20:25:31 -08:00
Steve Yegge
5fc55489af
fix: Make PLUGIN.md update optional in bump-version.sh
2025-11-06 20:24:34 -08:00
Steve Yegge
559d1ecf65
docs: Add CHANGELOG entry for v0.22.1
2025-11-06 20:24:09 -08:00
Steve Yegge
6b25ad1122
bd sync: 2025-11-06 20:15:41
2025-11-06 20:15:41 -08:00
Steve Yegge
ca5e32e5f2
Remove commented-out code
...
Cleaned up old bd-160 export hash tracking code that was disabled.
Removed unnecessary test comments.
Amp-Thread-ID: https://ampcode.com/threads/T-de38a626-a425-414f-92d8-102bc1519c8b
Co-authored-by: Amp <amp@ampcode.com >
2025-11-06 20:15:34 -08:00
Steve Yegge
95cbcf4fbc
Centralize BD_DEBUG logging into internal/debug package
...
- Created internal/debug package with Enabled(), Logf(), Printf()
- Added comprehensive unit tests for debug package
- Replaced 50+ scattered os.Getenv("BD_DEBUG") checks across 9 files
- Centralized debug logic for easier maintenance and testing
- All tests passing, behavior unchanged
Closes bd-fb95094c.5
2025-11-06 20:14:34 -08:00
Steve Yegge
04621fe731
bd sync: close bd-fb95094c.7
2025-11-06 20:07:12 -08:00
Steve Yegge
b655b29ad9
Extract SQLite migrations into separate files (bd-fb95094c.7)
...
- Created migrations/ subdirectory with 14 individual migration files
- Reduced migrations.go from 680 to 98 lines (orchestration only)
- Updated test imports to use migrations package
- Updated MULTI_REPO_HYDRATION.md documentation
- All tests passing
2025-11-06 20:06:45 -08:00
Steve Yegge
0095464e83
bd sync: 2025-11-06 20:00:09
2025-11-06 20:00:09 -08:00
Steve Yegge
9520e7a2e2
Extract normalizeLabels to internal/util/strings.go
...
- Created internal/util/strings.go with NormalizeLabels function
- Added comprehensive tests in internal/util/strings_test.go
- Updated internal/rpc/server_issues_epics.go to use util.NormalizeLabels
- Updated cmd/bd/list.go and cmd/bd/ready.go to use util.NormalizeLabels
- Updated cmd/bd/list_test.go to use util.NormalizeLabels
- Removed duplicate implementations
- All tests pass
Fixes bd-fb95094c.6
Amp-Thread-ID: https://ampcode.com/threads/T-edb3c286-cd60-4231-94cd-edaf75d84a3d
Co-authored-by: Amp <amp@ampcode.com >
2025-11-06 20:00:08 -08:00
Steve Yegge
5044ec3fdf
Merge remote changes
...
Amp-Thread-ID: https://ampcode.com/threads/T-edb3c286-cd60-4231-94cd-edaf75d84a3d
Co-authored-by: Amp <amp@ampcode.com >
2025-11-06 20:00:01 -08:00
Steve Yegge
9d421e77e6
bd sync: 2025-11-06 19:59:52
2025-11-06 19:59:52 -08:00
Steve Yegge
78c9d744cb
Add edge case tests for getMultiRepoJSONLPaths()
...
- Test empty path handling (returns nil for single-repo mode)
- Test duplicate paths (documents non-deduping behavior)
- Test paths with spaces (handles correctly)
- Test relative paths (not normalized, used as-is)
- Test tilde expansion (not expanded, used literally)
Closes bd-kdoh
Amp-Thread-ID: https://ampcode.com/threads/T-ac07d8fd-51a3-4511-a477-d7041b950ea8
Co-authored-by: Amp <amp@ampcode.com >
2025-11-06 19:54:59 -08:00
Steve Yegge
b9607e1814
Update JSONL after closing bd-4b6u
...
Amp-Thread-ID: https://ampcode.com/threads/T-645ccbf4-a5b6-44a1-bbd9-913447e17b49
Co-authored-by: Amp <amp@ampcode.com >
2025-11-06 19:54:00 -08:00
Steve Yegge
e73f89edbe
Add multi-repo patterns documentation for AI agents (bd-4b6u)
...
- Create docs/MULTI_REPO_AGENTS.md with comprehensive multi-repo patterns
- Document config options, routing behavior, troubleshooting, best practices
- Update AGENTS.md to reference new doc
- Update README.md documentation index
Amp-Thread-ID: https://ampcode.com/threads/T-645ccbf4-a5b6-44a1-bbd9-913447e17b49
Co-authored-by: Amp <amp@ampcode.com >
2025-11-06 19:53:29 -08:00
Steve Yegge
6960feb93d
Update beads.jsonl (bd-bc2c6191 closed)
2025-11-06 19:51:31 -08:00
Steve Yegge
ac1752d87d
Complete cache audit (bd-bc2c6191)
...
- Created CACHE_AUDIT.md with comprehensive findings
- Confirmed cache was already removed in commit 322ab63
- Fixed stale comment in internal/rpc/server.go
- All tests passing, MCP multi-repo working correctly
- Closed bd-bc2c6191
Amp-Thread-ID: https://ampcode.com/threads/T-c1286278-b1ff-4b8a-b090-2b3a1c38c9dd
Co-authored-by: Amp <amp@ampcode.com >
2025-11-06 19:51:16 -08:00
Steve Yegge
59e0238c48
Ignore snapshot metadata files
2025-11-06 19:43:37 -08:00
Steve Yegge
b15d4c7340
Update bd JSONL
2025-11-06 19:42:48 -08:00
Steve Yegge
eb30e94220
Configure beads merge driver for intelligent JSONL merging
2025-11-06 19:42:32 -08:00
Steve Yegge
99acd03e32
Update beads.jsonl (close bd-iov0, bd-aec5439f, bd-fd8753d9)
...
Amp-Thread-ID: https://ampcode.com/threads/T-71887707-4d93-4070-869e-b46b32ab8b6a
Co-authored-by: Amp <amp@ampcode.com >
2025-11-06 19:42:27 -08:00
Steve Yegge
2c0102048a
Merge branch 'main' of github.com:steveyegge/beads
2025-11-06 19:42:06 -08:00
Steve Yegge
9c3ab7fba9
Document -short flag, update linting baseline, clarify bd edit MCP exclusion
...
- Enhanced CONTRIBUTING.md with -short flag usage guidance
- Updated LINTING.md: 22 issues baseline (down from 34)
- Added MCP exclusion note for bd edit command in AGENTS.md
Closes bd-iov0, bd-aec5439f, bd-fd8753d9
2025-11-06 19:42:01 -08:00
Steve Yegge
20eafa103a
Merge branch 'main' of github.com:steveyegge/beads
...
# Conflicts:
# .beads/beads.jsonl
2025-11-06 19:41:52 -08:00
Steve Yegge
7afb1439f2
Cache getMultiRepoJSONLPaths() to avoid redundant calls (bd-we4p)
...
- Call getMultiRepoJSONLPaths() once at sync start instead of 3 times
- Eliminates redundant config lookups and path constructions
- Performance optimization for multi-repo workflows
2025-11-06 19:41:38 -08:00
Steve Yegge
5c1f441c2a
Fix bd-ng56: add raw string equality short-circuit before jsonEquals
...
Optimization to avoid JSON unmarshalling when strings match exactly (common case).
Simple 1-line change instead of complex streaming rewrite for P3 issue.
2025-11-06 19:41:27 -08:00
Steve Yegge
581294f98b
bd sync: 2025-11-06 19:40:52
2025-11-06 19:40:52 -08:00
Steve Yegge
244367c351
Update bd JSONL
2025-11-06 19:37:54 -08:00
Steve Yegge
729ab60ef5
Update beads.jsonl - close bd-2997
2025-11-06 19:36:32 -08:00
Steve Yegge
a891ebe79e
Add snapshot versioning and timestamp validation (bd-2997)
...
- Add snapshotMetadata struct with version, timestamp, commit SHA
- Validate snapshots are <1 hour old, from compatible version
- Auto-cleanup stale snapshots from interrupted syncs
- All snapshot functions now write/validate metadata files
- Fixes issue where crash/kill -9 left stale snapshots
2025-11-06 19:36:13 -08:00
Steve Yegge
621ffdb594
Update beads.jsonl (close bd-irq6)
...
Amp-Thread-ID: https://ampcode.com/threads/T-71887707-4d93-4070-869e-b46b32ab8b6a
Co-authored-by: Amp <amp@ampcode.com >
2025-11-06 19:36:06 -08:00
Steve Yegge
a7ec8a2eaa
Remove unused internal/daemonrunner/ package (~1,500 LOC)
...
Removed old global daemon infrastructure that was replaced by per-workspace
daemon architecture. Package had no imports and all functions were unreachable.
Closes bd-irq6
2025-11-06 19:35:43 -08:00
Steve Yegge
7672473bbd
Update bd JSONL
2025-11-06 19:25:03 -08:00
Steve Yegge
fb17b4286d
Update issue metadata for bd-rb75 and bd-6ku3 closures
2025-11-06 19:23:45 -08:00
Steve Yegge
807e48966a
Merge remote changes and fix isHashID for Base36
2025-11-06 19:23:06 -08:00
Steve Yegge
c9247312df
Fix bd-6ku3: Update isHashID to recognize Base36 hash IDs
...
- Changed pattern from [a-f] (hex) to [a-z] (Base36)
- Added length check: 5+ chars = hash ID (sequential IDs rarely exceed 4 digits)
- Fixes test failure where all-digit Base36 IDs were incorrectly identified as sequential
2025-11-06 19:22:12 -08:00
Steve Yegge
6e182fa32f
Update bd JSONL
2025-11-06 19:21:17 -08:00
Steve Yegge
47185830bb
Fix bd-4oob: Add multi-repo deletion tracking support
...
- Added getMultiRepoJSONLPaths() helper to enumerate all JSONL files
- Updated daemon_sync.go to capture/update snapshots for each repo
- Added TestMultiRepoDeletionTracking to verify fix
- Added TestMultiRepoSnapshotIsolation for isolation guarantees
Previously, deletion tracking only worked for single-repo mode because
snapshot operations were hardcoded to the primary JSONL path. This fix
ensures snapshots are managed per-repository in multi-repo mode.
2025-11-06 19:21:11 -08:00
Steve Yegge
7726d6207e
Update beads database after closing bd-1fkr
...
Amp-Thread-ID: https://ampcode.com/threads/T-11b30d1f-1dbf-4bf1-b3ef-866ff6f75662
Co-authored-by: Amp <amp@ampcode.com >
2025-11-06 19:17:21 -08:00
Steve Yegge
e291ee078e
Fix storage backend extensibility by adding DeleteIssue to Storage interface
...
- Added DeleteIssue to Storage interface
- Implemented DeleteIssue in MemoryStorage backend
- Removed brittle type assertion from deletion_tracking.go
- Closes bd-1fkr
2025-11-06 19:17:06 -08:00
Steve Yegge
f61f8dd2ba
bd sync: apply DB changes after import
2025-11-06 19:16:50 -08:00
Steve Yegge
7c124835bf
Merge branch 'main' of github.com:steveyegge/beads
2025-11-06 19:16:48 -08:00
Steve Yegge
d6cc42d7b1
bd sync: 2025-11-06 19:16:47
2025-11-06 19:16:47 -08:00
Steve Yegge
ba71874cac
Update beads JSONL (timestamp updates from daemon)
2025-11-06 19:15:03 -08:00
Steve Yegge
055f1d9c1e
Fix isHashID to handle hash IDs without letters a-f
...
The previous implementation required hash IDs to contain letters a-f,
but SHA256 hashes can be all digits (probability ~2.4%). This caused
TestMigrateHashIDs to fail when the generated hash ID was all numeric.
Updated isHashID to:
- Strip hierarchical suffixes (.1, .1.2) before checking
- Accept any valid hex string (0-9, a-f)
- Distinguish hash IDs by presence of letters a-f
Fixes bd-6ku3
2025-11-06 19:14:49 -08:00