From c506022c6556dafbe3fb673389d8a95a6584b8a8 Mon Sep 17 00:00:00 2001 From: William Barnhart Date: Tue, 21 Jul 2026 15:25:26 +0000 Subject: [PATCH] test(assignor): disable Hypothesis deadline to fix flaky PyPy CI leg The copartitioned-assignor property tests run on PyPy since the PyPy skips were removed. They carried a fixed 4000ms Hypothesis deadline, but PyPy's JIT warmup makes a single example's timing vary by over a second, so runs intermittently exceed it and Hypothesis reports DeadlineExceeded / FlakyFailure -- failing the (non-required) PyPy leg and turning master CI red even though the assignment produced is valid. These tests assert assignment correctness, not performance, so set deadline=None (as the DeadlineExceeded message itself recommends). The property assertions are unchanged and the job timeout still guards against a real hang. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01HHPL4VFWQRQPpjR1gXSKyL --- tests/meticulous/assignor/test_copartitioned_assignor.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tests/meticulous/assignor/test_copartitioned_assignor.py b/tests/meticulous/assignor/test_copartitioned_assignor.py index e0fb1f66b..d78ceea8c 100644 --- a/tests/meticulous/assignor/test_copartitioned_assignor.py +++ b/tests/meticulous/assignor/test_copartitioned_assignor.py @@ -8,7 +8,13 @@ from faust.assignor.client_assignment import CopartitionedAssignment from faust.assignor.copartitioned_assignor import CopartitionedAssignor -TEST_DEADLINE = 4000 +# These Hypothesis property tests assert assignment *correctness*, not +# performance. PyPy's JIT warmup makes a single example's timing vary by +# well over a second, so a fixed deadline is tripped intermittently +# (DeadlineExceeded -> FlakyFailure) even though the assignment is valid -- +# flaking the PyPy CI leg. Disable the deadline; the job's own timeout still +# guards against a real hang. +TEST_DEADLINE = None _topics = {"foo", "bar", "baz"}