diff --git a/scripts/gen-release-notes.sh b/scripts/gen-release-notes.sh index eab46271..27c84465 100755 --- a/scripts/gen-release-notes.sh +++ b/scripts/gen-release-notes.sh @@ -55,20 +55,25 @@ echo "Version: $version" >&2 echo "Previous version: ${prev_version:-none}" >&2 echo "Changelog length: ${#changelog} chars" >&2 +# Capture stderr separately to avoid polluting output +stderr_file=$(mktemp) +trap 'rm -f "$stderr_file"' EXIT + if ! output=$( printf '%s' "$prompt" | claude -p \ --model claude-opus-4-20250514 \ --output-format text \ - --allowedTools "Read,Grep,Glob" 2>&1 + --allowedTools "Read,Grep,Glob" 2>"$stderr_file" ); then echo "Error: Claude CLI failed" >&2 - echo "Output: $output" >&2 + cat "$stderr_file" >&2 exit 1 fi # Validate we got non-empty output if [[ -z $output ]]; then echo "Error: Claude returned empty output" >&2 + cat "$stderr_file" >&2 exit 1 fi