From 65da0b8ee01b1bac683629d746cd03bbd05100b6 Mon Sep 17 00:00:00 2001 From: Richie McIlroy <33632126+richiemcilroy@users.noreply.github.com> Date: Wed, 21 Oct 2026 08:58:40 +0800 Subject: [PATCH] test(verify): measure fragment spans and expect B1's 4 s fragments on macOS runners --- crates/verify/expectations.toml | 8 ++++++++ crates/verify/tests/crash.rs | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/crates/verify/expectations.toml b/crates/verify/expectations.toml index ea47214b2ef..dc955b4f85c 100644 --- a/crates/verify/expectations.toml +++ b/crates/verify/expectations.toml @@ -381,3 +381,11 @@ class = "missing" bound = { count = 1 } reason = "NEW (bug B1, see loss-time): no fragment of the static recording is complete when the recorder dies, so recovery has nothing (no frames)" link = "https://github.com/CapSoftware/Cap/pull/2641" + +[[xfail]] +case = "crash/recorder-kill/*/static-screen" +class = "fragment-span" +platforms = ["macos"] +bound = { count = [1, 20], secs = [2.3, 20.5] } +reason = "NEW (bug B1, see loss-time): since 2026-10-20 the macOS runners deliver the static screen at about 28 fps against a 60 fps nominal rate, so the keyframe interval (120 frames) closes each fragment after about 4 s of capture instead of 2 s; the same commit that passed nightly 39365191761 fails this way in run 39513410142. Bound: fragments no longer than B1's 20 s" +link = "https://github.com/CapSoftware/Cap/actions/runs/39513410142" diff --git a/crates/verify/tests/crash.rs b/crates/verify/tests/crash.rs index 33c3b8c2061..59b7ec006bc 100644 --- a/crates/verify/tests/crash.rs +++ b/crates/verify/tests/crash.rs @@ -857,8 +857,10 @@ fn check_fragment_spans(case: &mut Case, fragments: &[Vec<(u32, f64)>], handed: let span = next - start; worst = worst.max(span); if span > GOP_SECS + (next - end) + 1e-6 { - case.problem( + case.problem_measured( "fragment-span", + "secs", + (span * 100.0).round() / 100.0, format!( "fragment of frames {}..={} covers {span:.2}s of capture, more than {GOP_SECS}s plus the {:.2}s before the frame that closed it", first.0,