Skip to content

fix(core): optimize plugin traversals for large documents BLO-1111 #7129

fix(core): optimize plugin traversals for large documents BLO-1111

fix(core): optimize plugin traversals for large documents BLO-1111 #7129

Triggered via pull request March 30, 2026 06:47
Status Failure
Total duration 10m 57s
Artifacts 14

build.yml

on: pull_request
Matrix: playwright
Merge Playwright Reports
35s
Merge Playwright Reports
Fit to window
Zoom out
Zoom in

Annotations

5 errors, 9 warnings, and 6 notices
Build
Process completed with exit code 1.
[chromium] › src/end-to-end/customblocks/customblocks.test.ts:10:7 › Check custom block functionality › Should be able to interactively update vanilla custom blocks: tests/src/end-to-end/customblocks/customblocks.test.ts#L19
2) [chromium] › src/end-to-end/customblocks/customblocks.test.ts:10:7 › Check custom block functionality › Should be able to interactively update vanilla custom blocks Error: expect(Buffer).toMatchSnapshot(expected) 8041 pixels (ratio 0.01 of all image pixels) are different. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/customblocks/customblocks.test.ts-snapshots/vanilla-interactivity-chromium-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/customblocks-customblocks--8679c-pdate-vanilla-custom-blocks-chromium/vanilla-interactivity-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/customblocks-customblocks--8679c-pdate-vanilla-custom-blocks-chromium/vanilla-interactivity-diff.png 17 | 18 | await compareDocToSnapshot(page, "vanillaInteractivity"); > 19 | expect(await page.screenshot()).toMatchSnapshot( | ^ 20 | "vanilla-interactivity.png", 21 | ); 22 | }); at /__w/BlockNote/BlockNote/tests/src/end-to-end/customblocks/customblocks.test.ts:19:37
[chromium] › src/end-to-end/ariakit/ariakit.test.ts:28:7 › Check Ariakit UI › Check link toolbar: tests/src/end-to-end/ariakit/ariakit.test.ts#L41
1) [chromium] › src/end-to-end/ariakit/ariakit.test.ts:28:7 › Check Ariakit UI › Check link toolbar Error: expect(Buffer).toMatchSnapshot(expected) 294 pixels (ratio 0.01 of all image pixels) are different. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/ariakit/ariakit.test.ts-snapshots/ariakit-link-toolbar-chromium-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/ariakit-ariakit-Check-Ariakit-UI-Check-link-toolbar-chromium/ariakit-link-toolbar-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/ariakit-ariakit-Check-Ariakit-UI-Check-link-toolbar-chromium/ariakit-link-toolbar-diff.png 39 | 40 | await page.waitForTimeout(500); > 41 | expect(await page.screenshot()).toMatchSnapshot("ariakit-link-toolbar.png"); | ^ 42 | }); 43 | test("Check slash menu", async ({ page }) => { 44 | await focusOnEditor(page); at /__w/BlockNote/BlockNote/tests/src/end-to-end/ariakit/ariakit.test.ts:41:37
[webkit] › src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:195:7 › Check Keyboard Handlers' Behaviour › Check Delete before inline content block: tests/src/utils/editor.ts#L47
2) [webkit] › src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:195:7 › Check Keyboard Handlers' Behaviour › Check Delete before inline content block Error: expect(string).toMatchSnapshot(expected) @@ -18,28 +18,50 @@ "textAlignment": "left" }, "content": [ { "type": "text", - "text": "ParagraphParagraph" + "text": "Paragraph" } ] } ] }, { "type": "blockContainer", "attrs": { - "id": "2" + "id": "1" }, "content": [ { "type": "paragraph", "attrs": { "backgroundColor": "default", "textColor": "default", "textAlignment": "left" + }, + "content": [ + { + "type": "text", + "text": "Paragraph" + } + ] + } + ] + }, + { + "type": "blockContainer", + "attrs": { + "id": "3" + }, + "content": [ + { + "type": "paragraph", + "attrs": { + "backgroundColor": "default", + "textColor": "default", + "textAlignment": "left" } } ] } ] Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts-snapshots/deleteInlineContent-json-webkit-linux.json Received: /__w/BlockNote/BlockNote/tests/test-results/keyboardhandlers-keyboardh-7f47c-before-inline-content-block-webkit/deleteInlineContent-json-actual.json at ../utils/editor.ts:47 45 | // Remove id from docs 46 | const doc = JSON.stringify(await getDoc(page), null, 2); > 47 | expect(doc).toMatchSnapshot(`${name}.json`); | ^ 48 | } 49 | at compareDocToSnapshot (/__w/BlockNote/BlockNote/tests/src/utils/editor.ts:47:15) at /__w/BlockNote/BlockNote/tests/src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:204:5
[webkit] › src/end-to-end/colors/colors.test.ts:42:7 › Check Background & Text Color Functionality › Should be able to apply a background color mark: tests/src/end-to-end/colors/colors.test.ts#L62
1) [webkit] › src/end-to-end/colors/colors.test.ts:42:7 › Check Background & Text Color Functionality › Should be able to apply a background color mark Error: expect(Buffer).toMatchSnapshot(expected) 12000 pixels (ratio 0.01 of all image pixels) are different. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/colors/colors.test.ts-snapshots/backgroundColorMark-webkit-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/colors-colors-Check-Backgr-56edd-ply-a-background-color-mark-webkit/backgroundColorMark-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/colors-colors-Check-Backgr-56edd-ply-a-background-color-mark-webkit/backgroundColorMark-diff.png 60 | await page.waitForTimeout(500); 61 | > 62 | expect(await page.screenshot()).toMatchSnapshot("backgroundColorMark.png"); | ^ 63 | }); 64 | test("Should be able to set block text color", async ({ page }) => { 65 | await focusOnEditor(page); at /__w/BlockNote/BlockNote/tests/src/end-to-end/colors/colors.test.ts:62:37
Build
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, pnpm/action-setup@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Playwright Build
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4, pnpm/action-setup@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Playwright Tests - chromium (2/2)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@v4, pnpm/action-setup@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Playwright Tests - firefox (2/2)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@v4, pnpm/action-setup@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Playwright Tests - webkit (2/2)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@v4, pnpm/action-setup@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Playwright Tests - chromium (1/2)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@v4, pnpm/action-setup@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Playwright Tests - firefox (1/2)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@v4, pnpm/action-setup@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Playwright Tests - webkit (1/2)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@v4, pnpm/action-setup@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Merge Playwright Reports
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@v4, pnpm/action-setup@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
🎭 Playwright Run Summary
40 passed (35.5s)
🎭 Playwright Run Summary
40 passed (47.1s)
🎭 Playwright Run Summary
40 passed (1.0m)
🎭 Playwright Run Summary
2 flaky [chromium] › src/end-to-end/ariakit/ariakit.test.ts:28:7 › Check Ariakit UI › Check link toolbar [chromium] › src/end-to-end/customblocks/customblocks.test.ts:10:7 › Check custom block functionality › Should be able to interactively update vanilla custom blocks 2 skipped 80 passed (1.2m)
🎭 Playwright Run Summary
12 skipped 72 passed (1.4m)
🎭 Playwright Run Summary
2 flaky [webkit] › src/end-to-end/colors/colors.test.ts:42:7 › Check Background & Text Color Functionality › Should be able to apply a background color mark [webkit] › src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:195:7 › Check Keyboard Handlers' Behaviour › Check Delete before inline content block 10 skipped 72 passed (2.8m)

Artifacts

Produced during runtime
Name Size Digest
blob-report-chromium-1 Expired
469 KB
sha256:63e2370c2615b1349bb87b59bace79a3e1513c0038c491ae6b84fd24cc02549a
blob-report-chromium-2 Expired
48.7 KB
sha256:a31b97cffd2bcea29145672a1f1d4d6508defc8a6b9a1b28e0d318035afdc7c0
blob-report-firefox-1 Expired
103 KB
sha256:1303638a48e57163e9fec69f3f31e27e908506db9263802bd262dd053c43f9ac
blob-report-firefox-2 Expired
49.7 KB
sha256:54542f96f6ea266bf6baef09de8e3e9a0cdea5c5a99b54c00a029dbfaca54879
blob-report-webkit-1 Expired
5.32 MB
sha256:58854489967091d6276d6dd48e9bc9edc0cab523b34b0971f8854c7013ee8b51
blob-report-webkit-2 Expired
49.6 KB
sha256:0135a638e143c087bcfa96f1db289c618c1fa3d5effd1451db3f2d7a952eb86c
playwright-build Expired
26.2 MB
sha256:8111c7561a84d52ef597bb46cd4c3a73cd382cf49e75fbac52f636b798ec5962
playwright-report-chromium-1 Expired
981 KB
sha256:219019233a2544e34cda0288ce0dfa671458236f3ac8252341f283e0bf57c9e8
playwright-report-chromium-2 Expired
207 KB
sha256:d69e8dc690a7b2cf44c5c322add2639cc47f69796dae0fd279b7458bfecd74b8
playwright-report-firefox-1 Expired
240 KB
sha256:a9fd49ead2281ae139d017564d014dc32471f23bc33e7722f8bd69471ae04ee7
playwright-report-firefox-2 Expired
207 KB
sha256:8a0283cae9a2caf886f72b962d21924f3e242e4a2b4aadd04686f73b0759f12d
playwright-report-merged Expired
6.18 MB
sha256:be1ad18d08ac9c13b03c2481ea7747e650b5ef84b0da8bb7d68555ae733a4db7
playwright-report-webkit-1 Expired
5.78 MB
sha256:7128ac2cf16262529b30432c3fd766a6c65578aab53ac28b45bd4341d8ac7eeb
playwright-report-webkit-2 Expired
208 KB
sha256:20175b95a0a3e3b40d2774b0c92c8eb9dd8cf4907365edf19886aec428d22e7a