elastic / elastic/ai-github-actions
[agent-efficiency] Agent failures last 7d: pre-agent uv bootstrap error pattern + run summary
- Dominant language
- Python
- Stars
- 11
- Forks
- 16
- Avg merge
- 22h 9m
- Merged PRs (30d)
- 31
Description
## Scope
Analyzed failed agent workflow artifacts for the last 7 days (`2026-09-04T15:38:49Z` to `2026-09-11T15:38:49Z`) using:
- `/tmp/gh-aw/failed_runs.json` (failed run metadata)
- `/tmp/gh-aw/errors.json` (pre-extracted error snippets)
- `/tmp/gh-aw/logs//4_run _ agent.txt` (agent-step logs)
- `github actions_list` + `github search_code` (repository and downstream run metadata)
## Per-repository run summary (last 7 days)
| Repository | Total runs | Completed (S+F) | Success | Failure | Pass rate | Fail rate | Cancelled | Skipped | Action required |
|---|---:|---:|---:|---:|---:|---:|---:|---:|---:|
| elastic/ai-github-actions | 179 | 101 | 91 | 10 | 90.1% | 9.9% | 2 | 60 | 16 |
| elastic/beats | 92 | 6 | 6 | 0 | 100% | 0% | 0 | 45 | 0 |
| elastic/docs-actions | 0 | 0 | 0 | 0 | n/a | n/a | 0 | 0 | 0 |
| elastic/docs-builder | 0 | 0 | 0 | 0 | n/a | n/a | 0 | 0 | 0 |
| elastic/elastic-agent | 226 | 6 | 4 | 2 | 66.67% | 33.33% | 0 | 217 | 0 |
| elastic/elastic-package | 220 | 34 | 22 | 12 | 64.71% | 35.29% | 0 | 186 | 0 |
| elastic/elastic-ramen | 0 | 0 | 0 | 0 | n/a | n/a | 0 | 0 | 0 |
| elastic/fleet-server | 0 | 0 | 0 | 0 | n/a | n/a | 0 | 0 | 0 |
| elastic/infra-party | 0 | 0 | 0 | 0 | n/a | n/a | 0 | 0 | 0 |
| elastic/integrations | 60 | 0 | 0 | 0 | n/a | n/a | 0 | 23 | 20 |
| elastic/logstash | 151 | 12 | 2 | 10 | 16.67% | 83.33% | 0 | 139 | 0 |
| elastic/mp-prompt-test | 0 | 0 | 0 | 0 | n/a | n/a | 0 | 0 | 0 |
| elastic/oblt-aw | 207 | 177 | 160 | 17 | 90.4% | 9.6% | 0 | 30 | 0 |
| elastic/observability-robots-playground-public | 1 | 1 | 1 | 0 | 100% | 0% | 0 | 0 | 0 |
| elastic/package-registry | 217 | 1 | 1 | 0 | 100% | 0% | 0 | 214 | 0 |
## Findings
### 1) Recurrent pre-agent bootstrap failure in detector workflows (10/10 failed runs)
**What happened**
All 10 failed runs in this repository (5x `trigger-code-complexity-detector`, 5x `trigger-code-duplication-detector`) fail in `run / agent` before any agent tool execution begins.
**Exact log excerpts**
From run https://github.com/elastic/ai-github-actions/actions/runs/34602466892 (`/tmp/gh-aw/logs/34602466892/4_run _ agent.txt`):
```text
528: 2026-09-11T13:08:52.5349075Z digest-mismatch: error
593: 2026-09-11T13:08:53.8032505Z ln: failed to create symbolic link '/opt/hostedtoolcache/gh-aw-tools/current/x64/bin/uv' -> '': No such file or directory
594: 2026-09-11T13:08:53.8048766Z ##[error]Process completed with exit code 1.
```
Same signature appears in all failed runs:
- https://github.com/elastic/ai-github-actions/actions/runs/34597581885
- https://github.com/elastic/ai-github-actions/actions/runs/34480626831
- https://github.com/elastic/ai-github-actions/actions/runs/34475177372
- https://github.com/elastic/ai-github-actions/actions/runs/34355044151
- https://github.com/elastic/ai-github-actions/actions/runs/34349473120
- https://github.com/elastic/ai-github-actions/actions/runs/34230044885
- https://github.com/elastic/ai-github-actions/actions/runs/34224627518
- https://github.com/elastic/ai-github-actions/actions/runs/34125616679
- https://github.com/elastic/ai-github-actions/actions/runs/34120397796
**Root-cause location**
In both affected compiled workflows, `Setup uv` is emitted without `id: setup-uv`, but `Expose uv in workspace` reads `${{ steps.setup-uv.outputs.uv-path }}`:
- `.github/workflows/gh-aw-code-complexity-detector.lock.yml` (setup block around lines 539-548; UV_PATH reference at line 628)
- `.github/workflows/gh-aw-code-duplication-detector.lock.yml` (setup block around lines 539-548; UV_PATH reference at line 628)
The shared fragment expects that output reference:
- `.github/workflows/gh-aw-fragments/runtime-setup.md` line 44 (`UV_PATH: ${{ steps.setup-uv.outputs.uv-path }}`)
Related existing tracking artifact: #1934 (open PR).
### 2) No excessive/wrong in-agent tool-call pattern in the failed-run set (blocked before agent execution)
**What happened**
For all 10 failed runs in `/tmp/gh-aw/failed_runs.json`, `4_run _ agent.txt` contains no `tools/call` / in-agent tool invocation lines before failure.
**Evidence**
Derived summary from log scan (`/tmp/gh-aw/agent/behavior.tsv`): every failed run has `tool_calls=0`, `uv_symlink=1`, `exit1=1`, `digest=1`.
> Generated by [Internal: Agent Efficiency](https://github.com/elastic/ai-github-actions/actions/runs/34616182014) · gpt53codex · 59.9 AIC · ⌖ 3.87 AIC · ⊞ 23.2K · [◷](https://github.com/search?q=repo%3Aelastic%2Fai-github-actions+is%3Aissue+%22gh-aw-workflow-call-id%3A+elastic%2Fai-github-actions%2Fagent-efficiency%22&type=issues)
> - [x] expires on Sep 18, 2026, 3:48 PM UTC
Contributor guide
Research direction
Start by reading the Setup uv and Expose uv in workspace blocks in .github/workflows/gh-aw-code-complexity-detector.lock.yml and .github/workflows/gh-aw-code-duplication-detector.lock.yml, then compare the shared expectation in .github/workflows/gh-aw-fragments/runtime-setup.md. Reproduce the failure from the cited Actions logs and verify that both detector workflows complete without the uv symlink error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, yaml
- Domain
- ci-cd, devops
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100