Skip to content

feat: Trailing block extension rewrite #7767

feat: Trailing block extension rewrite

feat: Trailing block extension rewrite #7767

Triggered via pull request May 11, 2026 16:36
Status Failure
Total duration 7m 23s
Artifacts 14

build.yml

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

Annotations

15 errors and 6 notices
Build
Process completed with exit code 1.
Playwright Tests - firefox (2/2)
Process completed with exit code 1.
[firefox] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor: tests/src/end-to-end/static/static.test.ts#L56
1) [firefox] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(Buffer).toMatchSnapshot(expected) Expected an image 1280px by 1671px, received 1280px by 1641px. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts-snapshots/static-rendering-equality-firefox-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-firefox-retry2/static-rendering-equality-1-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-firefox-retry2/static-rendering-equality-1-diff.png 54 | scale: "css", 55 | }), > 56 | ).toMatchSnapshot("static-rendering-equality.png", { | ^ 57 | // Allowance for variations in the image caption text. The placehold.co 58 | // URL renders differently (e.g., '×' vs 'x' character) between the live 59 | // editor and static screenshots. at /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts:56:7
[firefox] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor: tests/src/end-to-end/static/static.test.ts#L56
1) [firefox] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(Buffer).toMatchSnapshot(expected) Expected an image 1280px by 1671px, received 1280px by 1641px. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts-snapshots/static-rendering-equality-firefox-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-firefox-retry1/static-rendering-equality-1-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-firefox-retry1/static-rendering-equality-1-diff.png 54 | scale: "css", 55 | }), > 56 | ).toMatchSnapshot("static-rendering-equality.png", { | ^ 57 | // Allowance for variations in the image caption text. The placehold.co 58 | // URL renders differently (e.g., '×' vs 'x' character) between the live 59 | // editor and static screenshots. at /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts:56:7
[firefox] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor: tests/src/end-to-end/static/static.test.ts#L56
1) [firefox] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor Error: expect(Buffer).toMatchSnapshot(expected) Expected an image 1280px by 1671px, received 1280px by 1641px. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts-snapshots/static-rendering-equality-firefox-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-firefox/static-rendering-equality-1-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-firefox/static-rendering-equality-1-diff.png 54 | scale: "css", 55 | }), > 56 | ).toMatchSnapshot("static-rendering-equality.png", { | ^ 57 | // Allowance for variations in the image caption text. The placehold.co 58 | // URL renders differently (e.g., '×' vs 'x' character) between the live 59 | // editor and static screenshots. at /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts:56:7
Playwright Tests - chromium (2/2)
Process completed with exit code 1.
[chromium] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor: tests/src/end-to-end/static/static.test.ts#L56
1) [chromium] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(Buffer).toMatchSnapshot(expected) Expected an image 1280px by 1685px, received 1280px by 1655px. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts-snapshots/static-rendering-equality-chromium-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-chromium-retry2/static-rendering-equality-1-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-chromium-retry2/static-rendering-equality-1-diff.png 54 | scale: "css", 55 | }), > 56 | ).toMatchSnapshot("static-rendering-equality.png", { | ^ 57 | // Allowance for variations in the image caption text. The placehold.co 58 | // URL renders differently (e.g., '×' vs 'x' character) between the live 59 | // editor and static screenshots. at /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts:56:7
[chromium] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor: tests/src/end-to-end/static/static.test.ts#L56
1) [chromium] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(Buffer).toMatchSnapshot(expected) Expected an image 1280px by 1685px, received 1280px by 1655px. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts-snapshots/static-rendering-equality-chromium-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-chromium-retry1/static-rendering-equality-1-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-chromium-retry1/static-rendering-equality-1-diff.png 54 | scale: "css", 55 | }), > 56 | ).toMatchSnapshot("static-rendering-equality.png", { | ^ 57 | // Allowance for variations in the image caption text. The placehold.co 58 | // URL renders differently (e.g., '×' vs 'x' character) between the live 59 | // editor and static screenshots. at /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts:56:7
[chromium] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor: tests/src/end-to-end/static/static.test.ts#L56
1) [chromium] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor Error: expect(Buffer).toMatchSnapshot(expected) Expected an image 1280px by 1685px, received 1280px by 1655px. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts-snapshots/static-rendering-equality-chromium-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-chromium/static-rendering-equality-1-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-chromium/static-rendering-equality-1-diff.png 54 | scale: "css", 55 | }), > 56 | ).toMatchSnapshot("static-rendering-equality.png", { | ^ 57 | // Allowance for variations in the image caption text. The placehold.co 58 | // URL renders differently (e.g., '×' vs 'x' character) between the live 59 | // editor and static screenshots. at /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts:56:7
Playwright Tests - webkit (2/2)
Process completed with exit code 1.
[webkit] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor: tests/src/end-to-end/static/static.test.ts#L56
1) [webkit] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(Buffer).toMatchSnapshot(expected) Expected an image 1280px by 1661px, received 1280px by 1631px. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts-snapshots/static-rendering-equality-webkit-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-webkit-retry2/static-rendering-equality-1-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-webkit-retry2/static-rendering-equality-1-diff.png 54 | scale: "css", 55 | }), > 56 | ).toMatchSnapshot("static-rendering-equality.png", { | ^ 57 | // Allowance for variations in the image caption text. The placehold.co 58 | // URL renders differently (e.g., '×' vs 'x' character) between the live 59 | // editor and static screenshots. at /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts:56:7
[webkit] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor: tests/src/end-to-end/static/static.test.ts#L56
1) [webkit] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(Buffer).toMatchSnapshot(expected) Expected an image 1280px by 1661px, received 1280px by 1631px. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts-snapshots/static-rendering-equality-webkit-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-webkit-retry1/static-rendering-equality-1-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-webkit-retry1/static-rendering-equality-1-diff.png 54 | scale: "css", 55 | }), > 56 | ).toMatchSnapshot("static-rendering-equality.png", { | ^ 57 | // Allowance for variations in the image caption text. The placehold.co 58 | // URL renders differently (e.g., '×' vs 'x' character) between the live 59 | // editor and static screenshots. at /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts:56:7
[webkit] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor: tests/src/end-to-end/static/static.test.ts#L56
1) [webkit] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor Error: expect(Buffer).toMatchSnapshot(expected) Expected an image 1280px by 1661px, received 1280px by 1631px. Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts-snapshots/static-rendering-equality-webkit-linux.png Received: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-webkit/static-rendering-equality-1-actual.png Diff: /__w/BlockNote/BlockNote/tests/test-results/static-static-Check-static-17607-isually-matches-live-editor-webkit/static-rendering-equality-1-diff.png 54 | scale: "css", 55 | }), > 56 | ).toMatchSnapshot("static-rendering-equality.png", { | ^ 57 | // Allowance for variations in the image caption text. The placehold.co 58 | // URL renders differently (e.g., '×' vs 'x' character) between the live 59 | // editor and static screenshots. at /__w/BlockNote/BlockNote/tests/src/end-to-end/static/static.test.ts:56:7
[webkit] › src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:306:7 › Check Keyboard Handlers' Behaviour › Check Delete before shallower block: tests/src/utils/editor.ts#L47
1) [webkit] › src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:306:7 › Check Keyboard Handlers' Behaviour › Check Delete before shallower block Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(string).toMatchSnapshot(expected) @@ -41,19 +41,41 @@ "textAlignment": "left" }, "content": [ { "type": "text", - "text": "ParagraphParagraph" + "text": "Paragrah" } ] } ] } ] } ] + }, + { + "type": "blockContainer", + "attrs": { + "id": "2" + }, + "content": [ + { + "type": "paragraph", + "attrs": { + "backgroundColor": "default", + "textColor": "default", + "textAlignment": "left" + }, + "content": [ + { + "type": "text", + "text": "Paragraph" + } + ] + } + ] } ] } ] } Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts-snapshots/deleteShallowerBlock-json-webkit-linux.json Received: /__w/BlockNote/BlockNote/tests/test-results/keyboardhandlers-keyboardh-9a661-lete-before-shallower-block-webkit-retry1/deleteShallowerBlock-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:319:5
[webkit] › src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:306:7 › Check Keyboard Handlers' Behaviour › Check Delete before shallower block: tests/src/utils/editor.ts#L47
1) [webkit] › src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:306:7 › Check Keyboard Handlers' Behaviour › Check Delete before shallower block Error: expect(string).toMatchSnapshot(expected) @@ -41,19 +41,41 @@ "textAlignment": "left" }, "content": [ { "type": "text", - "text": "ParagraphParagraph" + "text": "Paragraph" } ] } ] } ] } ] + }, + { + "type": "blockContainer", + "attrs": { + "id": "2" + }, + "content": [ + { + "type": "paragraph", + "attrs": { + "backgroundColor": "default", + "textColor": "default", + "textAlignment": "left" + }, + "content": [ + { + "type": "text", + "text": "Paragraph" + } + ] + } + ] } ] } ] } Expected: /__w/BlockNote/BlockNote/tests/src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts-snapshots/deleteShallowerBlock-json-webkit-linux.json Received: /__w/BlockNote/BlockNote/tests/test-results/keyboardhandlers-keyboardh-9a661-lete-before-shallower-block-webkit/deleteShallowerBlock-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:319:5
🎭 Playwright Run Summary
1 failed [firefox] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor 1 skipped 41 passed (55.1s)
🎭 Playwright Run Summary
1 failed [chromium] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor 42 passed (41.4s)
🎭 Playwright Run Summary
1 failed [webkit] › src/end-to-end/static/static.test.ts:16:7 › Check static rendering › Check static rendering visually matches live editor 42 passed (1.2m)
🎭 Playwright Run Summary
2 skipped 92 passed (1.3m)
🎭 Playwright Run Summary
16 skipped 78 passed (1.5m)
🎭 Playwright Run Summary
1 flaky [webkit] › src/end-to-end/keyboardhandlers/keyboardhandlers.test.ts:306:7 › Check Keyboard Handlers' Behaviour › Check Delete before shallower block 12 skipped 81 passed (3.0m)

Artifacts

Produced during runtime
Name Size Digest
blob-report-chromium-1
127 KB
sha256:8df599db65244b7a43fab801e55041a90a930bba3e583f27e74c1391b052e7cd
blob-report-chromium-2
1.06 MB
sha256:f1a14ca5ea1a0ba5c9b7ec6633558325d7cbe1cd53dfdb8bad8b1d3ac9d38e42
blob-report-firefox-1
113 KB
sha256:a5edd3cb3e6e097cce2d10794368308377155594fb89a1b672a339891344c443
blob-report-firefox-2
1.85 MB
sha256:f22b7862d9ac4940eadfa1a2a2c4ffd5d1ef1f6ba120c7e6853ebd28594109be
blob-report-webkit-1
3.9 MB
sha256:3a4dcb1ec72c14f50d014018c3487d18431e45d6aebcc22b0bc3ba86cc1e2800
blob-report-webkit-2
1.93 MB
sha256:e42436ac5d6a547ab861517f5b1b1342d4bd672a20d76b97b3a2ea687bd0ae49
playwright-build
21.2 MB
sha256:f542b3cda0894c95901768577f99398bb5535f064f1666a92aa9995edb8b3965
playwright-report-chromium-1
260 KB
sha256:75b9aefc1deb0f2fb179ca8af11531d9dfd0ebb944f2d6cd082ba79bfe4f9567
playwright-report-chromium-2
1.22 MB
sha256:df393671ad29be71b93b5e6e4fe256a6d36a37c8d441d7c7587ab2102398e49b
playwright-report-firefox-1
250 KB
sha256:eea500b472b067a3282736b1971a311d07c8d87fc70520fce161cab780cf9687
playwright-report-firefox-2
1.89 MB
sha256:cf08eb1ec8c7c0a1eeada38ed353ce3cf5ffb8b9acadf01467a31f4142cda2d4
playwright-report-merged
7.69 MB
sha256:90b702f35331a9cfe3a432865de2dc4202374ef2a8f292bc8bbe0492b45adb1d
playwright-report-webkit-1
4.37 MB
sha256:04368b90f32e381fbfdfd8b4cd1bf4f04f5038d8cfead3d5a85e28d0797633e5
playwright-report-webkit-2
1.9 MB
sha256:c54eb5f53778198dc99aa0d283b044f0397854e2ed71c3263a03c4846a3f4c52