Skip to content

fix: inconsistient behavior with pull and redeploy button via project table #1479

fix: inconsistient behavior with pull and redeploy button via project table

fix: inconsistient behavior with pull and redeploy button via project table #1479

Triggered via pull request March 5, 2026 23:52
Status Failure
Total duration 4m 51s
Artifacts 5

ci.yml

on: pull_request
Go Deadcode Analysis
59s
Go Deadcode Analysis
Svelte Type Check
1m 25s
Svelte Type Check
Matrix: e2e-tests
Matrix: go-linter
Matrix: go-tests
Fit to window
Zoom out
Zoom in

Annotations

20 errors, 3 warnings, and 3 notices
[chromium] › spec/volumes.spec.ts:96:3 › Volumes Page › Display Volume Filters: tests/spec/volumes.spec.ts#L67
3) [chromium] › spec/volumes.spec.ts:96:3 › Volumes Page › Display Volume Filters ──────────────── Error: locator.getAttribute: Test timeout of 30000ms exceeded. Call log: - waiting for getByTestId('facet-usage-trigger').first() 65 | if (await content.isVisible().catch(() => false)) return { trigger, content }; 66 | > 67 | if ((await trigger.getAttribute('data-state')) !== 'open') await trigger.click(); | ^ 68 | await content.waitFor({ state: 'visible' }); 69 | return { trigger, content }; 70 | } at ensureFacetOpen (/home/runner/work/arcane/arcane/tests/spec/volumes.spec.ts:67:22) at /home/runner/work/arcane/arcane/tests/spec/volumes.spec.ts:100:25
[chromium] › spec/volumes.spec.ts:96:3 › Volumes Page › Display Volume Filters: tests/spec/volumes.spec.ts#L0
3) [chromium] › spec/volumes.spec.ts:96:3 › Volumes Page › Display Volume Filters ──────────────── Test timeout of 30000ms exceeded.
[chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications: tests/spec/settings-notifications.spec.ts#L6
2) [chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications Error: locator.scrollIntoViewIfNeeded: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('tab', { name: 'Slack' }) 4 | const openProviderTab = async (page: Page, name: string) => { 5 | const tab = page.getByRole('tab', { name }); > 6 | await tab.scrollIntoViewIfNeeded(); | ^ 7 | await expect(tab).toBeVisible(); 8 | await tab.click(); 9 | }; at openProviderTab (/home/runner/work/arcane/arcane/tests/spec/settings-notifications.spec.ts:6:15) at /home/runner/work/arcane/arcane/tests/spec/settings-notifications.spec.ts:116:11
[chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications: tests/spec/settings-notifications.spec.ts#L0
2) [chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications Test timeout of 30000ms exceeded.
[chromium] › spec/environment-settings.spec.ts:119:3 › Environment Settings UI › should update and save general environment settings: tests/spec/environment-settings.spec.ts#L142
1) [chromium] › spec/environment-settings.spec.ts:119:3 › Environment Settings UI › should update and save general environment settings Error: expect(locator).toHaveValue(expected) failed Locator: locator('#projects-directory') Expected: "/app/data/projects-e2e" Received: "/app/data/projects" Timeout: 5000ms Call log: - Expect "toHaveValue" with timeout 5000ms - waiting for locator('#projects-directory') 9 × locator resolved to <input type="text" placeholder="" data-slot="input" autocomplete="off" id="projects-directory" class="bg-input/80 selection:bg-primary selection:text-primary-foreground ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-lg px-3 py-1 text-base backdrop-blur-sm transition-all outline-none disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm focus-visible:bg-input/90 focus-visible:border-ring focus-visible:ring-ring/50 focus-visibl…/> - unexpected value "/app/data/projects" 140 | await page.reload(); 141 | await page.getByRole("tab", { name: "General", exact: true }).click(); > 142 | await expect(page.locator("#projects-directory")).toHaveValue( | ^ 143 | updatedProjectsDirectory, 144 | ); 145 | } finally { at /home/runner/work/arcane/arcane/tests/spec/environment-settings.spec.ts:142:57
[chromium] › spec/volumes.spec.ts:151:3 › Volumes Page › Display correct volume usage badge: tests/spec/volumes.spec.ts#L39
3) [chromium] › spec/volumes.spec.ts:151:3 › Volumes Page › Display correct volume usage badge ─── Error: page.goto: Target page, context or browser has been closed 37 | 38 | async function removeVolumeViaUI(page: Page, volumeName: string) { > 39 | await page.goto('/volumes'); | ^ 40 | await page.waitForLoadState('networkidle'); 41 | 42 | const row = await findVolumeRow(page, volumeName, 4); at removeVolumeViaUI (/home/runner/work/arcane/arcane/tests/spec/volumes.spec.ts:39:14) at /home/runner/work/arcane/arcane/tests/spec/volumes.spec.ts:162:13
[chromium] › spec/volumes.spec.ts:151:3 › Volumes Page › Display correct volume usage badge: tests/spec/volumes.spec.ts#L0
3) [chromium] › spec/volumes.spec.ts:151:3 › Volumes Page › Display correct volume usage badge ─── Test timeout of 30000ms exceeded.
[chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications: tests/spec/settings-notifications.spec.ts#L6
2) [chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications Error: locator.scrollIntoViewIfNeeded: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('tab', { name: 'Slack' }) 4 | const openProviderTab = async (page: Page, name: string) => { 5 | const tab = page.getByRole('tab', { name }); > 6 | await tab.scrollIntoViewIfNeeded(); | ^ 7 | await expect(tab).toBeVisible(); 8 | await tab.click(); 9 | }; at openProviderTab (/home/runner/work/arcane/arcane/tests/spec/settings-notifications.spec.ts:6:15) at /home/runner/work/arcane/arcane/tests/spec/settings-notifications.spec.ts:116:11
[chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications: tests/spec/settings-notifications.spec.ts#L0
2) [chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications Test timeout of 30000ms exceeded.
[chromium] › spec/environment-settings.spec.ts:119:3 › Environment Settings UI › should update and save general environment settings: tests/spec/environment-settings.spec.ts#L142
1) [chromium] › spec/environment-settings.spec.ts:119:3 › Environment Settings UI › should update and save general environment settings Error: expect(locator).toHaveValue(expected) failed Locator: locator('#projects-directory') Expected: "/app/data/projects-e2e" Received: "/app/data/projects" Timeout: 5000ms Call log: - Expect "toHaveValue" with timeout 5000ms - waiting for locator('#projects-directory') 9 × locator resolved to <input type="text" placeholder="" data-slot="input" autocomplete="off" id="projects-directory" class="bg-input/80 selection:bg-primary selection:text-primary-foreground ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-lg px-3 py-1 text-base backdrop-blur-sm transition-all outline-none disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm focus-visible:bg-input/90 focus-visible:border-ring focus-visible:ring-ring/50 focus-visibl…/> - unexpected value "/app/data/projects" 140 | await page.reload(); 141 | await page.getByRole("tab", { name: "General", exact: true }).click(); > 142 | await expect(page.locator("#projects-directory")).toHaveValue( | ^ 143 | updatedProjectsDirectory, 144 | ); 145 | } finally { at /home/runner/work/arcane/arcane/tests/spec/environment-settings.spec.ts:142:57
[chromium] › spec/volumes.spec.ts:140:3 › Volumes Page › Create Volume: tests/spec/volumes.spec.ts#L0
4) [chromium] › spec/volumes.spec.ts:140:3 › Volumes Page › Create Volume ──────────────────────── Test timeout of 30000ms exceeded.
[chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications: tests/spec/settings-notifications.spec.ts#L6
3) [chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications Error: locator.scrollIntoViewIfNeeded: Test timeout of 30000ms exceeded. Call log: - waiting for getByRole('tab', { name: 'Slack' }) 4 | const openProviderTab = async (page: Page, name: string) => { 5 | const tab = page.getByRole('tab', { name }); > 6 | await tab.scrollIntoViewIfNeeded(); | ^ 7 | await expect(tab).toBeVisible(); 8 | await tab.click(); 9 | }; at openProviderTab (/home/runner/work/arcane/arcane/tests/spec/settings-notifications.spec.ts:6:15) at /home/runner/work/arcane/arcane/tests/spec/settings-notifications.spec.ts:116:11
[chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications: tests/spec/settings-notifications.spec.ts#L0
3) [chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications Test timeout of 30000ms exceeded.
[chromium] › spec/environment-settings.spec.ts:119:3 › Environment Settings UI › should update and save general environment settings: tests/spec/environment-settings.spec.ts#L142
2) [chromium] › spec/environment-settings.spec.ts:119:3 › Environment Settings UI › should update and save general environment settings Error: expect(locator).toHaveValue(expected) failed Locator: locator('#projects-directory') Expected: "/app/data/projects-e2e" Received: "/app/data/projects" Timeout: 5000ms Call log: - Expect "toHaveValue" with timeout 5000ms - waiting for locator('#projects-directory') 9 × locator resolved to <input type="text" placeholder="" data-slot="input" autocomplete="off" id="projects-directory" class="bg-input/80 selection:bg-primary selection:text-primary-foreground ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-lg px-3 py-1 text-base backdrop-blur-sm transition-all outline-none disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm focus-visible:bg-input/90 focus-visible:border-ring focus-visible:ring-ring/50 focus-visibl…/> - unexpected value "/app/data/projects" 140 | await page.reload(); 141 | await page.getByRole("tab", { name: "General", exact: true }).click(); > 142 | await expect(page.locator("#projects-directory")).toHaveValue( | ^ 143 | updatedProjectsDirectory, 144 | ); 145 | } finally { at /home/runner/work/arcane/arcane/tests/spec/environment-settings.spec.ts:142:57
[chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request: tests/spec/project.spec.ts#L68
1) [chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect.toBeVisible: Target page, context or browser has been closed 66 | exact: true, 67 | }); > 68 | await expect(destroyButton).toBeVisible(); | ^ 69 | await destroyButton.click(); 70 | 71 | const dialog = page.getByRole("dialog"); at destroyCurrentProjectViaUI (/home/runner/work/arcane/arcane/tests/spec/project.spec.ts:68:31) at /home/runner/work/arcane/arcane/tests/spec/project.spec.ts:512:15
[chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request: tests/spec/project.spec.ts#L0
1) [chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded.
[chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request: tests/spec/project.spec.ts#L68
1) [chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect.toBeVisible: Target page, context or browser has been closed 66 | exact: true, 67 | }); > 68 | await expect(destroyButton).toBeVisible(); | ^ 69 | await destroyButton.click(); 70 | 71 | const dialog = page.getByRole("dialog"); at destroyCurrentProjectViaUI (/home/runner/work/arcane/arcane/tests/spec/project.spec.ts:68:31) at /home/runner/work/arcane/arcane/tests/spec/project.spec.ts:512:15
[chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request: tests/spec/project.spec.ts#L0
1) [chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 30000ms exceeded.
[chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request: tests/spec/project.spec.ts#L68
1) [chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request Error: expect.toBeVisible: Target page, context or browser has been closed 66 | exact: true, 67 | }); > 68 | await expect(destroyButton).toBeVisible(); | ^ 69 | await destroyButton.click(); 70 | 71 | const dialog = page.getByRole("dialog"); at destroyCurrentProjectViaUI (/home/runner/work/arcane/arcane/tests/spec/project.spec.ts:68:31) at /home/runner/work/arcane/arcane/tests/spec/project.spec.ts:512:15
[chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request: tests/spec/project.spec.ts#L0
1) [chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request Test timeout of 30000ms exceeded.
Go Deadcode Analysis
NewStdWriter
Go Deadcode Analysis
stdWriter.Write
Go Deadcode Analysis
GetActiveTunnelTransport
🎭 Playwright Run Summary
3 flaky [chromium] › spec/environment-settings.spec.ts:119:3 › Environment Settings UI › should update and save general environment settings [chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications [chromium] › spec/volumes.spec.ts:96:3 › Volumes Page › Display Volume Filters ───────────────── 2 skipped 117 passed (2.6m)
🎭 Playwright Run Summary
3 flaky [chromium] › spec/environment-settings.spec.ts:119:3 › Environment Settings UI › should update and save general environment settings [chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications [chromium] › spec/volumes.spec.ts:151:3 › Volumes Page › Display correct volume usage badge ──── 2 skipped 117 passed (2.8m)
🎭 Playwright Run Summary
1 failed [chromium] › spec/project.spec.ts:453:3 › New Compose Project Page › should send selected deploy split-button options in the up request 3 flaky [chromium] › spec/environment-settings.spec.ts:119:3 › Environment Settings UI › should update and save general environment settings [chromium] › spec/settings-notifications.spec.ts:113:3 › Notification settings › should allow testing slack notifications [chromium] › spec/volumes.spec.ts:140:3 › Volumes Page › Create Volume ───────────────────────── 2 skipped 116 passed (3.7m)

Artifacts

Produced during runtime
Name Size Digest
backend-coverage
129 KB
sha256:04df326a68f41a6750476b8779b53165244c43e3e69a35e148dfc66ae430ab85
cli-coverage
31.6 KB
sha256:60521078958aba5a71b7b46eebddbcafc2ca25bbe38cf9e26996ddccaac6cd84
playwright-report-postgres Expired
13.1 MB
sha256:9f3856d172ecaa379a170683cf536bd63d72117fbb4a659e58cac0843e2a393c
playwright-report-proxy Expired
23.8 MB
sha256:674164176c69a8b0d66c81bf4c465c90be3fbb66f0afc9f17ab7fadde8b11f57
playwright-report-sqlite Expired
10.7 MB
sha256:826dc0330c7ac6e732d44bb385b5158a7f539385062817381eb2b57e56e92b9d