Skip to content

Commit 041d443

Browse files
committed
Fix: Use preprocess enriched output in generate-implementation
- Restore dependency on preprocess so generate-implementation runs after it - Use enriched task from preprocess when available - Fallback to issue title if preprocess skipped/failed - All outputs come from prepare-task step to avoid skipped job output issues
1 parent e0f9e55 commit 041d443

1 file changed

Lines changed: 38 additions & 17 deletions

File tree

.github/workflows/feature-request-enhance.yml

Lines changed: 38 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -256,9 +256,9 @@ jobs:
256256
257257
generate-implementation:
258258
runs-on: ubuntu-latest
259-
needs: [check-label]
259+
needs: [check-label, preprocess]
260260
# Run if issue has enhancement label and isn't already enhanced
261-
# Don't depend on preprocess to avoid skipping if preprocess fails/is skipped
261+
# Run even if preprocess was skipped/failed (will use fallback)
262262
if: |
263263
needs.check-label.outputs.has_enhancement == 'true' &&
264264
needs.check-label.outputs.already_enhanced == 'false'
@@ -283,31 +283,52 @@ jobs:
283283
working-directory: .github/agent
284284
run: npm install
285285

286-
- name: Fetch issue data
287-
id: fetch-issue
286+
- name: Prepare task data for Claude
287+
id: prepare-task
288288
env:
289289
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
290290
ISSUE_NUMBER: ${{ needs.check-label.outputs.issue_number }}
291+
PREPROCESS_OUTCOME: ${{ needs.preprocess.outcome }}
292+
PREPROCESS_ENHANCED_TASK: ${{ needs.preprocess.outputs.enhanced_task }}
293+
PREPROCESS_ISSUE_TITLE: ${{ needs.preprocess.outputs.issue_title }}
291294
run: |
292-
ISSUE_JSON=$(curl -s \
293-
-H "Authorization: token $GITHUB_TOKEN" \
294-
-H "Accept: application/vnd.github+json" \
295-
"https://api.github.com/repos/${{ github.repository }}/issues/$ISSUE_NUMBER")
296-
TITLE=$(echo "$ISSUE_JSON" | jq -r '.title')
297-
BODY=$(echo "$ISSUE_JSON" | jq -r '.body // ""')
298-
{
299-
echo "issue_title<<EOF"
300-
echo "$TITLE"
301-
echo "EOF"
302-
} >> "$GITHUB_OUTPUT"
295+
# If preprocess succeeded, use its enriched output
296+
if [ "$PREPROCESS_OUTCOME" = "success" ] && [ -n "$PREPROCESS_ENHANCED_TASK" ]; then
297+
echo "✅ Using enriched task from preprocess"
298+
{
299+
echo "enhanced_task<<EOF"
300+
echo "$PREPROCESS_ENHANCED_TASK"
301+
echo "EOF"
302+
echo "issue_title<<EOF"
303+
echo "$PREPROCESS_ISSUE_TITLE"
304+
echo "EOF"
305+
} >> "$GITHUB_OUTPUT"
306+
else
307+
# Preprocess skipped/failed, fetch issue data as fallback
308+
echo "⚠️ Preprocess $PREPROCESS_OUTCOME, fetching issue data as fallback"
309+
ISSUE_JSON=$(curl -s \
310+
-H "Authorization: token $GITHUB_TOKEN" \
311+
-H "Accept: application/vnd.github+json" \
312+
"https://api.github.com/repos/${{ github.repository }}/issues/$ISSUE_NUMBER")
313+
TITLE=$(echo "$ISSUE_JSON" | jq -r '.title')
314+
BODY=$(echo "$ISSUE_JSON" | jq -r '.body // ""')
315+
{
316+
echo "enhanced_task<<EOF"
317+
echo "$TITLE"
318+
echo "EOF"
319+
echo "issue_title<<EOF"
320+
echo "$TITLE"
321+
echo "EOF"
322+
} >> "$GITHUB_OUTPUT"
323+
fi
303324
304325
- name: Generate implementation with Claude
305326
id: generate
306327
env:
307328
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
308329
CLAUDE_MODEL: ${{ secrets.CLAUDE_MODEL }}
309-
ENHANCED_TASK: ${{ steps.fetch-issue.outputs.issue_title }}
310-
TASK: ${{ steps.fetch-issue.outputs.issue_title }}
330+
ENHANCED_TASK: ${{ steps.prepare-task.outputs.enhanced_task }}
331+
TASK: ${{ steps.prepare-task.outputs.issue_title }}
311332
ISSUE_NUMBER: ${{ needs.check-label.outputs.issue_number }}
312333
run: |
313334
set -e

0 commit comments

Comments
 (0)