Fix P0 bug: JSONL lookup now returns LAST match (bd-58c0)
Addresses code review feedback: ✅ P0 (Must Fix): - Fix JSONL lookup to return LAST match, not FIRST (resurrection.go:160-162) - Changed from early return to scan all matches and keep last - Respects JSONL append-only semantics ✅ P1 (Should Fix): - Add test for multiple JSONL versions - TestTryResurrectParent_MultipleVersionsInJSONL verifies correct behavior - Document error message change in CHANGELOG.md - Old: "parent issue X does not exist" - New: "parent issue X does not exist and could not be resurrected from JSONL history" - Marked as breaking change for script parsers ✅ P2/P3 (Nice to Have): - Add documentation to AGENTS.md explaining auto-resurrection behavior - Document best-effort dependency resurrection ⏸️ Deferred (P1 - Optimize batch resurrection): - Caching optimization deferred (no batch use cases currently) All tests pass: - Unit tests: internal/storage/sqlite/ - Integration test: TestImportWithDeletedParent
This commit is contained in:
@@ -213,6 +213,13 @@ bd import -i .beads/issues.jsonl --dry-run # Preview changes
|
||||
bd import -i .beads/issues.jsonl # Import and update issues
|
||||
bd import -i .beads/issues.jsonl --dedupe-after # Import + detect duplicates
|
||||
|
||||
# Note: Import automatically handles missing parents!
|
||||
# - If a hierarchical child's parent is missing (e.g., bd-abc.1 but no bd-abc)
|
||||
# - bd will search the JSONL history for the parent
|
||||
# - If found, creates a tombstone placeholder (Status=Closed, Priority=4)
|
||||
# - Dependencies are also resurrected on best-effort basis
|
||||
# - This prevents import failures after parent deletion
|
||||
|
||||
# Find and merge duplicate issues
|
||||
bd duplicates # Show all duplicates
|
||||
bd duplicates --auto-merge # Automatically merge all
|
||||
|
||||
Reference in New Issue
Block a user