You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 9f6256c
Browse filesBrowse the repository at this point in the historyBrowse files
ci(nix): require every sources attempt to report a display
With enumeration split by type, the sources smoke test no longer has a known flake. Exit 0 with displays: [] now counts as a failure, and the verdict requires all attempts. Refs #462.
# Noted, not acted on. Enumeration is flaky here and the export
464
-
# assertion below is the more
465
-
# important question; a flaky attempt costs an annotation rather than
466
-
# the answer. Verdict at the end, once both have had their say.
471
+
# Annotated here, decided at the end: export runs either way, so a
472
+
# failed enumeration cannot hide whether the addon works.
467
473
if [ "$HUNG" -gt 0 ]; then
468
474
echo "::warning::openscreen sources had to be killed on $HUNG of $ATTEMPTS attempts. Check the milestones above for how far it got before the outer bound fired."
469
475
fi
@@ -590,21 +596,18 @@ jobs:
590
596
# flaky must not hide whether export works, which is the whole point of
591
597
# having packaged the compositor addon.
592
598
#
593
-
# The gate is "did enumeration ever answer" and "does export work", not
594
-
# "did all five attempts pass". Requiring FAILED -eq 0 made the job red
595
-
# by construction: the standing numbers on this runner are 1/5, 3/5 and
596
-
# 4/5 ok, so a run where export is perfect and four enumerations succeed
597
-
# still failed. A post-merge check that is red by design is one that gets
598
-
# muted, which costs more than the flakiness it was reporting. The
599
-
# per-attempt warnings above keep that flakiness visible without letting
600
-
# it decide the build; tighten this to $ATTEMPTS once the capture failure
601
-
# is understood and fixed.
599
+
# Every enumeration must answer with a display, and export must work.
600
+
# The gate used to be "did enumeration ever answer", because the call
601
+
# failed on 1 to 4 attempts in 5 for a reason nobody had found. #462
602
+
# found it: asking for screens and windows in one getSources call is
603
+
# what fails under X11, and the get-sources handler now asks one type
604
+
# at a time (under Xvfb: 0 failures in 32 runs, against 7 in 16
605
+
# combined). A flake left after that is a regression, not runner luck.
602
606
#
603
-
# Export, on the other hand, is a hard gate on every trigger again. It no
604
-
# longer depends on a capability this host does not have, so there is
605
-
# nothing left to excuse: if it fails now, the package is broken.
607
+
# Export is a hard gate on every trigger. It does not depend on a
608
+
# capability this host lacks, so if it fails, the package is broken.
0 commit comments