The serial loop summed 3 557 s on SAFETY-125's run and passed the runner's 60-minute cap. The loop moves to .gitea/ci/run-tests.sh: xargs -P 6, longest files first, then test_loop.py and test_freeze.py (TEST-30 / CI-06) alone on an idle machine. Same PASS/FAIL lines, CI: echo, tail -40, :ro mount, PYTHONDONTWRITEBYTECODE=1, GOODWE_REQUIRE_HWSIM=1 and NO test_*.py FOUND guard; one output file per test file; any failing or unreported file fails the job. timeout-minutes 70 -> 40, comment corrected. No test file changed. Co-Authored-By: Claude <noreply@anthropic.com>