[ci-doctor] CI Test Failure — Run #29057896142 (bun-version: latest regression)
- Lenguaje dominante
- TypeScript
- Estrellas
- 7
- Forks
- 3
- Merge medio
- 1 h 42 min
- PR fusionados (30 d)
- 1
Descripción
## Summary
The `Test & Lint` job failed at the `Test` step (`bun test --coverage ./tests/`) on commit `7c5ea995`, which merged PR #410 ("Improve Evergreen CI diagnostics"). Only workflow files were changed — no source or test code was modified.
## Failure Details
- **Run**: [29057896142](https://github.com/githubnext/tsb/actions/runs/29057896142)
- **Commit**: `7c5ea995df0694314856f08440316b53004183d9`
- **Trigger**: push (merge of PR #410)
- **Failed Step**: `bun test --coverage ./tests/` (ran for ~4 seconds)
- **Previous successful run**: [29052744071](https://github.com/githubnext/tsb/actions/runs/29052744071) on commit `a7269d37`
## Root Cause Analysis
**No source code or test files were changed** between the successful and failing runs — only workflow files (`.github/workflows/evergreen.lock.yml`, `.github/workflows/evergreen.md`, `.github/workflows/shared/evergreen/repo-policy.md`).
The most likely cause is that `bun-version: latest` in `ci.yml` pulled a **new bun version** between the two runs, which introduced a regression in the test runner or coverage reporting.
This is a **recurring pattern** — an identical failure occurred previously (see #307).
## Failed Jobs and Errors
| Job | Step | Result |
|-----|------|--------|
| Test & Lint | Test | ❌ failure |
| Test & Lint | Type check | ✅ success |
| Test & Lint | Lint | ✅ success |
CI logs are not publicly accessible (require admin), so the exact test failure message is unavailable.
## Investigation Findings
1. Only `.github/workflows/` files changed — code is unchanged
2. The `Test` step ran for ~4 seconds (23:38:38–23:38:42), which is abnormally short for a full test suite
3. `Build` and cross-validation steps were skipped (they depend on `test` passing)
4. This is at least the third occurrence of this pattern (see also #307)
## Recommended Actions
- [ ] **Pin bun version** in `.github/workflows/ci.yml`: change `bun-version: latest` → `bun-version: "1.2.x"` (or the last known-good version)
- [ ] **Retry the failed run** — a re-run may succeed if the issue is a transient bun release
- [ ] **Check bun release notes** for any test runner or coverage changes between the last successful and current bun version
## Prevention Strategies
1. Pin bun to a specific version in all CI workflows; update deliberately after reviewing release notes
2. Consider adding a `continue-on-error: false` with explicit bun version check
3. Add a note to AGENTS.md reminding agents that `bun-version: latest` is not allowed in CI
## AI Team Self-Improvement
```
## CI Stability: Bun Version Pinning (CRITICAL)
- NEVER use `bun-version: latest` in CI workflow files (.github/workflows/*.yml).
Always pin to a specific version, e.g. `bun-version: "1.2.15"`.
- When modifying any CI workflow, verify that `bun-version` is pinned and not set to `latest`.
- Recurring test failures where only workflow files changed are almost always caused by
bun-version: latest pulling a new release with a regression. Recommend pinning immediately.
```
## Historical Context
- **Issue #307** (May 2026): Same pattern — `bun test` CI failure after autoloop merge, only workflow or unrelated files changed, tests pass locally. Root cause identified as `bun-version: latest`.
- This is the third known occurrence of this pattern in this repository.
> Generated by [CI Failure Doctor](https://github.com/githubnext/tsb/actions/runs/29057979379) · 326.4 AIC · ⌖ 11 AIC · ⊞ 28.1K · [◷](https://github.com/search?q=repo%3Agithubnext%2Ftsb+is%3Aissue+%22gh-aw-workflow-call-id%3A+githubnext%2Ftsb%2Fci-doctor%22&type=issues)
>
Add this agentic workflows to your repo
To install this agentic workflow, run
```
gh aw add githubnext/agentics/workflows/ci-doctor.md@c7d030cd6d4607b90d9ac3ffc8b24aff4f251632
```
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comienza con .github/workflows/ci.yml y compara la ejecución fallida 29057896142 con la ejecución exitosa anterior 29052744071, centrándote en la versión de Bun utilizada por el paso Test. Fija la versión de Bun configurada como se describe, vuelve a ejecutar el workflow y confirma que `bun test --coverage ./tests/` se completa correctamente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- github-actions, typescript
- Área
- ci-cd
- Tipo de issue
- Error
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 68/100