Upgrade eval workflow: pin latest action SHAs, global tool installs, COPILOT_GITHUB_TOKEN#5
Upgrade eval workflow: pin latest action SHAs, global tool installs, COPILOT_GITHUB_TOKEN#5Copilot wants to merge 8 commits into
Conversation
There was a problem hiding this comment.
Pull request overview
Adds Vally-based evaluation specs and fixtures for selected plugin skills and wires them into CI via a dedicated pull-request workflow, so skill behavior can be continuously validated as part of the plugin marketplace repo.
Changes:
- Added
.vally.yamldefining aprsuite that runs linting + security eval specs. - Added Vally eval specs + fixtures for
check-spelling,lint-markdown, andpin-github-actions. - Added a dedicated
pull_requestGitHub Actions workflow to run Vally lint/evals and uploadvally-results.
Show a summary per file
| File | Description |
|---|---|
evals/security/fixtures/pin-github-actions/workflow.yml |
Adds a workflow fixture used to validate action pinning behavior. |
evals/security/eval.yaml |
Defines the security plugin eval stimulus and graders for pin-github-actions. |
evals/linting/fixtures/lint-markdown/input.md |
Adds a markdown fixture with intentionally inconsistent bullet styles. |
evals/linting/fixtures/check-spelling/input.md |
Adds a spelling fixture containing a known typo and a project-specific word. |
evals/linting/eval.yaml |
Defines linting plugin eval stimuli and graders for check-spelling and lint-markdown. |
.vally.yaml |
Introduces the Vally project config and pr suite wiring to the eval specs. |
.github/workflows/vally-pr-evals.yml |
Adds a PR workflow that runs Vally lint + evals and uploads results. |
Review details
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 7/7 changed files
- Comments generated: 4
- Review effort level: Low
Updated in 3a2b9d9. The prompts are now vague and task-oriented, while |
|
@copilot resolve the active comments using the suggestions given. |
|
@copilot resolve the check error "Error: Unable to resolve action |
|
@copilot running evals fails with " Error: Authorization error, you may need to run /login (Request ID: DC33:24F025:3306A38:3777493:6A3CE6B2)". Fix the eval workflow. According to https://microsoft.github.io/vally/get-started/add-to-ci/, the GitHub token needs to be passed eg: name: Skill Eval
on:
pull_request:
paths:
- "**/SKILL.md"
- "**/eval.yaml"
jobs:
eval:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "22"
- run: npm install -g @microsoft/vally-cli
- name: Run evals
run: |
vally eval \
--eval-spec eval.yaml \
--skill-dir . \
--output-dir ./results
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload trajectories
if: always()
uses: actions/upload-artifact@v4
with:
name: eval-results
path: ./results/ |
Updated in e9cfcc2. |
|
@copilot running evals is still failing with "Error: Authorization error, you may need to run /login (Request ID: 2818:77508:338EB17:38288BC:6A3CE88E)". Fix the workflow. If you cannot determine why, do not use trial and error to fix it. Terminate with an error and I'll ask colleagues who might know why. |
|
@chlowell I'm getting an auth error trying to run evals. Any idea why?
I followed the docs and can't find anything about token requirements. /cc @LarryOsterman |
| - name: Install tools | ||
| run: | | ||
| npm install -g @microsoft/vally-cli@0.6.0 | ||
| npm install -g @github/copilot@1.0.65 | ||
|
|
There was a problem hiding this comment.
@copilot use separate steps to install each tool for better diagnostics.
There was a problem hiding this comment.
Split into separate "Install vally" and "Install copilot CLI" steps in the latest commit.
Modernizes
.github/workflows/eval.ymlto use the latest GitHub Actions, installvallyand the Copilot CLI as global tools, and switch toCOPILOT_GITHUB_TOKENfor evals.Changes
actions/checkout→ v7.0.0actions/setup-node→ v6.4.0actions/upload-artifact→ v7.0.1@microsoft/vally-cli@0.6.0and@github/copilot@1.0.65globally so downstream steps invoke them directlynpx -y @microsoft/vally-cli@0.6.0 ...withvally ...in Lint and Run evals stepsGITHUB_TOKEN→COPILOT_GITHUB_TOKEN: ${{ secrets.COPILOT_GITHUB_TOKEN }}