fix(ci): bucket cancelled jobs in Selective E2E Results comment#5246
Conversation
The Selective E2E Results comment script at .github/workflows/nightly-e2e.yaml bucketed job results into passed / failed / skipped but never accounted for `cancelled`. A job ending in `cancelled` (e.g. when cancel-in-progress kills a stale run) slipped past all three tallies and fell through to the default "✅ All requested jobs passed" status, with the summary line reading "0 passed, 0 failed, 0 skipped" — masking the fact that the run produced no signal. Observed on #5085 (the cancel-in-progress run against `026802ba8` listed two cancelled jobs but still posted the green check) and earlier on #4610. Fix: - Add a `cancelled` bucket derived the same way as the other tallies. - Insert a status branch between the failure case and the no-ran case: when cancelled jobs are present and nothing passed, surface "⚠️ Run cancelled — no signal" instead of falsely claiming success. - Include cancelled count in the summary line so the bucket is visible even when other states are zero. No other behavior changes — successful, failed, and skipped runs continue to render exactly as before. Signed-off-by: Charan Jagwani <cjagwani@nvidia.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe workflow now explicitly classifies cancelled E2E test jobs and updates PR comment generation to report cancellation separately. Status logic routes cancellation outcomes distinctly, and the comment summary includes cancelled counts alongside pass/fail/skip totals. ChangesE2E Test Cancellation Reporting
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
E2E Advisor RecommendationRequired E2E: None Full advisor summaryE2E Recommendation AdvisorBase: Required E2E
Optional E2E
New E2E recommendations
|
Vitest E2E Scenario RecommendationRequired Vitest E2E scenarios: None Full Vitest E2E advisor summaryVitest E2E Scenario AdvisorBase: Required Vitest E2E scenarios
Optional Vitest E2E scenarios
Relevant changed files
|
PR Review AdvisorFindings: 0 needs attention, 2 worth checking, 0 nice ideas Review findings🛠️ Needs attention
🔎 Worth checking
🌱 Nice ideas
Consider writing more tests for
This is an automated advisory review. A human maintainer must make the final merge decision. |
Summary
The "Selective E2E Results" comment posted by
.github/workflows/nightly-e2e.yamlbucketed job results intopassed/failed/skippedbut never accounted forcancelled. A job ending incancelled(e.g. whencancel-in-progresskills a stale run) slipped past all three tallies and fell through to the default"✅ All requested jobs passed"status, with the summary line reading"0 passed, 0 failed, 0 skipped"— masking that the run produced no signal at all.Repro (in the wild)
PR #5085 commit
026802ba8:Both requested jobs were cancelled (cancel-in-progress superseding the older run) yet the headline read green. Same pattern earlier on #4610.
Root
.github/workflows/nightly-e2e.yaml:2486-2495(pre-fix):A
cancelledjob is!== 'success',!== 'failure',!== 'skipped'— falls through to the default.Changes
cancelledbucket derived fromranthe same way the others are.⚠️ Run cancelled — no signalinstead of falsely claiming success.Successful, failed, and skipped runs continue to render exactly as before — only the cancelled case changes from "false green" to "honest yellow."
cc @jyaunches (flagged this earlier in slack)
Summary by CodeRabbit