Conversation
…heckout - Update resolve_host_repo.cjs to extract and emit target_ref from GITHUB_WORKFLOW_REF's @ref portion - Add crossRepoTargetRef field/methods to CheckoutManager - Extend GenerateGitHubFolderCheckoutStep to accept and emit ref: field - Expose target_ref as activation output alongside target_repo - Wire target_ref into the activation .github/.agents checkout step - Add comprehensive tests for all changes Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
In dev and script modes, the Checkout actions folder step was emitted without repository: or ref:. In cross-repo relay scenarios this caused actions/checkout to default to the caller's repo which has no actions/ directory, making Setup Scripts fail immediately. - Add versionToGitRef() helper to extract a clean git ref from git-describe version strings (strips -dirty, extracts SHA from v1.2.3-N-gSHA format) - Add repository: github/gh-aw to dev mode Checkout actions folder step - Add ref: <version> to both dev and script mode checkout steps - Update maintenance_workflow.go with the same fix - Recompile all lock files to pick up the new fields Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
Addressed in commit The The fix:
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:
|
|
@copilot merge main recompile |
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Done in 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:
|
There was a problem hiding this comment.
Pull request overview
Fixes cross-repo “caller-hosted relay” behavior by preserving the callee workflow ref during activation checkouts and ensuring the actions/ directory checkout is explicitly pinned to github/gh-aw (repo + ref), preventing Setup Scripts failures when the caller repo lacks actions/.
Changes:
- Emit and plumb a
target_ref(fromGITHUB_WORKFLOW_REF) alongsidetarget_reposo activation checkouts can use the callee’s pinned ref. - Extend
.github/.agentscheckout generation to support an optionalref:for cross-repo workflow_call scenarios. - Update generated workflows to checkout the
actions/folder fromgithub/gh-awwith explicitrepository:andref:.
Reviewed changes
Copilot reviewed 177 out of 177 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| actions/setup/js/resolve_host_repo.cjs | Extracts and outputs target_ref from GITHUB_WORKFLOW_REF for downstream checkout steps. |
| pkg/workflow/checkout_manager.go | Adds ref support to .github/.agents sparse checkout generation. |
| pkg/workflow/compiler_activation_job.go | Exposes target_ref as activation output and wires it into activation .github/.agents checkout. |
| pkg/workflow/compiler_yaml_helpers.go | Normalizes version→git ref and pins Checkout actions folder with repository/ref in dev/script modes. |
| pkg/workflow/maintenance_workflow.go | Emits Checkout actions folder in dev/script mode with explicit repository and optional ref. |
| .github/workflows/agentics-maintenance.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/workflow-skill-extractor.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/workflow-normalizer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/workflow-health-manager.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/workflow-generator.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/weekly-safe-outputs-spec-review.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/weekly-issue-summary.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/weekly-editors-health-check.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/video-analyzer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/ubuntu-image-analyzer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/typist.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/tidy.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/test-workflow.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/test-project-url-default.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/test-dispatcher.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/test-create-pr-error-handling.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/terminal-stylist.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/super-linter.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/sub-issue-closer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/step-name-alignment.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/static-analysis-report.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/stale-repo-identifier.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/smoke-test-tools.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/smoke-temporary-id.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/smoke-project.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/smoke-multi-pr.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/smoke-gemini.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/smoke-create-cross-repo-pr.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/smoke-copilot.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/smoke-codex.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/smoke-claude.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/smoke-agent.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/slide-deck-maintainer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/sergo.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/semantic-function-refactor.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/security-review.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/security-compliance.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/security-alert-burndown.campaign.g.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/scout.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/schema-consistency-checker.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/safe-output-health.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/research.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/repository-quality-improver.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/repo-tree-map.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/repo-audit-analyzer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/release.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/refiner.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/q.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/python-data-charts.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/prompt-clustering-analysis.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/pr-triage-agent.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/pr-nitpick-reviewer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/portfolio-analyst.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/plan.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/pdf-summary.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/org-health-report.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/notion-issue-summary.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/metrics-collector.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/mergefest.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/mcp-inspector.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/lockfile-stats.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/layout-spec-maintainer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/jsweep.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/issue-triage-agent.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/issue-monster.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/issue-arborist.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/instructions-janitor.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/hourly-ci-cleaner.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/grumpy-reviewer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/gpclean.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/go-pattern-detector.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/go-logger.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/go-fan.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/glossary-maintainer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/github-remote-mcp-auth-test.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/github-mcp-tools-report.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/functional-pragmatist.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/firewall.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/example-workflow-analyzer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/example-permissions-warning.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/duplicate-code-detector.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/draft-pr-cleanup.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/docs-noob-tester.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/discussion-task-miner.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/dictation-prompt.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/dev.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/dev-hawk.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/dependabot-go-checker.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/dependabot-burner.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/delight.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/dead-code-remover.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-workflow-updater.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-team-status.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-team-evolution-insights.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-syntax-error-quality.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-semgrep-scan.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-security-red-team.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-secrets-analysis.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-safe-outputs-conformance.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-regulatory.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-performance-summary.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-observability-report.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-multi-device-docs-tester.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-mcp-concurrency-analysis.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-malicious-code-scan.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-function-namer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-firewall-report.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-file-diet.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-doc-updater.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-doc-healer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-compiler-quality.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-cli-tools-tester.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-cli-performance.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-choice-test.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-assign-issue-to-user.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/daily-architecture-diagram.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/craft.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/copilot-pr-merged-report.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/copilot-cli-deep-research.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/copilot-agent-analysis.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/contribution-check.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/constraint-solving-potd.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/commit-changes-analyzer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/codex-github-remote-mcp-test.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/code-simplifier.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/cloclo.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/cli-version-checker.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/cli-consistency-checker.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/claude-code-user-docs-review.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/ci-doctor.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/ci-coach.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/chroma-issue-indexer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/changeset.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/breaking-change-checker.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/brave.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/bot-detection.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/blog-auditor.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/auto-triage-issues.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/artifacts-summary.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/archie.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/ai-moderator.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/agent-performance-analyzer.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
| .github/workflows/ace-editor.lock.yml | Pins Checkout actions folder to github/gh-aw (repo + ref). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
| ref := versionToGitRef(version) | ||
| refLine := "" | ||
| if ref != "" { | ||
| refLine = " ref: " + ref + "\n" | ||
| } |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | ||
| with: | ||
| repository: github/gh-aw | ||
| ref: 45b92cc |
| - name: Checkout actions folder | ||
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | ||
| with: | ||
| repository: github/gh-aw | ||
| ref: 45b92cc |
|
@copilot fix tests CI / build-wasm (pull_request)Failing after 52s |
…ns folder step Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Fixed in 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:
|
In caller-hosted relay topologies (
<org>/<app-repo>calling<org>/<platform-repo>/.github/workflows/<gateway>.lock.yml@<feature-branch>), the activation checkout for.github/.agentsignored the callee's@<feature-branch>ref entirely, always falling back to the platform repo's default branch. Additionally, theCheckout actions folderstep was emitted withoutrepository:orref:, causingSetup Scriptsto fail in cross-repo relay scenarios becauseactions/checkoutdefaulted to the caller's repo (which has noactions/directory).Root cause
resolve_host_repo.cjsonly emittedtarget_repo— there was notarget_refextraction fromGITHUB_WORKFLOW_REF. ConsequentlyGenerateGitHubFolderCheckoutStephad noref:support, and notarget_refoutput was wired through the activation job.Separately,
generateCheckoutActionsFolderin dev and script modes omittedrepository: github/gh-awandref:from theCheckout actions folderstep, causing cross-repo callers to check out their own repo (which has noactions/directory), makingSetup Scriptsfail immediately.Changes
actions/setup/js/resolve_host_repo.cjs: Extract the@refportion ofGITHUB_WORKFLOW_REFand emit it astarget_ref. Falls back to""(notGITHUB_REF) when no@is present — usingGITHUB_REFin cross-repo contexts would inject the caller's branch, not the callee's.pkg/workflow/checkout_manager.go: AddcrossRepoTargetReffield withSetCrossRepoTargetRef/GetCrossRepoTargetRef. ExtendGenerateGitHubFolderCheckoutStep(repository, ref string, ...)to emitref:when non-empty.pkg/workflow/compiler_activation_job.go: Exposetarget_refas an activation output alongsidetarget_repoforworkflow_calltriggers (sans inlined imports). Wire${{ steps.resolve-host-repo.outputs.target_ref }}into the.github/.agentscheckout.pkg/workflow/compiler_yaml_helpers.go: AddversionToGitRef()helper that normalizesgit describeoutput to a valid git ref (strips-dirty, extracts short SHA fromv1.2.3-N-gSHAformat). Applyrepository: github/gh-awandref: <version>to theCheckout actions folderstep in both dev and script modes.pkg/workflow/maintenance_workflow.go: SameCheckout actions folderfix applied to the maintenance workflow generator.Generated activation checkout now looks like:
Generated
Checkout actions folderstep now looks like:target_refhandles full refs (refs/heads/feature), short names (main), tags (refs/tags/v1.0.0), and commit SHAs.💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.
✨ PR Review Safe Output Test - Run 23031087181