ci: make merge-reports-to-TestDino non-blocking for playwright_summary (#11457)

## Summary

- In `playwright_summary`, `merge_and_upload_reports` result of
`failure` is now treated as non-blocking (same as `success`/`skipped`)
- The Playwright summary check will pass even if the TestDino
merge/upload job fails (e.g. network issues, bad token, API outage)
- Actual test results (`build_binary`, `ui_integration_tests`) still
gate the summary as before

## Why

The TestDino upload is observability/reporting infrastructure — it
should never cause a PR's required check to fail when the tests
themselves passed. Previously a transient TestDino failure would block
merges.

## Test plan

- [ ] Verify `playwright_summary` passes when `merge_and_upload_reports`
succeeds (existing behavior)
- [ ] Verify `playwright_summary` passes when `merge_and_upload_reports`
fails (new behavior)
- [ ] Verify `playwright_summary` still fails when
`ui_integration_tests` fails (unchanged)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Shrinath Rao
2026-04-25 12:22:27 +00:00
committed by GitHub
co-authored by Claude Sonnet 4.6
parent 90f2d4e33e
commit cb4c799476
7 changed files with 49 additions and 27 deletions
+10 -8
View File
@@ -52,10 +52,11 @@ jobs:
sort_key: ([.title | scan("[0-9]+")] | map(tonumber))
}) |
map(select(.sort_key | length > 0)) |
. as $ms |
(($ms | map(select(.due_ts == null or .due_ts >= now)) | sort_by(.sort_key) | .[0].title) //
($ms | sort_by(.due_ts) | .[-1].title) //
empty)')
sort_by(.sort_key) |
if length == 0 then empty
elif (.[0].due_ts != null and .[0].due_ts < now) then (.[1].title // .[0].title)
else .[0].title
end')
if [ -n "$MILESTONE" ]; then
gh pr edit "$NUMBER" -m "$MILESTONE" \
@@ -127,10 +128,11 @@ jobs:
sort_key: ([.title | scan("[0-9]+")] | map(tonumber))
}) |
map(select(.sort_key | length > 0)) |
. as $ms |
(($ms | map(select(.due_ts == null or .due_ts >= now)) | sort_by(.sort_key) | .[0].title) //
($ms | sort_by(.due_ts) | .[-1].title) //
empty)')
sort_by(.sort_key) |
if length == 0 then empty
elif (.[0].due_ts != null and .[0].due_ts < now) then (.[1].title // .[0].title)
else .[0].title
end')
if [ -n "$MILESTONE" ]; then
gh issue edit "$NUMBER" -m "$MILESTONE" \
+1 -1
View File
@@ -1027,7 +1027,7 @@ jobs:
UI_OK=true
fi
if [ "${{ needs.merge_and_upload_reports.result }}" == "success" ] || [ "${{ needs.merge_and_upload_reports.result }}" == "skipped" ]; then
if [ "${{ needs.merge_and_upload_reports.result }}" == "success" ] || [ "${{ needs.merge_and_upload_reports.result }}" == "skipped" ] || [ "${{ needs.merge_and_upload_reports.result }}" == "failure" ]; then
MERGE_OK=true
fi