Fix the credit-ceiling handling in this workflow — it should exit successfully when it hits the AI-credits cap, not crash the job.
Problem
Run 30539804771 (2026-07-30, scheduled trigger) concluded failure in the agent job at the Execute GitHub Copilot CLI step, but the run recorded real usage: input_tokens: 3902, output_tokens: 163, cache_write_tokens: 39832, ai_credits: 10.901. The firewall trace shows 6/6 requests to api.githubcopilot.com allowed, 0 blocked — the Copilot CLI genuinely ran and did work. Turns: 0 was recorded even though token usage is non-zero.
Affected workflow / run
Probable root cause
This workflow's stated purpose is to probe the AI-credits ceiling. Hitting that ceiling should be the expected, successful outcome of the test (report the number and exit 0). Instead the job step ends in conclusion: failure, which strongly suggests the workflow's post-processing script does not recognize/handle a credit-limit response from the Copilot CLI as a valid terminal state — it likely treats any non-zero Copilot CLI exit code as a hard failure rather than parsing the declared ai_credits_rate_limit_error output and completing gracefully.
This is mechanically distinct from the PR Code Quality Reviewer Copilot CLI issue (#49022): that case shows zero tokens recorded despite requests going out (a silent/broken response path), whereas this run shows real, non-zero usage recorded alongside a failure conclusion (a result-interpretation bug). Do not conflate the two fixes.
Proposed remediation
- In the workflow's post-run/output-evaluation script, treat a Copilot CLI credit-limit signal (
ai_credits_rate_limit_error) as a successful test completion, not a job failure — set the job/step conclusion accordingly (e.g. exit 0 and surface the credit number as a normal output).
- If the Copilot CLI itself is exiting non-zero on hitting the cap, confirm whether that's expected engine behavior and adjust the wrapping script's exit-code handling to match.
- Add a regression test/fixture that simulates a credit-limit response and asserts the job concludes
success.
Success criteria
- A subsequent scheduled run of Daily Max Ai Credits Test that hits the credit ceiling concludes with
conclusion: success and reports the consumed credits as a normal output, not a failed job.
- No change to behavior when the Copilot CLI fails for a genuinely unexpected reason (auth, network) — those should still fail the job.
Parent report: #49095. Analyzed via agenticworkflows audit on run 30539804771 during the 2026-07-30 13:19 UTC failure-investigation pass.
Related to #49095
Generated by 🔍 [aw] Failure Investigator (6h) · agent · 180.1 AIC · ⌖ 21.7 AIC · ⊞ 6.8K · ◷
Second manifestation found — activation-job guardrail, different workflow — 2026-07-31 pass
Apply the same "credit-limit-exceeded is a success signal, not a failure" fix here too — this design flaw isn't isolated to the agent-job Copilot CLI path.
Run §30634120384 ("Daily Credit Limit Test", activation job) hard-fails before the agent job ever starts: the daily-workflow-aic guardrail script computes currentAIC: 12.62 against threshold: 1, sets exceeded: true, then emits ##[error]Daily workflow AIC guardrail exceeded for Daily Credit Limit Test: 12.62/1 — failing the activation job and skipping the agent/detection jobs entirely.
This is mechanically distinct from this issue's original bug (do not conflate): that case is a Copilot CLI response-interpretation bug in the agent job of daily-max-ai-credits-test.lock.yml; this one is a hard ##[error] raised by the activation-job guardrail script of a different workflow, daily-credit-limit-test.lock.yml. Same underlying design flaw — hitting an expected credit ceiling should be a recorded success, not a failed job — but two separate code paths need two separate, coordinated fixes.
Proposed remediation (activation-job path)
- Update the
daily-workflow-aic guardrail so an intentional credit-ceiling test exits as a graceful early-success (skip agent job, neutral/success conclusion) instead of raising a hard ##[error].
No new issue filed — cross-referencing for coordinated fix planning; do not merge with the original agent-job fix.
Generated by 🔍 [aw] Failure Investigator (6h) · agent · 249.9 AIC · ⌖ 19.3 AIC · ⊞ 6.8K · ◷
Fix the credit-ceiling handling in this workflow — it should exit successfully when it hits the AI-credits cap, not crash the job.
Problem
Run 30539804771 (2026-07-30, scheduled trigger) concluded
failurein theagentjob at theExecute GitHub Copilot CLIstep, but the run recorded real usage:input_tokens: 3902,output_tokens: 163,cache_write_tokens: 39832,ai_credits: 10.901. The firewall trace shows 6/6 requests toapi.githubcopilot.comallowed, 0 blocked — the Copilot CLI genuinely ran and did work.Turns: 0was recorded even though token usage is non-zero.Affected workflow / run
.github/workflows/daily-max-ai-credits-test.lock.yml("Daily Max Ai Credits Test")Probable root cause
This workflow's stated purpose is to probe the AI-credits ceiling. Hitting that ceiling should be the expected, successful outcome of the test (report the number and exit 0). Instead the job step ends in
conclusion: failure, which strongly suggests the workflow's post-processing script does not recognize/handle a credit-limit response from the Copilot CLI as a valid terminal state — it likely treats any non-zero Copilot CLI exit code as a hard failure rather than parsing the declaredai_credits_rate_limit_erroroutput and completing gracefully.This is mechanically distinct from the PR Code Quality Reviewer Copilot CLI issue (#49022): that case shows zero tokens recorded despite requests going out (a silent/broken response path), whereas this run shows real, non-zero usage recorded alongside a
failureconclusion (a result-interpretation bug). Do not conflate the two fixes.Proposed remediation
ai_credits_rate_limit_error) as a successful test completion, not a job failure — set the job/step conclusion accordingly (e.g. exit 0 and surface the credit number as a normal output).success.Success criteria
conclusion: successand reports the consumed credits as a normal output, not a failed job.Parent report: #49095. Analyzed via
agenticworkflows auditon run 30539804771 during the 2026-07-30 13:19 UTC failure-investigation pass.Related to #49095
Second manifestation found — activation-job guardrail, different workflow — 2026-07-31 pass
Apply the same "credit-limit-exceeded is a success signal, not a failure" fix here too — this design flaw isn't isolated to the agent-job Copilot CLI path.
Run §30634120384 ("Daily Credit Limit Test",
activationjob) hard-fails before the agent job ever starts: thedaily-workflow-aicguardrail script computescurrentAIC: 12.62againstthreshold: 1, setsexceeded: true, then emits##[error]Daily workflow AIC guardrail exceeded for Daily Credit Limit Test: 12.62/1— failing the activation job and skipping the agent/detection jobs entirely.This is mechanically distinct from this issue's original bug (do not conflate): that case is a Copilot CLI response-interpretation bug in the agent job of
daily-max-ai-credits-test.lock.yml; this one is a hard##[error]raised by the activation-job guardrail script of a different workflow,daily-credit-limit-test.lock.yml. Same underlying design flaw — hitting an expected credit ceiling should be a recorded success, not a failed job — but two separate code paths need two separate, coordinated fixes.Proposed remediation (activation-job path)
daily-workflow-aicguardrail so an intentional credit-ceiling test exits as a graceful early-success (skip agent job, neutral/success conclusion) instead of raising a hard##[error].No new issue filed — cross-referencing for coordinated fix planning; do not merge with the original agent-job fix.