Repository navigation
Route model-routing workflows to version-matched, pinned images - #66291
Conversation
Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com>
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Container-pin maintenance will prune the unreferenced router pin, breaking the new default routing path.
Review effort: Balanced
Findings: 1
Open (1)
What changed in this PR
Routes model-routing workflows through version-matched, digest-pinned AWF and router images.
Changes:
- Resolves routed images from the effective AWF version and validates missing pins.
- Adds a configurable, pinned router image and schema coverage.
- Bumps AWF to v0.28.37 and regenerates locks.
| File | Description |
|---|---|
.github/aw/actions-lock.json |
Adds AWF and router pins. |
.github/workflows/*.lock.yml (323 files) |
Regenerates workflows for AWF v0.28.37. |
pkg/actionpins/data/action_pins.json |
Embeds updated pins. |
pkg/constants/version_constants.go |
Updates AWF and router defaults. |
pkg/constants/version_constants_test.go |
Tests version constants. |
pkg/parser/schemas/main_workflow_schema.json |
Allows router overrides. |
pkg/parser/schema_test.go |
Tests router schema support. |
pkg/workflow/data/action_pins.json |
Embeds workflow pin data. |
pkg/workflow/model_routing_test.go |
Tests routing image resolution. |
pkg/workflow/sandbox_agent_images.go |
Implements version-matched image selection and validation. |
💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.
| "ghcr.io/githubnext/gh-aw-router:0.1.3": { | ||
| "image": "ghcr.io/githubnext/gh-aw-router:0.1.3", | ||
| "digest": "sha256:c934c8c9f77ee6b2ed9e07c21dbd896faa4ccd63b4206518f05da0bcebb4a553", | ||
| "pinned_image": "ghcr.io/githubnext/gh-aw-router:0.1.3@sha256:c934c8c9f77ee6b2ed9e07c21dbd896faa4ccd63b4206518f05da0bcebb4a553" |
There was a problem hiding this comment.
Implemented in commit 7cd6f1c: canonical gh-aw-router pins are now exempt from stale-pin pruning, with regression coverage; the router pin catalog is also kept lexically sorted.
|
@copilot address the following outstanding work in one pass:
Push the necessary fixes, reply to each listed review thread and resolve it when addressed. Ignore feedback already answered or resolved. Use the pr-finisher skill and stop when only human review or CI remains; do not trigger CI. Sous-chef head: 0e6d629
|
…ting-issue-again # Conflicts: # .github/workflows/daily-spec-coverage-kiro.lock.yml Co-authored-by: gh-aw-bot <259018956+gh-aw-bot@users.noreply.github.com>
Co-authored-by: gh-aw-bot <259018956+gh-aw-bot@users.noreply.github.com>
|
/matt |
|
🧠 Matt Pocock Skills Reviewer has completed the skills-based review. ✅
|
There was a problem hiding this comment.
Skills-Based Review 🧠
Triage was unavailable in this run, so I applied the fallback heuristic directly against the pre-fetched PR data. The only non-lock-file source change in this PR is .github/aw/actions-lock.json (25 additions, 0 deletions) — new pinned digests for AWF v0.28.37 images and the gh-aw-router:0.1.3 canonical pin. All other 335 changed files are regenerated .lock.yml artifacts.
No actionable /tdd, /codebase-design, /diagnosing-bugs, or /improve-codebase-architecture issues found:
📋 Verification details
- Router pruning exemption (flagged in a prior review comment on this PR) is already implemented via
DefaultRouterRegistryprefix check inPruneStaleContainerPins(pkg/workflow/action_cache.go), with dedicated regression coverage inTestPruneStaleContainerPins(pkg/workflow/action_cache_container_pin_test.go) asserting the stale router pin survives pruning. - Container-pin keys in
actions-lock.jsonremain lexically sorted (verified programmatically), consistent with the prior review comment's resolution. - The diff itself contains no new abstractions, logic, or control flow — only data additions (digests) and mechanical lock-file regeneration, so there's nothing to assess against deep-module or test-coverage criteria beyond what's already covered.
No blocking issues. Approving.
🧠 Reviewed using Matt Pocock's skills by Matt Pocock Skills Reviewer · copilot · sonnet50 · 35 AIC · ⌖ 13.6 AIC · ⊞ 10.1K
Comment /matt to run again
|
🎉 This pull request is included in a new release. Release: |

Model-routing workflows previously used hardcoded AWF v0.28.30 images and an unversioned router image, regardless of the effective AWF version. This left routing behavior and image overrides out of sync.
gh-aw-routerat v0.1.3 and allowsandbox.agent.images.routeroverrides.