Skip to content

Add wiki flag to repo-memory frontmatter for GitHub Wiki git backing#19800

Merged
pelikhan merged 6 commits intomainfrom
copilot/add-wiki-frontmatter-boolean
Mar 6, 2026
Merged

Add wiki flag to repo-memory frontmatter for GitHub Wiki git backing#19800
pelikhan merged 6 commits intomainfrom
copilot/add-wiki-frontmatter-boolean

Conversation

Copy link
Contributor

Copilot AI commented Mar 6, 2026

repo-memory previously only supported regular repository git branches. This adds a wiki boolean that targets the GitHub Wiki's git backend instead, and instructs the agent to follow GitHub Wiki markdown conventions.

Changes

  • New wiki field on RepoMemoryEntry — parsed in both object and array config paths
  • Wiki-mode defaults: branch name defaults to master (wiki default branch); create-orphan forced to false (wiki always exists); explicit branch-name overrides the default
  • Clone/push URL: appends .wiki to TARGET_REPO so scripts resolve {repo}.wiki.git
  • Allowed-repo validation: wiki push step pre-populates REPO_MEMORY_ALLOWED_REPOS with the .wiki repo so push_repo_memory.cjs accepts it as a valid target
  • Prompt injection: adds __GH_AW_WIKI_NOTE__ placeholder to repo_memory_prompt.md; populated with GitHub Wiki syntax guidance when wiki: true, empty otherwise
  • Multi-memory: list items annotated with (GitHub Wiki) for wiki-backed entries
  • Schema + docs: wiki boolean added to both object and array oneOf schemas and frontmatter-full.md
  • Wiki-aware step names: generated steps use wiki-memory instead of repo-memory in their names when wiki: true — e.g. Clone wiki-memory branch, Push wiki-memory changes, Upload/Download wiki-memory artifact
  • Push failure reporting: when the push_repo_memory job itself fails (e.g. permission or configuration errors), the conclusion job now surfaces a ⚠️ Repo-Memory Push Failed diagnostic in the agent failure issue/comment via GH_AW_PUSH_REPO_MEMORY_RESULT
  • Wiki memory enabled on 3 workflows:
    • glossary-maintainer.md — stores project glossary/terminology reference in the wiki for browseable reference
    • developer-docs-consolidator.md — stores consolidated developer documentation and instructions in the wiki
    • technical-doc-writer.md — stores written technical documentation in the wiki as a persistent library

Example

tools:
  repo-memory:
    wiki: true               # uses {repo}.wiki.git, branches on master
    target-repo: myorg/docs  # optional; defaults to current repo

With wiki: true, the agent receives a note like:

GitHub Wiki: This memory is backed by the GitHub Wiki for this repository. Files use GitHub Wiki Markdown syntax. Follow GitHub Wiki conventions when creating or editing pages (e.g., use [[Page Name]] syntax for internal wiki links, name page files with spaces replaced by hyphens…).

And the generated workflow steps are labelled accordingly:

- Clone wiki-memory branch (default)
- Upload wiki-memory artifact (default)
- Download wiki-memory artifact (default)
- Push wiki-memory changes (default)
Original prompt

Add a wiki to the frontmatter repo-memory boolean that allows selecting the target wiki associated with the repo instead of the git repository associated with the repo. When this flag is enabled, use the git backing the wimi and also inject additional prompt text to explain to the language model that this is the GitHub Wiki, and that it should follow GitHub Wiki markdown syntax.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

When wiki:true is set in repo-memory config:
- Uses the GitHub Wiki git URL ({repo}.wiki.git) for clone/push
- Defaults branch-name to 'master' (wiki default branch)
- Disables create-orphan (wiki always exists)
- Injects wiki-specific prompt text explaining GitHub Wiki syntax

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copilot AI changed the title [WIP] Add wiki to frontmatter repo-memory boolean Add wiki flag to repo-memory frontmatter for GitHub Wiki git backing Mar 6, 2026
@pelikhan
Copy link
Contributor

pelikhan commented Mar 6, 2026

@copilot review agentic workflows and enable wiki memory on 3 workflows that can benefit from this memory

…r, technical-doc-writer

These 3 workflows produce documentation that benefits from GitHub Wiki backing:
- glossary-maintainer: stores project glossary in wiki for browseable reference
- developer-docs-consolidator: stores consolidated dev docs in wiki
- technical-doc-writer: stores written docs in wiki with wiki markdown conventions

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

Copilot AI commented Mar 6, 2026

@copilot review agentic workflows and enable wiki memory on 3 workflows that can benefit from this memory

Enabled wiki: true repo-memory on 3 documentation-focused workflows in commit 2161624:

  • glossary-maintainer.md — maintains the project glossary; wiki backing makes terms browseable as wiki pages
  • developer-docs-consolidator.md — consolidates developer docs from scratchpad/; wiki backing provides a human-readable developer knowledge base
  • technical-doc-writer.md — writes technical docs on demand; wiki backing creates a persistent documentation library

Each gets repo-memory: { wiki: true, description: "..." } in their tools section. The compiler sets TARGET_REPO: ${{ github.repository }}.wiki, defaults to master branch, and injects a GitHub Wiki note into the agent prompt explaining wiki markdown conventions.

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 -ifaceassert -nilfunc git rev-�� --show-toplevel -tests /usr/bin/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 4307262/b206/vet.cfg ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet (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)
  • 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 -unreachable=false /tmp/go-build3504307262/b041/vet.cfg 4307262/b297/vet.cfg (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha --show-toplevel (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 se 4307262/b065/vet.cfg ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha se 4307262/b103/vet.cfg .cfg (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha --show-toplevel y.md /usr/bin/git es.md (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 se 4307262/b033/vet.cfg .cfg (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha se 4307262/b089/vet.cfg .cfg (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha se 4307262/b161/vet.cfg .cfg (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 se 4307262/b140/vet.cfg .cfg (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 se 4307262/b139/vet.cfg .cfg (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)
  • 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)
  • 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)

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

@pelikhan
Copy link
Contributor

pelikhan commented Mar 6, 2026

@copilot update generated step name to reflect wiki mode

https://github.com/github/gh-aw/actions/runs/22754733639/job/65996608038#step:9:1

@pelikhan
Copy link
Contributor

pelikhan commented Mar 6, 2026

@copilot the prepopulated allowed repo list needs to be updated to allow the wiki repo

https://github.com/github/gh-aw/actions/runs/22754733639/job/65997725548#step:7:1

…-memory)

- Clone wiki-memory branch / Clone repo-memory branch
- Upload wiki-memory artifact / Upload repo-memory artifact
- Download wiki-memory artifact / Download repo-memory artifact
- Push wiki-memory changes / Push repo-memory changes

Also add step name assertions to existing wiki tests.

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

Copilot AI commented Mar 6, 2026

@copilot update generated step name to reflect wiki mode

https://github.com/github/gh-aw/actions/runs/22754733639/job/65996608038#step:9:1

Done in commit 263c60a. When wiki: true, all four generated step names now use wiki-memory instead of repo-memory:

  • Clone wiki-memory branch (default)
  • Upload wiki-memory artifact (default)
  • Download wiki-memory artifact (default)
  • Push wiki-memory changes (default)

Non-wiki memories keep their original repo-memory names unchanged.

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 o est.go x_amd64/vet go *.json&#39; &#39;!../../../pkg/workflow/js/**/*.json&#39; --ignore-path ../../../.prettierignore .go r: $owner, name: $name) { hasDiscussionsEnabled } } (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 nonexistent-workadd --limit git rev-�� --show-toplevel x_amd64/vet /usr/bin/git -json 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 --show-toplevel ache/go/1.25.0/xGO111MODULE /usr/bin/git 9896476/b391/_pkgit GO111MODULE 64/bin/go git rev-�� --show-toplevel go /usr/bin/git je7b/EfQ6o77T1ISgit GO111MODULE 64/bin/go git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/ai-inference/git/ref/tags/v1 --jq .object.sha -json GO111MODULE ache/go/1.25.0/x64/bin/node GOINSECURE GOMOD GOMODCACHE erignore m/_n�� -json GO111MODULE /opt/hostedtoolcache/go/1.25.0/x64/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 runs/20260306-082058-29626/test-3214894827/.github/workflows GO111MODULE 9169785/b367/vet.cfg GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE ache/node/24.14.0/x64/bin/node GOINSECURE GOMOD GOMODCACHE /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v3 --jq .object.sha -json GO111MODULE ache/go/1.25.0/x64/bin/go GOINSECURE GOMOD GOMODCACHE go env &#39;**/*.ts&#39; &#39;**/*.json&#39; --ignore-path ../../../.pr**/*.json GO111MODULE ode GOINSECURE GOMOD GOMODCACHE go (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 -json GO111MODULE 64/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 --show-toplevel -extld=gcc /usr/bin/git &#34;prettier&#34; --chegit GOPROXY 64/bin/go git rev-�� --show-toplevel /bin/sh /usr/bin/infocmp GOPATH=$(go env git sh 64/bin/go infocmp (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha --show-toplevel go /usr/bin/git 282764088/customgit GO111MODULE 64/bin/go git rev-�� --show-toplevel go /usr/bin/git 38/001/test-frongit GO111MODULE 64/pkg/tool/linu--show-toplevel git (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 --show-toplevel -dwarf=false /usr/bin/infocmp go1.25.0 -c=4 -nolocalimports infocmp -1 xterm-color /tmp/go-build2979169785/b001/_testmain.go /usr/bin/git -json GO111MODULE 64/bin/go git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha /tmp/gh-aw-test-runs/20260306-082058-29626/test-597238316/.github/workflows rev-parse /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/compile ck &#39;**/*.cjs&#39; &#39;*git GO111MODULE 64/bin/go /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/compile -o /tmp/go-build2979169785/b418/_pkg_.a -trimpath /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/compile -p github.com/githurev-parse -lang=go1.25 /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/compile (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/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/git -json GO111MODULE 64/pkg/tool/linu--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 GOSUMDB GOWORK 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 bf0813d7488cf446GOINSECURE GO111MODULE 64/bin/go GOINSECURE erignore GOMODCACHE ache/go/1.25.0/xGO111MODULE env 9896476/b388/_pkGOINSECURE GO111MODULE 64/bin/go GOINSECURE b/gh-aw/pkg/cons-atomic GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha g/repoutil/repouGOINSECURE g/repoutil/repouGOMOD 64/bin/go GOINSECURE GOMOD erignore ache/go/1.25.0/xGO111MODULE env 9896476/b405/_pkGOINSECURE 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 --show-toplevel -tests /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet ck &#39;**/*.cjs&#39; &#39;*git GO111MODULE 64/bin/go /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet -ato�� -bool -buildtags /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet -errorsas -ifaceassert -nilfunc /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-go/git/ref/tags/v4 --jq .object.sha -json GO111MODULE k/_temp/uv-python-dir/sh GOINSECURE GOMOD GOMODCACHE go env heck &#39;**/*.cjs&#39; &#39;**/*.ts&#39; &#39;**/*.json&#39; --ignore-path ../../../.pr**/*.json GO111MODULE nfig/composer/vendor/bin/sh 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 /tmp/gh-aw-test-runs/20260306-082058-29626/test-807474804/.github/workflows config /usr/bin/infocmp remote.origin.urgit GO111MODULE 64/bin/go infocmp -1 xterm-color 3AJljWL-wbSP /usr/bin/git -json GO111MODULE 64/bin/go git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/setup-node/git/ref/tags/v4 --jq .object.sha -json GO111MODULE in/sh GOINSECURE GOMOD GOMODCACHE go env heck &#39;**/*.cjs&#39; &#39;**/*.ts&#39; &#39;**/*.json&#39; --ignore-path ../../../.pr**/*.json GO111MODULE (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 auto-triage-issues.md g/repoutil/repoutil_test.go /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/upload-artifact/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)
  • 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 th .prettierigno-errorsas (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/1/artifacts
    • Triggering command: /usr/bin/gh gh run download 1 --dir test-logs/run-1 GO111MODULE x_amd64/compile GOINSECURE GOMOD GOMODCACHE x_amd64/compile env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/12345/artifacts
    • Triggering command: /usr/bin/gh gh run download 12345 --dir test-logs/run-12345 GO111MODULE x_amd64/link GOINSECURE GOMOD GOMODCACHE x_amd64/link env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE 4X/C061xVfYOKCjcDjyPxD-/1pjaMAEPwhrn9NjtCOgd (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/12346/artifacts
    • Triggering command: /usr/bin/gh gh run download 12346 --dir test-logs/run-12346 GO111MODULE x_amd64/compile GOINSECURE GOMOD GOMODCACHE x_amd64/compile env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/2/artifacts
    • Triggering command: /usr/bin/gh gh run download 2 --dir test-logs/run-2 GO111MODULE x_amd64/link GOINSECURE GOMOD GOMODCACHE x_amd64/link env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE o4/zVQeZabySgl7MzKSS7ai/en8Fpqci-test.v=true (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/3/artifacts
    • Triggering command: /usr/bin/gh gh run download 3 --dir test-logs/run-3 GO111MODULE x_amd64/link GOINSECURE GOMOD GOMODCACHE x_amd64/link env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE Zm/GFtmVa307QDDNuUCuh0B/7zrZo2yp-buildtags (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/4/artifacts
    • Triggering command: /usr/bin/gh gh run download 4 --dir test-logs/run-4 GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/5/artifacts
    • Triggering command: /usr/bin/gh gh run download 5 --dir test-logs/run-5 GO111MODULE x_amd64/compile GOINSECURE GOMOD GOMODCACHE x_amd64/compile env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/actions/workflows
    • Triggering command: /usr/bin/gh gh workflow list --json name,state,path 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 run list --json databaseId,number,url,status,conclusion,workflowName,createdAt,startedAt,updatedAt,event,headBranch,headSha,displayTitle --workflow nonexistent-workflow-12345 --limit 100 -pack /home/REDACTED/work/gh-aw/gh-aw/pkg/sliceutil/sliceutil.go /home/REDACTED/work/gh-aw/gh-aw/pkg/sliceutil/sliceutil_test.go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE node (http block)
    • Triggering command: /usr/bin/gh gh run list --json databaseId,number,url,status,conclusion,workflowName,createdAt,startedAt,updatedAt,event,headBranch,headSha,displayTitle --workflow nonexistent-workflow-12345 --limit 6 GOMOD GOMODCACHE x_amd64/vet env ty-test.md 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 (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 ty-test.md 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/github/gh-aw/git/ref/tags/v1.0.0 --jq .object.sha npx prettier --wGOINSECURE git 64/bin/go --show-toplevel 64/pkg/tool/linuenv /usr/bin/git sh -c &#34;prettier&#34; --wriGOINSECURE git 64/bin/go tierignore go /usr/bin/git node (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v1.2.3
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v1.2.3 --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/github/gh-aw/git/ref/tags/v2.0.0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v2.0.0 --jq .object.sha -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE sh (http block)
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v2.0.0 --jq .object.sha 9896476/b358/_pkGOINSECURE GO111MODULE 64/bin/go GOINSECURE b/gh-aw/pkg/math-atomic GOMODCACHE go env IsiN/-5Z7JdU1nRt-errorsas GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE 9896476/b358/impconfig (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v3.0.0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v3.0.0 --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/githubnext/agentics/git/ref/tags/
    • Triggering command: /usr/bin/gh gh api /repos/githubnext/agentics/git/ref/tags/# --jq .object.sha ../pkg/workflow/js/**/*.json&#39; --ignore-path ../../../.prettierignore (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 -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env 807474804/.github/workflows 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 npx prettier --wGOINSECURE git 64/bin/go --show-toplevel 64/pkg/tool/linuenv run-script/lib/n-json sh -c &#34;prettier&#34; --wriGOINSECURE git 64/bin/go tierignore go /usr/bin/git node (http block)
  • https://api.github.com/repos/nonexistent/repo/actions/runs/12345
    • Triggering command: /usr/bin/gh gh run view 12345 --repo nonexistent/repo --json status,conclusion GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/owner/repo/actions/workflows
    • Triggering command: /usr/bin/gh gh workflow list --json name,state,path --repo owner/repo 64/bin/go GOINSECURE GOMOD GOMODCACHE erignore env ck &#39;scripts/**/*GOINSECURE GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh workflow list --json name,state,path --repo owner/repo 64/bin/go GOINSECURE GOMOD GOMODCACHE erignore m/_n�� -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE o fix.&#34;; \ exit-s -w -X main.version=2161624-dirty (http block)
  • https://api.github.com/repos/owner/repo/contents/file.md
    • Triggering command: /tmp/go-build2979169785/b383/cli.test /tmp/go-build2979169785/b383/cli.test -test.testlogfile=/tmp/go-build2979169785/b383/testlog.txt -test.paniconexit0 -test.v=true -test.parallel=4 -test.timeout=10m0s -test.run=^Test -test.short=true GOINSECURE GOMOD GOMODCACHE ortcfg k/gh�� 35126d5394e2a1caGOINSECURE GO111MODULE 64/bin/go GOINSECURE GOMOD erignore ache/go/1.25.0/xGO111MODULE (http block)
  • https://api.github.com/repos/test-owner/test-repo/actions/secrets
    • Triggering command: /usr/bin/gh gh api /repos/test-owner/test-repo/actions/secrets --jq .secrets[].name GOSUMDB GOWORK 64/bin/go GOINSECURE GOMOD GOMODCACHE go env ck &#39;scripts/**/*GOINSECURE 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:

…arget

When wiki:true, the push script's defaultRepo is github.repository (e.g.
github/gh-aw) but TARGET_REPO is github/gh-aw.wiki. Pre-populate
REPO_MEMORY_ALLOWED_REPOS with the wiki repo so validateRepo() accepts it.

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

Copilot AI commented Mar 6, 2026

@copilot the prepopulated allowed repo list needs to be updated to allow the wiki repo

https://github.com/github/gh-aw/actions/runs/22754733639/job/65997725548#step:7:1

Fixed in commit a12fce6. When wiki: true, the generated push step now includes REPO_MEMORY_ALLOWED_REPOS: ${{ github.repository }}.wiki, which pre-populates the allowed-repo list so push_repo_memory.cjs accepts the .wiki target (since validateRepo only auto-allows the plain github.repository as defaultRepo).

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 ock.yml l ary.lock.yml s.lo�� */*.ts&#39; &#39;**/*.json&#39; --ignore-pat-errorsas ock.yml x_amd64/vet (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 uN/qRbR6-vXPX-V6rev-parse (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 (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 &#39;**/*.ts&#39; &#39;**/*.-errorsas (http block)

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

@pelikhan
Copy link
Contributor

pelikhan commented Mar 6, 2026

@copilot an error in push-repo-memory job should be reported in the agent failure issue/comment in the conclusion job

When the push_repo_memory job itself fails (e.g. E004 permission errors),
pass GH_AW_PUSH_REPO_MEMORY_RESULT to the conclusion job so the failure
handler creates/updates the agent failure issue with a diagnostic message.

- notify_comment.go: add GH_AW_PUSH_REPO_MEMORY_RESULT env var pointing to
  needs.push_repo_memory.result when repo-memory is configured
- handle_agent_failure.cjs: read the result, add hasPushRepoMemoryFailure
  check to the skip condition, and build pushRepoMemoryFailureContext for
  both the new-issue and add-comment branches
- agent_failure_issue.md / agent_failure_comment.md: add the
  {push_repo_memory_failure_context} placeholder
- Tests: TestConclusionJobPushRepoMemoryResult and
  TestConclusionJobNoPushRepoMemoryResult

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

Copilot AI commented Mar 6, 2026

@copilot an error in push-repo-memory job should be reported in the agent failure issue/comment in the conclusion job

Done in commit 2caccdc. When the push_repo_memory job itself fails (e.g. E004 permission errors), the conclusion job now:

  1. Receives GH_AW_PUSH_REPO_MEMORY_RESULT: ${{ needs.push_repo_memory.result }} as an env var
  2. Checks hasPushRepoMemoryFailure in handle_agent_failure.cjs — this bypasses the "skip if agent succeeded" gate
  3. Renders a {push_repo_memory_failure_context} section in the failure issue/comment: ⚠️ Repo-Memory Push Failed: The push-repo-memory job failed to write memory back to the repository…

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 GO111MODULE x_amd64/vet git rev-�� --show-toplevel x_amd64/vet /usr/bin/git -json GO111MODULE 64/bin/go git (http block)
    • Triggering command: /usr/bin/gh gh repo view --json owner,name --jq .owner.login &#43; &#34;/&#34; &#43; .name /usr/bin/git 15/001/test-frongit GO111MODULE ache/go/1.25.0/x--show-toplevel git rev-�� tags/v6 go /usr/bin/git 4743-27622/test-git GO111MODULE .cfg git (http block)
    • Triggering command: /usr/bin/gh gh repo view owner/repo rev-�� --show-toplevel 64/pkg/tool/linux_amd64/compile /usr/bin/git g_.a GO111MODULE ache/go/1.25.0/x--show-toplevel git rev-�� --show-toplevel go /usr/bin/git 4743-27622/test-git GO111MODULE ache/go/1.25.0/x--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 --show-toplevel ache/go/1.25.0/xGO111MODULE /usr/bin/git 802109/b386/_pkggit GO111MODULE 64/bin/go git rev-�� --show-toplevel resolved$ /usr/bin/git aQFt/j1LVCsnYhPqgit GO111MODULE 64/bin/go git (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 runs/20260306-084743-27622/test-3415324037/.github/workflows GO111MODULE 9573717/b368/vet.cfg l GOMOD GOMODCACHE go env -json GO111MODULE /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet GOINSECURE GOMOD GOMODCACHE /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet (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 -json GO111MODULE 64/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 user.name Test User /usr/bin/git prettier --check 64/bin/go git conf�� user.name Test User /usr/bin/git erignore sh 64/bin/go /usr/bin/git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha --show-toplevel go /usr/bin/git -json GO111MODULE 64/bin/go git rev-�� --show-toplevel go /usr/bin/git -json GO111MODULE 64/pkg/tool/linu--show-toplevel git (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 /tmp/gh-aw-test-runs/20260306-084743-27622/test-991487562/.github/workflows rev-parse /usr/bin/gh -json GO111MODULE 64/bin/go gh api /repos/github/gh-aw/git/ref/tags/v3.0.0 --jq ache/node/24.14.0/x64/bin/node -json GO111MODULE 64/bin/go ache/node/24.14.0/x64/bin/node (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha /tmp/gh-aw-test-runs/20260306-084743-27622/test-1461421880/.github/workflows config /tmp/go-build1729573717/b416/sliceutil.test remote.origin.urgit GO111MODULE 64/bin/go /tmp/go-build1729573717/b416/sliceutil.test -tes�� -test.paniconexit0 -test.v=true /tmp/go-build1729573717/b428/timeutil.test -test.timeout=10git -test.run=^Test -test.short=true--show-toplevel /tmp/go-build1729573717/b428/timeutil.test (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha --show-toplevel go /usr/bin/git 2749770365/.githgit GO111MODULE 64/bin/go git rev-�� --show-toplevel go /usr/bin/git -json GO111MODULE 64/pkg/tool/linu--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 GOSUMDB GOWORK 64/bin/go GOINSECURE GOMOD GOMODCACHE go ache�� -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 g/fileutil/fileuGOINSECURE g/fileutil/tar.gGOMOD 64/bin/go GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/xGO111MODULE env 802109/b388/_pkgGOINSECURE GO111MODULE 64/bin/go GOINSECURE b/gh-aw/pkg/cons-atomic GOMODCACHE go (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha d9bd14ff988ac12eGOINSECURE GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/xGO111MODULE env 802109/b406/_pkgGOINSECURE GO111MODULE 64/bin/go GOINSECURE b/gh-aw/pkg/slic-atomic 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 /tmp/gh-aw-test-runs/20260306-084743-27622/test-1572041701/.github/workflows rev-parse ache/node/24.14.0/x64/bin/node ck &#39;**/*.cjs&#39; &#39;*git GO111MODULE 64/bin/go gh t-56�� k/gh-aw/gh-aw/.github/workflows/agent-performance-analyzer.md --jq /opt/hostedtoolcache/node/24.14.0/x64/bin/node e=false GO111MODULE 64/bin/go node (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 --show-toplevel -tests /usr/bin/gh -json GO111MODULE 64/bin/go gh api /repos/github/gh-aw/git/ref/tags/v2.0.0 l /opt/hostedtoolcache/node/24.14.0/x64/bin/node e=false GO111MODULE 64/bin/go node (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 auto-triage-issues.md GO111MODULE 9573717/b402/logger.test GOINSECURE GOMOD GOMODCACHE 9573717/b402/logger.test e=/t�� 4743-27622/test-914720934 GO111MODULE (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 h ../../../.prettierignore 3122362/b129/ x_amd64/vet -p testing -lang=go1.25 x_amd64/vet 3122�� w/js/**/*.json&#39; --ignore-path /opt/hostedtoolc../../../.prettierignore 64/pkg/tool/linux_amd64/compile /tmp/go-build318bash -imultiarch x86_64-linux-gnu--version 64/pkg/tool/linux_amd64/compile (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/1/artifacts
    • Triggering command: /usr/bin/gh gh run download 1 --dir test-logs/run-1 GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go estl�� -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/12345/artifacts
    • Triggering command: /usr/bin/gh gh run download 12345 --dir test-logs/run-12345 GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/12346/artifacts
    • Triggering command: /usr/bin/gh gh run download 12346 --dir test-logs/run-12346 GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go estl�� -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/2/artifacts
    • Triggering command: /usr/bin/gh gh run download 2 --dir test-logs/run-2 GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE OhGqih4/C5EvyQA3x6PSYtu1bbVC estl�� -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/3/artifacts
    • Triggering command: /usr/bin/gh gh run download 3 --dir test-logs/run-3 GO111MODULE x_amd64/compile GOINSECURE GOMOD GOMODCACHE x_amd64/compile env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/4/artifacts
    • Triggering command: /usr/bin/gh gh run download 4 --dir test-logs/run-4 GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go estl�� -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/actions/runs/5/artifacts
    • Triggering command: /usr/bin/gh gh run download 5 --dir test-logs/run-5 GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go estl�� -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/actions/workflows
    • Triggering command: /usr/bin/gh gh workflow list --json name,state,path 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 run list --json databaseId,number,url,status,conclusion,workflowName,createdAt,startedAt,updatedAt,event,headBranch,headSha,displayTitle --workflow nonexistent-workflow-12345 --limit 100 GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE sh (http block)
    • Triggering command: /usr/bin/gh gh run list --json databaseId,number,url,status,conclusion,workflowName,createdAt,startedAt,updatedAt,event,headBranch,headSha,displayTitle --workflow nonexistent-workflow-12345 --limit 6 GOMOD GOMODCACHE x_amd64/vet env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/github/gh-aw/contents/.github%2Fworkflows%2Faudit-workflows.md
    • Triggering command: /opt/hostedtoolcache/node/24.14.0/x64/bin/node /opt/hostedtoolcache/node/24.14.0/x64/bin/node --conditions node --conditions development --experimental-import-meta-resolve --require /home/REDACTED/work/gh-aw/gh-aw/actions/setup/js/node_modules/vitest/suppress-warnings.cjs /home/REDACTED/work/gh-aw/gh-aw/actions/setup/js/node_modules/vitest/dist/workers/forks.js feature branch bin/git git serv�� de_modules/.bin/auth.txt lure tions/setup/node_modules/.bin/git /tmp/bare-incremgit gin/feature-branrev-parse /git git (http block)
  • https://api.github.com/repos/github/gh-aw/contents/.github/workflows/shared/reporting.md
    • Triggering command: /tmp/go-build1729573717/b383/cli.test /tmp/go-build1729573717/b383/cli.test -test.testlogfile=/tmp/go-build1729573717/b383/testlog.txt -test.paniconexit0 -test.v=true -test.parallel=4 -test.timeout=10m0s -test.run=^Test -test.short=true GOINSECURE GOMOD GOMODCACHE rtcfg k/gh�� b136a0101c461533GOINSECURE GO111MODULE 64/bin/go GOINSECURE GOMOD erignore ache/go/1.25.0/xGO111MODULE (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 h ../../../.prettierignore 183122362/b129//_cgo_.o x_amd64/vet -p go/token 3122362/b129/ x_amd64/vet ctor�� w/js/**/*.json&#39; --ignore-path =0 64/pkg/tool/linux_amd64/vet --gdwarf-5 ut-1433345376.c -o 64/pkg/tool/linux_amd64/vet (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 -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v1.2.3
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v1.2.3 --jq .object.sha -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE node (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v2.0.0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v2.0.0 --jq .object.sha -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE node (http block)
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v2.0.0 --jq .object.sha e=false GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE node (http block)
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v2.0.0 --jq .object.sha e=false GO111MODULE 64/bin/go GOINSECURE %H %ct %D 16782ee6452a198d/tmp/go-build1729573717/b001/gh-aw.test go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE sh (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v3.0.0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v3.0.0 --jq .object.sha -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE node (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 64/src/net ortcfg 64/pkg/tool/linux_amd64/vet -pthread -Wl,--no-gc-sect-C -fmessage-length/home/REDACTED/work/gh-aw/gh-aw/.github/workflows 64/pkg/tool/linuconfig -I /opt/hostedtoolcremote.origin.url .cfg ode_modules/.bin/node --gdwarf-5 --64 -o 64/pkg/tool/linuconfig (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 -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go env 991487562/.github/workflows GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/nonexistent/repo/actions/runs/12345
    • Triggering command: /usr/bin/gh gh run view 12345 --repo nonexistent/repo --json status,conclusion GOINSECURE GOMOD GOMODCACHE go env -json GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/owner/repo/actions/workflows
    • Triggering command: /usr/bin/gh gh workflow list --json name,state,path --repo owner/repo 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 workflow list --repo owner/repo --json name,path,state /usr/bin/git -json GO111MODULE ache/go/1.25.0/x--show-toplevel git rev-�� --show-toplevel go /usr/bin/git st-1652469464/.ggit GO111MODULE .cfg git (http block)
  • https://api.github.com/repos/owner/repo/contents/file.md
    • Triggering command: /tmp/go-build1729573717/b383/cli.test /tmp/go-build1729573717/b383/cli.test -test.testlogfile=/tmp/go-build1729573717/b383/testlog.txt -test.paniconexit0 -test.v=true -test.parallel=4 -test.timeout=10m0s -test.run=^Test -test.short=true GOINSECURE GOMOD GOMODCACHE rtcfg k/gh�� b136a0101c461533GOINSECURE GO111MODULE 64/bin/go GOINSECURE GOMOD erignore ache/go/1.25.0/xGO111MODULE (http block)
  • https://api.github.com/repos/test-owner/test-repo/actions/secrets
    • Triggering command: /usr/bin/gh gh api /repos/test-owner/test-repo/actions/secrets --jq .secrets[].name GOSUMDB GOWORK 64/bin/go GOINSECURE GOMOD ode-gyp-bin/node-json go env ck &#39;scripts/**/*GOINSECURE GO111MODULE 64/bin/go GOINSECURE GOMOD GOMODCACHE go (http block)
  • https://api.github.com/repos/test/repo
    • Triggering command: /usr/bin/gh gh api /repos/test/repo --jq .default_branch uest|push_to_pull_request_branch)&#34; x_amd64/vet 64/bin/node ger.test GO111MODULE 64/pkg/tool/linu--show-toplevel git 0/x6�� --show-toplevel 64/pkg/tool/linux_amd64/compile /usr/bin/git g_.a GO111MODULE g_.a git (http block)

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

@pelikhan pelikhan marked this pull request as ready for review March 6, 2026 09:48
Copilot AI review requested due to automatic review settings March 6, 2026 09:48
@pelikhan pelikhan merged commit aac94af into main Mar 6, 2026
102 checks passed
@pelikhan pelikhan deleted the copilot/add-wiki-frontmatter-boolean branch March 6, 2026 09:48
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 wiki: true support to repo-memory so workflows can store/retrieve persistent memory from a repository’s GitHub Wiki git backend ({repo}.wiki.git), and extends failure reporting to surface push_repo_memory job failures in the agent failure issue/comment.

Changes:

  • Add wiki boolean parsing to repo-memory config (object + array forms) with wiki-specific defaults (branch master, create-orphan: false).
  • Update generated workflow steps to target {repo}.wiki and label steps as wiki-memory; inject GitHub Wiki Markdown guidance into the repo-memory prompt when applicable.
  • Improve agent failure reporting by passing needs.push_repo_memory.result into the conclusion job and rendering a “Repo-Memory Push Failed” diagnostic.

Reviewed changes

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

Show a summary per file
File Description
pkg/workflow/repo_memory.go Adds Wiki field, parses wiki, applies wiki defaults, and adjusts generated steps/env to use {repo}.wiki and wiki-memory labels.
pkg/workflow/repo_memory_prompt.go Injects a GitHub Wiki guidance note for single-default memory; annotates multi-memory list entries as GitHub Wiki.
pkg/workflow/repo_memory_test.go Adds unit tests covering wiki parsing, defaults, step generation, prompt env var, and allowed-repo handling for wiki.
pkg/workflow/notify_comment.go Passes GH_AW_PUSH_REPO_MEMORY_RESULT to failure handler when repo-memory is configured.
pkg/workflow/notify_comment_test.go Tests that conclusion job includes (or omits) GH_AW_PUSH_REPO_MEMORY_RESULT appropriately.
pkg/parser/schemas/main_workflow_schema.json Adds wiki boolean to repo-memory schemas (object + array variants).
docs/src/content/docs/reference/frontmatter-full.md Documents the new wiki option in frontmatter reference.
actions/setup/md/repo_memory_prompt.md Adds __GH_AW_WIKI_NOTE__ placeholder to inject wiki-specific guidance.
actions/setup/md/agent_failure_issue.md Adds {push_repo_memory_failure_context} placeholder to failure issue template.
actions/setup/md/agent_failure_comment.md Adds {push_repo_memory_failure_context} placeholder to failure comment template.
actions/setup/js/handle_agent_failure.cjs Detects push_repo_memory job failure via env var and emits a “Repo-Memory Push Failed” context block.
.github/workflows/technical-doc-writer.md Enables wiki-backed repo-memory for technical doc writer workflow.
.github/workflows/glossary-maintainer.md Enables wiki-backed repo-memory for glossary maintainer workflow.
.github/workflows/developer-docs-consolidator.md Enables wiki-backed repo-memory for developer docs consolidator workflow.
.github/workflows/workflow-health-manager.lock.yml Propagates GH_AW_WIKI_NOTE placeholder plumbing and includes GH_AW_PUSH_REPO_MEMORY_RESULT wiring.
.github/workflows/technical-doc-writer.lock.yml Lockfile update to include repo-memory prompt, wiki env vars, wiki-memory steps, and push job result reporting.
.github/workflows/security-compliance.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/security-alert-burndown.campaign.g.lock.yml Lockfile update to pass GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/pr-triage-agent.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/metrics-collector.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE.
.github/workflows/glossary-maintainer.lock.yml Lockfile update to include wiki prompt/env vars, wiki-memory steps, and push job result reporting.
.github/workflows/firewall-escape.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/discussion-task-miner.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/developer-docs-consolidator.lock.yml Lockfile update to include wiki prompt/env vars, wiki-memory steps, and push job result reporting.
.github/workflows/delight.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/deep-report.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/daily-testify-uber-super-expert.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/daily-news.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/daily-copilot-token-report.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/daily-code-metrics.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/daily-cli-performance.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/copilot-session-insights.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/copilot-pr-prompt-analysis.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/copilot-pr-nlp-analysis.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/copilot-cli-deep-research.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/copilot-agent-analysis.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/code-scanning-fixer.lock.yml Lockfile update to pass GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/audit-workflows.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
.github/workflows/agent-performance-analyzer.lock.yml Lockfile update to pass GH_AW_WIKI_NOTE and GH_AW_PUSH_REPO_MEMORY_RESULT.
Comments suppressed due to low confidence (1)

pkg/workflow/repo_memory.go:756

  • Same issue as in generateRepoMemorySteps: unconditionally appending ".wiki" can yield "*.wiki.wiki" if targetRepo already includes the wiki suffix. Make the suffixing logic idempotent to avoid generating invalid clone/push URLs.

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

Comment on lines 95 to 102
fmt.Fprintf(&memoryList, " (branch: `%s`", memory.BranchName)
if memory.TargetRepo != "" {
fmt.Fprintf(&memoryList, " in `%s`", memory.TargetRepo)
}
if memory.Wiki {
memoryList.WriteString(", GitHub Wiki")
}
memoryList.WriteString(")\n")
Copy link

Copilot AI Mar 6, 2026

Choose a reason for hiding this comment

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

Wiki-mode prompt guidance is only injected for the single-memory default ID path. For a single memory with a non-"default" ID (or multiple memories), the prompt only adds ", GitHub Wiki" in the list but does not include the wiki Markdown conventions note described in the PR. Consider adding a wiki note section to the multi-memory template (and EnvVars), or emitting the single-memory template for any single entry (regardless of ID) so wiki:true always provides the syntax guidance.

Copilot uses AI. Check for mistakes.
Comment on lines +321 to +327
// Apply wiki-mode defaults: wikis use master branch and never need orphan creation
if entry.Wiki {
if !explicitBranchName {
entry.BranchName = "master"
}
entry.CreateOrphan = false
}
Copy link

Copilot AI Mar 6, 2026

Choose a reason for hiding this comment

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

Wiki-mode forces CreateOrphan=false, but the push implementation currently creates an orphan branch whenever the branch doesn’t exist (see actions/setup/js/push_repo_memory.cjs branch checkout logic). That means a wiki:true config with an explicit non-existent branch-name can still create and push a new orphan branch, contradicting the intent of forcing create-orphan off. Consider either: (1) disallowing non-"master" branch-name in wiki mode, or (2) passing a CREATE_ORPHAN flag into the push step and updating push_repo_memory to respect it (skip instead of creating).

Copilot uses AI. Check for mistakes.
Comment on lines +663 to +666
// For wiki mode, append .wiki to the repo path so the clone script uses the wiki git URL
if memory.Wiki {
targetRepo = targetRepo + ".wiki"
}
Copy link

Copilot AI Mar 6, 2026

Choose a reason for hiding this comment

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

Appending ".wiki" unconditionally can produce invalid repo slugs like "owner/repo.wiki.wiki" if a caller already set target-repo to the wiki slug (or if future code passes a value that already includes the suffix). Consider making this idempotent (only append when the slug doesn’t already end with ".wiki") and/or validating/rejecting "target-repo" values that already include ".wiki" when wiki:true.

This issue also appears on line 753 of the same file.

Copilot uses AI. Check for mistakes.
github-actions bot added a commit that referenced this pull request Mar 6, 2026
Add mention of the wiki: true flag that switches repo-memory backing
to the GitHub Wiki's git endpoint, introduced in PR #19800.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants