Commit Graph

2380 Commits

Author SHA1 Message Date
Steve Yegge 0a77619c5e bd sync: 2025-11-24 22:56:05 2025-11-24 22:56:05 -08:00
Steve Yegge 13b827d983 bd sync: 2025-11-24 22:34:32 2025-11-24 22:34:32 -08:00
Steve Yegge 9b13c422ca docs: add v0.24.4 changelog entry
Comprehensive changelog documenting all changes since v0.24.3:
- Transaction API for atomic multi-operation workflows
- Tip system infrastructure for smart user hints
- Sorting flags for bd list and bd search
- Claude integration verification in bd doctor
- ARM Linux support (PR #371)
- Multiple bug fixes and improvements

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-24 22:28:04 -08:00
Steve Yegge 9767e57024 bd doctor: add Claude integration verification checks
Add two new checks to verify Claude Code integration:
- CheckBdInPath: verifies 'bd' is in PATH (needed for hooks)
- CheckDocumentationBdPrimeReference: checks if docs reference 'bd prime'
  and verifies the command exists (detects version mismatches)

Closes bd-o78

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-24 22:10:58 -08:00
Steve Yegge 4215f5d8a9 bd sync: 2025-11-24 21:16:44 2025-11-24 21:16:44 -08:00
Steve Yegge 46d65c9778 bd sync: apply DB changes after import 2025-11-24 21:00:16 -08:00
Steve Yegge bdeb0ee99d Merge branch 'main' of https://github.com/steveyegge/beads 2025-11-24 21:00:16 -08:00
Steve Yegge 7ff493015f bd sync: 2025-11-24 21:00:15 2025-11-24 21:00:15 -08:00
Steve Yegge c90276c0f4 bd sync: apply DB changes after import 2025-11-24 20:49:24 -08:00
Steve Yegge f08ed9e665 bd sync: 2025-11-24 20:45:08 2025-11-24 20:45:08 -08:00
Steve Yegge 82d7302dae bd sync: 2025-11-24 20:44:40 2025-11-24 20:45:04 -08:00
Steve Yegge 489a102256 bd sync: 2025-11-24 20:43:56 2025-11-24 20:43:56 -08:00
Steve Yegge bad34e6ce8 bd sync: 2025-11-24 20:40:44 2025-11-24 20:40:44 -08:00
Steve Yegge d2f3762969 bd sync: 2025-11-24 20:26:24 2025-11-24 20:26:24 -08:00
Steve Yegge b453db8832 bd sync: 2025-11-24 20:20:43 2025-11-24 20:20:43 -08:00
Steve Yegge cf560a947c bd sync: 2025-11-24 19:28:28 2025-11-24 19:28:28 -08:00
Steve Yegge 3d280f9b6b bd sync: 2025-11-24 19:27:36 2025-11-24 19:27:36 -08:00
Steve Yegge 4390aabadf bd sync: 2025-11-24 19:26:08 2025-11-24 19:26:08 -08:00
Steve Yegge d8cdf13213 bd sync: apply DB changes after import 2025-11-24 17:21:42 -08:00
Steve Yegge 1766fb6509 Merge branch 'main' of https://github.com/steveyegge/beads 2025-11-24 17:21:42 -08:00
Steve Yegge d1b880921a bd sync: 2025-11-24 17:21:41 2025-11-24 17:21:41 -08:00
Steve Yegge 1f61f4b197 bd sync: apply DB changes after import 2025-11-24 17:14:24 -08:00
Steve Yegge 434cc54d73 bd sync: 2025-11-24 17:14:23 2025-11-24 17:14:24 -08:00
Steve Yegge 604075908d bd sync: 2025-11-24 17:05:11 2025-11-24 17:05:11 -08:00
Steve Yegge 7f51af8738 bd sync: 2025-11-24 17:00:58 2025-11-24 17:00:58 -08:00
Steve Yegge 95f68f7cf6 bd sync: 2025-11-24 15:46:47 2025-11-24 15:46:47 -08:00
Steve Yegge fe4603a7a1 bd sync: 2025-11-24 14:03:20 2025-11-24 14:03:20 -08:00
Steve Yegge a8d7d6575c Fix blocked cache invalidation in transaction operations (bd-1c4h)
Transaction operations weren't invalidating the blocked_issues_cache,
causing GetReadyWork to return stale results after transactional changes.

Changes:
- Refactor invalidateBlockedCache to accept execer interface (supports
  both *sql.Tx and *sql.Conn)
- Add cache invalidation in transaction.go for:
  - UpdateIssue (when status changes)
  - CloseIssue (always - closed issues don't block
  - AddDependency (for DepBlocks/DepParentChild types)
  - RemoveDependency (queries type before deletion)

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

Co-Authored-By: Claude <noreply@anthropic.com>
EOF
)
2025-11-24 14:03:11 -08:00
Steve Yegge 0acd9d0a5d bd sync: 2025-11-24 12:25:34 2025-11-24 12:25:35 -08:00
Steve Yegge d66593f8a5 bd sync: 2025-11-24 11:38:13 2025-11-24 11:38:13 -08:00
Steve Yegge e9da1a420b bd sync: 2025-11-24 11:28:32 2025-11-24 11:28:32 -08:00
Steve Yegge 63f096c3d1 bd sync: 2025-11-24 10:56:35 2025-11-24 10:56:35 -08:00
Steve Yegge 4b2bd9f6d3 bd sync: apply DB changes after import 2025-11-24 10:56:21 -08:00
Steve Yegge 9733faa833 Merge branch 'main' of https://github.com/steveyegge/beads 2025-11-24 10:56:21 -08:00
Steve Yegge 5f310bc7c2 Add tip system infrastructure (bd-d4i)
Implements a smart contextual hint system that shows helpful messages
to users after successful commands. Tips are filtered by conditions,
priority, frequency limits, and probability rolls to provide useful
information without being annoying.

Core Features:
- Tip struct with condition, message, frequency, priority, probability
- selectNextTip() filters eligible tips and applies probability
- Metadata storage tracks when tips were last shown
- Respects --json and --quiet flags
- Deterministic testing via BEADS_TIP_SEED env var

Integration Points:
- bd list: Shows tip after listing issues
- bd ready: Shows tip after showing ready work (or no work)
- bd create: Shows tip after creating issue
- bd show: Shows tip after showing issue details

Testing:
- Unit tests for tip selection logic
- Tests for frequency limits and probability
- Tests for metadata tracking
- Example tip definitions for documentation

Next Steps:
- bd-81a: Add programmatic tip injection API
- bd-tne: Add Claude setup tip with dynamic priority

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-24 10:56:14 -08:00
Steve Yegge ea4b7e94c7 bd sync: apply DB changes after import 2025-11-24 10:39:30 -08:00
Steve Yegge a2e2c87cfd Merge branch 'main' of https://github.com/steveyegge/beads 2025-11-24 10:39:29 -08:00
Steve Yegge 4a2ee066f8 bd sync: 2025-11-24 10:39:28 2025-11-24 10:39:28 -08:00
Steve Yegge 22ba6ae4a7 bd sync: apply DB changes after import 2025-11-24 10:38:11 -08:00
Steve Yegge 92958d0b93 Merge branch 'main' of https://github.com/steveyegge/beads 2025-11-24 10:38:11 -08:00
Steve Yegge d3face3f86 bd sync: 2025-11-24 10:38:10 2025-11-24 10:38:10 -08:00
Steve Yegge d05953df14 bd sync: 2025-11-24 10:33:02 2025-11-24 10:33:02 -08:00
Steve Yegge 30dfb247dc Fix bd-l0r: Skip export after ZFC import to preserve JSONL source of truth
## Problem
When bd sync detected stale DB (>50% divergence), it would import JSONL to fix the DB,
but then immediately export the DB back to JSONL. This caused the stale DB to overwrite
the JSONL after a git pull, undoing cleanup work.

Example scenario:
1. Clone has 688 stale issues in DB (628 closed)
2. git pull brings JSONL with 62 issues (cleanup applied)
3. bd sync detects 1009.7% divergence and imports JSONL (DB → 62 issues) ✓
4. bd sync exports DB to JSONL (JSONL still 62 issues) ✓
5. But this marks JSONL as "changed" and commits/pushes it ✗

## Solution
After ZFC (JSONL First Consistency) import, set skipExport flag to prevent the export step.
JSONL is the source of truth after import - DB should sync to match, not export back.

## Changes
- cmd/bd/sync.go: Add skipExport flag, set it after ZFC import
- cmd/bd/sync.go: Wrap export logic in `if !skipExport` block
- CHANGELOG.md: Update ZFC entry with accurate description
- cmd/bd/sync_test.go: Add TestZFCSkipsExportAfterImport

Fixes #bd-l0r

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-24 10:32:56 -08:00
Steve Yegge d1eb9f4e06 bd sync: apply DB changes after import 2025-11-24 01:40:52 -08:00
Steve Yegge b6f37169c9 Merge branch 'main' of https://github.com/steveyegge/beads 2025-11-24 01:40:51 -08:00
Steve Yegge 6986cd4ab0 bd sync: 2025-11-24 01:40:51 2025-11-24 01:40:51 -08:00
Steve Yegge 515a31f270 bd sync: apply DB changes after import 2025-11-24 01:37:03 -08:00
Steve Yegge 31e3a41942 Merge branch 'main' of https://github.com/steveyegge/beads 2025-11-24 01:37:03 -08:00
Steve Yegge 2cea04500c bd sync: 2025-11-24 01:37:02 2025-11-24 01:37:02 -08:00
Steve Yegge a1191f0b4c bd sync: 2025-11-24 01:31:04 2025-11-24 01:31:04 -08:00