Skip to content

perf: remove intermediate activities after stream ends #3291

perf: remove intermediate activities after stream ends

perf: remove intermediate activities after stream ends #3291

Triggered via pull request April 3, 2026 17:43
Status Failure
Total duration 14m 44s
Artifacts 3

pull-request-validation.yml

on: pull_request
Build samples
32s
Build samples
Print commit stats
58s
Print commit stats
Matrix: Verify build-browser
Matrix: html-test
Static code analysis
3m 54s
Static code analysis
Type definitions test
2m 2s
Type definitions test
Merge test snapshots
4s
Merge test snapshots
Merge test results
35s
Merge test results
Fit to window
Zoom out
Zoom in

Annotations

35 errors and 38 warnings
deleting an activity › given an initial state › when 3 activities are upserted › then should have 3 activities: packages/core/src/reducers/activities/sort/deleteActivityByLocalId.livestream.spec.ts#L103
expect(received).toHaveLength(expected) Expected length: 3 Received length: 1 Received array: [{"channelData": {"streamId": "a-00001", "streamType": "final", "webchat:internal:local-id": "_:a-00003", "webchat:internal:position": 1000, "webchat:send-status": undefined}, "from": {"id": "bot", "role": "bot"}, "id": "a-00003", "text": "A quick brown fox jumped over the lazy dogs.", "timestamp": "1970-01-01T00:00:03.000Z", "type": "message"}] at Object.toHaveLength [as fn] (core/src/reducers/activities/sort/deleteActivityByLocalId.livestream.spec.ts:103:38) at Object.<anonymous> (../node_modules/@testduet/given-when-then/src/givenWhenThen.ts:304:13)
delete livestream activities in part grouping › given an initial state › when 4 activities are upserted › when the last livestream activity is delete › when all livestream activities are delete › when all activities are delete › then should have no activities: packages/core/src/reducers/activities/sort/property/LocalId.ts#L21
ValiError: Invalid type: Expected Object but received undefined at parse (../node_modules/valibot/dist/index.cjs:6749:28) at getLocalIdFromActivity (core/src/reducers/activities/sort/property/LocalId.ts:21:15) at core/src/reducers/activities/sort/deleteActivityByLocalId.howToWithLivestream.spec.ts:143:60 at Object.<anonymous> (../node_modules/@testduet/given-when-then/src/givenWhenThen.ts:288:25)
delete livestream activities in part grouping › given an initial state › when 4 activities are upserted › when the last livestream activity is delete › when all livestream activities are delete › and `howToGroupingMap` should match: packages/core/src/reducers/activities/sort/property/LocalId.ts#L21
ValiError: Invalid type: Expected Object but received undefined at parse (../node_modules/valibot/dist/index.cjs:6749:28) at getLocalIdFromActivity (core/src/reducers/activities/sort/property/LocalId.ts:21:15) at core/src/reducers/activities/sort/deleteActivityByLocalId.howToWithLivestream.spec.ts:143:60 at Object.<anonymous> (../node_modules/@testduet/given-when-then/src/givenWhenThen.ts:288:25)
delete livestream activities in part grouping › given an initial state › when 4 activities are upserted › when the last livestream activity is delete › when all livestream activities are delete › then should have 1 activity: packages/core/src/reducers/activities/sort/property/LocalId.ts#L21
ValiError: Invalid type: Expected Object but received undefined at parse (../node_modules/valibot/dist/index.cjs:6749:28) at getLocalIdFromActivity (core/src/reducers/activities/sort/property/LocalId.ts:21:15) at core/src/reducers/activities/sort/deleteActivityByLocalId.howToWithLivestream.spec.ts:143:60 at Object.<anonymous> (../node_modules/@testduet/given-when-then/src/givenWhenThen.ts:288:25)
delete livestream activities in part grouping › given an initial state › when 4 activities are upserted › when the last livestream activity is delete › and `howToGroupingMap` should match: packages/core/src/reducers/activities/sort/property/LocalId.ts#L21
ValiError: Invalid type: Expected Object but received undefined at parse (../node_modules/valibot/dist/index.cjs:6749:28) at getLocalIdFromActivity (core/src/reducers/activities/sort/property/LocalId.ts:21:15) at core/src/reducers/activities/sort/deleteActivityByLocalId.howToWithLivestream.spec.ts:143:60 at Object.<anonymous> (../node_modules/@testduet/given-when-then/src/givenWhenThen.ts:288:25)
delete livestream activities in part grouping › given an initial state › when 4 activities are upserted › when the last livestream activity is delete › and `livestreamSessionMap` should match: packages/core/src/reducers/activities/sort/property/LocalId.ts#L21
ValiError: Invalid type: Expected Object but received undefined at parse (../node_modules/valibot/dist/index.cjs:6749:28) at getLocalIdFromActivity (core/src/reducers/activities/sort/property/LocalId.ts:21:15) at core/src/reducers/activities/sort/deleteActivityByLocalId.howToWithLivestream.spec.ts:143:60 at Object.<anonymous> (../node_modules/@testduet/given-when-then/src/givenWhenThen.ts:288:25)
delete livestream activities in part grouping › given an initial state › when 4 activities are upserted › when the last livestream activity is delete › then should have 3 activities: packages/core/src/reducers/activities/sort/property/LocalId.ts#L21
ValiError: Invalid type: Expected Object but received undefined at parse (../node_modules/valibot/dist/index.cjs:6749:28) at getLocalIdFromActivity (core/src/reducers/activities/sort/property/LocalId.ts:21:15) at core/src/reducers/activities/sort/deleteActivityByLocalId.howToWithLivestream.spec.ts:143:60 at Object.<anonymous> (../node_modules/@testduet/given-when-then/src/givenWhenThen.ts:288:25)
delete livestream activities in part grouping › given an initial state › when 4 activities are upserted › then should have 4 activities: packages/core/src/reducers/activities/sort/deleteActivityByLocalId.howToWithLivestream.spec.ts#L139
expect(received).toHaveLength(expected) Expected length: 4 Received length: 2 Received array: [{"channelData": {"streamId": "a-00001", "streamType": "final", "webchat:internal:local-id": "_:a-00003", "webchat:internal:position": 1000, "webchat:send-status": undefined}, "entities": [{"@context": "https://schema.org", "@id": "", "@type": "Message", "isPartOf": [{"@id": "_:how-to:00001", "@type": "HowTo"}], "position": 1, "type": "https://schema.org/Message"}], "from": {"id": "bot", "role": "bot"}, "id": "a-00003", "text": "A quick brown fox jumped over the lazy dogs.", "timestamp": "1970-01-01T00:00:03.000Z", "type": "message"}, {"channelData": {"webchat:internal:local-id": "_:a-00004", "webchat:internal:position": 2000, "webchat:send-status": undefined}, "entities": [{"@context": "https://schema.org", "@id": "", "@type": "Message", "isPartOf": [{"@id": "_:how-to:00001", "@type": "HowTo"}], "position": 2, "type": "https://schema.org/Message"}], "from": {"id": "bot", "role": "bot"}, "id": "a-00004", "text": "Hello, World!", "timestamp": "1970-01-01T00:00:04.000Z", "type": "message"}] at Object.toHaveLength [as fn] (core/src/reducers/activities/sort/deleteActivityByLocalId.howToWithLivestream.spec.ts:139:38) at Object.<anonymous> (../node_modules/@testduet/given-when-then/src/givenWhenThen.ts:304:13)
upserting plain activity in the same grouping › given an initial state › when the first activity is upserted › when the second activity is upserted › when the third activity is upserted › and `sortedActivities` should match: packages/core/src/reducers/activities/sort/upsert.howToWithLivestream.spec.ts#L382
expect(received).toEqual(expected) // deep equality - Expected - 66 + Received + 1 @@ -1,77 +1,12 @@ Array [ Object { "channelData": Object { - "streamSequence": 1, - "streamType": "streaming", - "webchat:internal:local-id": "_:a-00001", - "webchat:internal:position": 1000, - "webchat:send-status": undefined, - }, - "entities": Array [ - Object { - "@context": "https://schema.org", - "@id": "", - "@type": "Message", - "isPartOf": Array [ - Object { - "@id": "_:how-to:00001", - "@type": "HowTo", - }, - ], - "position": 1, - "type": "https://schema.org/Message", - }, - ], - "from": Object { - "id": "bot", - "role": "bot", - }, - "id": "a-00001", - "text": "A quick", - "timestamp": "1970-01-01T00:00:01.000Z", - "type": "typing", - }, - Object { - "channelData": Object { "streamId": "a-00001", - "streamSequence": 2, - "streamType": "streaming", - "webchat:internal:local-id": "_:a-00002", - "webchat:internal:position": 2000, - "webchat:send-status": undefined, - }, - "entities": Array [ - Object { - "@context": "https://schema.org", - "@id": "", - "@type": "Message", - "isPartOf": Array [ - Object { - "@id": "_:how-to:00001", - "@type": "HowTo", - }, - ], - "position": 1, - "type": "https://schema.org/Message", - }, - ], - "from": Object { - "id": "bot", - "role": "bot", - }, - "id": "a-00002", - "text": "A quick brown fox", - "timestamp": "1970-01-01T00:00:02.000Z", - "type": "typing", - }, - Object { - "channelData": Object { - "streamId": "a-00001", "streamType": "final", "webchat:internal:local-id": "_:a-00003", - "webchat:internal:position": 3000, + "webchat:internal:position": 1000, "webchat:send-status": undefined, }, "entities": Array [ Object { "@context": "https://schema.org", at Object.toEqual [as fn] (core/src/reducers/activities/sort/upsert.howToWithLivestream.spec.ts:382:38) at Object.<anonymous> (../node_modules/@testduet/given-when-then/src/givenWhenThen.ts:304:13)
upserting a livestream session › given an initial state › when upserted › when the second activity is upserted › when the third activity is upserted › when the fourth and final activity is upserted › and `sortedActivities` should match snapshot: packages/core/src/reducers/activities/sort/upsert.livestream.spec.ts#L416
expect(received).toEqual(expected) // deep equality - Expected - 54 + Received + 1 @@ -1,65 +1,12 @@ Array [ Object { "channelData": Object { - "streamSequence": 1, - "streamType": "streaming", - "webchat:internal:local-id": "_:a-00001", - "webchat:internal:position": 1000, - "webchat:send-status": undefined, - }, - "from": Object { - "id": "bot", - "role": "bot", - }, - "id": "a-00001", - "text": "A quick", - "timestamp": "1970-01-01T00:00:01.000Z", - "type": "typing", - }, - Object { - "channelData": Object { "streamId": "a-00001", - "streamSequence": 2, - "streamType": "streaming", - "webchat:internal:local-id": "_:a-00003", - "webchat:internal:position": 1001, - "webchat:send-status": undefined, - }, - "from": Object { - "id": "bot", - "role": "bot", - }, - "id": "a-00003", - "text": "A quick brown fox", - "timestamp": "1970-01-01T00:00:02.000Z", - "type": "typing", - }, - Object { - "channelData": Object { - "streamId": "a-00001", - "streamSequence": 3, - "streamType": "streaming", - "webchat:internal:local-id": "_:a-00002", - "webchat:internal:position": 2000, - "webchat:send-status": undefined, - }, - "from": Object { - "id": "bot", - "role": "bot", - }, - "id": "a-00002", - "text": "A quick brown fox jumped over", - "timestamp": "1970-01-01T00:00:03.000Z", - "type": "typing", - }, - Object { - "channelData": Object { - "streamId": "a-00001", "streamType": "final", "webchat:internal:local-id": "_:a-00004", - "webchat:internal:position": 3000, + "webchat:internal:position": 1000, "webchat:send-status": undefined, }, "from": Object { "id": "bot", "role": "bot", at Object.toEqual [as fn] (core/src/reducers/activities/sort/upsert.livestream.spec.ts:416:38) at Object.<anonymous> (../node_modules/@testduet/given-when-then/src/givenWhenThen.ts:304:13)
HTML test (8/17)
Process completed with exit code 1.
chunk (entity): redirects to ?streamingFormat=entity › html2/livestream/chunk.entity.html: https://webchat2/__tests__/html2/livestream/chunk?streamingFormat=entity#L205
expect(received).toEqual(expected) // deep equality - Expected - 3 + Received + 0 Array [ Array [ "ux6md", Array [ "a-00001", ], ], Array [ "2xtex", Array [ - "t-00001", - "t-00002", - "t-00003", "a-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/chunk?streamingFormat=entity:205:43
› html2/livestream/backtrackToEmpty.html: https://webchat2/__tests__/html2/livestream/backtrackToEmpty#L265
expect(received).toEqual(expected) // deep equality - Expected - 3 + Received + 0 Array [ Array [ Any<String>, Array [ "a-00001", ], ], Array [ "6qakp", Array [ - "t-00001", - "t-00002", - "t-00003", "t-00004", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/backtrackToEmpty:265:43
HTML test (7/17)
Process completed with exit code 1.
outOfOrder (entity): redirects to ?streamingFormat=entity › html2/livestream/outOfOrder.entity.html: https://webchat2/__tests__/html2/livestream/outOfOrder?streamingFormat=entity#L248
expect(received).toEqual(expected) // deep equality - Expected - 3 + Received + 0 Array [ Array [ "6m9gd", Array [ "a-00001", ], ], Array [ "lfhc5", Array [ - "t-00001", - "t-00002", - "t-00003", "a-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/outOfOrder?streamingFormat=entity:248:43
› html2/livestream/simultaneous.html: https://webchat2/__tests__/html2/livestream/simultaneous#L251
expect(received).toEqual(expected) // deep equality - Expected - 2 + Received + 0 Array [ Array [ "7qrqt", Array [ "a-00001", ], ], Array [ "17hjo", Array [ "t-10001", "t-10002", ], ], Array [ "nqo9j", Array [ - "t-00001", - "t-00002", "a-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/simultaneous:251:43
HTML test (13/17)
Process completed with exit code 1.
outOfOrder.sequenceNumber (entity): redirects to ?streamingFormat=entity › html2/livestream/outOfOrder.sequenceNumber.entity.html: https://webchat2/__tests__/html2/livestream/outOfOrder.sequenceNumber?streamingFormat=entity#L250
expect(received).toEqual(expected) // deep equality - Expected - 3 + Received + 0 Array [ Array [ "p7rsb", Array [ "a-00001", ], ], Array [ "vmzef", Array [ - "t-00001", - "t-00002", - "t-00003", "a-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/outOfOrder.sequenceNumber?streamingFormat=entity:250:43
HTML test (10/17)
Process completed with exit code 1.
› html2/livestream/chunk.html: https://webchat2/__tests__/html2/livestream/chunk#L205
expect(received).toEqual(expected) // deep equality - Expected - 3 + Received + 0 Array [ Array [ "fwjnk", Array [ "a-00001", ], ], Array [ "nhqiy", Array [ - "t-00001", - "t-00002", - "t-00003", "a-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/chunk:205:43
HTML test (3/17)
Process completed with exit code 1.
› html2/livestream/outOfOrder.sequenceNumber.html: https://webchat2/__tests__/html2/livestream/outOfOrder.sequenceNumber#L250
expect(received).toEqual(expected) // deep equality - Expected - 3 + Received + 0 Array [ Array [ "l9w3v", Array [ "a-00001", ], ], Array [ "mz6v5", Array [ - "t-00001", - "t-00002", - "t-00003", "a-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/outOfOrder.sequenceNumber:250:43
HTML test (6/17)
Process completed with exit code 1.
concludedLivestream (entity): redirects to ?streamingFormat=entity › html2/livestream/concludedLivestream.entity.html: https://webchat2/__tests__/html2/livestream/concludedLivestream?streamingFormat=entity#L140
expect(received).toEqual(expected) // deep equality - Expected - 1 + Received + 0 Array [ Array [ "c2263", Array [ - "t-00001", "t-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/concludedLivestream?streamingFormat=entity:140:43
HTML test (16/17)
Process completed with exit code 1.
backtrackToEmpty (entity): redirects to ?streamingFormat=entity › html2/livestream/backtrackToEmpty.entity.html: https://webchat2/__tests__/html2/livestream/backtrackToEmpty?streamingFormat=entity#L265
expect(received).toEqual(expected) // deep equality - Expected - 3 + Received + 0 Array [ Array [ Any<String>, Array [ "a-00001", ], ], Array [ "8nwvw", Array [ - "t-00001", - "t-00002", - "t-00003", "t-00004", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/backtrackToEmpty?streamingFormat=entity:265:43
HTML test (11/17)
Process completed with exit code 1.
simultaneous (entity): redirects to ?streamingFormat=entity › html2/livestream/simultaneous.entity.html: https://webchat2/__tests__/html2/livestream/simultaneous?streamingFormat=entity#L251
expect(received).toEqual(expected) // deep equality - Expected - 2 + Received + 0 Array [ Array [ "3wq3y", Array [ "a-00001", ], ], Array [ "rdlqa", Array [ "t-10001", "t-10002", ], ], Array [ "15dk0", Array [ - "t-00001", - "t-00002", "a-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/simultaneous?streamingFormat=entity:251:43
› html2/livestream/concludedLivestream.html: https://webchat2/__tests__/html2/livestream/concludedLivestream#L140
expect(received).toEqual(expected) // deep equality - Expected - 1 + Received + 0 Array [ Array [ "l49vg", Array [ - "t-00001", "t-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/concludedLivestream:140:43
HTML test (14/17)
Process completed with exit code 1.
› html2/livestream/outOfOrder.html: https://webchat2/__tests__/html2/livestream/outOfOrder#L248
expect(received).toEqual(expected) // deep equality - Expected - 3 + Received + 0 Array [ Array [ "s01i7", Array [ "a-00001", ], ], Array [ "apopi", Array [ - "t-00001", - "t-00002", - "t-00003", "a-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/outOfOrder:248:43
› html2/livestream/activityOrder.html: https://webchat2/__tests__/html2/livestream/activityOrder#L246
expect(received).toEqual(expected) // deep equality - Expected - 3 + Received + 0 Array [ Array [ "gn50w", Array [ "a-00001", ], ], Array [ "8tk4g", Array [ "a-00003", ], ], Array [ "zqp5p", Array [ - "t-00001", - "t-00002", - "t-00003", "a-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/activityOrder:246:43
HTML test (9/17)
Process completed with exit code 1.
activityOrder (entity): redirects to ?streamingFormat=entity › html2/livestream/activityOrder.entity.html: https://webchat2/__tests__/html2/livestream/activityOrder?streamingFormat=entity#L246
expect(received).toEqual(expected) // deep equality - Expected - 3 + Received + 0 Array [ Array [ "ykj3h", Array [ "a-00001", ], ], Array [ "lvqew", Array [ "a-00003", ], ], Array [ "6u4sg", Array [ - "t-00001", - "t-00002", - "t-00003", "a-00002", ], ], ] at ../../https:/webchat2/__tests__/html2/livestream/activityOrder?streamingFormat=entity:246:43
Merge test snapshots
No artifacts found matching pattern 'test-snapshot-diff-*'
Build samples
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/setup-node@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/
Verify build-browser (ubuntu-latest)
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/setup-node@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/
Print commit stats
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/setup-node@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/
Verify build-browser (macos-26)
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/setup-node@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/
Verify build-browser (windows-latest)
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/setup-node@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
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/setup-node@v4, actions/upload-artifact@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/
Type definitions test
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/setup-node@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/
Unit test
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/setup-node@v4, actions/upload-artifact@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/
Static code analysis
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/setup-node@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/
HTML test (1/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (4/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (8/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (8/17)
No files were found with the provided path: ./__tests__/__image_snapshots__/*/__diff_output__/* ./__tests__/html2/**/*.snap-*-diff.png. No artifacts will be uploaded.
HTML test (17/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (7/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (7/17)
No files were found with the provided path: ./__tests__/__image_snapshots__/*/__diff_output__/* ./__tests__/html2/**/*.snap-*-diff.png. No artifacts will be uploaded.
HTML test (13/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (13/17)
No files were found with the provided path: ./__tests__/__image_snapshots__/*/__diff_output__/* ./__tests__/html2/**/*.snap-*-diff.png. No artifacts will be uploaded.
HTML test (15/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (2/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (10/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (10/17)
No files were found with the provided path: ./__tests__/__image_snapshots__/*/__diff_output__/* ./__tests__/html2/**/*.snap-*-diff.png. No artifacts will be uploaded.
HTML test (3/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (3/17)
No files were found with the provided path: ./__tests__/__image_snapshots__/*/__diff_output__/* ./__tests__/html2/**/*.snap-*-diff.png. No artifacts will be uploaded.
HTML test (6/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (6/17)
No files were found with the provided path: ./__tests__/__image_snapshots__/*/__diff_output__/* ./__tests__/html2/**/*.snap-*-diff.png. No artifacts will be uploaded.
HTML test (12/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (16/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (16/17)
No files were found with the provided path: ./__tests__/__image_snapshots__/*/__diff_output__/* ./__tests__/html2/**/*.snap-*-diff.png. No artifacts will be uploaded.
HTML test (11/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (11/17)
No files were found with the provided path: ./__tests__/__image_snapshots__/*/__diff_output__/* ./__tests__/html2/**/*.snap-*-diff.png. No artifacts will be uploaded.
HTML test (14/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (14/17)
No files were found with the provided path: ./__tests__/__image_snapshots__/*/__diff_output__/* ./__tests__/html2/**/*.snap-*-diff.png. No artifacts will be uploaded.
HTML test (5/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (9/17)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@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/
HTML test (9/17)
No files were found with the provided path: ./__tests__/__image_snapshots__/*/__diff_output__/* ./__tests__/html2/**/*.snap-*-diff.png. No artifacts will be uploaded.
Merge test snapshots
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/upload-artifact/merge@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 test results
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/download-artifact@v4, actions/upload-artifact/merge@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/

Artifacts

Produced during runtime
Name Size Digest
docker Expired
126 MB
sha256:6e4cd67134dabb77c6b71b9223fcf5703e09c29b266f296e6b15346d05eea94b
tarballs Expired
36.7 MB
sha256:e09c7c3dfbfc6f41b5e20d511f0f673246e7857cffb6292270fce059b9c5bf72
test-result
1.59 MB
sha256:94d98b06fcc7cd153eac4d9739c4db9d080d92adcd0f221d8115bde857e6e260