chore: sync workflow templates - #137
Conversation
Automated sync from stranske/Workflows Template hash: c26961eecfeb Changes synced from sync-manifest.yml
🤖 Keepalive Loop StatusPR #137 | Agent: Codex | Iteration 0/5 Current State
🔍 Failure Classification| Error type | infrastructure | |
|
Status | ✅ no new diagnostics |
|
Autofix updated these files:
|
There was a problem hiding this comment.
Pull request overview
This PR syncs workflow templates from the central stranske/Workflows repository. The main change is a significant refactoring of the agents-verify-to-issue.yml workflow that transforms verification feedback into follow-up issues.
Key Changes:
- Enhanced workflow now uses LLM-based analysis via Python script to generate structured follow-up issues
- Added fallback mechanism for when the LLM script fails, using simple regex-based extraction
- Simplified data collection to focus on verification comments and linked issues
- Minor whitespace formatting improvements in Python script and environment file
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
.github/workflows/agents-verify-to-issue.yml |
Major refactor: replaced complex manual extraction logic with LLM-based issue generation and simpler fallback; streamlined verification data collection |
scripts/langchain/issue_formatter.py |
Added blank line after import for PEP 8 compliance |
.github/workflows/autofix-versions.env |
Added trailing newline at end of file |
| const taskItems = concerns.split('\n') | ||
| .filter(l => l.trim()) | ||
| .map(c => `- [ ] ${c.replace(/^[-*]\s*/, '')}`) | ||
| .join('\n'); |
There was a problem hiding this comment.
When no concerns are extracted (line 204), the fallback string 'No specific concerns extracted.' is later processed on lines 217-220 where it's split by newlines and converted into task items. This will create a task checkbox with that message, which isn't actionable. Consider checking if concerns equals the default message before creating taskItems, and use an empty string or a more appropriate placeholder instead.
| --output followup_issue.json | ||
|
|
||
| # Extract title and body for GitHub Actions | ||
| echo "issue_title=$(jq -r '.title' followup_issue.json)" >> "$GITHUB_OUTPUT" |
There was a problem hiding this comment.
The workflow uses jq to parse JSON output but doesn't install it as a dependency. While jq is pre-installed on ubuntu-latest runners, it's better to explicitly install it for reliability and clarity. Add a step to install jq before the "Generate follow-up issue" step, or add it to the pip install command if using a Python alternative like jq Python package.
| '', | ||
| '**Next steps:**', | ||
| '1. Review the generated issue', | ||
| '2. Add `agents:apply-suggestions` label to format for agent work', |
There was a problem hiding this comment.
There's an inconsistency in label naming between what the comment suggests and what the workflow actually uses. Line 288 uses 'agents:optimize' but line 313 in the comment instructs users to add 'agents:apply-suggestions'. These labels should be consistent to avoid confusion. Consider either updating the label on line 288 to match the instruction, or updating the instruction to match the label used.
| '2. Add `agents:apply-suggestions` label to format for agent work', | |
| '2. Add `agents:optimize` label to format for agent work', |
| ISSUE_TITLE: >- | ||
| ${{ steps.generate.outputs.issue_title || | ||
| steps.fallback.outputs.issue_title }} | ||
| ISSUE_BODY: >- | ||
| ${{ steps.generate.outputs.issue_body || | ||
| steps.fallback.outputs.issue_body }} |
There was a problem hiding this comment.
The multiline YAML output syntax using >- on lines 267-272 will collapse all newlines into spaces, which may corrupt the issue body formatting. The >- operator is a folded scalar that joins lines with spaces. Since issue_body contains markdown with intentional line breaks, this will break the formatting. Use the | (literal) operator instead to preserve newlines, or avoid the multiline syntax entirely.
| ISSUE_TITLE: >- | |
| ${{ steps.generate.outputs.issue_title || | |
| steps.fallback.outputs.issue_title }} | |
| ISSUE_BODY: >- | |
| ${{ steps.generate.outputs.issue_body || | |
| steps.fallback.outputs.issue_body }} | |
| ISSUE_TITLE: ${{ steps.generate.outputs.issue_title || steps.fallback.outputs.issue_title }} | |
| ISSUE_BODY: ${{ steps.generate.outputs.issue_body || steps.fallback.outputs.issue_body }} |
Sync Summary
Files Updated
Files Skipped
Review Checklist
Source: stranske/Workflows
Manifest:
.github/sync-manifest.yml