Skip to content

fix(core): fix unnesting blocks with siblings (BLO-1017) (#2601) #7270

fix(core): fix unnesting blocks with siblings (BLO-1017) (#2601)

fix(core): fix unnesting blocks with siblings (BLO-1017) (#2601) #7270

Triggered via push April 8, 2026 08:18
Status Success
Total duration 12m 39s
Artifacts 15

build.yml

on: push
Matrix: playwright
Merge Playwright Reports
43s
Merge Playwright Reports
Fit to window
Zoom out
Zoom in

Annotations

6 errors, 9 warnings, and 7 notices
[webkit] › src/end-to-end/theming/theming.test.ts:38:7 › Check Dark Theme is Automatically Applied › Should show dark link toolbar: tests/src/end-to-end/theming/theming.test.ts#L52
2) [webkit] › src/end-to-end/theming/theming.test.ts:38:7 › Check Dark Theme is Automatically Applied › Should show dark link toolbar Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(Buffer).toMatchSnapshot(expected) 765 pixels (ratio 0.01 of all image pixels) are different. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/theming/theming.test.ts-snapshots/dark-link-toolbar-webkit-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/theming-theming-Check-Dark-398f6-ould-show-dark-link-toolbar-webkit-retry1/dark-link-toolbar-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/theming-theming-Check-Dark-398f6-ould-show-dark-link-toolbar-webkit-retry1/dark-link-toolbar-diff.png 50 | 51 | await page.waitForTimeout(500); > 52 | expect(await page.screenshot()).toMatchSnapshot("dark-link-toolbar.png"); | ^ 53 | }); 54 | test("Should show dark slash menu", async ({ page }) => { 55 | await focusOnEditor(page); at /__w/BlockNote/BlockNote/tests/src/end-to-end/theming/theming.test.ts:52:37
[webkit] › src/end-to-end/theming/theming.test.ts:38:7 › Check Dark Theme is Automatically Applied › Should show dark link toolbar: tests/src/end-to-end/theming/theming.test.ts#L52
2) [webkit] › src/end-to-end/theming/theming.test.ts:38:7 › Check Dark Theme is Automatically Applied › Should show dark link toolbar Error: expect(Buffer).toMatchSnapshot(expected) 765 pixels (ratio 0.01 of all image pixels) are different. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/theming/theming.test.ts-snapshots/dark-link-toolbar-webkit-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/theming-theming-Check-Dark-398f6-ould-show-dark-link-toolbar-webkit/dark-link-toolbar-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/theming-theming-Check-Dark-398f6-ould-show-dark-link-toolbar-webkit/dark-link-toolbar-diff.png 50 | 51 | await page.waitForTimeout(500); > 52 | expect(await page.screenshot()).toMatchSnapshot("dark-link-toolbar.png"); | ^ 53 | }); 54 | test("Should show dark slash menu", async ({ page }) => { 55 | await focusOnEditor(page); at /__w/BlockNote/BlockNote/tests/src/end-to-end/theming/theming.test.ts:52:37
[webkit] › src/end-to-end/shadcn/shadcn.test.ts:28:7 › Check ShadCN UI › Check link toolbar: tests/src/end-to-end/shadcn/shadcn.test.ts#L41
1) [webkit] › src/end-to-end/shadcn/shadcn.test.ts:28:7 › Check ShadCN UI › Check link toolbar ─── Error: expect(Buffer).toMatchSnapshot(expected) 830 pixels (ratio 0.01 of all image pixels) are different. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/shadcn/shadcn.test.ts-snapshots/shadcn-link-toolbar-webkit-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/shadcn-shadcn-Check-ShadCN-UI-Check-link-toolbar-webkit/shadcn-link-toolbar-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/shadcn-shadcn-Check-ShadCN-UI-Check-link-toolbar-webkit/shadcn-link-toolbar-diff.png 39 | 40 | await page.waitForTimeout(700); > 41 | expect(await page.screenshot()).toMatchSnapshot("shadcn-link-toolbar.png"); | ^ 42 | }); 43 | test("Check slash menu", async ({ page }) => { 44 | await focusOnEditor(page); at /__w/BlockNote/BlockNote/tests/src/end-to-end/shadcn/shadcn.test.ts:41:37
[chromium] › src/end-to-end/customblocks/customblocks.test.ts:24:7 › Check custom block functionality › Should be able to interactively update React custom blocks: tests/src/end-to-end/customblocks/customblocks.test.ts#L33
1) [chromium] › src/end-to-end/customblocks/customblocks.test.ts:24:7 › Check custom block functionality › Should be able to interactively update React custom blocks Error: expect(Buffer).toMatchSnapshot(expected) 9468 pixels (ratio 0.02 of all image pixels) are different. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/customblocks/customblocks.test.ts-snapshots/react-interactivity-chromium-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/customblocks-customblocks--ee421--update-React-custom-blocks-chromium/react-interactivity-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/customblocks-customblocks--ee421--update-React-custom-blocks-chromium/react-interactivity-diff.png 31 | 32 | await compareDocToSnapshot(page, "reactInteractivity"); > 33 | expect(await page.screenshot()).toMatchSnapshot("react-interactivity.png"); | ^ 34 | }); 35 | }); 36 | at /__w/BlockNote/BlockNote/tests/src/end-to-end/customblocks/customblocks.test.ts:33:37
[webkit] › src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:59:7 › Check Keyboard Handlers' Behaviour › Check Enter preserves nested blocks: tests/src/utils/editor.ts#L47
2) [webkit] › src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:59:7 › Check Keyboard Handlers' Behaviour › Check Enter preserves nested blocks Error: expect(string).toMatchSnapshot(expected) @@ -16,37 +16,33 @@ "backgroundColor": "default", "textColor": "default", "textAlignment": "left", "level": 1, "isToggleable": false - }, - "content": [ - { - "type": "text", - "text": "H" - } - ] + } } ] }, { "type": "blockContainer", "attrs": { "id": "4" }, "content": [ { - "type": "paragraph", + "type": "heading", "attrs": { "backgroundColor": "default", "textColor": "default", - "textAlignment": "left" + "textAlignment": "left", + "level": 1, + "isToggleable": false }, "content": [ { "type": "text", - "text": "eading" + "text": "Heading" } ] }, { "type": "blockGroup", Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts-snapshots/enterPreservesNestedBlocks-json-webkit-linux.json Received: /__w/BlockNote/BlockNote/tests/test-results/keyboardhandlers-keyboardh-351fd-ter-preserves-nested-blocks-webkit/enterPreservesNestedBlocks-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:75:5
[webkit] › 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) [webkit] › src/end-to-end/ariakit/ariakit.test.ts:28:7 › Check Ariakit UI › Check link toolbar Error: expect(Buffer).toMatchSnapshot(expected) 1006 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-webkit-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/ariakit-ariakit-Check-Ariakit-UI-Check-link-toolbar-webkit/ariakit-link-toolbar-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/ariakit-ariakit-Check-Ariakit-UI-Check-link-toolbar-webkit/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
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 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 - 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 - 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 - 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/
Build
{ "workflowData": { "owner": "TypeCellOS", "repo": "BlockNote", "sha": "5d980c4d3e7fb025651a94239fd3e5186051416a", "ref": "main" }, "key": "wuG52yuTVr", "runId": 24125331285, "webhookDebug": { "action": "requested", "head_branch": "main", "head_repository_full_name": "TypeCellOS/BlockNote", "full_name": "TypeCellOS/BlockNote", "isPullRequest": false, "prNumber": null, "prNumberType": "object", "isNewPullRequest": false, "isOldPullRequest": false, "prKey": "TypeCellOS/BlockNote:main", "oldPrDataHash": "m72SGUJfNr", "lookupKey": "m72SGUJfNr", "data": { "owner": "TypeCellOS", "repo": "BlockNote", "sha": "5d980c4d3e7fb025651a94239fd3e5186051416a", "ref": "main" } } }
🎭 Playwright Run Summary
40 passed (44.3s)
🎭 Playwright Run Summary
40 passed (36.1s)
🎭 Playwright Run Summary
2 flaky [webkit] › src/end-to-end/shadcn/shadcn.test.ts:28:7 › Check ShadCN UI › Check link toolbar ──── [webkit] › src/end-to-end/theming/theming.test.ts:38:7 › Check Dark Theme is Automatically Applied › Should show dark link toolbar 38 passed (1.1m)
🎭 Playwright Run Summary
1 flaky [chromium] › src/end-to-end/customblocks/customblocks.test.ts:24:7 › Check custom block functionality › Should be able to interactively update React custom blocks 2 skipped 81 passed (1.1m)
🎭 Playwright Run Summary
12 skipped 72 passed (1.5m)
🎭 Playwright Run Summary
2 flaky [webkit] › src/end-to-end/ariakit/ariakit.test.ts:28:7 › Check Ariakit UI › Check link toolbar ─ [webkit] › src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:59:7 › Check Keyboard Handlers' Behaviour › Check Enter preserves nested blocks 10 skipped 72 passed (2.1m)

Artifacts

Produced during runtime
Name Size Digest
blob-report-chromium-1 Expired
275 KB
sha256:eeac717c705593f21774dd54dafa1f6c95932781f9c0f41e9ca311af101fcf21
blob-report-chromium-2 Expired
48.6 KB
sha256:18a79cbb70378ecf7d5c833b4bcc3331d6f61dec17c4ea2cf4626f5990b43a7c
blob-report-firefox-1 Expired
103 KB
sha256:ff295f12e5ff481b737565152f69a7a6cab6645346252e74608edd6cb58d4fd3
blob-report-firefox-2 Expired
49.5 KB
sha256:481552983ca54da5b8445fc706d4957252cf2e87e4e30d146138b9688519b097
blob-report-webkit-1 Expired
5.51 MB
sha256:3cf2f72b2f389137500cccf9389c9b85a5779a08487cc0e78e0ef5e3f551c5c0
blob-report-webkit-2 Expired
509 KB
sha256:7854d6f1628e038dcf0242759219fd44ae4189d61620e8c67272fab1bb7232ca
playwright-build Expired
26.5 MB
sha256:49afb22c379dd68664b688cd3af9e0d479b4a8f956237975c31ff3ec395101df
playwright-report-chromium-1 Expired
792 KB
sha256:45729c899f5b616d84d9b819bf42019ef95fa3be9739081b590763bdc5dfe5d1
playwright-report-chromium-2 Expired
207 KB
sha256:f11561d7501cfde91a4af61e731394f8f43ce062f14db12e8231e3e7743db26f
playwright-report-firefox-1 Expired
240 KB
sha256:c93a2bb7e647c09f13bb86a76d1bad63dcd4229ecc2eff30cc8eb96e0b5cf17f
playwright-report-firefox-2 Expired
207 KB
sha256:0de0f73dd50f4eb32d7757a3cbf15764029397ff75d22d239cb85b60f71b621e
playwright-report-merged Expired
6.66 MB
sha256:1fae75c07484d6cfbfd426a096c5c22ff2846eca83455f58c4c2c5a30aed3bf9
playwright-report-webkit-1 Expired
6.01 MB
sha256:5a3533e5e44103822e717fb189ad495776e24342978a548fb445d68f0103b853
playwright-report-webkit-2 Expired
1.01 MB
sha256:479e144839e21f5e068d632bc3ca845e450ea29c2901f747d8885c558ce6e9c4
relative-ci-artifacts-editor
47.4 KB
sha256:4acc298d6d891db404dbe0466256eee534fa8c2578b20e844e27084aa44631a4