docs(coverage): record why two-core Tier A runs stay serial (#1741)

* docs(coverage): record why two-core Tier A runs stay serial

Answers two review notes on the concurrent Tier A runner with measurements
instead of code changes:

- Two cores stay serial. Two in flight would give each project one Jest
  worker, which runs Jest in-band; on a 2-core / 7 GB container ui-playback
  and web ran out of their 2 GiB default heap. With a 4 GiB heap it passed
  about 15% faster on a warm cache for 1.2 GiB more peak memory. CI runs on
  4 cores. A test pins that the defaults never drop to one worker.
- Per-project output buffering is bounded in practice: a big project with
  every test failing printed 1.8 MB while its Jest process peaked at 850 MB.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* docs(coverage): say two-core runs keep two workers per project

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: 4gray <fourgray@proton.me>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
authored and GitHub committed 2026-09-29 20:38:06 +02:00
1 parent 28b022ff48
commit 963a431bb7
4 files changed
+24 -2

No files matched your search

@@ -83,6 +83,14 @@ test('derives concurrency and workers from the core count unless overridden', ()
assert.equal(resolveWorkersPerProject({ requested: 1, concurrency: 3, cpuCount: 16 }), 1);
});
test('defaults never leave a project one in-band Jest worker on a multi-core machine', () => {
for (let cpuCount = 2; cpuCount <= 64; cpuCount += 1) {
const concurrency = resolveConcurrency({ requested: undefined, cpuCount });
const workers = resolveWorkersPerProject({ requested: undefined, concurrency, cpuCount });
assert.ok(workers >= 2, `${cpuCount} cores: ${concurrency} in flight × ${workers} worker`);
}
});
function task(name, { delay = 0, status = 0, log }) {
return {
name,