fix(#5716): fail fast on concluded harness workflow failures - #5732
Conversation
|
🤖 Finished Review · ✅ Success · Started 4:05 PM UTC · Completed 4:18 PM UTC |
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
ReviewFindingsLow
Previous runReviewFindingsMedium
Low
Labels: PR modifies harness agent wait logic in the behaviour test CI driver |
|
/fs-fix rebase the PR and fix AI review comments |
|
🤖 Finished Fix · ❌ Failure · Started 8:12 PM UTC · Completed 8:21 PM UTC |
|
The fix agent completed, but the post-fix script failed before finishing. Workflow run: https://github.com/fullsend-ai/.fullsend/actions/runs/30487491366 Details: |
|
/fs-fix redo the last fix, make sure not to include the Signed-off-by trailer |
|
🤖 Finished Fix · ❌ Failure · Started 8:25 PM UTC · Completed 8:35 PM UTC |
The fail-fast check in WaitForHarnessAgent previously used ListRecentWorkflowRuns, which returns runs across all workflows in the repository. This could cause false-positive fail-fast when an unrelated workflow (e.g., a CI check) had a terminal failure within the time window. Scope the check to only the harness workflow (fullsend.yaml) by using ListWorkflowRuns instead of ListRecentWorkflowRuns. Also align the fail-fast error message to use url= (equals separator) consistently with formatRunDiagnostics. Addresses review feedback on #5732
|
The fix agent completed, but the post-fix script failed before finishing. Workflow run: https://github.com/fullsend-ai/.fullsend/actions/runs/30488267454 Details: |
|
/fs-fix rebase and fix all remaining review issues, list what you fix or was already fixed in the output |
|
🤖 Finished Fix · ❌ Failure · Started 7:13 AM UTC · Completed 7:17 AM UTC |
|
The fix agent completed, but the post-fix script failed before finishing. Workflow run: https://github.com/fullsend-ai/.fullsend/actions/runs/30522112798 Details: |
|
/fs-fix rebase |
|
🤖 Finished Fix · ❌ Failure · Started 8:15 AM UTC · Completed 8:20 AM UTC |
WaitForHarnessAgent previously only checked for a success artifact, polling the full ~12-minute deadline even when the harness workflow had already concluded with a failure. This wasted CI time and produced opaque timeout messages. Add fail-fast detection: on each poll iteration, check recent workflow runs for terminal failure conclusions (failure, timed_out, startup_failure). Skipped and cancelled runs are excluded to avoid false positives from concurrency-group noise. When a terminal failure is detected, fail immediately with the run ID, conclusion, and URL. On true timeout (no artifact and no failed runs), the error now includes diagnostic information about recent workflow runs so the next CI flake is self-explanatory. Closes #5716
The fail-fast check in WaitForHarnessAgent previously used ListRecentWorkflowRuns, which returns runs across all workflows in the repository. This could cause false-positive fail-fast when an unrelated workflow (e.g., a CI check) had a terminal failure within the time window. Scope the check to only the harness workflow (fullsend.yaml) by using ListWorkflowRuns instead of ListRecentWorkflowRuns. Also align the fail-fast error message to use url= (equals separator) consistently with formatRunDiagnostics. Addresses review feedback on #5732
|
The fix agent completed, but the post-fix script failed before finishing. Workflow run: https://github.com/fullsend-ai/.fullsend/actions/runs/30525914229 Details: |
49b521e to
a39fca5
Compare
|
/fs-review |
|
🤖 Finished Review · ✅ Success · Started 8:37 AM UTC · Completed 8:52 AM UTC |
|
🤖 Finished Retro · ✅ Success · Started 10:39 AM UTC · Completed 10:50 AM UTC |
Retro: PR #5732 — fail fast on concluded harness workflow failuresOverall: The code and review agents performed well on the core task. The review agent correctly identified a real medium-severity scoping bug (fail-fast not filtered to the harness workflow), and the code agent produced a solid initial implementation with comprehensive tests. However, the fix agent loop was entirely broken — all 4 fix attempts failed due to post-script infrastructure issues, not agent logic. The human ultimately had to rebase manually and re-trigger review. Timeline
What went well
What went wrong
Existing issues with new evidence
Proposals filed
|
Summary
WaitForHarnessAgentnow fails fast when a recent workflow run has a terminal failure conclusion (failure,timed_out,startup_failure) instead of polling the full ~12-minute deadline. On true timeout, the error message includes diagnostic information about recent workflow runs (ID, status, conclusion, URL) for faster debugging.Related Issue
Closes #5716
Changes
isTerminalFailurehelper to identify failure/timed_out/startup_failure conclusions (excluding skipped/cancelled concurrency noise)listRecentRunsAfterhelper to fetch and filter recent workflow runs by trigger timeformatRunDiagnosticsto build human-readable run summaries for error messagesWaitForHarnessAgentto check for terminal failures on each poll iteration and include diagnostics on timeoutTesting
go vetpassesCloses #5716
Post-script verification
agent/5716-harness-fail-fast)a486edd84e78b51ffa5fa006b624185fdc1c5965..HEAD)