From 41b3be926a946913db82f657125bb3056c4a0a6e Mon Sep 17 00:00:00 2001 From: Jeppe B <2jepp9350@gmail.com> Date: Thu, 23 Jul 2026 02:59:40 +0200 Subject: [PATCH] test(release): allow full live asset inventory (#218) ## Summary - give the complete public asset inventory gate a five-minute test budget - keep the API and rendered guest-flow smoke tests on the existing default timeout ## Rationale The production manifest contains the full release inventory. Sequentially downloading and hashing it takes longer than the global 60-second Playwright timeout from GitHub-hosted runners, causing false failures even though release identity, API, and guest-flow checks pass. ## Verification - ESLint on the changed spec - Playwright live configuration test discovery --------- Co-authored-by: Jeppe Bundgaard --- tests/e2e/release/release.live-smoke.spec.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/e2e/release/release.live-smoke.spec.ts b/tests/e2e/release/release.live-smoke.spec.ts index dc88a90a..1d136179 100644 --- a/tests/e2e/release/release.live-smoke.spec.ts +++ b/tests/e2e/release/release.live-smoke.spec.ts @@ -16,6 +16,7 @@ type ReleaseManifest = { const baseURL = process.env.PLAYWRIGHT_BASE_URL || ""; const staticBaseURL = process.env.PLAYWRIGHT_RELEASE_STATIC_BASE_URL || process.env.RELEASE_BASE_URL || baseURL; const appBaseURL = process.env.PLAYWRIGHT_APP_BASE_URL || baseURL; +const releaseAssetTestTimeoutMs = 300_000; function liveUrl(assetPath: string, base = staticBaseURL) { const normalizedBase = base.endsWith("/") ? base : `${base}/`; @@ -94,6 +95,8 @@ async function expectApiPing(request: APIRequestContext, apiBaseUrl: string, pat } test("@public-live release manifest, shell, and static assets are available", async ({ request }) => { + test.setTimeout(releaseAssetTestTimeoutMs); + const manifest = await expectJson(request, "release-manifest.json"); const releaseEntry = await expectJson<{ entry?: string; css?: string[] }>(request, "release-entry.json");