Skip to content

[aw] Daily Formal Spec Verifier exceeded tool denial limit #42304

Description

@github-actions

Workflow Failure

Workflow: Daily Formal Spec Verifier
Branch: main
Run: https://github.com/github/gh-aw/actions/runs/28387683056

Warning

Excessive Tool Denials: The Copilot SDK hit the max tool denial guardrail and stopped the session early (5/5).

Last denied request
shell(# Let's just directly verify: extract just the body string portion and count its bytes
# The payload is: {"title":"...","body":"..."}
# Remove first N chars for title, then get body content
TITLE_LEN=$(echo -n '[formal-spec] replace-label-spec.md — Formal model & test suite — 2026-06-29' | wc -c)
echo "Title UTF-8 bytes: $TITLE_LEN"
# Check: {"title":" = 10, title, ","body":" = 9, body, "} = 2
WRAPPER=$((10 + TITLE_LEN + 9 + 2))
echo "Wrapper bytes: $WRAPPER"
PAYLOAD=$(wc -c < /tmp/gh-aw/agent/payload.json)
BODY_JSON=$((PAYLOAD - WRAPPER))
echo "Body in JSON: $BODY_JSON bytes"
echo "Raw body: $(wc -c < /tmp/gh-aw/agent/body.md) bytes"
echo "Body overhead: $((BODY_JSON - $(wc -c < /tmp/gh-aw/agent/body.md))) bytes")
Last 5 tool calls
  • bash(# Compare raw file vs payload to understand overhead RAW=$(wc -c < /tmp/gh-aw/agent/body.md) PAY=$(wc -c < /tmp/gh-aw...)
  • bash(# jq formats with indentation! Use -c for compact output TITLE="[formal-spec] replace-label-spec.md — Formal model & ...)
  • bash(# Check what chars are being escaped grep -oP '\\[^"\\ntr/]' /tmp/gh-aw/agent/payload.json | sort | uniq -c | head -2...)
  • bash(# Check if jq encodes unicode as \uXXXX grep -oP '\\u[0-9a-fA-F]{4}' /tmp/gh-aw/agent/payload.json | wc -l grep -oP '...)
  • bash(# Let's just directly verify: extract just the body string portion and count its bytes # The payload is: {"title":".....)

This is a structured guardrail event (guard.tool_denials_exceeded) captured in events.jsonl.

How to fix this

The prompt attempted actions outside the workflow's allowed tools.

Update the workflow prompt and/or permissions so required actions are permitted:

The workflow daily-formal-spec-verifier stopped because the Copilot SDK exceeded its tool denial threshold (5/5).
Last denied request:
shell(# Let's just directly verify: extract just the body string portion and count its bytes
# The payload is: {"title":"...","body":"..."}
# Remove first N chars for title, then get body content
TITLE_LEN=$(echo -n '[formal-spec] replace-label-spec.md — Formal model & test suite — 2026-06-29' | wc -c)
echo "Title UTF-8 bytes: $TITLE_LEN"
# Check: {"title":" = 10, title, ","body":" = 9, body, "} = 2
WRAPPER=$((10 + TITLE_LEN + 9 + 2))
echo "Wrapper bytes: $WRAPPER"
PAYLOAD=$(wc -c < /tmp/gh-aw/agent/payload.json)
BODY_JSON=$((PAYLOAD - WRAPPER))
echo "Body in JSON: $BODY_JSON bytes"
echo "Raw body: $(wc -c < /tmp/gh-aw/agent/body.md) bytes"
echo "Body overhead: $((BODY_JSON - $(wc -c < /tmp/gh-aw/agent/body.md))) bytes")

Please update the workflow so the prompt only uses tools permitted by the workflow tool policy.

Action Required

Assign this issue to an agent to debug and fix the issue.

Optimize token consumption

This failure was triggered by a guardrail limit (max-tool-denials). Use this prompt with any coding agent (GitHub Copilot, Claude, Gemini, etc.) to analyze token usage and reduce costs:

Optimize the agentic workflow token consumption using https://raw.githubusercontent.com/github/gh-aw/main/optimize.md

The workflow run is at https://github.com/github/gh-aw/actions/runs/28387683056
Debug with any coding agent

Use this prompt with any coding agent (GitHub Copilot, Claude, Gemini, etc.):

Debug the agentic workflow failure using https://raw.githubusercontent.com/github/gh-aw/main/debug.md

The failed workflow run is at https://github.com/github/gh-aw/actions/runs/28387683056
Manually invoke the agent

Debug this workflow failure using your favorite Agent CLI and the agentic-workflows prompt.

Tip

Stop reporting this workflow as a failure

To stop a workflow from creating failure issues, set report-failure-as-issue: false in its frontmatter:

safe-outputs:
  report-failure-as-issue: false

Generated from Daily Formal Spec Verifier · 345 AIC ·

  • expires on Jun 30, 2026, 5:07 AM UTC

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions