Skip to content

Fix Metrics Collector: wrong output path in prompt + post-step cleanup crash in push_repo_memory#23346

Merged
pelikhan merged 2 commits into
mainfrom
copilot/fix-metrics-collector-failures
Mar 28, 2026
Merged

Fix Metrics Collector: wrong output path in prompt + post-step cleanup crash in push_repo_memory#23346
pelikhan merged 2 commits into
mainfrom
copilot/fix-metrics-collector-failures

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 28, 2026

Two bugs caused consecutive Metrics Collector failures: (1) the agent was writing agent-performance-latest.md to the repo-memory root instead of metrics/latest.json, silently dropped by the metrics/** glob filter; (2) push_repo_memory.cjs internally checks out the memory branch, removing ./actions/setup from the workspace and crashing the post-step cleanup across all 26 repo-memory workflows.

Changes

metrics-collector.md — tighten storage instructions

  • Added a ⚠️ CRITICAL callout immediately before the storage section explaining that the metrics/** glob filter silently drops root-level files
  • Added an explicit File Constraint Summary table (/) naming agent-performance-latest.md as a forbidden path
  • Added DO NOT rules against root-level writes, .md output, and re-writing files read from shared memory

pkg/workflow/repo_memory.go — restore actions/setup after memory branch checkout

In dev mode, buildPushRepoMemoryJob now appends a "Restore actions folder" step (runs if: always()) after all push steps. It sparse-checks out only actions/setup from github/gh-aw, giving the Setup Scripts post-step a valid action.yml to load:

- name: Restore actions folder
  if: always()
  uses: actions/checkout@...
  with:
    repository: github/gh-aw
    sparse-checkout: |
      actions/setup
    sparse-checkout-cone-mode: true
    persist-credentials: false

This mirrors the existing fix in generateCheckoutGitHubFolderForActivation (which adds actions/setup to the .github sparse-checkout for the same reason). All 26 repo-memory workflows are recompiled.

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 iew.md o ol-specification-f (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 iew.md (http block)
  • https://api.github.com/orgs/test-owner/actions/secrets
    • Triggering command: /usr/bin/gh gh api /orgs/test-owner/actions/secrets --jq .secrets[].name ACCEPT GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet env h ../../../.pret.prettierignore GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet (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 64/pkg/tool/linux_amd64/vet /usr/bin/git -json GO111MODULE _modules/.bin/sh--show-toplevel git rev-�� --show-toplevel 64/pkg/tool/linux_amd64/vet /usr/bin/git ./../pkg/workflogit GO111MODULE -d /usr/bin/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 --write 1424032/b421/_testmain.go /usr/bin/git --ignore-path ../../../.prettirev-parse 64/bin/go git conf�� user.email test@example.com /usr/bin/git -json GO111MODULE (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 .js' --ignore-path .prettierignore --log-level=error GO111MODULE ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet tion�� -json GO111MODULE x_amd64/vet ignore GOMOD GOMODCACHE x_amd64/vet (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha vars.MY_VAR 64/pkg/tool/linux_amd64/vet /usr/bin/git -json GO111MODULE x_amd64/vet git rev-�� --show-toplevel x_amd64/vet /usr/bin/git '**/*.ts' '**/*.git GO111MODULE ache/go/1.25.0/x--show-toplevel git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v5 --jq .object.sha --show-toplevel erignore /usr/bin/git 4324-50224/test-git go ptables git rev-�� --show-toplevel /opt/hostedtoolcache/go/1.25.0/x^remote\..*\.gh-resolved$ /usr/bin/git GOMODCACHE erignore 1424032/b421/git--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/go-build3911424032/b450/_pkg_.a -trimpath /usr/bin/git -p main -lang=go1.25 git rev-�� --git-dir -dwarf=false /usr/bin/git go1.25.0 -c=4 -nolocalimports git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha ts.result x_amd64/vet /usr/bin/git -json GO111MODULE 64/pkg/tool/linu--show-toplevel git -C /tmp/gh-aw-test-runs/20260328-124324-50224/test-2256078314 status /usr/bin/git .github/workflowgit GO111MODULE 64/pkg/tool/linu--show-toplevel git (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/checkout/git/ref/tags/v6 --jq .object.sha --show-toplevel 64/pkg/tool/linux_amd64/link /usr/bin/git 1/main.md GOPROXY ortcfg.link git rev-�� --show-toplevel yQm7JrG_JTdGyVRlef/N6GE9dzJuLpfUe9tz4e_/ThKvzodBlPIPkS6j74YO /usr/bin/git rite '../../../*git ortcfg 0/x64/bin/node 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 x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet env h ../../../.pret.prettierignore GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha h ../../../.prettierignore GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet env w/js/**/*.json' --ignore-path GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet (http block)
    • Triggering command: /usr/bin/gh gh api /repos/actions/github-script/git/ref/tags/v8 --jq .object.sha -c=4 -nolocalimports -importcfg /tmp/go-build3911424032/b434/importcfg -pack /home/REDACTED/work/gh-aw/gh-aw/pkg/repoutil/repoutil.go /home/REDACTED/work/gh-aw/gh-aw/pkg/repoutil/repoutil_test.go env -json GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet (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/TestCompileErrorFormatting1977306215/001 config /usr/bin/git remote.origin.urgit GO111MODULE ode_modules/.bin--show-toplevel git rese�� HEAD .github/workflows/test.md /usr/bin/git json' --ignore-pgit GO111MODULE 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 /tmp/TestCompileErrorFormatting1977306215/001 rev-parse /usr/bin/git js/**/*.json' --git GO111MODULE 64/pkg/tool/linu--show-toplevel git -C /tmp/gh-aw-test-runs/20260328-124324-50224/test-2256078314 status /usr/bin/git .github/workflowgit GO111MODULE 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 "prettier" --write '**/*.cjs' '**/*.ts' '**/*.json' --ignore-path ../../../.pret.prettierignore go /opt/pipx_bin/sh 8ogW/pPU5nbEBDc0git GO111MODULE run-script/lib/n--show-toplevel sh -c ithub-script/git/ref/tags/v8 5659377/b432/importcfg /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/compile che/go-build/ab/git GOPROXY 64/bin/go /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/compile (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)
    • Triggering command: /usr/bin/gh gh api /repos/astral-sh/setup-uv/git/ref/tags/eac588ad8def6316056a12d4907a9d4d84ff7a3b --jq .object.sha ratchpad/mcp_logs_guardrails.md ratchpad/labels.md de/node/bin/bash committer.name (http block)
  • https://api.github.com/repos/github/gh-aw
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw --jq .visibility (http block)
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw --jq .visibility ithub/workflows main repository(owner: $owner, name: $name) { hasDiscussionsEnabled } } (http block)
  • https://api.github.com/repos/github/gh-aw-actions/git/ref/tags/v0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw-actions/git/ref/tags/v0 --jq .object.sha (http block)
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw-actions/git/ref/tags/v0 --jq .object.sha it} --local cal/bin/bash committer.email (http block)
  • https://api.github.com/repos/github/gh-aw-actions/git/ref/tags/v0.1.2
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw-actions/git/ref/tags/v0.1.2 --jq .object.sha /tmp/TestHashConsistency_GoAndJavaScript2583985891/001/test-frontmatter-with-nested-objects.md x_amd64/vet (http block)
  • https://api.github.com/repos/github/gh-aw-actions/git/ref/tags/v1.0.0
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw-actions/git/ref/tags/v1.0.0 --jq .object.sha jpq_JbW5I go 1424032/b378/vet.cfg l GO111MODULE 64/bin/go ortcfg /opt�� g/timeutil/format.go g/timeutil/format_test.go ache/node/24.14.0/x64/bin/node !../../../pkg/wogit --ignore-path ../../../.pretti--show-toplevel /opt/hostedtoolcache/go/1.25.0/x64/pkg/tool/linux_amd64/vet (http block)
  • https://api.github.com/repos/github/gh-aw-actions/git/ref/tags/v1.2.3
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw-actions/git/ref/tags/v1.2.3 --jq .object.sha 4324-50224/test-2256078314 go .cfg -json GO111MODULE 64/bin/go node /opt�� UpdateDiscussionFieldEnforcement2675542590/001 --write 0/x64/bin/node l --ignore-path ../../../.pretti--show-toplevel 0/x64/bin/node (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 ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/x64/pkg/tool/linuTest User (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 86_64/node GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/xTest User estl�� -json GO111MODULE ache/go/1.25.0/x64/pkg/tool/linu-importcfg GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/x64/pkg/tool/linu/home/REDACTED/work/gh-aw/gh-aw/pkg/fileutil/tar.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 x_amd64/compile GOINSECURE GOMOD GOMODCACHE x_amd64/compile 0/x6�� -json GO111MODULE 64/bin/node GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/x64/pkg/tool/linu/home/REDACTED/work/gh-aw/gh-aw/pkg/gitutil/gitutil_test.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 de_modules/.bin/sh GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet estl�� */*.ts' '**/*.json' --ignore-path ../../../.prettierignore GO111MODULE h GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/x64/pkg/tool/linux_amd64/vet (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 (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 (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 bin/sh GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/x64/pkg/tool/linu-extld=gcc (http block)
  • https://api.github.com/repos/github/gh-aw/actions/workflows
    • Triggering command: /usr/bin/gh gh workflow list --json name,state,path -json GO111MODULE /node GOINSECURE GOMOD GOMODCACHE x_amd64/vet /pre�� -json GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet (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 x_amd64/vet env js/**/*.json' ---errorsas GO111MODULE 64/pkg/tool/linu-nilfunc GOINSECURE GOMOD GOMODCACHE 64/pkg/tool/linurev-parse (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 ache/go/1.25.0/xremote.origin.url (http block)
  • https://api.github.com/repos/github/gh-aw/git/ref/tags/v0.47.4
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v0.47.4 --jq .object.sha --show-toplevel x_amd64/compile /usr/bin/git -json GO111MODULE tions/setup/js/n--show-toplevel git rev-�� --show-toplevel ache/go/1.25.0/x64/pkg/tool/linu-trimpath /usr/bin/git 563165420/.githused GO111MODULE ache/go/1.25.0/x64/pkg/tool/linu--show-toplevel 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 -json GO111MODULE 0/x64/bin/npx GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/x64/pkg/tool/linurev-parse 9430�� ithout_min-integrity749400101/001 GO111MODULE 64/bin/sh GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/x64/pkg/tool/linux_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 x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet /pre�� -json GO111MODULE 64/pkg/tool/linu-nilfunc GOINSECURE GOMOD GOMODCACHE 64/pkg/tool/linuconfig (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 modules/@npmcli/run-script/lib/node-gyp-bin/node GOINSECURE GOMOD GOMODCACHE x_amd64/vet /pre�� -json GO111MODULE 64/pkg/tool/linu-lang=go1.25 GOINSECURE GOMOD GOMODCACHE 64/pkg/tool/linurev-parse (http block)
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v2.0.0 --jq .object.sha -json GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet /pre�� -json GO111MODULE 64/pkg/tool/linu-nilfunc GOINSECURE GOMOD GOMODCACHE 64/pkg/tool/linu-tests (http block)
    • Triggering command: /usr/bin/gh gh api /repos/github/gh-aw/git/ref/tags/v2.0.0 --jq .object.sha -json GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet env -json GO111MODULE 64/pkg/tool/linu-nilfunc GOINSECURE GOMOD GOMODCACHE 64/pkg/tool/linuconfig (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 x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet /pre�� -json GO111MODULE 64/pkg/tool/linu-buildmode=exe GOINSECURE GOMOD GOMODCACHE 64/pkg/tool/linu-extld=gcc (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 (http block)
    • Triggering command: /usr/bin/gh gh api /repos/githubnext/agentics/git/ref/tags/# --jq .object.sha get --local 0/x64/bin/bash copilot.originalgit (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 94305/b008/vet.c.github/workflows/test.md GO111MODULE At,event,headBranch,headSha,displayTitle GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/x64/pkg/tool/linurev-parse 0/x6�� ut289732757/001 GO111MODULE de/node/bin/sh GOINSECURE GOMOD GOMODCACHE ache/go/1.25.0/x64/pkg/tool/linu-test.v=true (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 Md/Ri_wf6ull7lkV0w8jYoV/n3KuAgkRrev-parse (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 x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet /pre�� -json GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet (http block)
    • Triggering command: /usr/bin/gh gh workflow list --json name,state,path --repo owner/repo x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet /pre�� -json GO111MODULE /sh GOINSECURE GOMOD GOMODCACHE x_amd64/vet (http block)
  • https://api.github.com/repos/owner/repo/contents/file.md
    • Triggering command: /tmp/go-build3911424032/b403/cli.test /tmp/go-build3911424032/b403/cli.test -test.testlogfile=/tmp/go-build3911424032/b403/testlog.txt -test.paniconexit0 -test.v=true -test.parallel=4 -test.timeout=10m0s -test.run=^Test -test.short=true GOINSECURE GOMOD GOMODCACHE x_amd64/vet env -json GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet (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 -json GO111MODULE x_amd64/vet GOINSECURE GOMOD GOMODCACHE x_amd64/vet env h ../../../.pret.prettierignore GO111MODULE /node 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:


⌨️ Start Copilot coding agent tasks without leaving your editor — available in VS Code, Visual Studio, JetBrains IDEs and Eclipse.

…re actions/setup for post-step cleanup

Agent-Logs-Url: https://github.com/github/gh-aw/sessions/8c6dd1d2-5665-4806-9ceb-029a9755b043

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix consecutive failures in Metrics Collector workflow Fix Metrics Collector: wrong output path in prompt + post-step cleanup crash in push_repo_memory Mar 28, 2026
Copilot AI requested a review from pelikhan March 28, 2026 12:49
@pelikhan pelikhan marked this pull request as ready for review March 28, 2026 16:18
Copilot AI review requested due to automatic review settings March 28, 2026 16:18
@pelikhan pelikhan merged commit 0a58803 into main Mar 28, 2026
126 of 169 checks passed
@pelikhan pelikhan deleted the copilot/fix-metrics-collector-failures branch March 28, 2026 16:20
Copy link
Copy Markdown
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

Fixes two repo-memory-related failures affecting the Metrics Collector and other repo-memory workflows: incorrect metrics output location (dropped by metrics/** glob) and a post-step cleanup crash caused by push_repo_memory.cjs replacing the workspace and removing ./actions/setup.

Changes:

  • Strengthen metrics-collector.md instructions to ensure metrics are written as JSON under metrics/ (so they’re not dropped by the metrics/** glob filter).
  • In buildPushRepoMemoryJob (dev mode), append an if: always() “Restore actions folder” checkout step to rehydrate actions/setup so the Setup Scripts post-step can run.
  • Recompile repo-memory workflow lock files to include the restore step.

Reviewed changes

Copilot reviewed 28 out of 28 changed files in this pull request and generated no comments.

Show a summary per file
File Description
pkg/workflow/repo_memory.go Adds a dev-mode, always-run restore checkout of actions/setup after push steps to prevent Setup Scripts post-step crashes.
.github/workflows/metrics-collector.md Clarifies/strengthens repo-memory storage constraints so metrics persist under the metrics/** glob.
.github/workflows/metrics-collector.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/workflow-health-manager.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/weekly-blog-post-writer.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/technical-doc-writer.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/security-compliance.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/pr-triage-agent.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/glossary-maintainer.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/firewall-escape.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/discussion-task-miner.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/developer-docs-consolidator.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/delight.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/deep-report.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/daily-testify-uber-super-expert.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/daily-news.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/daily-copilot-token-report.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/daily-community-attribution.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/daily-code-metrics.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/daily-cli-performance.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/copilot-session-insights.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/copilot-pr-prompt-analysis.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/copilot-pr-nlp-analysis.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/copilot-cli-deep-research.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/copilot-agent-analysis.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/code-scanning-fixer.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/audit-workflows.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.
.github/workflows/agent-performance-analyzer.lock.yml Adds “Restore actions folder” step after push_repo_memory.cjs execution.

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

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.

[health] Metrics Collector — 2 consecutive failures, metrics infrastructure degraded

3 participants