From dc86349c023a120394e030e7210b4280ab4db86f Mon Sep 17 00:00:00 2001 From: Mason Huang Date: Wed, 15 Apr 2026 22:06:41 +0800 Subject: [PATCH] fix(test): stop overriding host-aware vitest scheduling in prepare gates (#67213) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The hardcoded `OPENCLAW_VITEST_MAX_WORKERS=4` default in gates.sh short-circuits the host-aware scheduling introduced in c247e366. `resolveLocalVitestScheduling` sees the explicit override and returns maxWorkers=4, which falls below the >= 5 threshold required by `shouldUseLargeLocalFullSuiteProfile`, so every machine—regardless of resources—gets the DEFAULT profile (4 shard parallelism) instead of the LARGE profile (10 shard parallelism). Drop the hardcoded default so `test-projects.mjs` can detect actual host resources and pick the appropriate profile automatically. When the user explicitly sets OPENCLAW_VITEST_MAX_WORKERS, forward it as before. --- scripts/pr-lib/gates.sh | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/scripts/pr-lib/gates.sh b/scripts/pr-lib/gates.sh index 7988418b7d4..5b85ac984dd 100644 --- a/scripts/pr-lib/gates.sh +++ b/scripts/pr-lib/gates.sh @@ -103,11 +103,16 @@ prepare_gates() { echo "Docs-only change detected with high confidence; skipping pnpm test." else gates_mode="full" - echo "Running pnpm test with OPENCLAW_VITEST_MAX_WORKERS=${OPENCLAW_VITEST_MAX_WORKERS:-4}." - run_quiet_logged \ - "pnpm test" \ - ".local/gates-test.log" \ - env OPENCLAW_VITEST_MAX_WORKERS="${OPENCLAW_VITEST_MAX_WORKERS:-4}" pnpm test + if [ -n "${OPENCLAW_VITEST_MAX_WORKERS:-}" ]; then + echo "Running pnpm test with OPENCLAW_VITEST_MAX_WORKERS=$OPENCLAW_VITEST_MAX_WORKERS." + run_quiet_logged \ + "pnpm test" \ + ".local/gates-test.log" \ + env OPENCLAW_VITEST_MAX_WORKERS="$OPENCLAW_VITEST_MAX_WORKERS" pnpm test + else + echo "Running pnpm test with host-aware scheduling defaults." + run_quiet_logged "pnpm test" ".local/gates-test.log" pnpm test + fi previous_full_gates_head="$current_head" fi fi