Add build setup to Daily Syntax Error Quality Check workflow#15095
Add build setup to Daily Syntax Error Quality Check workflow#15095
Conversation
- Add Go setup step (v1.23 with cache) - Add build step using make build - Add verification step to confirm binary is accessible - Recompile workflow to generate updated .lock.yml This enables the workflow to build the gh-aw binary before the agent runs, resolving the issue where the compiler was not available in the workflow PATH. Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
🔍 PR Triage ResultsCategory: chore | Risk: low | Priority: 40/100 Scores Breakdown
📋 Recommended Action: fast_trackExplanation: This PR adds necessary build setup steps to enable the quality check workflow to compile and validate error messages. It's a straightforward workflow configuration fix with low risk. Why Fast Track:
Next Steps:
Triaged by PR Triage Agent on 2026-02-12
|
| - name: Setup Go | ||
| uses: actions/setup-go@v5 | ||
| with: | ||
| go-version: "1.23" |
There was a problem hiding this comment.
Updated to match ci.yml build pattern. Changed from hardcoded go-version: "1.23" to go-version-file: go.mod to use the correct Go version (1.25.0) specified in go.mod. Also updated step name to "Set up Go" for consistency. (ca229d2)
Match the ci.yml build pattern by using go-version-file: go.mod instead of hardcoded go-version: "1.23". This ensures the workflow uses the correct Go version (1.25.0) specified in go.mod. Also updated step name from "Setup Go" to "Set up Go" for consistency with ci.yml naming convention. Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Adds a build/setup phase to the “Daily Syntax Error Quality Check” agentic workflow so the gh-aw binary is available during the run, aligning the workflow with the repository’s compiler-dependent analysis tasks.
Changes:
- Added frontmatter
steps:to set up Go, buildgh-aw, and verify the binary is runnable. - Regenerated the compiled lock workflow to include the new setup steps / updated frontmatter hash.
- Updated the actions lock entries to include a pin for
actions/setup-go@v5.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| .github/workflows/daily-syntax-error-quality.md | Adds Go setup + gh-aw build/verify steps before the agent executes. |
| .github/workflows/daily-syntax-error-quality.lock.yml | Regenerated compiled workflow reflecting the new frontmatter steps. |
| .github/aw/actions-lock.json | Adds actions/setup-go@v5 entry used by the regenerated lock workflow. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "actions/setup-go@v5": { | ||
| "repo": "actions/setup-go", | ||
| "version": "v5", | ||
| "sha": "40f1582b2485089dde7abd97c1529aa768e1baff" | ||
| }, |
There was a problem hiding this comment.
actions/setup-go@v5 was added to the action lock entries. If the workflow is updated to use actions/setup-go@v6 like the rest of the repo, this extra v5 entry should be unnecessary; consider removing it (via re-running the lock regeneration) to keep the lockfile minimal and consistent.
| "actions/setup-go@v5": { | |
| "repo": "actions/setup-go", | |
| "version": "v5", | |
| "sha": "40f1582b2485089dde7abd97c1529aa768e1baff" | |
| }, |
| - name: Set up Go | ||
| uses: actions/setup-go@v5 | ||
| with: | ||
| go-version-file: go.mod | ||
| cache: true |
There was a problem hiding this comment.
This repo’s workflow frontmatter generally uses actions/setup-go@v6 (and CI uses setup-go v6) with go-version-file: go.mod. Using @v5 here is inconsistent and also forces an extra actions-lock.json entry; switching to @v6 should align with the rest of the workflows and the existing lock for v6.2.0.
| - name: Verify gh-aw installation | ||
| run: | | ||
| ./gh-aw --version | ||
| echo "gh-aw binary is ready at ./gh-aw" |
There was a problem hiding this comment.
The agent instructions later cd /tmp/... and run ./gh-aw compile ...; after that cd, ./gh-aw won’t exist unless the binary is copied there or added to PATH. Consider adding a step to add $GITHUB_WORKSPACE to $GITHUB_PATH (and then invoke gh-aw), or adjust the instructions/commands to use an absolute path like $GITHUB_WORKSPACE/gh-aw.
|
|
||
| - name: Build gh-aw | ||
| run: | | ||
| make build | ||
|
|
There was a problem hiding this comment.
There are trailing spaces on otherwise-blank lines in the new steps: block (after cache: true and after make build). Please remove the trailing whitespace to avoid churn in future diffs and to satisfy editors/linters that trim whitespace.
| - name: Build gh-aw | |
| run: | | |
| make build | |
| - name: Build gh-aw | |
| run: | | |
| make build |
| - name: Set up Go | ||
| uses: actions/setup-go@40f1582b2485089dde7abd97c1529aa768e1baff # v5 | ||
| with: | ||
| cache: true | ||
| go-version-file: go.mod | ||
| - name: Build gh-aw |
There was a problem hiding this comment.
The generated lock workflow now pins actions/setup-go at v5, while most other lock workflows in this repo pin v6.2.0 and CI uses setup-go v6. If you switch the source workflow to actions/setup-go@v6, please regenerate the lock so it pins the consistent v6 SHA here too.
The Daily Syntax Error Quality Check workflow requires the gh-aw compiler binary to test error message quality, but the binary was not available in PATH during agent execution.
Changes
Added
steps:section to workflow frontmatter that executes before the agent job:The Go setup uses
go-version-file: go.modto match the ci.yml build pattern, ensuring the workflow uses the correct Go version (1.25.0) specified in go.mod.The agent can now execute
./gh-aw compilecommands to introduce syntax errors and capture compiler output for quality analysis.Files Modified
.github/workflows/daily-syntax-error-quality.md- Added build steps in frontmatter.github/workflows/daily-syntax-error-quality.lock.yml- Regenerated by compilerOriginal prompt
This section details on the original issue you should resolve
<issue_title>[syntax-error-quality] Daily Syntax Error Quality Check - Setup Required</issue_title>
<issue_description>### 🔍 Workflow Analysis Status
Analysis Date: 2026-02-12⚠️ Setup Required
Status:
Workflow: Daily Syntax Error Quality Check
Executive Summary
The Daily Syntax Error Quality Check workflow is designed to test compiler error message quality by introducing syntax errors into workflows and evaluating the error output. However, the current workflow environment lacks the necessary gh-aw compiler binary to perform the analysis.
Key Issues:
Required Setup
To enable this workflow to function correctly, the following setup is required:
1. Add Workflow Setup Steps
The workflow needs to include steps that build or install the gh-aw binary before the agent runs:
2. Grant Build Permissions
Ensure the workflow has permissions to:
3. Verify Binary Access
Add a verification step to ensure the binary is accessible:
steps: - name: Verify gh-aw installation run: | which gh-aw || echo "gh-aw not in PATH" ./gh-aw --version || echo "gh-aw binary not executable"Analysis Design
Once the setup is complete, the workflow should execute this analysis process:
Phase 1: Select Test Workflows
Select 3 diverse workflows for testing:
Criteria:
Phase 2: Introduce Syntax Errors
Create 3 test cases with different error categories:
Category A: Frontmatter Syntax Errors
Category B: Configuration Errors
Category C: Semantic Errors
Phase 3: Compile and Capture Output
For each test case:
Phase 4: Evaluate Error Quality
Score error messages across 5 dimensions:
Quality Threshold: Average score ≥ 70 across all test cases
Phase 5: Create Issue with Findings
Only create an issue if:
Example Test Workflows
View Test Case Examples
Test 1: Frontmatter Syntax Error (Simple Workflow)
File:
test-1-frontmatter-syntax.mdTest 2: Invalid Engine Name (Medium Workflow)
File:
test-2-invalid-engine.mdTest 3: Conflicting Configuration (Complex Workflow)
File: `test-3-conflicting-c...
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.