fix: use original issue body for dep parsing and PR recovery detection
Prevent human comments appended to ISSUE_BODY from causing false positive dependency blocks or spurious 'Existing PR:' recovery matches in parse-deps.sh and the PR recovery guard. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
d40a9c36c5
commit
7cf1d035e0
1 changed files with 4 additions and 3 deletions
|
|
@ -185,6 +185,7 @@ if [ -z "$ISSUE_JSON" ] || ! echo "$ISSUE_JSON" | jq -e '.id' >/dev/null 2>&1; t
|
||||||
fi
|
fi
|
||||||
ISSUE_TITLE=$(echo "$ISSUE_JSON" | jq -r '.title')
|
ISSUE_TITLE=$(echo "$ISSUE_JSON" | jq -r '.title')
|
||||||
ISSUE_BODY=$(echo "$ISSUE_JSON" | jq -r '.body // ""')
|
ISSUE_BODY=$(echo "$ISSUE_JSON" | jq -r '.body // ""')
|
||||||
|
ISSUE_BODY_ORIGINAL="$ISSUE_BODY"
|
||||||
|
|
||||||
# Append human comments to issue body (filter out bot accounts)
|
# Append human comments to issue body (filter out bot accounts)
|
||||||
ISSUE_COMMENTS=$(curl -sf -H "Authorization: token ${CODEBERG_TOKEN}" \
|
ISSUE_COMMENTS=$(curl -sf -H "Authorization: token ${CODEBERG_TOKEN}" \
|
||||||
|
|
@ -222,8 +223,8 @@ fi
|
||||||
# =============================================================================
|
# =============================================================================
|
||||||
status "preflight check"
|
status "preflight check"
|
||||||
|
|
||||||
# Extract dependency references using shared parser
|
# Extract dependency references using shared parser (use original body only — not comments)
|
||||||
DEP_NUMBERS=$(echo "$ISSUE_BODY" | bash "${FACTORY_ROOT}/lib/parse-deps.sh")
|
DEP_NUMBERS=$(echo "$ISSUE_BODY_ORIGINAL" | bash "${FACTORY_ROOT}/lib/parse-deps.sh")
|
||||||
|
|
||||||
BLOCKED_BY=()
|
BLOCKED_BY=()
|
||||||
if [ -n "$DEP_NUMBERS" ]; then
|
if [ -n "$DEP_NUMBERS" ]; then
|
||||||
|
|
@ -357,7 +358,7 @@ EXISTING_PR=""
|
||||||
EXISTING_BRANCH=""
|
EXISTING_BRANCH=""
|
||||||
RECOVERY_MODE=false
|
RECOVERY_MODE=false
|
||||||
|
|
||||||
BODY_PR=$(echo "$ISSUE_BODY" | grep -oP 'Existing PR:\s*#\K[0-9]+' | head -1) || true
|
BODY_PR=$(echo "$ISSUE_BODY_ORIGINAL" | grep -oP 'Existing PR:\s*#\K[0-9]+' | head -1) || true
|
||||||
if [ -n "$BODY_PR" ]; then
|
if [ -n "$BODY_PR" ]; then
|
||||||
PR_CHECK=$(curl -sf -H "Authorization: token ${CODEBERG_TOKEN}" \
|
PR_CHECK=$(curl -sf -H "Authorization: token ${CODEBERG_TOKEN}" \
|
||||||
"${API}/pulls/${BODY_PR}" | jq -r '{state, head_ref: .head.ref}')
|
"${API}/pulls/${BODY_PR}" | jq -r '{state, head_ref: .head.ref}')
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue