From 8fcd53fc322d692c76620c3874631b1a1f54bacf Mon Sep 17 00:00:00 2001
From: TO
Date: Thu, 8 Oct 2026 00:54:49 +0200
Subject: [PATCH] ci: allow the complete benchmark to finish on shared runners
---
README.md | 2 +-
src/app/benchmark/leave-planner-benchmark.spec.ts | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index fc0f933..aa2c2a2 100644
--- a/README.md
+++ b/README.md
@@ -247,7 +247,7 @@ GitLab CI runs independent validation, test, build, security, and image stages:
Pipelines switch to MR pipelines when a branch has an open MR, avoiding duplicate builds. Docker publication from MR pipelines is limited to detached pipelines within this project. Tag pipelines promote the already-built commit image instead of rebuilding it.
-The test job runs Vitest directly with at most two workers and coverage. It then runs the complete benchmark protocol separately, with one worker, a 2 GiB Node heap limit, and no coverage instrumentation, preserving its assertions and existing timeout. This avoids the benchmark's observed 90-second timeout under coverage while keeping it mandatory.
+The test job runs Vitest directly with at most two workers and coverage. It then runs the complete benchmark protocol separately, with one worker, a 2 GiB Node heap limit, and no coverage instrumentation. The benchmark uses a five-minute execution timeout to allow for shared-runner contention; all protocol assertions remain mandatory. Timing measurements are benchmark evidence, not CI performance thresholds.
### GitFlow and releases
diff --git a/src/app/benchmark/leave-planner-benchmark.spec.ts b/src/app/benchmark/leave-planner-benchmark.spec.ts
index 441d57c..7553a74 100644
--- a/src/app/benchmark/leave-planner-benchmark.spec.ts
+++ b/src/app/benchmark/leave-planner-benchmark.spec.ts
@@ -109,5 +109,5 @@ describe('leave planner benchmark protocol', () => {
} finally {
vi.stubGlobal('window', browserWindow);
}
- }, 90_000);
+ }, 300_000);
});