From 32a3fe61700884d7378858ba21a809c31a9fc5eb Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Wed, 13 May 2026 09:54:44 +0300 Subject: replace panic with os.Exit and error log in cmd/filewriter Panics in non-setup code violate the AGENTS.md convention. Replace all three panic(err) calls with fmt.Fprintf(os.Stderr, ...) + os.Exit(1) so the process exits cleanly with a human-readable message instead of a stack trace. Co-Authored-By: Claude Sonnet 4.6 --- cmd/filewriter/main.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'cmd') diff --git a/cmd/filewriter/main.go b/cmd/filewriter/main.go index 25f5cb7..b175371 100644 --- a/cmd/filewriter/main.go +++ b/cmd/filewriter/main.go @@ -1,6 +1,7 @@ package main import ( + "fmt" "os" "time" ) @@ -9,7 +10,8 @@ func main() { // Open the file in append mode, create it if it doesn't exist file, err := os.OpenFile("output.txt", os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644) if err != nil { - panic(err) + fmt.Fprintf(os.Stderr, "filewriter: failed to open output file: %v\n", err) + os.Exit(1) } defer file.Close() @@ -20,13 +22,15 @@ func main() { for { _, err := file.Write(data) if err != nil { - panic(err) + fmt.Fprintf(os.Stderr, "filewriter: failed to write data: %v\n", err) + os.Exit(1) } // Flush writes to stable storage err = file.Sync() if err != nil { - panic(err) + fmt.Fprintf(os.Stderr, "filewriter: failed to sync file: %v\n", err) + os.Exit(1) } // Wait for 3 seconds -- cgit v1.2.3