beads v0.9.6
Critical data integrity fix release.
🚨 Critical Fix
Auto-import collision detection (bd-228): Fixed silent data loss bug where auto-import would overwrite local changes after git pull. The collision detection system now:
- Detects conflicting changes between database and JSONL
- Preserves local modifications by default
- Warns users when collisions are skipped
- Prevents silent data overwrites
Impact: This bug affected multi-machine workflows and could cause manual updates and closes to be silently reverted. All users should upgrade immediately.
🔍 Data Recovery (bd-229)
Investigated and documented 22 lost issues from the auto-import bug period:
- Recovered 3 valuable issues (bd-222, bd-223, bd-221)
- 19 test fixtures discarded (no production value)
- Full investigation documented in
LOST_ISSUES_RECOVERY.md
⚠️ Field Testing
This release includes a major architectural change to auto-import. We've tested extensively, but please report any issues with:
- Multi-machine workflows
- Git merge conflicts in
.beads/issues.jsonl - Agent swarm deployments
What Changed
Fixed:
- Auto-import now uses collision detection instead of blindly overwriting
- Warns when colliding issues are skipped during import
- Preserves local database state by default
Added:
- LOST_ISSUES_RECOVERY.md - Full investigation report
- bd-232: Batching API feature request (recovered)
- bd-233: Early context check optimization (recovered)
Improved:
- Better transaction state documentation in bd-89 (bd-221 context)
Upgrade Notes
No breaking changes. Pull latest version:
# Homebrew (will be available once formula is updated)
brew upgrade bd
# Or go install
go install github.com/steveyegge/beads/cmd/bd@latestYour existing databases will continue to work with no migration needed.
Known Issues
None at this time. Please report issues to: https://github.com/steveyegge/beads/issues
Credits
Thanks to automated code review and extensive git archaeology for uncovering and resolving this critical issue.