Skip to content

chore: update dependency @playwright/test to ^1.59.1 #888

chore: update dependency @playwright/test to ^1.59.1

chore: update dependency @playwright/test to ^1.59.1 #888

Triggered via pull request April 8, 2026 00:31
Status Failure
Total duration 2m 57s
Artifacts 1

ci.yml

on: pull_request
Checks (typechecking, linting, formatting)
22s
Checks (typechecking, linting, formatting)
E2E Tests (Playwright)
2m 51s
E2E Tests (Playwright)
Fit to window
Zoom out
Zoom in

Annotations

10 errors and 1 notice
[webkit] › e2e-tests/persistence.test.ts:104:1 › should fall back to localStorage when a v2 hash is malformed: e2e-tests/persistence.test.ts#L116
5) [webkit] › e2e-tests/persistence.test.ts:104:1 › should fall back to localStorage when a v2 hash is malformed Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toBe(expected) // Object.is equality - Expected - 1 + Received + 34 - console.log('localStorage fallback'); + /** + * Type or paste some JavaScript here to learn more about + * the static analysis that ESLint can do for you. + * + * The three tabs are: + * + * - AST - The Abstract Syntax Tree of the code, which can + * be useful to understand the structure of the code. You + * can view this structure as JSON or in a tree format. + * - Scope - The scope structure of the code, which can be + * useful to understand how variables are defined and + * where they are used. + * - Code Path - The code path structure of the code, which + * can be useful to understand how the code is executed.console.log('localStorage fallback'); * + * You can change the way that the JavaScript code is interpreted + * by clicking "JavaScript" in the header and selecting different + * options. + */ + + import js from "@eslint/js"; + import { defineConfig } from "eslint/config"; + + function getConfig() { + return { + rules: { + "prefer-const": "warn" + } + }; + } + + export default defineConfig([ + js.configs.recommended, + getConfig() + ]); Call Log: - Timeout 5000ms exceeded while waiting on the predicate 114 | await replaceEditorValue(page, fallbackCode); 115 | > 116 | await expect | ^ 117 | .poll(() => getPersistedJavaScriptCode(page)) 118 | .toBe(fallbackCode); 119 | at /home/runner/work/code-explorer/code-explorer/e2e-tests/persistence.test.ts:116:2
[webkit] › e2e-tests/persistence.test.ts:104:1 › should fall back to localStorage when a v2 hash is malformed: e2e-tests/persistence.test.ts#L116
5) [webkit] › e2e-tests/persistence.test.ts:104:1 › should fall back to localStorage when a v2 hash is malformed Error: expect(received).toBe(expected) // Object.is equality - Expected - 1 + Received + 34 - console.log('localStorage fallback'); + /** + * Type or paste some JavaScript here to learn more about + * the static analysis that ESLint can do for you. + * + * The three tabs are: + * + * - AST - The Abstract Syntax Tree of the code, which can + * be useful to understand the structure of the code. You + * can view this structure as JSON or in a tree format. + * - Scope - The scope structure of the code, which can be + * useful to understand how variables are defined and + * where they are used. + * - Code Path - The code path structure of the code, which + * can be useful to understand how the code is executed.console.log('localStorage fallback'); * + * You can change the way that the JavaScript code is interpreted + * by clicking "JavaScript" in the header and selecting different + * options. + */ + + import js from "@eslint/js"; + import { defineConfig } from "eslint/config"; + + function getConfig() { + return { + rules: { + "prefer-const": "warn" + } + }; + } + + export default defineConfig([ + js.configs.recommended, + getConfig() + ]); Call Log: - Timeout 5000ms exceeded while waiting on the predicate 114 | await replaceEditorValue(page, fallbackCode); 115 | > 116 | await expect | ^ 117 | .poll(() => getPersistedJavaScriptCode(page)) 118 | .toBe(fallbackCode); 119 | at /home/runner/work/code-explorer/code-explorer/e2e-tests/persistence.test.ts:116:2
[webkit] › e2e-tests/persistence.test.ts:73:1 › should still load state from legacy hash links: e2e-tests/persistence.test.ts#L83
4) [webkit] › e2e-tests/persistence.test.ts:73:1 › should still load state from legacy hash links Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toBe(expected) // Object.is equality - Expected - 1 + Received + 34 - console.log('legacy hash'); + /** + * Type or paste some JavaScript here to learn more about + * the static analysis that ESLint can do for you. + * + * The three tabs are: + * + * - AST - The Abstract Syntax Tree of the code, which can + * be useful to understand the structure of the code. You + * can view this structure as JSON or in a tree format. + * - Scope - The scope structure of the code, which can be + * useful to understand how variables are defined and + * where they are used. + * - Code Path - The code path structure of the code, which + * can be useful to understand how the code is executed.console.log('legacy hash'); * + * You can change the way that the JavaScript code is interpreted + * by clicking "JavaScript" in the header and selecting different + * options. + */ + + import js from "@eslint/js"; + import { defineConfig } from "eslint/config"; + + function getConfig() { + return { + rules: { + "prefer-const": "warn" + } + }; + } + + export default defineConfig([ + js.configs.recommended, + getConfig() + ]); Call Log: - Timeout 5000ms exceeded while waiting on the predicate 81 | await replaceEditorValue(page, legacyCode); 82 | > 83 | await expect.poll(() => getPersistedJavaScriptCode(page)).toBe(legacyCode); | ^ 84 | 85 | const persistedValue = await getPersistedExplorerState(page); 86 | at /home/runner/work/code-explorer/code-explorer/e2e-tests/persistence.test.ts:83:2
[webkit] › e2e-tests/persistence.test.ts:73:1 › should still load state from legacy hash links: e2e-tests/persistence.test.ts#L83
4) [webkit] › e2e-tests/persistence.test.ts:73:1 › should still load state from legacy hash links Error: expect(received).toBe(expected) // Object.is equality - Expected - 1 + Received + 34 - console.log('legacy hash'); + /** + * Type or paste some JavaScript here to learn more about + * the static analysis that ESLint can do for you. + * + * The three tabs are: + * + * - AST - The Abstract Syntax Tree of the code, which can + * be useful to understand the structure of the code. You + * can view this structure as JSON or in a tree format. + * - Scope - The scope structure of the code, which can be + * useful to understand how variables are defined and + * where they are used. + * - Code Path - The code path structure of the code, which + * can be useful to understand how the code is executed.console.log('legacy hash'); * + * You can change the way that the JavaScript code is interpreted + * by clicking "JavaScript" in the header and selecting different + * options. + */ + + import js from "@eslint/js"; + import { defineConfig } from "eslint/config"; + + function getConfig() { + return { + rules: { + "prefer-const": "warn" + } + }; + } + + export default defineConfig([ + js.configs.recommended, + getConfig() + ]); Call Log: - Timeout 5000ms exceeded while waiting on the predicate 81 | await replaceEditorValue(page, legacyCode); 82 | > 83 | await expect.poll(() => getPersistedJavaScriptCode(page)).toBe(legacyCode); | ^ 84 | 85 | const persistedValue = await getPersistedExplorerState(page); 86 | at /home/runner/work/code-explorer/code-explorer/e2e-tests/persistence.test.ts:83:2
[webkit] › e2e-tests/persistence.test.ts:50:1 › should persist unicode code safely in the URL hash: e2e-tests/persistence.test.ts#L60
3) [webkit] › e2e-tests/persistence.test.ts:50:1 › should persist unicode code safely in the URL hash Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toBe(expected) // Object.is equality - Expected - 1 + Received + 34 - const π = "😀"; + /** + * Type or paste some JavaScript here to learn more about + * the static analysis that ESLint can do for you. + * + * The three tabs are: + * + * - AST - The Abstract Syntax Tree of the code, which can + * be useful to understand the structure of the code. You + * can view this structure as JSON or in a tree format. + * - Scope - The scope structure of the code, which can be + * useful to understand how variables are defined and + * where they are used. + * - Code Path - The code path structure of the code, which + * can be useful to understand how the code is executed.const π = "😀"; * + * You can change the way that the JavaScript code is interpreted + * by clicking "JavaScript" in the header and selecting different + * options. + */ + + import js from "@eslint/js"; + import { defineConfig } from "eslint/config"; + + function getConfig() { + return { + rules: { + "prefer-const": "warn" + } + }; + } + + export default defineConfig([ + js.configs.recommended, + getConfig() + ]); Call Log: - Timeout 5000ms exceeded while waiting on the predicate 58 | await replaceEditorValue(page, unicodeCode); 59 | > 60 | await expect.poll(() => getPersistedJavaScriptCode(page)).toBe(unicodeCode); | ^ 61 | await expect.poll(() => getStoredHashValue(page)).toContain("v2."); 62 | 63 | const persistedHash = await page.evaluate(() => window.location.hash); at /home/runner/work/code-explorer/code-explorer/e2e-tests/persistence.test.ts:60:2
[webkit] › e2e-tests/persistence.test.ts:50:1 › should persist unicode code safely in the URL hash: e2e-tests/persistence.test.ts#L60
3) [webkit] › e2e-tests/persistence.test.ts:50:1 › should persist unicode code safely in the URL hash Error: expect(received).toBe(expected) // Object.is equality - Expected - 1 + Received + 34 - const π = "😀"; + /** + * Type or paste some JavaScript here to learn more about + * the static analysis that ESLint can do for you. + * + * The three tabs are: + * + * - AST - The Abstract Syntax Tree of the code, which can + * be useful to understand the structure of the code. You + * can view this structure as JSON or in a tree format. + * - Scope - The scope structure of the code, which can be + * useful to understand how variables are defined and + * where they are used. + * - Code Path - The code path structure of the code, which + * can be useful to understand how the code is executed.const π = "😀"; * + * You can change the way that the JavaScript code is interpreted + * by clicking "JavaScript" in the header and selecting different + * options. + */ + + import js from "@eslint/js"; + import { defineConfig } from "eslint/config"; + + function getConfig() { + return { + rules: { + "prefer-const": "warn" + } + }; + } + + export default defineConfig([ + js.configs.recommended, + getConfig() + ]); Call Log: - Timeout 5000ms exceeded while waiting on the predicate 58 | await replaceEditorValue(page, unicodeCode); 59 | > 60 | await expect.poll(() => getPersistedJavaScriptCode(page)).toBe(unicodeCode); | ^ 61 | await expect.poll(() => getStoredHashValue(page)).toContain("v2."); 62 | 63 | const persistedHash = await page.evaluate(() => window.location.hash); at /home/runner/work/code-explorer/code-explorer/e2e-tests/persistence.test.ts:60:2
[webkit] › e2e-tests/code-editing-and-ast-interaction.test.ts:71:1 › should keep ESQuery highlights aligned while typing before a matching literal: e2e-tests/code-editing-and-ast-interaction.test.ts#L91
2) [webkit] › e2e-tests/code-editing-and-ast-interaction.test.ts:71:1 › should keep ESQuery highlights aligned while typing before a matching literal Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(locator).toHaveText(expected) failed Locator: locator('.bg-editorHighlightedRangeColor') Expected: "42" Error: strict mode violation: locator('.bg-editorHighlightedRangeColor') resolved to 4 elements: 1) <span class="bg-editorHighlightedRangeColor">…</span> aka locator('span').filter({ hasText: '"@eslint/js"' }).first() 2) <span class="bg-editorHighlightedRangeColor">…</span> aka locator('span').filter({ hasText: '"eslint/config"' }).first() 3) <span class="bg-editorHighlightedRangeColor">…</span> aka locator('span').filter({ hasText: '"prefer-const"' }).first() 4) <span class="bg-editorHighlightedRangeColor">…</span> aka locator('span').filter({ hasText: '"warn"' }).first() Call log: - Expect "toHaveText" with timeout 5000ms - waiting for locator('.bg-editorHighlightedRangeColor') 89 | .fill("Literal"); 90 | > 91 | await expect(highlight).toHaveText("42"); | ^ 92 | 93 | await codeEditor.click(); 94 | await codeEditor.press("Home"); at /home/runner/work/code-explorer/code-explorer/e2e-tests/code-editing-and-ast-interaction.test.ts:91:26
[webkit] › e2e-tests/code-editing-and-ast-interaction.test.ts:71:1 › should keep ESQuery highlights aligned while typing before a matching literal: e2e-tests/code-editing-and-ast-interaction.test.ts#L91
2) [webkit] › e2e-tests/code-editing-and-ast-interaction.test.ts:71:1 › should keep ESQuery highlights aligned while typing before a matching literal Error: expect(locator).toHaveText(expected) failed Locator: locator('.bg-editorHighlightedRangeColor') Expected: "42" Error: strict mode violation: locator('.bg-editorHighlightedRangeColor') resolved to 4 elements: 1) <span class="bg-editorHighlightedRangeColor">…</span> aka locator('span').filter({ hasText: '"@eslint/js"' }).first() 2) <span class="bg-editorHighlightedRangeColor">…</span> aka locator('span').filter({ hasText: '"eslint/config"' }).first() 3) <span class="bg-editorHighlightedRangeColor">…</span> aka locator('span').filter({ hasText: '"prefer-const"' }).first() 4) <span class="bg-editorHighlightedRangeColor">…</span> aka locator('span').filter({ hasText: '"warn"' }).first() Call log: - Expect "toHaveText" with timeout 5000ms - waiting for locator('.bg-editorHighlightedRangeColor') 89 | .fill("Literal"); 90 | > 91 | await expect(highlight).toHaveText("42"); | ^ 92 | 93 | await codeEditor.click(); 94 | await codeEditor.press("Home"); at /home/runner/work/code-explorer/code-explorer/e2e-tests/code-editing-and-ast-interaction.test.ts:91:26
[webkit] › e2e-tests/code-editing-and-ast-interaction.test.ts:24:1 › should change code: e2e-tests/code-editing-and-ast-interaction.test.ts#L53
1) [webkit] › e2e-tests/code-editing-and-ast-interaction.test.ts:24:1 › should change code, then highlight code and AST nodes matching ESQuery selector Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(locator).toBeVisible() failed Locator: getByRole('listitem').filter({ hasText: 'end' }).filter({ hasText: '29' }) Expected: visible Timeout: 5000ms Error: element(s) not found Call log: - Expect "toBeVisible" with timeout 5000ms - waiting for getByRole('listitem').filter({ hasText: 'end' }).filter({ hasText: '29' }) 51 | .filter({ hasText: "end" }) 52 | .filter({ hasText: "29" }), > 53 | ).toBeVisible(); | ^ 54 | 55 | // expand AST nodes for ExpressionStatement and CallExpression 56 | await page at /home/runner/work/code-explorer/code-explorer/e2e-tests/code-editing-and-ast-interaction.test.ts:53:4
[webkit] › e2e-tests/code-editing-and-ast-interaction.test.ts:24:1 › should change code: e2e-tests/code-editing-and-ast-interaction.test.ts#L53
1) [webkit] › e2e-tests/code-editing-and-ast-interaction.test.ts:24:1 › should change code, then highlight code and AST nodes matching ESQuery selector Error: expect(locator).toBeVisible() failed Locator: getByRole('listitem').filter({ hasText: 'end' }).filter({ hasText: '29' }) Expected: visible Timeout: 5000ms Error: element(s) not found Call log: - Expect "toBeVisible" with timeout 5000ms - waiting for getByRole('listitem').filter({ hasText: 'end' }).filter({ hasText: '29' }) 51 | .filter({ hasText: "end" }) 52 | .filter({ hasText: "29" }), > 53 | ).toBeVisible(); | ^ 54 | 55 | // expand AST nodes for ExpressionStatement and CallExpression 56 | await page at /home/runner/work/code-explorer/code-explorer/e2e-tests/code-editing-and-ast-interaction.test.ts:53:4
🎭 Playwright Run Summary
5 failed [webkit] › e2e-tests/code-editing-and-ast-interaction.test.ts:24:1 › should change code, then highlight code and AST nodes matching ESQuery selector [webkit] › e2e-tests/code-editing-and-ast-interaction.test.ts:71:1 › should keep ESQuery highlights aligned while typing before a matching literal [webkit] › e2e-tests/persistence.test.ts:50:1 › should persist unicode code safely in the URL hash [webkit] › e2e-tests/persistence.test.ts:73:1 › should still load state from legacy hash links ─ [webkit] › e2e-tests/persistence.test.ts:104:1 › should fall back to localStorage when a v2 hash is malformed 19 passed (1.5m)

Artifacts

Produced during runtime
Name Size Digest
playwright-report
50.6 MB
sha256:943712ab5e2833c6bc37ee004fa37818d0bd85ed2a163ee9aadd612cf7b9e05a