From efa6eab3522daffc5a5222de7a1516bd8cf251f1 Mon Sep 17 00:00:00 2001 From: openhands Date: Sun, 15 Mar 2026 12:41:50 +0000 Subject: [PATCH] fix: planner GIT_RANGE newline bug from pipefail + head -1 set -o pipefail causes head -1 to fail the pipeline when git log is still producing output. The || fallback then appends a second line. Fix: capture first SHA separately with || true. --- planner/planner-agent.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/planner/planner-agent.sh b/planner/planner-agent.sh index b62c107..f1eeae0 100755 --- a/planner/planner-agent.sh +++ b/planner/planner-agent.sh @@ -40,11 +40,15 @@ if [ -f "$MARKER_FILE" ]; then GIT_RANGE="${LAST_SHA}..HEAD" else log "WARNING: marker SHA ${LAST_SHA:0:7} not found, using 30-day window" - GIT_RANGE="$(git log --format=%H --after='30 days ago' --reverse | head -1 2>/dev/null || echo HEAD~30)..HEAD" + local first_sha + first_sha=$(git log --format=%H --after='30 days ago' --reverse 2>/dev/null | head -1) || true + GIT_RANGE="${first_sha:-HEAD~30}..HEAD" fi else log "No marker file, using 30-day window" - GIT_RANGE="$(git log --format=%H --after='30 days ago' --reverse | head -1 2>/dev/null || echo HEAD~30)..HEAD" + local first_sha + first_sha=$(git log --format=%H --after='30 days ago' --reverse 2>/dev/null | head -1) || true + GIT_RANGE="${first_sha:-HEAD~30}..HEAD" fi GIT_LOG=$(git log "$GIT_RANGE" --oneline --no-merges 2>/dev/null || true)