Steve Yegge
2f9d423ac8
fix: Prevent bd sync from committing non-.beads files (bd-trgb)
...
gitCommit() was adding the JSONL file but then committing ALL staged
changes (no pathspec). If other files were staged (e.g., deletions from
git add -A), they would be swept into the bd sync commit.
Fixed by adding pathspec to both gitCommit() and commitToExternalBeadsRepo()
so they only commit what they explicitly staged.
This was the root cause of PR #722 files being deleted - they were staged
for deletion in the working tree and got committed by bd sync.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2025-12-25 12:05:46 -08:00
Charles P. Cross
8676c41c18
fix: address CI lint errors (gosec, errcheck, unparam, duplicate tests) ( #730 )
...
* fix: address CI lint errors (gosec, errcheck, unparam, duplicate tests)
- Remove duplicate TestHandleDelete_DryRun and TestHandleDelete_PartialSuccess
from server_mutations_test.go (already defined in server_delete_test.go)
- Add nolint:gosec comments for exec.CommandContext calls in sync_branch.go
(variables come from trusted config/git sources)
- Fix gosec G304/G306 in yaml_config.go (file read/write permissions)
- Fix errcheck in mol_run.go (templateStore.Close)
- Add nolint:unparam for updateYamlKey error return
* fix: add remaining nolint:gosec comments for exec.CommandContext calls
- sync_branch.go: diffCmd, logCmd (dry-run), commitCmd, pushCmd, remoteCmd
- sync_check.go: checkLocalCmd
* fix: add more nolint:gosec comments for exec.CommandContext calls
- sync_branch.go: pullCmd
- sync_check.go: localRefCmd, remoteRefCmd, aheadCmd
- sync_import.go: checkoutCmd
* fix: add final nolint:gosec comments for exec.CommandContext calls
- sync_check.go: behindCmd
- sync_import.go: fetchCmd
---------
Co-authored-by: Charles P. Cross <cpdata@users.noreply.github.com >
2025-12-24 12:35:32 -08:00
Steve Yegge
2b26de08e5
Split sync.go into modular files (bd-u2sc.3)
...
Split the 2203-line sync.go into 5 focused modules:
- sync.go (1238 lines) - Main command and git helpers
- sync_export.go (170 lines) - Export operations
- sync_import.go (132 lines) - Import operations + doSyncFromMain
- sync_branch.go (285 lines) - Sync branch and external beads support
- sync_check.go (395 lines) - Integrity check operations
All tests pass. Remaining files (init.go, show.go, compact.go)
still need splitting - tracked for future work.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2025-12-23 13:48:01 -08:00