fix: add digest pins for gh-aw-mcpg:v0.3.0 and github-mcp-server:v1.0.3#28837
fix: add digest pins for gh-aw-mcpg:v0.3.0 and github-mcp-server:v1.0.3#28837
Conversation
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/f71057f9-3c93-4f19-a995-3d5e7168e9e6 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
@copilot merge main and recompile |
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
This PR improves supply-chain safety and reproducibility for default container downloads by adding immutable digest pins for ghcr.io/github/gh-aw-mcpg:v0.3.0 and ghcr.io/github/github-mcp-server:v1.0.3, then propagating the pinned images across generated lock artifacts.
Changes:
- Added digest +
pinned_imageentries forgh-aw-mcpg:v0.3.0andgithub-mcp-server:v1.0.3in the action/container pin JSON sources (including the AW lock JSON). - Updated workflow lock manifests and “Download container images” invocations to use
image:tag@sha256:.... - Regenerated affected workflow
.lock.ymlfiles so the embedded manifests reflect the new pins.
Show a summary per file
| File | Description |
|---|---|
| pkg/workflow/data/action_pins.json | Adds digest pin metadata for the two default images used by workflow generation. |
| pkg/actionpins/data/action_pins.json | Adds matching digest pin metadata for the actionpins package’s embedded pin set. |
| .github/aw/actions-lock.json | Adds digest pins for the two default images so AW “download images” resolves to immutable references. |
| .github/workflows/workflow-health-manager.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/workflow-generator.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/video-analyzer.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/test-workflow.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/test-quality-sentinel.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/test-dispatcher.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/smoke-ci.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/security-compliance.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/schema-consistency-checker.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references (for referenced images). |
| .github/workflows/research.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/refiner.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/plan.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/metrics-collector.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/issue-triage-agent.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/hippo-embed.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/github-remote-mcp-auth-test.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references (for referenced images). |
| .github/workflows/github-mcp-tools-report.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references (for referenced images). |
| .github/workflows/firewall.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/example-permissions-warning.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/draft-pr-cleanup.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/discussion-task-miner.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/dev.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/deployment-incident-monitor.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/delight.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/craft.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/copilot-pr-merged-report.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references (for referenced images). |
| .github/workflows/contribution-check.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/codex-github-remote-mcp-test.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references (for referenced images). |
| .github/workflows/cli-consistency-checker.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/bot-detection.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/artifacts-summary.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/approach-validator.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
| .github/workflows/ace-editor.lock.yml | Updates embedded manifest + download step to use pinned @sha256 references. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 139/206 changed files
- Comments generated: 0
…ner-version-downloads # Conflicts: # .github/workflows/schema-consistency-checker.lock.yml Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/96b8e971-fb85-49b8-8235-3b8f489b4b74 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Done — merged main (resolved one lock file conflict by recompiling) and recompiled all 203 workflows. Commit Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
Summary
Reviewing the referenced CI run (#step:26:1) revealed that two currently-default container images lacked digest pins in the container registry:
ghcr.io/github/gh-aw-mcpg:v0.3.0(DefaultMCPGatewayVersion)ghcr.io/github/github-mcp-server:v1.0.3(DefaultGitHubMCPServerVersion)Without digest pins, the "Download container images" step downloads these by mutable tag only — not supply-chain safe and not reproducible.
Changes
ghcr.io/github/gh-aw-mcpg:v0.3.0andghcr.io/github/github-mcp-server:v1.0.3to.github/aw/actions-lock.json//go:embed) and recompiled all 203 workflow lock filesimage:tag@sha256:...for those two images, matching the pattern already used for AWF containers andnode:lts-alpineBefore / After
Before — download step contained:
After — download step now contains: