Skip to content

Registry-powered onboarding: full-page picker, spec-carried auth, preset dismantle #5418

Registry-powered onboarding: full-page picker, spec-carried auth, preset dismantle

Registry-powered onboarding: full-page picker, spec-carried auth, preset dismantle #5418

Triggered via pull request August 29, 2026 10:13
Status Failure
Total duration 4m 9s
Artifacts 8

ci.yml

on: pull_request
Changed paths
7s
Changed paths
Matrix: e2e
Cloud evaluated closure
50s
Cloud evaluated closure
Desktop smoke build
48s
Desktop smoke build
Self-host Docker image
1m 7s
Self-host Docker image
Fit to window
Zoom out
Zoom in

Annotations

21 errors and 76 warnings
E2E (selfhost 3of10)
Process completed with exit code 1.
[selfhost] selfhost/mcp-auth-required-add.test.ts > Auth methods · a non-spec-compliant 401 still gets the auth editor (no dead-end): e2e/selfhost/mcp-auth-required-add.test.ts#L64
TimeoutError: locator.waitFor: Timeout 30000ms exceeded. Call log: - waiting for getByText('Method 1 · Detected') to be visible ❯ selfhost/mcp-auth-required-add.test.ts:64:57 ❯ step src/surfaces/browser.ts:276:21 ❯ selfhost/mcp-auth-required-add.test.ts:63:11 ❯ src/surfaces/browser.ts:288:13
[selfhost] scenarios/mcp-catalog-sync-ui.test.ts > MCP catalog · the Tools tab follows a server-side rename after a list_changed notification: e2e/scenarios/mcp-catalog-sync-ui.test.ts#L43
TimeoutError: locator.waitFor: Timeout 30000ms exceeded. Call log: - waiting for getByText('Method 1 · Detected') to be visible ❯ scenarios/mcp-catalog-sync-ui.test.ts:43:55 ❯ step src/surfaces/browser.ts:276:15 ❯ scenarios/mcp-catalog-sync-ui.test.ts:38:9 ❯ src/surfaces/browser.ts:288:13
E2E (cloud 9of16)
Process completed with exit code 1.
[cloud] scenarios/google-disabled-api.test.ts > Google · a disabled upstream API reads as API disabled with the enable link, not Expired: e2e/scenarios/google-disabled-api.test.ts#L129
TimeoutError: locator.click: Timeout 30000ms exceeded. Call log: - waiting for getByRole('button', { name: /Connect/ }).first() ❯ scenarios/google-disabled-api.test.ts:129:10 ❯ step src/surfaces/browser.ts:276:15 ❯ scenarios/google-disabled-api.test.ts:124:5 ❯ src/surfaces/browser.ts:288:13
E2E (cloud 10of16)
Process completed with exit code 1.
[cloud] cloud/frontend-error-reporting.test.ts > Frontend errors · a failed API request is reported with a real message: e2e/cloud/frontend-error-reporting.test.ts#L76
TimeoutError: locator.waitFor: Timeout 30000ms exceeded. Call log: - waiting for getByRole('button', { name: 'Connect' }).first() to be visible ❯ cloud/frontend-error-reporting.test.ts:76:69 ❯ step src/surfaces/browser.ts:276:15 ❯ cloud/frontend-error-reporting.test.ts:74:7 ❯ src/surfaces/browser.ts:288:13
E2E (cloud 16of16)
Process completed with exit code 1.
[cloud] cloud/connection-modal-oauth-abandon.test.ts > Connections · closing the add-connection modal after abandoning OAuth lets you try again (not stuck on Connecting): e2e/cloud/connection-modal-oauth-abandon.test.ts#L110
AssertionError: the auto-selected app makes Connect with OAuth actionable: expected true to be false // Object.is equality - Expected + Received - false + true ❯ cloud/connection-modal-oauth-abandon.test.ts:110:13 ❯ step src/surfaces/browser.ts:276:15 ❯ cloud/connection-modal-oauth-abandon.test.ts:101:9 ❯ src/surfaces/browser.ts:288:13
E2E (selfhost 10of10)
Process completed with exit code 1.
[selfhost] scenarios/auth-methods-ui.test.ts > Auth methods · the add flow declares an API key alongside the detected method: e2e/scenarios/auth-methods-ui.test.ts#L49
TimeoutError: locator.waitFor: Timeout 30000ms exceeded. Call log: - waiting for getByText('Method 1 · Detected') to be visible ❯ scenarios/auth-methods-ui.test.ts:49:55 ❯ step src/surfaces/browser.ts:276:21 ❯ scenarios/auth-methods-ui.test.ts:48:9 ❯ src/surfaces/browser.ts:288:13
E2E (selfhost 9of10)
Process completed with exit code 1.
[selfhost] scenarios/google-disabled-api.test.ts > Google · a disabled upstream API reads as API disabled with the enable link, not Expired: e2e/scenarios/google-disabled-api.test.ts#L129
TimeoutError: locator.click: Timeout 30000ms exceeded. Call log: - waiting for getByRole('button', { name: /Connect/ }).first() ❯ scenarios/google-disabled-api.test.ts:129:10 ❯ step src/surfaces/browser.ts:276:15 ❯ scenarios/google-disabled-api.test.ts:124:5 ❯ src/surfaces/browser.ts:288:13
E2E (selfhost 6of10)
Process completed with exit code 1.
[selfhost] selfhost/posthog-mcp-oauth.test.ts > MCP OAuth · dynamic registration opens the discovered authorization server: e2e/selfhost/posthog-mcp-oauth.test.ts#L54
TimeoutError: locator.waitFor: Timeout 30000ms exceeded. Call log: - waiting for getByText('Method 1 · Detected') to be visible ❯ selfhost/posthog-mcp-oauth.test.ts:54:57 ❯ step src/surfaces/browser.ts:276:15 ❯ selfhost/posthog-mcp-oauth.test.ts:49:11 ❯ src/surfaces/browser.ts:288:13
[selfhost] selfhost/detected-auth-immutable-ui.test.ts > Detected auth · OpenAPI spec-detected methods are immutable in the add flow: e2e/selfhost/detected-auth-immutable-ui.test.ts#L153
TimeoutError: locator.waitFor: Timeout 30000ms exceeded. Call log: - waiting for getByText('Method 2') to be visible ❯ selfhost/detected-auth-immutable-ui.test.ts:153:44 ❯ step src/surfaces/browser.ts:276:15 ❯ selfhost/detected-auth-immutable-ui.test.ts:146:9 ❯ src/surfaces/browser.ts:288:13
[selfhost] selfhost/detected-auth-immutable-ui.test.ts > Detected auth · an MCP probe's OAuth method is immutable in the add flow: e2e/selfhost/detected-auth-immutable-ui.test.ts#L42
TimeoutError: locator.waitFor: Timeout 30000ms exceeded. Call log: - waiting for getByText('Method 1 · Detected') to be visible ❯ selfhost/detected-auth-immutable-ui.test.ts:42:55 ❯ step src/surfaces/browser.ts:276:15 ❯ selfhost/detected-auth-immutable-ui.test.ts:39:9 ❯ src/surfaces/browser.ts:288:13
[selfhost] selfhost/auth-methods-ui.test.ts > Auth methods · a detected-OAuth server gets an API key declared alongside: e2e/selfhost/auth-methods-ui.test.ts#L172
TimeoutError: locator.waitFor: Timeout 30000ms exceeded. Call log: - waiting for getByText('Method 1 · Detected') to be visible ❯ selfhost/auth-methods-ui.test.ts:172:55 ❯ step src/surfaces/browser.ts:276:21 ❯ selfhost/auth-methods-ui.test.ts:171:9 ❯ src/surfaces/browser.ts:288:13
E2E (cloud 15of16)
Process completed with exit code 1.
[cloud] scenarios/mcp-catalog-sync-ui.test.ts > MCP catalog · the Tools tab follows a server-side rename after a list_changed notification: e2e/scenarios/mcp-catalog-sync-ui.test.ts#L43
TimeoutError: locator.waitFor: Timeout 30000ms exceeded. Call log: - waiting for getByText('Method 1 · Detected') to be visible ❯ scenarios/mcp-catalog-sync-ui.test.ts:43:55 ❯ step src/surfaces/browser.ts:276:15 ❯ scenarios/mcp-catalog-sync-ui.test.ts:38:9 ❯ src/surfaces/browser.ts:288:13
[cloud] scenarios/auth-methods-ui.test.ts > Auth methods · the add flow declares an API key alongside the detected method: e2e/scenarios/auth-methods-ui.test.ts#L49
TimeoutError: locator.waitFor: Timeout 30000ms exceeded. Call log: - waiting for getByText('Method 1 · Detected') to be visible ❯ scenarios/auth-methods-ui.test.ts:49:55 ❯ step src/surfaces/browser.ts:276:21 ❯ scenarios/auth-methods-ui.test.ts:48:9 ❯ src/surfaces/browser.ts:288:13
Changed paths
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4, dorny/paths-filter@v3. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Lint
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Format
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (local 2of2)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Typecheck
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Typecheck
The `catch` callback in `Effect.try` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Typecheck
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Typecheck
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Typecheck
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Typecheck
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Typecheck
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Typecheck
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Typecheck
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Typecheck
The `catch` callback in `Effect.try` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Typecheck
The `catch` callback in `Effect.try` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
E2E (local 1of2)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (selfhost 2of10)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Desktop smoke build
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Desktop smoke build
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Cloud evaluated closure
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Cloud evaluated closure
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Cloud evaluated closure
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Cloud evaluated closure
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Cloud evaluated closure
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Cloud evaluated closure
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Cloud evaluated closure
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Cloud evaluated closure
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Cloud evaluated closure
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Cloud evaluated closure
The `catch` callback in `Effect.tryPromise` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
Cloud evaluated closure
The `catch` callback in `Effect.try` returns `unknown`, so the Effect error type stays untyped. A specific typed error preserves error-channel information, for example by narrowing the value or wrapping it in `Data.TaggedError`. effect(unknownInEffectCatch)
E2E (cloud 4of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (selfhost 5of10)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (selfhost 8of10)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Self-host Docker image
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Test
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 3of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (selfhost 1of10)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (selfhost 4of10)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (selfhost 7of10)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 6of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 2of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 8of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 11of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 7of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 5of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 13of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 14of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (selfhost 3of10)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 9of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 12of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 10of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 1of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 16of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (selfhost 10of10)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (selfhost 9of10)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (selfhost 6of10)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
E2E (cloud 15of16)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/

Artifacts

Produced during runtime
Name Size Digest
e2e-runs-cloud-10of16 Expired
8.24 MB
sha256:bd4412b5a1dd136c93c6774e38006b00e867a33ab0ce2032cf940cda14fa1be5
e2e-runs-cloud-15of16 Expired
14.6 MB
sha256:d2621a152d713d00ce53853b4b64a23d275479393875e4a34d538af6c26e1a8a
e2e-runs-cloud-16of16 Expired
25.5 MB
sha256:51e3056e1c2fc24109f33ca4fae959a3227e4add8b5620ef592d2fd9f5f03dc5
e2e-runs-cloud-9of16 Expired
17.8 MB
sha256:162cf25d507523c4ad6f6d18afd0f2d6579d4635882b91973cd82e0d08d6183c
e2e-runs-selfhost-10of10 Expired
19.8 MB
sha256:facfe6a6e8fb3a6a452516fb8571a2b36dcc050f47b1d69b053813b065739e69
e2e-runs-selfhost-3of10 Expired
12.7 MB
sha256:4363dd239cad7d87abacf43ea0784123746a0df75fad099f69b30df99f9a16b6
e2e-runs-selfhost-6of10 Expired
27 MB
sha256:27aece0e3c8d3bd0ccc31529454e1d9bd6767d3fde1a044699b2dc14f3dc1e28
e2e-runs-selfhost-9of10 Expired
8.25 MB
sha256:94a0791082c6697a1633f52777f1c67624762bf02e88077ed2e8734ad64d96c0