fix(lint): resolve all golangci-lint errors

- Mark unused ctx parameter with underscore in getRepoRootForWorktree
- Replace exec.Command("test", "-d") with os.Stat for directory check
- Handle file.Close() errors properly in compact.go and migrate_tombstones.go
- Explicitly ignore cleanup errors with _ assignment

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Steve Yegge
2025-12-14 22:36:51 -08:00
parent f83a8f5a38
commit 7535dc88d2
4 changed files with 11 additions and 8 deletions

View File

@@ -1019,7 +1019,9 @@ func pruneExpiredTombstones() (*TombstonePruneResult, error) {
}
allIssues = append(allIssues, &issue)
}
file.Close()
if err := file.Close(); err != nil {
return nil, fmt.Errorf("failed to close issues file: %w", err)
}
// Determine TTL
ttl := types.DefaultTombstoneTTL
@@ -1052,20 +1054,20 @@ func pruneExpiredTombstones() (*TombstonePruneResult, error) {
encoder := json.NewEncoder(tempFile)
for _, issue := range kept {
if err := encoder.Encode(issue); err != nil {
tempFile.Close()
os.Remove(tempPath)
_ = tempFile.Close()
_ = os.Remove(tempPath)
return nil, fmt.Errorf("failed to write issue %s: %w", issue.ID, err)
}
}
if err := tempFile.Close(); err != nil {
os.Remove(tempPath)
_ = os.Remove(tempPath)
return nil, fmt.Errorf("failed to close temp file: %w", err)
}
// Atomically replace
if err := os.Rename(tempPath, issuesPath); err != nil {
os.Remove(tempPath)
_ = os.Remove(tempPath)
return nil, fmt.Errorf("failed to replace issues.jsonl: %w", err)
}

View File

@@ -128,7 +128,7 @@ Examples:
existingTombstones[issue.ID] = true
}
}
file.Close()
_ = file.Close()
}
// Determine which deletions need migration

View File

@@ -836,7 +836,7 @@ func gitHasChanges(ctx context.Context, filePath string) (bool, error) {
// getRepoRootForWorktree returns the main repository root for running git commands
// This is always the main repository root, never the worktree root
func getRepoRootForWorktree(ctx context.Context) string {
func getRepoRootForWorktree(_ context.Context) string {
repoRoot, err := git.GetMainRepoRoot()
if err != nil {
// Fallback to current directory if GetMainRepoRoot fails

View File

@@ -2,6 +2,7 @@ package git
import (
"fmt"
"os"
"os/exec"
"path/filepath"
"strings"
@@ -106,7 +107,7 @@ func GetMainRepoRoot() (string, error) {
commonDir := getGitDirNoError("--git-common-dir")
if commonDir != "" {
// Validate that commonDir exists
if _, err := exec.Command("test", "-d", commonDir).Output(); err == nil {
if info, err := os.Stat(commonDir); err == nil && info.IsDir() {
return filepath.Dir(commonDir), nil
}
}