RUL-005 — Threadpool executor for test parallelism, never xdist
Ruling
All test parallelism in this project comes from orchestrata_ultimate.core.threading.test_executor.run_tests_in_parallel (one pytest subprocess per module), driven via scripts/run_tests.py / run_tests_threadpool.py / run_tests_streaming.py — never pytest-xdist.
Evidence
- Same evidence base as RUL-001 (
no-xdist-orchestrata,project-banned-libraries) — this ruling is the positive prescription ("use the threadpool runner") where RUL-001 is the negative prohibition ("never xdist"); recorded separately because the plan's seed list distinguishes them.
Enforcement
- hook .claude/hooks/no-xdist.sh
- gate scripts/test-review.py T15
Verification
Same mechanism as RUL-001: the hook and T15 gate jointly make xdist unusable, which leaves the threadpool runner as the only sanctioned path — there is no separate "threadpool-required" check because the prohibition is what's mechanically gated, not the affirmative choice.