Skip to content

Update checkout front matter for current repository#18713

Merged
pelikhan merged 18 commits intomainfrom
copilot/update-checkout-current-repo
Feb 28, 2026
Merged

Update checkout front matter for current repository#18713
pelikhan merged 18 commits intomainfrom
copilot/update-checkout-current-repo

Conversation

Copy link
Contributor

Copilot AI commented Feb 27, 2026

  • Add Current bool field to CheckoutConfig struct
  • Add current bool to resolvedCheckout; propagate in add()
  • Add GetCurrentRepository() method to CheckoutManager
  • Parse current field and normalize path: "." to "" in checkoutConfigFromMap()
  • Normalize path: "." to "" in add() so "" and "." always merge as the same root checkout
  • Validate at-most-one-current using (repository, path) pair keys
  • Update JSON schema with current property
  • Add buildCheckoutsPromptContent() and inject checkout list into GitHub context prompt
  • Show full $GITHUB_WORKSPACE-based absolute paths in prompt; mark root checkout as (cwd)
  • Add tests for all new behavior including path normalization merging test
  • Update docs: current flag in table + "Marking a Primary Repository" section
  • Fix generated YAML to use token: not github-token: for actions/checkout
  • Remove path: . from root checkout entries in docs examples and code comments
  • Fix duplicate renderGuardPoliciesJSON from merge
  • Merge main branch; recompile all workflows
  • Fix TestCodexEngineRenderMCPConfig unit test: remove payloadSizeThreshold expectation (removed from renderer in main merge)
  • Update wasm golden files (basic-copilot, smoke-copilot, with-imports) for payloadSizeThreshold removal
  • Add current: true to smoke-codex checkout entry and recompile
  • Fix lint: use assert.Empty in checkout_manager_test.go (testifylint)
  • Fix lint: remove unused isDockerAvailable from docker_images.go; move to integration test file
  • Fix lint: remove unused schemaValidationLog from parser/schema_validation.go

💡 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 22524448275

💥 [THE END] — Illustrated by Smoke Claude

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
@pelikhan
Copy link
Contributor

@copilot review github context prompt and populate with the list of checkouts, including the current so that the agent knows where the checkouts are and what repos they are for.

Copy link
Contributor

@pelikhan pelikhan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot update current docs

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Feb 28, 2026

@copilot review github context prompt and populate with the list of checkouts, including the current so that the agent knows where the checkouts are and what repos they are for.

Done in 688ab13. The GitHub context prompt now includes the full checkout list when user checkouts are configured. For each checkout, it shows the path and repository, marking the current one prominently. Example output injected into the <github-context> block:

- **checkouts**: The following repositories have been checked out and are available in the workspace:
  - `.` → `${{ github.repository }}`
  - `./target` → `owner/target-repo` (**current** - this is the repository you are working on; use this as the target for all GitHub operations unless otherwise specified)
  - `./libs` → `owner/libs-repo`

The checkout list is injected into githubContextPromptText before the expression extractor runs, so any ${{ github.repository }} references (used when no explicit repo is configured) are properly wired through the placeholder substitution mechanism at runtime.

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:

  • https://api.github.com/graphql
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw GOMOD GOMODCACHE go env -json GO111MODULE /opt/hostedtoolcache/go/1.25.0/x64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw GO111MODULE 64/bin/go git rev-�� --show-toplevel go k/_temp/uv-python-dir/node 7Es4/dlTADjkgtX2node GO111MODULE 64/bin/go git (http block)
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw GO111MODULE 64/bin/go git rev-�� e:]]*&#34;\([^&#34;]*\)&#34;.*/\1/p go cal/bin/node UF6D/wId6fOmzah6node GO111MODULE 64/bin/go git (http block)
  • https://api.github.com/repos/actions/ai-inference/git/ref/tags/v1
    • Triggering command: /usr/bin/gh gh api /repos/actions/ai-inference/git/ref/tags/v1 --jq .object.sha -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/actions/checkout/git/ref/tags/v3
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v3 --jq .object.sha npx prettier --cGOSUMDB GOPROXY 64/bin/go GOSUMDB GOWORK 64/bin/go sh -c &#34;prettier&#34; --check &#39;scripts/**/*GOINSECURE /bin/sh 64/bin/go tierignore -tests 64/bin/go go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v3 --jq .object.sha -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE sh (http block)
  • https://api.github.com/repos/actions/checkout/git/ref/tags/v5
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha db83e5df68791969GOINSECURE GO111MODULE 64/bin/go GOINSECURE GOMOD erignore ache/go/1.25.0/xGO111MODULE env 191118/b399/_pkgGOINSECURE GO111MODULE 64/bin/go GOINSECURE b/gh-aw/pkg/pars-V=full GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha -json GO111MODULE ache/go/1.25.0/x64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE ache/go/1.25.0/x64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha -json GO111MODULE /opt/hostedtoolcache/go/1.25.0/x64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE /usr/bin/tail GOINSECURE GOMOD GOMODCACHE tail (http block)
  • https://api.github.com/repos/actions/checkout/git/ref/tags/v6
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha -json GO111MODULE /opt/hostedtoolcache/go/1.25.0/x64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE /opt/hostedtoolcache/go/1.25.0/x64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha --show-toplevel node /usr/bin/git --check scripts/**/*.js 64/bin/go git rev-�� --show-toplevel go /usr/bin/git -json GO111MODULE 64/bin/go git (http block)
  • https://api.github.com/repos/actions/github-script/git/ref/tags/v8
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha -json GO111MODULE /opt/hostedtoolcache/go/1.25.0/x64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE /opt/hostedtoolcache/go/1.25.0/x64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha --check scripts/**/*.js 64/bin/go .prettierignore git 64/bin/go go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/actions/setup-go/git/ref/tags/v4
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-go/git/ref/tags/v4 --jq .object.sha -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-go/git/ref/tags/v4 --jq .object.sha --check scripts/**/*.js 64/bin/go .prettierignore format:cjs 64/bin/go go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/actions/setup-node/git/ref/tags/v4
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v4 --jq .object.sha -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v4 --jq .object.sha --check scripts/**/*.js 64/bin/go .prettierignore format:cjs 64/bin/go go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/actions/setup-node/git/ref/tags/v6
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v6 --jq .object.sha --show-toplevel ache/go/1.25.0/xGO111MODULE /usr/bin/git 191118/b391/_pkgnode GO111MODULE 64/bin/go git rev-�� --show-toplevel go ache/go/1.25.0/x64/bin/node SAxS/3_r8lQvpEbdnode GO111MODULE 64/bin/go git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v6 --jq .object.sha --show-toplevel go /usr/bin/git -json GO111MODULE 64/bin/go git rev-�� --show-toplevel sh /usr/bin/git npx prettier --cnode GOPROXY 64/bin/go git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v6 --jq .object.sha ster.patch go /opt/hostedtoolcache/go/1.25.0/x64/bin/node -json GO111MODULE x_amd64/link 4 -type d -name--jq /opt�� install --package-lock-only /usr/bin/git -json GO111MODULE 64/bin/go git (http block)
  • https://api.github.com/repos/astral-sh/setup-uv/git/ref/tags/eac588ad8def6316056a12d4907a9d4d84ff7a3b
    • Triggering command: /usr/bin/gh gh api /repos/astral-sh/setup-uv/git/ref/tags/eac588ad8def6316056a12d4907a9d4d84ff7a3b --jq .object.sha --show-toplevel go /usr/bin/git VbCq/r-E9PuQJuG0node GO111MODULE 64/bin/go git rev-�� --show-toplevel 191118/b415/importcfg /usr/bin/git che/go-build/c3//usr/bin/gh **/*.cjs 64/bin/go git (http block)
  • https://api.github.com/repos/docker/build-push-action/git/ref/tags/v6
    • Triggering command: /usr/bin/gh gh api /repos/docker/build-push-action/git/ref/tags/v6 --jq .object.sha .&#34; go /usr/bin/infocmp -json GO111MODULE 64/bin/go infocmp -1 xterm-color go r: $owner, name: $name) { hasDiscussionsEnabled } } -json GO111MODULE 64/bin/go git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/docker/build-push-action/git/ref/tags/v6 --jq .object.sha --show-toplevel go /usr/bin/git -json GO111MODULE 64/bin/go git rev-�� --show-toplevel go /usr/bin/bash -json GO111MODULE 64/bin/go bash (http block)
  • https://api.github.com/repos/docker/login-action/git/ref/tags/v3
    • Triggering command: /usr/bin/gh gh api /repos/docker/login-action/git/ref/tags/v3 --jq .object.sha --show-toplevel go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/docker/login-action/git/ref/tags/v3 --jq .object.sha --show-toplevel go /usr/bin/git -json GO111MODULE 64/bin/go git rev-�� --show-toplevel go r: $owner, name: $name) { hasDiscussionsEnabled } } -json GO111MODULE 64/bin/go bash (http block)
  • https://api.github.com/repos/docker/metadata-action/git/ref/tags/v5
    • Triggering command: /usr/bin/gh gh api /repos/docker/metadata-action/git/ref/tags/v5 --jq .object.sha --show-toplevel go /usr/bin/git -json GO111MODULE 64/bin/go git rev-�� --show-toplevel go r: $owner, name: $name) { hasDiscussionsEnabled } } -json GO111MODULE 64/bin/go bash (http block)
  • https://api.github.com/repos/docker/setup-buildx-action/git/ref/tags/v3
    • Triggering command: /usr/bin/gh gh api /repos/docker/setup-buildx-action/git/ref/tags/v3 --jq .object.sha tions-lock.json pkg/workflow/data/action_pins.json; \ echo &#34;��� Action pins synced successfullygit go /usr/bin/infocmp -json GO111MODULE 64/bin/go infocmp -1 xterm-color go /usr/bin/git -json GO111MODULE 64/bin/go git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/docker/setup-buildx-action/git/ref/tags/v3 --jq .object.sha --show-toplevel go /usr/bin/git -json GO111MODULE 64/bin/go git rev-�� --show-toplevel go /usr/bin/bash -json GO111MODULE 64/bin/go bash (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/a70c5eada06553e3510ac27f2c3bda9d3705bccb
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/a70c5eada06553e3510ac27f2c3bda9d3705bccb --jq .object.sha --show-toplevel conntrack /usr/bin/git INVALID,NEW -j DROP git rev-�� --show-toplevel node /usr/bin/git --check **/*.cjs 64/bin/go git (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v1.0.0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v1.0.0 --jq .object.sha GOSUMDB GOWORK 64/bin/go GOINSECURE GOMOD GOMODCACHE go env ck &#39;scripts/**/*GOINSECURE GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v1.0.0 --jq .object.sha GOSUMDB GOWORK 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/githubnext/agentics/git/ref/tags/
    • Triggering command: /usr/bin/gh gh api /repos/githubnext/agentics/git/ref/tags/# --jq .object.sha --show-toplevel nly /usr/bin/git k/gh-aw/gh-aw/pk/opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/cgo k/gh-aw/gh-aw/pk-V=full 64/bin/go git rev-�� --show-toplevel e0u03W6/S2g96x6ZVADDagIks4_j /usr/bin/git /tmp/go-build137/usr/bin/gh -trimpath 8c46ba26defb614cgraphql git (http block)
  • https://api.github.com/repos/nonexistent/action/git/ref/tags/v999.999.999
    • Triggering command: /usr/bin/gh gh api /repos/nonexistent/action/git/ref/tags/v999.999.999 --jq .object.sha GOSUMDB GOWORK 64/bin/go GOINSECURE GOMOD GOMODCACHE go env ck &#39;scripts/**/*GOINSECURE GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/nonexistent/action/git/ref/tags/v999.999.999 --jq .object.sha GOSUMDB GOWORK 64/bin/go GOINSECURE 9c28fa81 GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot AI changed the title [WIP] Update checkout front matter for current repository Update checkout front matter for current repository Feb 28, 2026
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Feb 28, 2026

@copilot update current docs

Done in b137b96. Updated docs/src/content/docs/reference/cross-repository.md:

  • Added current to the Checkout Configuration Options table with a note that the compiler rejects workflows where multiple checkouts set current: true
  • Added a "Marking a Primary Repository (current: true)" section explaining the central-repo pattern with a minimal example

@pelikhan pelikhan marked this pull request as ready for review February 28, 2026 03:05
Copilot AI review requested due to automatic review settings February 28, 2026 03:05
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds support for a current: true flag in checkout: frontmatter to identify a single “primary” repository, and enriches the GitHub context prompt with a rendered list of configured checkouts (marking the current one).

Changes:

  • Adds current to checkout config parsing/validation, internal checkout merging, and JSON schema.
  • Adds CheckoutManager.GetCurrentRepository() and prompt-building helpers to surface checkout information to the agent.
  • Updates docs and the smoke workflow lock file to reflect the new GitHub context content.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
pkg/workflow/unified_prompt_step.go Injects a generated checkout list into the GitHub context prompt before expression extraction/substitution.
pkg/workflow/checkout_manager.go Adds Current to config + resolved entries, parses/validates current, and generates markdown checkout-list prompt content.
pkg/workflow/checkout_manager_test.go Adds unit tests for parsing/validation, GetCurrentRepository, and checkout prompt rendering.
pkg/parser/schemas/main_workflow_schema.json Extends checkout schema with current: boolean.
docs/src/content/docs/reference/cross-repository.md Documents current and adds a new section with examples.
.github/workflows/smoke-codex.lock.yml Updates the locked prompt content to include the new checkouts section.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@pelikhan
Copy link
Contributor

@copilot merge main recompile

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Feb 28, 2026

Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details.

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:

  • https://api.github.com/graphql
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw GOMOD GOMODCACHE go env json&#39; --ignore-path ../../../.pr**/*.json GO111MODULE odules/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin/sh GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw GOMOD GOMODCACHE go env json&#39; --ignore-path ../../../.pr**/*.json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/a70c5eada06553e3510ac27f2c3bda9d3705bccb
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/a70c5eada06553e3510ac27f2c3bda9d3705bccb --jq .object.sha -json GO111MODULE odules/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin/node GOINSECURE GOMOD GOMODCACHE go ules�� -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/githubnext/agentics/git/ref/tags/
    • Triggering command: /usr/bin/gh gh api /repos/githubnext/agentics/git/ref/tags/# --jq .object.sha -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env ../pkg/workflow/js/**/*.json&#39; --ignore-path ../../../.prettierignore GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet (http block)

If you need me to access, download, or install something from one of these locations, you can either:

@pelikhan
Copy link
Contributor

@copilot merge main and recompile

Show full path in prompt and cwd

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Feb 28, 2026

@copilot merge main and recompile

Show full path in prompt and cwd

Done in 07fd42b. The checkout prompt now shows full absolute paths using $GITHUB_WORKSPACE as the base, and marks the workspace root as (cwd). Example output:

- **checkouts**: The following repositories have been checked out and are available in the workspace:
  - `$GITHUB_WORKSPACE` → `${{ github.repository }}` (cwd)
  - `$GITHUB_WORKSPACE/target` → `owner/target-repo` (**current** - this is the repository you are working on; use this as the target for all GitHub operations unless otherwise specified)
  - `$GITHUB_WORKSPACE/libs` → `owner/libs-repo`

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:

  • https://api.github.com/graphql
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw (http block)
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw -embedcfg /tmp/go-build2425038412/b334/embedcfg -pack (http block)
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw rt/yaml (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/a70c5eada06553e3510ac27f2c3bda9d3705bccb
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/a70c5eada06553e3510ac27f2c3bda9d3705bccb --jq .object.sha (http block)
  • https://api.github.com/repos/githubnext/agentics/git/ref/tags/
    • Triggering command: /usr/bin/gh gh api /repos/githubnext/agentics/git/ref/tags/# --jq .object.sha th .prettierignore --log-level=error .cfg 64/pkg/tool/linux_amd64/vet (http block)

If you need me to access, download, or install something from one of these locations, you can either:

@pelikhan
Copy link
Contributor

@copilot add checkout entry to smoke-codex and recompile

…val; add current:true to smoke-codex checkout

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Feb 28, 2026

Fix tests:
https://github.com/github/gh-aw/actions/runs/22522600019/job/65249663621?pr=18713
https://github.com/github/gh-aw/actions/runs/22522600019/job/65249663647?pr=18713

Fixed in 5bee2d3. Two issues addressed:

  1. TestCodexEngineRenderMCPConfig — removed the payloadSizeThreshold expectation; the renderer no longer emits that field (removed in the main merge).
  2. Wasm golden files (basic-copilot, smoke-copilot, with-imports) — regenerated with -update to reflect the same payloadSizeThreshold removal.

@copilot add checkout entry to smoke-codex and recompile

Done in 5bee2d3. Converted checkout: fetch-depth: 2 to a list entry with current: true and recompiled. The generated prompt now includes the checkout context marking the workspace root as (current).

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:

  • https://api.github.com/graphql
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw -nolocalimports -importcfg ache/go/1.25.0/x/tmp/gh-aw/aw-feature-branch.patch -ato�� -bool -buildtags /usr/local/sbin/bash -errorsas -ifaceassert -nilfunc bash (http block)
    • Triggering command: /usr/bin/gh /usr/bin/gh api graphql -f query=query($owner: String!, $name: String!) { repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } -f owner=github -f name=gh-aw -buildtags /snap/bin/bash git _lab�� --show-toplevel bash /usr/bin/git --noprofile -tests 6224118/b123/vet--show-toplevel git (http block)
  • https://api.github.com/repos/actions/ai-inference/git/ref/tags/v1
    • Triggering command: /usr/bin/gh gh api /repos/actions/ai-inference/git/ref/tags/v1 --jq .object.sha se 2940047/b049/vet.cfg ndor/bin/bash credential.helpegit (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/ai-inference/git/ref/tags/v1 --jq .object.sha (http block)
  • https://api.github.com/repos/actions/checkout/git/ref/tags/v3
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v3 --jq .object.sha (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v3 --jq .object.sha --show-toplevel 64/pkg/tool/linux_amd64/vet /usr/bin/git (http block)
  • https://api.github.com/repos/actions/checkout/git/ref/tags/v5
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha copilot/update-checkout-current-repo^{commit} (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha --noprofile -tests /usr/sbin/bash (http block)
  • https://api.github.com/repos/actions/checkout/git/ref/tags/v6
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha heckout-current-repo^{commit} (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha --show-toplevel (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha tags/v5 ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet /usr/bin/git se 2940047/b056/vetrev-parse .cfg git comm�� -m Add new feature 1/x64/bin/node se 2940047/b229/vetrev-parse ache/go/1.25.0/x--show-toplevel git (http block)
  • https://api.github.com/repos/actions/github-script/git/ref/tags/v8
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha heckout-current-repo^{commit} (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha --show-toplevel -tests /usr/local/.ghcup/bin/bash (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha --show-toplevel ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet /usr/bin/git se 2940047/b111/vetrev-parse .cfg git rev-�� HEAD ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet 1/x64/bin/node se 2940047/b182/vetrev-parse kflow.test git (http block)
  • https://api.github.com/repos/actions/setup-go/git/ref/tags/v4
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-go/git/ref/tags/v4 --jq .object.sha heckout-current-repo^{commit} (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-go/git/ref/tags/v4 --jq .object.sha --show-toplevel ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet /usr/lib/git-core/git se 2940047/b128/vetrev-parse 86_64/bash /usr/lib/git-core/git main�� run --auto 1/x64/bin/node --detach 2940047/b177/vetrev-parse 64/pkg/tool/linu--show-toplevel git (http block)
  • https://api.github.com/repos/actions/setup-node/git/ref/tags/v4
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v4 --jq .object.sha heckout-current-repo^{commit} (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v4 --jq .object.sha --show-toplevel ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet /usr/bin/git se 2940047/b106/vetrev-parse .cfg git add initial.txt ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet 1/x64/bin/node se 2940047/b230/vetrev-parse 64/pkg/tool/linu--show-toplevel git (http block)
  • https://api.github.com/repos/actions/upload-artifact/git/ref/tags/v4
    • Triggering command: /usr/bin/gh gh api /repos/actions/upload-artifact/git/ref/tags/v4 --jq .object.sha (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/upload-artifact/git/ref/tags/v4 --jq .object.sha --show-toplevel x_amd64/vet /usr/bin/git ify@v1.11.1/requbash ify@v1.11.1/requ--norc 64/pkg/tool/linu--noprofile git ache�� --show-toplevel 64/pkg/tool/linux_amd64/vet /usr/bin/git (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v1.0.0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v1.0.0 --jq .object.sha (http block)
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v1.0.0 --jq .object.sha --show-toplevel x_amd64/vet /usr/bin/git (http block)
  • https://api.github.com/repos/nonexistent/action/git/ref/tags/v999.999.999
    • Triggering command: /usr/bin/gh gh api /repos/nonexistent/action/git/ref/tags/v999.999.999 --jq .object.sha (http block)
    • Triggering command: /usr/bin/gh gh api /repos/nonexistent/action/git/ref/tags/v999.999.999 --jq .object.sha --show-toplevel x_amd64/vet /usr/bin/git (http block)

If you need me to access, download, or install something from one of these locations, you can either:

@pelikhan
Copy link
Contributor

@copilot lint go

…d isDockerAvailable and schemaValidationLog

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Feb 28, 2026

@copilot lint go

Fixed in 3b8e283. Three lint issues resolved:

  1. testifylint — replaced assert.Equal(t, "", ...) with assert.Empty(t, ...) in checkout_manager_test.go
  2. unused isDockerAvailable — moved from docker_images.go into docker_build_integration_test.go (where it's actually used, under the integration build tag)
  3. unused schemaValidationLog — removed from pkg/parser/schema_validation.go along with the unused logger import

make lint now reports 0 issues.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 28, 2026

🌑 The shadows whisper... Smoke Codex failed. The oracle requires further meditation...

@github-actions
Copy link
Contributor

github-actions bot commented Feb 28, 2026

🎬 THE ENDSmoke Claude MISSION: ACCOMPLISHED! The hero saves the day! ✨

@github-actions
Copy link
Contributor

📰 BREAKING: Smoke Copilot is now investigating this pull request. Sources say the story is developing...

@github-actions
Copy link
Contributor

Agent Container Tool Check

Tool Status Version
bash 5.2.21
sh available
git 2.53.0
jq 1.7
yq 4.52.4
curl 8.5.0
gh 2.87.3
node 20.20.0
python3 3.12.3
go 1.24.13
java 21.0.10
dotnet 10.0.102

Result: 12/12 tools available ✅

Overall Status: PASS

🔧 Tool validation by Agent Container Smoke Test

@github-actions
Copy link
Contributor

Commit pushed: 26887ab

Generated by Changeset Generator

@github-actions
Copy link
Contributor

🤖 Smoke test §22524448380 results for PR #18713:

Test Status
GitHub MCP

Status: ⚠️ PARTIAL PASS (Serena MCP tools not available)

cc @pelikhan @Copilot

📰 BREAKING: Report filed by Smoke Copilot

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR adds current: true checkout support to tell agents which repository is their primary target. The implementation is clean: schema update, validation, prompt injection, and tests all present. The injection approach (inserting before (/github-context)) is a reasonable pattern. Docs and smoke-codex workflow are updated accordingly. No issues found — looks good.

📰 BREAKING: Report filed by Smoke Copilot

// "${{ github.repository }}" for any checkout that does not have an explicit repository
// configured; callers must ensure these expressions are processed by an ExpressionExtractor
// so the placeholder substitution step can resolve them at runtime.
func buildCheckoutsPromptContent(checkouts []*CheckoutConfig) string {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The buildCheckoutsPromptContent function cleanly separates the prompt-building concern from the checkout manager's core responsibilities. The (cwd) marker and **current** annotation should give agents clear guidance about which repository to target. Nice design.

unifiedPromptLog.Printf("Injecting checkout list into GitHub context (%d checkouts)", len(data.CheckoutConfigs))
const closeTag = "</github-context>"
if idx := strings.LastIndex(combinedPromptText, closeTag); idx >= 0 {
combinedPromptText = combinedPromptText[:idx] + checkoutsContent + combinedPromptText[idx:]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The injection approach using strings.LastIndex to find and insert before (/github-context) is clever and resilient. One thing worth noting: if the closing tag appears multiple times in githubContextPromptText (e.g., in code examples), this would still work correctly since LastIndex finds the last occurrence. A comment explaining this intent would help future readers.

@github-actions
Copy link
Contributor

📰 VERDICT: Smoke Copilot has concluded. All systems operational. This is a developing story. 🎤

@github-actions
Copy link
Contributor

💥 KAPOW! 🦸 THE SMOKE TEST AGENT WAS HERE! 🦸

💨 WHOOOOSH! Claude swooped in like a caped crusader, tested ALL the systems, and — BLAMMO! — everything checks out!

🔥 ZAAAAP! The agentic workflows live! The MCP tools respond! The builds compile!

💥 "With great automation comes great reliability!" — Smoke Claude, Run §22524448275

POW! BAM! BOOM! Mission accomplished. This agent has left the building. 🦸♂️💨

💥 [THE END] — Illustrated by Smoke Claude

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💥 Automated smoke test review - all systems nominal!

💥 [THE END] — Illustrated by Smoke Claude

@pelikhan pelikhan merged commit 1be15a7 into main Feb 28, 2026
49 checks passed
@pelikhan pelikhan deleted the copilot/update-checkout-current-repo branch February 28, 2026 16:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants