From 0ef58cb5a4d87819f9d542b77182f10561e2741d Mon Sep 17 00:00:00 2001 From: Gregory Gauthier Date: Tue, 3 Mar 2026 15:50:30 +0000 Subject: [PATCH] fix(cmd): use Fprintf for efficiency and handle Chdir error in tests - Replace WriteString + Sprintf with Fprintf in harvestContext for better performance. - Wrap deferred Chdir in scaffold tests with error logging to avoid silent failures. --- cmd/scaffold.go | 3 ++- cmd/scaffold_test.go | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/cmd/scaffold.go b/cmd/scaffold.go index 53bb9cc..d5e1a2a 100644 --- a/cmd/scaffold.go +++ b/cmd/scaffold.go @@ -165,7 +165,8 @@ func harvestContext(filePath, lang string) string { if len(content) > 2000 { content = content[:2000] } - sb.WriteString(fmt.Sprintf("=== %s ===\n%s\n\n", f.Name(), string(content))) + // Fixed: use Fprintf instead of WriteString + Sprintf + fmt.Fprintf(&sb, "=== %s ===\n%s\n\n", f.Name(), string(content)) } } diff --git a/cmd/scaffold_test.go b/cmd/scaffold_test.go index 0094d2a..66ea05a 100644 --- a/cmd/scaffold_test.go +++ b/cmd/scaffold_test.go @@ -58,7 +58,11 @@ func TestScaffoldCmd_Live(t *testing.T) { tmpDir := t.TempDir() origDir, _ := os.Getwd() require.NoError(t, os.Chdir(tmpDir)) - defer os.Chdir(origDir) + defer func() { + if err := os.Chdir(origDir); err != nil { + t.Logf("warning: failed to restore original directory: %v", err) + } + }() rootCmd.SetArgs(tt.args) err := rootCmd.Execute()