elastic / elastic/ai-github-actions
[agent-efficiency] Agent workflow failure patterns (2026-09-02 to 2026-09-09): recurring UV_PATH crash and missing logs
- Dominant language
- Python
- Stars
- 11
- Forks
- 16
- Avg merge
- 22h 9m
- Merged PRs (30d)
- 31
Description
## Scope
Lookback window analyzed: **2026-09-02 to 2026-09-09 (UTC)**.
Failed-run inputs analyzed:
- `/tmp/gh-aw/failed_runs.json` (failed run metadata)
- `/tmp/gh-aw/errors.json` (pre-extracted error snippets)
- `/tmp/gh-aw/logs//` (agent/detection/conclusion logs when available)
Downstream repositories discovered from code search for `elastic/ai-github-actions` workflow usage:
- `elastic/beats`
- `elastic/logstash`
## Per-repository run summary (last 7 days)
| Repository | Runs considered | Success | Failure | Other conclusion | Failure rate (failure / (success+failure)) |
|---|---:|---:|---:|---:|---:|
| elastic/ai-github-actions | 166 | 148 | 18 | 0 | 10.8% |
| elastic/beats | 541 | 55 | 3 | 483 | 5.2% |
| elastic/logstash | 23 | 4 | 19 | 0 | 82.6% |
## Behavioral patterns observed
### 1) Repeated agent-step crash before useful tool execution in complexity/duplication detectors
**What happened (exact excerpt + run link):**
From run `34355044151` (`Trigger Code Complexity Detector`):
```text
2026-09-09T13:09:02.7208082Z # AWF-friendly location: gh-aw scans /opt/hostedtoolcache/**/bin paths.
2026-09-09T13:09:02.7209606Z sudo ln -sf "$UV_PATH" "$toolcache_bin/uv"
...
2026-09-09T13:09:02.7254157Z UV_PATH:
2026-09-09T13:09:02.7455251Z ln: failed to create symbolic link '/opt/hostedtoolcache/gh-aw-tools/current/x64/bin/uv' -> '': No such file or directory
2026-09-09T13:09:02.7469884Z ##[error]Process completed with exit code 1.
```
Run link: https://github.com/elastic/ai-github-actions/actions/runs/34355044151
**How many runs/workflows are affected:**
- **12 failed runs** in the lookback window
- Affected workflows:
- `.github/workflows/trigger-code-complexity-detector.yml` (6 runs)
- `.github/workflows/trigger-code-duplication-detector.yml` (6 runs)
**Root cause location (observed in source/fragment):**
- `.github/workflows/gh-aw-fragments/runtime-setup.md` (`Expose uv in workspace` step) contains:
- `env: UV_PATH: ${{ steps.setup-uv.outputs.uv-path }}`
- `sudo ln -sf "$UV_PATH" "$toolcache_bin/uv"`
- In failed runs above, `UV_PATH` is empty at execution time.
### 2) Missing downloadable logs for a 4-run failed burst (analysis blind spot)
**What happened (exact excerpt + run link):**
For each of these failed runs, `/tmp/gh-aw/logs//logs.zip` is not a zip archive; it contains API 404 JSON:
```json
{"message":"Not Found","documentation_url":"https://docs.github.com/rest/actions/workflow-runs#download-workflow-run-logs","status":"404"}
```
Representative run link: https://github.com/elastic/ai-github-actions/actions/runs/33860481111
**How many runs/workflows are affected:**
- **4 failed runs** (all at `2026-09-04T09:52:30Z`)
- Affected workflows:
- `.github/workflows/trigger-pr-review.yml`
- `.github/workflows/trigger-pr-labeler.yml`
- `.github/workflows/trigger-dependency-review.yml`
- `.github/workflows/trigger-update-pr-body.yml`
**Root cause location (observed artifact/input):**
- The pre-downloaded log artifacts under `/tmp/gh-aw/logs//logs.zip` for these runs contain a 404 response body instead of downloadable run logs, so agent-step behavior for those runs cannot be inspected from the provided dataset.
## Duplicate-check notes
Open-issue search for the exact uv symlink signature returned no open issue with that exact text; broader query did return related prior tracking (for example `#2007`).
> Generated by [Internal: Agent Efficiency](https://github.com/elastic/ai-github-actions/actions/runs/34370376197) · gpt53codex · 81.3 AIC · ⌖ 6.21 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 16, 2026, 3:56 PM UTC
Contributor guide
Research direction
Start with .github/workflows/gh-aw-fragments/runtime-setup.md and the Expose uv in workspace step, then compare the two detector workflows named in the report with the failed run excerpt. Inspect the listed /tmp/gh-aw/logs//logs.zip inputs and the four affected workflows to distinguish the UV_PATH crash from the 404 log artifacts. Done should include a verified explanation and reproducible checks for both failure patterns.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, shell
- Domain
- ci-cd, devops
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100