Skip to content

Commit 61b3b1b

Browse files
authored
Merge pull request #1517 from DeusData/fix/pylsp-bench-liveness-backstop
test(bench): make the py-lsp time budget a liveness backstop, not a perf gate
2 parents aa6d740 + e628d9d commit 61b3b1b

1 file changed

Lines changed: 9 additions & 8 deletions

File tree

‎tests/test_py_lsp_bench.c‎

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -255,14 +255,15 @@ TEST(pylsp_bench_resolution_ratio) {
255255
ASSERT_GTE(resolved * 2, calls);
256256
}
257257

258-
/* Time budget. ASan+UBSan instrumentation slows the parse ~5-10×, so
259-
* scale the budget when a sanitizer is active. Native: 150 ms for a
260-
* ~200-line fixture; sanitized: 1500 ms. */
261-
#if defined(CBM_SANITIZED_BUILD) || defined(__SANITIZE_ADDRESS__)
262-
ASSERT(ms < 1500.0);
263-
#else
264-
ASSERT(ms < 150.0);
265-
#endif
258+
/* Liveness backstop ONLY — not a perf gate. The perf content of this test
259+
* is the resolution-ratio assertion above; wall-clock on a shared CI
260+
* runner is not a property of the code (the 1500 ms sanitized budget was
261+
* exceeded twice on loaded ubuntu-24.04-arm runners by the SAME sha that
262+
* passed hours earlier). Absolute timings belong to
263+
* scripts/benchmark-*.sh, which record rather than gate. This bound
264+
* exists solely so a catastrophic hang fails the suite instead of the
265+
* 900 s shard wall clock. */
266+
ASSERT(ms < 30000.0);
266267
PASS();
267268
}
268269

0 commit comments

Comments
 (0)