Repository navigation
fix(ci): wait for ordinary eval agents within job timeout - #330
Conversation
Disable the Claude print-mode idle background wait ceiling while bounding the ordinary eval job to 90 minutes. Cover both sequential CLI invocations and the explicit job limit. Implements TC-6783 Assisted-by: Codex
Reviewer's GuideThe workflow now lets ordinary Claude eval invocations wait for background agents indefinitely, while the enclosing Sequence diagram for bounded ordinary CI evaluationsequenceDiagram
participant Workflow as run-evals workflow
participant Claude as Claude invocation
participant Agents as Background eval agents
participant Job as 90-minute job timeout
Workflow->>Claude: invoke ordinary evaluation
Claude->>Agents: start eval agents
Claude->>Agents: wait with CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS=0
Agents-->>Claude: complete evaluations
Claude-->>Workflow: return evaluation result
Job-->>Workflow: enforce timeout-minutes: 90
alt 90-minute limit reached
Job->>Workflow: terminate run-evals job
end
Flow diagram for ordinary eval runtime boundsflowchart LR
Start["run-evals job starts"] --> Env["Set background wait ceiling to 0"]
Env --> Invoke["Run Claude evaluation"]
Invoke --> Wait["Wait for background eval agents"]
Wait --> Result["Publish evaluation result"]
Limit["90-minute job timeout"] -.-> Invoke
Limit -.-> Wait
Limit -.-> Result
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
Verification Report for TC-6783 (commit e9bcd2b)
Overall: PASSThe PR correctly disables the Claude print-mode idle background-wait ceiling ( Note: all four verification commands were run with the sandbox disabled, because the PR branch is checked out in a worktree outside the sandbox's writable allowlist. One unrelated test ( This report is informational. Merging and Jira transitions remain a human decision. This comment was AI-generated by sdlc-workflow/verify-pr v0.13.9. |
Summary
Implements TC-6783, a CI-failure sub-task of TC-6726.
CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS="0"for ordinary evals so Claude waits for background eval agents rather than stopping them after ten idle minutes.run-evalsjob to 90 minutes.The failing ordinary job explicitly reported terminating all six
verify-preval agents after ten idle minutes. Anthropic documents the wait setting in its environment variable reference.Validation
claude plugin validate plugins/sdlc-workflow: passed.git diff --check: passed.Unit tests validate configuration propagation through the actual workflow shell with a non-inference Claude stub. Actual long-running background-agent completion must be validated in the hosted PR #299 eval after this trusted-main workflow change merges. The 90-minute limit covers setup, all requested skills and publication; a run exceeding it will time out.
Rollout
The runner uses the trusted workflow from
main. After merging this PR, synchronize PR #299 withmainand trigger a fresh source-bound eval run. Native grading failures from the reported run remain separate work.Summary by Sourcery
Ensure ordinary CI evaluations wait for background agents while enforcing a finite job runtime.
Bug Fixes:
CI: