[agentrx-optimizer] Daily Workflow Optimization - 2026-11-05
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 74/100
Línea de trabajo
Lee los cuerpos de los prompts del agente en .github/workflows/daily-community-attribution.md y .github/workflows/code-scanning-fixer.md y, después, comprueba cómo están configuradas las listas de permitidos de la herramienta edit y de tools.bash. Añade instrucciones para usar edit al escribir archivos, evitar anteponer cd a los comandos permitidos y usar jq en lugar de python3; ejecuta make recompile para regenerar los archivos de bloqueo. Se considerará terminado cuando ambos prompts incluyan las instrucciones y los archivos de bloqueo generados estén actualizados.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Executive Summary
AgentRx analyzed 10 sampled gh-aw agent runs from the last 24h (prioritizing failed/highest-event-volume trajectories) via the pre-downloaded log bundle. The IR normalization stage completed for all 10 trajectories; the static/dynamic/check/judge LLM-backed stages could not run in this environment (see Limitations). Direct session-log inspection of the largest failure cluster found a concrete, reproducible root cause: the Copilot CLI agent repeatedly issues bash commands (multi-line heredocs, cd ..., python3 ...) that the workflow's tools.bash allowlist rejects, and the resulting stream of denials crashes the CLI driver (exitCode 1). This single pattern accounts for 2 of 4 occurrences in the dataset's single largest failure-boundary cluster.
AgentRx Evidence
-
Critical step:
agent/ "Execute GitHub Copilot CLI" (job:agent) -
Failure category:
agent_logic(failure_boundary signal, clusterfailure-8169433961c9451a) -
Frequency / impact: 4 runs / 30 failed runs in the 24h window (13.3% share) — the single largest failure_boundary cluster observed; every other failure_boundary cluster in the window was a singleton (count=1). Within this cluster, 2 of 4 runs share an identical, reproducible signature (bash permission denial →
sdk_drivercrash); the other 2 have distinct causes (rate limit, query error — see details). -
Representative run IDs:
- §41955226606 — Daily Community Attribution Updater
- §41944783819 — Code Scanning Fixer
- §41925400471 — Avenger (different root cause, see table)
- §41924480521 — Daily BYOK Ollama Test (different root cause, see table)
Violation classification
AgentRx's automated check/judge stages did not produce output in this environment (see Limitations), so this table is derived directly from raw session telemetry (usage/aw_session.jsonl) for the 10 sampled trajectories.
| violation | evidence | fix_type | rationale |
|---|---|---|---|
Multi-line cat > file << 'EOF' ... EOF heredoc bash commands denied despite a matching "cat *" allowlist entry |
§41955226606 events #368→#370, #325→#327 ("Tool invocation is not allowed by workflow tool permissions"); same pattern in §41944783819 |
prompt tightening to reduce invalid tool invocations | The agent defaults to heredoc-style file writes even though the workflow enables the edit tool for exactly this purpose. Prefix-glob bash permission matching does not reliably match multi-line command bodies, so every heredoc attempt is denied and retried until the turn budget is exhausted and the CLI driver crashes (exitCode: 1, errorTypes: ["sdk_driver"]). |
Compound cd <dir> && jq ... commands denied (cd absent from every observed bash allowlist) |
§41955226606 events #384, #467 |
prompt tightening to reduce invalid tool invocations | The agent repeatedly prefixes otherwise-allowed commands (jq) with cd, which no sampled workflow allowlists, so the whole compound command is rejected each time. |
python3 << 'EOF' ... EOF denied (python3 absent from allowlist) |
§41955226606 event #514 |
prompt tightening to reduce invalid tool invocations | Agent falls back to inline Python for JSON/report generation instead of the allowlisted jq or the enabled edit tool. |
| Invocation cap exceeded / HTTP 429 after an unusually long trajectory | §41925400471 (Avenger): categories: ["invocation_cap_exceeded"], errorCodes: [429], 1011 session substeps (3-10x any other sampled run) |
improving retry/backoff strategy | By far the highest event volume among the 10 sampled trajectories, consistent with a tight retry loop burning through the rate-limit budget rather than backing off. |
driver_exit failures in isolated infra/setup steps (repo checkout, TLA+ runtime prep, Cursor CLI, Codex CLI) |
§41940379704 (Smoke Drive), §41941812478 (Smoke Update Cross-Repo PR), §41972802666 (Daily Workflow Security Model), §41941619530 (Smoke Cursor) | adding missing telemetry attributes for better triage | Each is a singleton failure_boundary cluster with a distinct failed step name and no further session-level error detail available in the collected logs — these need step-level error capture before a shared fix can be identified. |
AgentRx Artifacts
-
IR summary:
trajectory_ir.jsonnormalized all 10 sampled trajectories successfully (flash-domain converter, no LLM fallback needed) — substep counts per trajectory: 41955226606=687, 41944783819=664, 41925400471=1011, 41924480521=392, 41940379704=131, 41941812478=101, 41972802666=105, 41941619530=186, 41969455502=167, 41961870265=255. -
Invariant/checker highlights: Not available — see limitations below.
-
Judge classification output: Not available — see limitations below.
-
Known limitations:
- The
static,dynamic,check,judge, andreportpipeline stages all failed identically withSystemError: The installed pydantic-core version (2.50.2) is incompatible with the current pydantic version, which requires 2.50.1while importingagentrx.llm_clients.azure→openai→pydantic. This is a pre-existing dependency mismatch in the installed AgentRx virtualenv, not something fixable here (nopip install/env-repair was performed, per instructions). Only theirstage (no LLM dependency) completed. - The findings above are therefore grounded directly in raw
aw_session.jsonlevent inspection rather than AgentRx's automated invariant/judge output. - Log collection hit its count/storage limit for the 24h window (
continuationcursor insummary.jsonpointed to an earlierstart_date/before_run_id); this analysis covers the 25 of 30 unique failed runs with observed evidence that were already clustered, not the full 24h window. 7 of 15 eligible failure clusters remain unreviewed.
- The
Recommended Optimization
- Change: Add a short "File writes" guidance block to the agent prompt body of
.github/workflows/daily-community-attribution.mdand.github/workflows/code-scanning-fixer.md, instructing the agent to use the already-enablededittool for creating or appending file content instead of bash heredocs (cat > file << EOF), and to never prefix allowlisted commands withcd(use absolute paths) or invokepython3(usejq, which is already allowlisted, for JSON transforms). - Why highest impact: This is the only repeating, reproducible signature in the largest failure cluster in the window — it directly causes a hard CLI driver crash (
exitCode 1) after exhausting denied attempts, rather than a graceful degradation, in 2 of 4 occurrences. The fix is a markdown prompt change plusmake recompile— no code change required — and the sametools.bashallowlist +edittool combination is shared by other copilot-engine workflows in this repo, so the same guidance is worth propagating wherever that pattern recurs. - Where to implement: Prompt bodies of
.github/workflows/daily-community-attribution.mdand.github/workflows/code-scanning-fixer.md(the workflow source.mdfiles, followed bymake recompileto regenerate the.lock.ymlfiles).
Validation Plan
- Re-run both workflows and confirm
usage/aw_session.jsonlno longer containstool.execution_completeevents witherror.code: "denied"during the "Execute GitHub Copilot CLI" step. - Track cluster
failure-8169433961c9451a(agent/"Execute GitHub Copilot CLI",failure_kind: agent_logic) in the next AgentRx run — expect its count to drop from 4 toward 2 (only the unrelated rate-limit and BYOK query-400 runs remaining). - Expected success-metric change: the built-in
tool-success-rategrader for these two workflows should rise from the observed 0.76 toward ≥0.95, andtool-failure-countshould drop from the observed 6–7 per run to 0–1.
References
- §41955226606 — Daily Community Attribution Updater (bash-denial crash)
- §41944783819 — Code Scanning Fixer (bash-denial crash)
- §41925400471 — Avenger (rate-limit crash, distinct cause)
Generated by ⚡ Daily AgentRx Trace Optimizer · claude · agent · ~131 AIC · ⌖ ~1 AIC · ⊞ 4.4K · ◷
- expires on Nov 11, 2026, 9:45 PM UTC-08:00
- Lenguaje dominante
- Go
- Estrellas
- 5.6k
- Forks
- 615
- Merge medio
- 5 h 36 min
- PR fusionados (30 d)
- 805
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de github/gh-aw
-
agentic-workflows
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
agentic-workflows
Dificultad 1/5 Menos de una hora Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
automation cli cookie documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
automation cookie documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
Los mantenedores suelen responder en 1 día
-
cookie improvement refactoring shared-component
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
Los mantenedores suelen responder en 1 día
Todos los issues de github/gh-aw
Issues similares
-
agent-butler-finding bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
jordansmall/spindrift#6414 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Icinga/icinga-kubernetes#294 ·
Los mantenedores suelen responder en 4 días
-
Cluster details: the Control Plane version field has a different border color than its icon boxAbiertokind/design sig/ui
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
kubermatic/dashboard#8449 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
filecoin-project/curio#1632 ·
Los mantenedores suelen responder en 1 día