Commit Graph

314 Commits

Author SHA1 Message Date
Steve Yegge
56df5d47e2 bd sync: 2025-11-28 17:28:35 2025-11-28 17:28:35 -08:00
Steve Yegge
2c6bc58fbe bd sync: 2025-11-28 17:06:39 2025-11-28 17:06:39 -08:00
Steve Yegge
229187258b bd sync: 2025-11-28 10:51:09 2025-11-28 10:51:09 -08:00
Steve Yegge
060c2b68c7 bd sync: 2025-11-27 22:57:28 2025-11-27 22:57:28 -08:00
Steve Yegge
3c5d1e06b0 bd sync: 2025-11-27 22:57:13 2025-11-27 22:57:24 -08:00
Steve Yegge
774a57684c Fix auto-import git history backfill bug (bd-4pv)
Auto-import was allowing git history backfill to run, which could
incorrectly purge issues. The fix adds NoGitHistory=true to all
auto-import code paths:
- autoimport.go (importFromGit)
- autoflush.go (autoImportIfNewer)
- daemon_sync.go (importToJSONLWithStore)

Git history backfill is designed to detect deletions that happened
after a local DB was created. During auto-import, there is no local
work to protect - we are importing from the authoritative JSONL source.

Also adds comprehensive tests for NoGitHistory behavior.

Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-27 22:51:39 -08:00
Steve Yegge
d50861f188 bd sync: 2025-11-27 22:50:54 2025-11-27 22:51:12 -08:00
Steve Yegge
8b8a662acb Fix fresh clone UX with friendly error messages (bd-dmb)
When opening a database that exists but is missing issue_prefix config
(typical in fresh clone scenarios), show a helpful error message instead
of cryptic migration invariant errors.

The new message:
- Explains the database needs initialization
- Detects if a JSONL file exists and shows the issue count
- Suggests the exact command to run: bd import -i <path>
- Falls back to suggesting bd init --prefix if no JSONL exists

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-27 22:40:57 -08:00
Steve Yegge
151a34be98 bd sync: 2025-11-27 22:40:24 2025-11-27 22:40:40 -08:00
Steve Yegge
498715f27f bd sync: 2025-11-27 22:39:17 2025-11-27 22:39:17 -08:00
Steve Yegge
1675275e1c Implement auto-merge functionality for duplicates command
When --auto-merge is used, performMerge now automatically:
1. Closes source issues with "Duplicate of <target>" reason
2. Links each source to target with a "related" dependency

Closes bd-hdt

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-27 22:39:13 -08:00
Steve Yegge
f06f282d26 bd sync: 2025-11-27 22:38:26 2025-11-27 22:38:54 -08:00
Steve Yegge
9b6d5a5241 bd sync: 2025-11-27 22:34:34 2025-11-27 22:34:34 -08:00
Steve Yegge
7447a5004c bd sync: 2025-11-27 20:47:47 2025-11-27 20:47:47 -08:00
Steve Yegge
76a2542122 bd sync: 2025-11-27 20:21:31 2025-11-27 20:21:31 -08:00
Steve Yegge
7b1d291329 bd sync: apply DB changes after import 2025-11-27 17:01:40 -08:00
Steve Yegge
edca861d83 bd sync: apply DB changes after import 2025-11-27 17:01:21 -08:00
Steve Yegge
3a6a8abe54 bd sync: 2025-11-27 17:01:20 2025-11-27 17:01:21 -08:00
Steve Yegge
39ed52726c bd sync: 2025-11-27 15:18:08 2025-11-27 15:18:08 -08:00
Steve Yegge
c196a554cc bd sync: 2025-11-27 14:22:28 2025-11-27 14:22:28 -08:00
Steve Yegge
e96782f78e bd sync: apply DB changes after import 2025-11-27 13:23:19 -08:00
Steve Yegge
2bcfcd1c9b Merge branch 'main' of https://github.com/steveyegge/beads 2025-11-27 13:23:19 -08:00
Steve Yegge
3f609267d4 fix: doctor deletions check and onboard docs improvements
- Fix doctor to treat empty deletions.jsonl as valid (0 entries OK status)
- Fix HydrateDeletionsManifest to create empty file when no deletions found
- Add --parent flag documentation to onboard command
- Add CLI --help tip throughout onboard documentation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-27 13:23:14 -08:00
Steve Yegge
cbf748e06a bd sync: 2025-11-27 13:02:18 2025-11-27 13:02:18 -08:00
Steve Yegge
6aa0f58f86 bd sync: apply DB changes after import 2025-11-27 01:36:31 -08:00
Steve Yegge
d59ee64a93 bd sync: 2025-11-27 01:36:23 2025-11-27 01:36:31 -08:00
Steve Yegge
bba6dd1d70 bd sync: apply DB changes after import 2025-11-27 01:25:49 -08:00
Steve Yegge
a4abbebf9c Merge branch 'main' of https://github.com/steveyegge/beads 2025-11-27 01:25:48 -08:00
Steve Yegge
ecd54639b7 bd sync: 2025-11-27 01:25:47 2025-11-27 01:25:47 -08:00
Steve Yegge
e481938f29 bd sync: 2025-11-27 01:06:58 2025-11-27 01:07:05 -08:00
Steve Yegge
427f8f4112 bd sync: 2025-11-27 00:58:39 2025-11-27 00:58:39 -08:00
Steve Yegge
5d10095345 bd sync: 2025-11-27 00:55:29 2025-11-27 00:55:30 -08:00
Steve Yegge
056bd9443c bd sync: 2025-11-27 00:54:19 2025-11-27 00:54:19 -08:00
Steve Yegge
44446b6978 Merge branch 'fix/mcp-stdin' 2025-11-27 00:30:39 -08:00
Steve Yegge
e8ffac63ba bd sync: 2025-11-26 23:59:43 2025-11-26 23:59:43 -08:00
Steve Yegge
1b0e8cd1fb bd sync: 2025-11-26 23:25:20 2025-11-26 23:25:20 -08:00
Steve Yegge
30aa8e3c2a bd sync: 2025-11-26 23:17:21 2025-11-26 23:17:21 -08:00
Steve Yegge
224715d1d5 bd sync: 2025-11-26 23:14:29 2025-11-26 23:14:29 -08:00
Steve Yegge
1322e7e80a chore: remove corrupted deletions.jsonl (contained issue data instead of deletion records) 2025-11-26 23:14:10 -08:00
Steve Yegge
5506486dc5 feat(import,sync): add --no-git-history flag to prevent spurious deletions
Fixes bd-0b2: The git history backfill mechanism was causing data loss
during JSONL filename migrations (beads.jsonl → issues.jsonl). When issues
existed in the old filename's git history, the backfill incorrectly treated
them as "deleted" and purged them from the database.

Changes:
- Add NoGitHistory field to importer.Options and ImportOptions structs
- Modify purgeDeletedIssues() to skip git history check when flag is set
- Add --no-git-history flag to bd import command
- Add --no-git-history flag to bd sync command
- Update purge_test.go to pass Options argument

Usage:
  bd import -i .beads/issues.jsonl --no-git-history
  bd sync --no-git-history

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 23:10:43 -08:00
Steve Yegge
b5e58b0814 chore: file bugs discovered during issues.jsonl migration
New bugs filed:
- bd-zai: bd init resets metadata.json jsonl_export
- bd-8an: bd import auto-detects wrong prefix
- bd-0b2: Need --no-git-history flag
- bd-4pv: bd export only outputs 1 issue after corruption
- bd-4t7: Auto-import runs despite --no-auto-import flag
2025-11-26 22:30:33 -08:00
Steve Yegge
482b8c5b4b bd sync: flush pending changes 2025-11-26 22:05:25 -08:00
Steve Yegge
ff3352ab23 bd-6xd: Standardize on issues.jsonl as canonical filename
- Change default JSONL filename from beads.jsonl to issues.jsonl
- Add bd doctor check and fix to auto-migrate legacy beads.jsonl configs
- Update FindJSONLPath to prefer issues.jsonl over beads.jsonl
- Add CheckLegacyJSONLConfig and CheckLegacyJSONLFilename checks
- Add LegacyJSONLConfig fix to rename files and update config
- Update .gitattributes to reference issues.jsonl
- Fix tests to expect new canonical filename
- Add bd-6xd to v0.25.1 release notes

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 22:02:59 -08:00
Steve Yegge
64b54ce2bb Remove empty issues.jsonl file
Only beads.jsonl is used in this repo. The empty issues.jsonl was
causing doctor warnings.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-23 21:39:50 -08:00
Steve Yegge
8a2f910475 bd sync: 2025-11-23 20:38:41 2025-11-23 20:38:41 -08:00
Steve Yegge
d918e479b7 Remove stale issues.jsonl (repo configured to use beads.jsonl)
This repo explicitly configures beads.jsonl in metadata.json due to git
history reasons. The issues.jsonl file was stale (102 issues vs 622 in
beads.jsonl) and not being used.

bd doctor correctly detected this as a problem - having multiple JSONL
files can cause sync and merge conflicts.

🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-21 23:47:22 -08:00
Steve Yegge
ff2a2250f3 Close bd-9f86-baseline-test: test compilation errors fixed 2025-11-21 11:04:34 -05:00
Steve Yegge
d99222d895 Restore stable state: revert to beads.jsonl with 538 issues
- Revert migration to issues.jsonl (was causing data corruption)
- Backup issues.jsonl for reference
- Database and beads.jsonl now in sync (538 issues)
- Clean slate for stable operations
2025-11-20 19:48:26 -05:00
Steve Yegge
764886b3e7 bd sync: 2025-11-20 19:38:13 2025-11-20 19:38:13 -05:00
Steve Yegge
f01326832f Enhance bd doctor with bd prime migration recommendations (bd-0fvq)
Add comprehensive detection and migration guidance for old beads integration
patterns. This helps users adopt the more efficient bd prime approach.

Changes:
- Enhanced CheckLegacyBeadsSlashCommands with detailed migration steps
  and token efficiency benefits (99% reduction: ~10.5k → ~50 tokens)
- Added CheckAgentDocumentation to detect missing AGENTS.md/CLAUDE.md
  and suggest bd onboard or bd setup claude
- Enhanced CheckClaude to recommend bd prime hooks for MCP-only setups
  with clear token efficiency messaging
- Added comprehensive tests for all new checks

bd doctor now detects:
1. Old slash command patterns (/beads:*) and recommends bd prime hooks
2. Missing agent documentation and suggests creating it
3. MCP-only setups without hooks and shows token savings potential
4. Provides clear migration paths and benefits for all scenarios

Token efficiency messaging:
- MCP mode: ~50 tokens vs ~10.5k for full scan (99% reduction)
- CLI mode: ~1-2k tokens with automatic context recovery
- Hooks auto-refresh context on SessionStart and PreCompact

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-20 19:36:48 -05:00