Give the zip-bomb rejection test headroom against loaded runners
All checks were successful
CD / Build and push images (push) Successful in 2m55s
CD / Deploy to Test (push) Successful in 9s
CD / Smoke tests against Test (push) Successful in 1m14s
CI / Lint, typecheck, test (push) Successful in 4m32s
CI / Build container images (push) Has been skipped
CD / Promote to Int (push) Successful in 11s
CI / Auth e2e pack (push) Successful in 6m27s
CI / Import/export fidelity gate (push) Successful in 50s
Release / Build release images and notes (push) Successful in 1m9s
Release / Release-candidate operations QA (push) Successful in 42s
Prod deploy / Deploy the released images to Prod (push) Successful in 17s

Compressing and inflating the 257-MiB zero buffer is CPU-bound and
exceeded vitest's 5 s default on a busy CI runner (5.4 s — the M15 push
ran CI and CD concurrently). Flaky tests are defects (ADR 0014): the
test gets an explicit 30 s timeout.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Fb2VzvcoBPHkjh8bZ6PzQn
This commit is contained in:
Claude Fable 5 2026-07-15 13:45:47 +02:00
parent 78a913c47b
commit 1b9dd7d475

View File

@ -150,11 +150,13 @@ describe('PluginPackageService.parse — each invalid class', () => {
);
});
// Compressing/inflating 257 MiB is CPU-bound and blew vitest's 5 s default
// on a busy CI runner (flaky = defect, ADR 0014) — give it real headroom.
it('rejects a package that inflates beyond the unpacked limit', () => {
const huge = new Uint8Array(257 * 1024 * 1024); // zeros compress tiny, inflate large
expectReject(
zip({ 'manifest.json': enc(JSON.stringify(codeManifest)), 'plugin.js': huge }),
'plugin_too_large',
);
});
}, 30_000);
});