Skip to content

Adds "Running Code" loading indicator #1858

Adds "Running Code" loading indicator

Adds "Running Code" loading indicator #1858

Triggered via pull request December 8, 2025 19:00
Status Failure
Total duration 18m 56s
Artifacts 4

test-mito-ai-frontend.yml

on: pull_request
Matrix: test-mitoai-frontend-jupyterlab
Fit to window
Zoom out
Zoom in

Annotations

40 errors and 4 notices
[chromium] › mitoai_ui_tests/chat.spec.ts:247:7 › Mito AI Chat › No Code blocks are displayed when active cell is empty: tests/mitoai_ui_tests/chat.spec.ts#L255
2) [chromium] › mitoai_ui_tests/chat.spec.ts:247:7 › Mito AI Chat › No Code blocks are displayed when active cell is empty Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toBe(expected) // Object.is equality Expected: 1 Received: 0 253 | // It should be in the AI response message, which means that it is not in the user's message. 254 | const codeMessagePartContainersCount = await page.locator('.code-block-container').count(); > 255 | expect(codeMessagePartContainersCount).toBe(1); | ^ 256 | }); 257 | 258 | test('Explain code button', async ({ page }) => { at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:255:44
[chromium] › mitoai_ui_tests/chat.spec.ts:247:7 › Mito AI Chat › No Code blocks are displayed when active cell is empty: tests/mitoai_ui_tests/chat.spec.ts#L255
2) [chromium] › mitoai_ui_tests/chat.spec.ts:247:7 › Mito AI Chat › No Code blocks are displayed when active cell is empty Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toBe(expected) // Object.is equality Expected: 1 Received: 0 253 | // It should be in the AI response message, which means that it is not in the user's message. 254 | const codeMessagePartContainersCount = await page.locator('.code-block-container').count(); > 255 | expect(codeMessagePartContainersCount).toBe(1); | ^ 256 | }); 257 | 258 | test('Explain code button', async ({ page }) => { at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:255:44
[chromium] › mitoai_ui_tests/chat.spec.ts:247:7 › Mito AI Chat › No Code blocks are displayed when active cell is empty: tests/mitoai_ui_tests/chat.spec.ts#L255
2) [chromium] › mitoai_ui_tests/chat.spec.ts:247:7 › Mito AI Chat › No Code blocks are displayed when active cell is empty Error: expect(received).toBe(expected) // Object.is equality Expected: 1 Received: 0 253 | // It should be in the AI response message, which means that it is not in the user's message. 254 | const codeMessagePartContainersCount = await page.locator('.code-block-container').count(); > 255 | expect(codeMessagePartContainersCount).toBe(1); | ^ 256 | }); 257 | 258 | test('Explain code button', async ({ page }) => { at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:255:44
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/chat.spec.ts#L188
1) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Retry #3 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).not.toContain(expected) // indexOf Expected substring: not "x = 1" Received string: "x = 1" 186 | 187 | const codeInCell = await getCodeFromCell(page, 0); > 188 | expect(codeInCell).not.toContain('x = 1'); // First msg should be auto-rejected | ^ 189 | expect(codeInCell).toContain('y = 2'); 190 | }); 191 | at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:188:28
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/utils.ts#L129
1) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 90000ms exceeded. Call log: - waiting for locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }) at mitoai_ui_tests/utils.ts:129 127 | 128 | export const clickPreviewButton = async (page: IJupyterLabPageFixture) => { > 129 | await page.locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }).click(); | ^ 130 | await waitForIdle(page); 131 | } 132 | at clickPreviewButton (/home/runner/work/mito/mito/tests/mitoai_ui_tests/utils.ts:129:104) at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:174:29
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/chat.spec.ts#L0
1) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 90000ms exceeded.
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/utils.ts#L129
1) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 90000ms exceeded. Call log: - waiting for locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }) at mitoai_ui_tests/utils.ts:129 127 | 128 | export const clickPreviewButton = async (page: IJupyterLabPageFixture) => { > 129 | await page.locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }).click(); | ^ 130 | await waitForIdle(page); 131 | } 132 | at clickPreviewButton (/home/runner/work/mito/mito/tests/mitoai_ui_tests/utils.ts:129:104) at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:174:29
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/chat.spec.ts#L0
1) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 90000ms exceeded.
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/chat.spec.ts#L188
1) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Error: expect(received).not.toContain(expected) // indexOf Expected substring: not "x = 1" Received string: "x = 1" 186 | 187 | const codeInCell = await getCodeFromCell(page, 0); > 188 | expect(codeInCell).not.toContain('x = 1'); // First msg should be auto-rejected | ^ 189 | expect(codeInCell).toContain('y = 2'); 190 | }); 191 | at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:188:28
test-mitoai-frontend-jupyterlab (3.12, false)
Event loop is closed
[chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell: tests/mitoai_ui_tests/utils.ts#L142
2) [chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 90000ms exceeded. Call log: - waiting for locator('.chat-message-buttons').getByRole('button', { name: 'Accept code' }) at mitoai_ui_tests/utils.ts:142 140 | await page.locator('.jp-ToolbarButtonComponent-label').filter({ hasText: 'Accept' }).click(); 141 | } else { > 142 | await page.locator('.chat-message-buttons').getByRole('button', { name: 'Accept code' }).click(); | ^ 143 | } 144 | await waitForIdle(page); 145 | } at clickAcceptButton (/home/runner/work/mito/mito/tests/mitoai_ui_tests/utils.ts:142:98) at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:204:28
[chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell: tests/mitoai_ui_tests/chat.spec.ts#L0
2) [chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 90000ms exceeded.
[chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell: tests/mitoai_ui_tests/utils.ts#L142
2) [chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell Error: locator.click: Test timeout of 90000ms exceeded. Call log: - waiting for locator('.chat-message-buttons').getByRole('button', { name: 'Accept code' }) at mitoai_ui_tests/utils.ts:142 140 | await page.locator('.jp-ToolbarButtonComponent-label').filter({ hasText: 'Accept' }).click(); 141 | } else { > 142 | await page.locator('.chat-message-buttons').getByRole('button', { name: 'Accept code' }).click(); | ^ 143 | } 144 | await waitForIdle(page); 145 | } at clickAcceptButton (/home/runner/work/mito/mito/tests/mitoai_ui_tests/utils.ts:142:98) at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:204:28
[chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell: tests/mitoai_ui_tests/chat.spec.ts#L0
2) [chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell Test timeout of 90000ms exceeded.
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/chat.spec.ts#L188
1) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Retry #3 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).not.toContain(expected) // indexOf Expected substring: not "x = 1" Received string: "x = 1" 186 | 187 | const codeInCell = await getCodeFromCell(page, 0); > 188 | expect(codeInCell).not.toContain('x = 1'); // First msg should be auto-rejected | ^ 189 | expect(codeInCell).toContain('y = 2'); 190 | }); 191 | at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:188:28
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/utils.ts#L129
1) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 90000ms exceeded. Call log: - waiting for locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }) at mitoai_ui_tests/utils.ts:129 127 | 128 | export const clickPreviewButton = async (page: IJupyterLabPageFixture) => { > 129 | await page.locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }).click(); | ^ 130 | await waitForIdle(page); 131 | } 132 | at clickPreviewButton (/home/runner/work/mito/mito/tests/mitoai_ui_tests/utils.ts:129:104) at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:174:29
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/chat.spec.ts#L0
1) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 90000ms exceeded.
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/chat.spec.ts#L188
1) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).not.toContain(expected) // indexOf Expected substring: not "x = 1" Received string: "x = 1" 186 | 187 | const codeInCell = await getCodeFromCell(page, 0); > 188 | expect(codeInCell).not.toContain('x = 1'); // First msg should be auto-rejected | ^ 189 | expect(codeInCell).toContain('y = 2'); 190 | }); 191 | at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:188:28
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/chat.spec.ts#L188
1) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Error: expect(received).not.toContain(expected) // indexOf Expected substring: not "x = 1" Received string: "x = 1" 186 | 187 | const codeInCell = await getCodeFromCell(page, 0); > 188 | expect(codeInCell).not.toContain('x = 1'); // First msg should be auto-rejected | ^ 189 | expect(codeInCell).toContain('y = 2'); 190 | }); 191 | at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:188:28
test-mitoai-frontend-jupyterlab (3.10, false)
Event loop is closed
[chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message: tests/mitoai_ui_tests/chat.spec.ts#L0
2) [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ───────────────── Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 90000ms exceeded.
[chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message: tests/mitoai_ui_tests/chat.spec.ts#L164
2) [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ───────────────── Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toContain(expected) // indexOf Expected substring: "df[\"C_edited\"] = [7, 8, 9]" Received string: "df[\"C\"] = [7, 8, 9] df[\"D\"] = [10, 11, 12]" 162 | 163 | const code = await getCodeFromCell(page, 1); > 164 | expect(code).toContain('df["C_edited"] = [7, 8, 9]'); | ^ 165 | 166 | // Ensure previous messages are removed. 167 | const messageAssistantDivs = await page.locator('.message.message-assistant-chat').count(); at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:164:18
[chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message: tests/mitoai_ui_tests/chat.spec.ts#L164
2) [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ───────────────── Error: expect(received).toContain(expected) // indexOf Expected substring: "df[\"C_edited\"] = [7, 8, 9]" Received string: "df[\"C\"] = [7, 8, 9] df[\"D\"] = [10, 11, 12]" 162 | 163 | const code = await getCodeFromCell(page, 1); > 164 | expect(code).toContain('df["C_edited"] = [7, 8, 9]'); | ^ 165 | 166 | // Ensure previous messages are removed. 167 | const messageAssistantDivs = await page.locator('.message.message-assistant-chat').count(); at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:164:18
[chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code: tests/mitoai_ui_tests/chat.spec.ts#L111
1) [chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code ────── Retry #3 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toBe(expected) // Object.is equality Expected: "" Received: "Start writing python or Press Ctrl + E to ask Mito AI to write code for you." 109 | const code = await getCodeFromCell(page, 1); 110 | expect(code).not.toContain('df["C"] = [7, 8, 9]'); > 111 | expect(code?.trim()).toBe("") | ^ 112 | }); 113 | 114 | test("Reject using cell toolbar button", async ({ page }) => { at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:111:26
[chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code: tests/mitoai_ui_tests/utils.ts#L156
1) [chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code ────── Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 90000ms exceeded. Call log: - waiting for locator('.chat-message-buttons').getByRole('button', { name: 'Reject code' }) at mitoai_ui_tests/utils.ts:156 154 | await page.locator('.jp-ToolbarButtonComponent-label').filter({ hasText: 'Reject' }).click(); 155 | } else { > 156 | await page.locator('.chat-message-buttons').getByRole('button', { name: 'Reject code' }).click(); | ^ 157 | } 158 | await waitForIdle(page); 159 | } at clickDenyButton (/home/runner/work/mito/mito/tests/mitoai_ui_tests/utils.ts:156:98) at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:106:26
[chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code: tests/mitoai_ui_tests/chat.spec.ts#L0
1) [chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code ────── Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 90000ms exceeded.
[chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code: tests/mitoai_ui_tests/chat.spec.ts#L111
1) [chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code ────── Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toBe(expected) // Object.is equality Expected: "" Received: "Start writing python or Press Ctrl + E to ask Mito AI to write code for you." 109 | const code = await getCodeFromCell(page, 1); 110 | expect(code).not.toContain('df["C"] = [7, 8, 9]'); > 111 | expect(code?.trim()).toBe("") | ^ 112 | }); 113 | 114 | test("Reject using cell toolbar button", async ({ page }) => { at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:111:26
[chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code: tests/mitoai_ui_tests/utils.ts#L156
1) [chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code ────── Error: locator.click: Test timeout of 90000ms exceeded. Call log: - waiting for locator('.chat-message-buttons').getByRole('button', { name: 'Reject code' }) - locator resolved to <button title="Reject the Ai generated code and revert to the previous version of the code cell" class="text-button-mito-ai button-base button-red button-width-fit-contents text-align-center ">Reject code Ctrl+U</button> - attempting click action - waiting for element to be visible, enabled and stable - element is not stable - retrying click action - waiting for element to be visible, enabled and stable - element was detached from the DOM, retrying at mitoai_ui_tests/utils.ts:156 154 | await page.locator('.jp-ToolbarButtonComponent-label').filter({ hasText: 'Reject' }).click(); 155 | } else { > 156 | await page.locator('.chat-message-buttons').getByRole('button', { name: 'Reject code' }).click(); | ^ 157 | } 158 | await waitForIdle(page); 159 | } at clickDenyButton (/home/runner/work/mito/mito/tests/mitoai_ui_tests/utils.ts:156:98) at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:106:26
[chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code: tests/mitoai_ui_tests/chat.spec.ts#L0
1) [chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code ────── Test timeout of 90000ms exceeded.
test-mitoai-frontend-jupyterlab (3.12, true)
Event loop is closed
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/chat.spec.ts#L188
2) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).not.toContain(expected) // indexOf Expected substring: not "x = 1" Received string: "x = 1" 186 | 187 | const codeInCell = await getCodeFromCell(page, 0); > 188 | expect(codeInCell).not.toContain('x = 1'); // First msg should be auto-rejected | ^ 189 | expect(codeInCell).toContain('y = 2'); 190 | }); 191 | at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:188:28
[chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent: tests/mitoai_ui_tests/chat.spec.ts#L188
2) [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent Error: expect(received).not.toContain(expected) // indexOf Expected substring: not "x = 1" Received string: "x = 1" 186 | 187 | const codeInCell = await getCodeFromCell(page, 0); > 188 | expect(codeInCell).not.toContain('x = 1'); // First msg should be auto-rejected | ^ 189 | expect(codeInCell).toContain('y = 2'); 190 | }); 191 | at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:188:28
[chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message: tests/mitoai_ui_tests/utils.ts#L129
1) [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ───────────────── Retry #3 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 90000ms exceeded. Call log: - waiting for locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }) at mitoai_ui_tests/utils.ts:129 127 | 128 | export const clickPreviewButton = async (page: IJupyterLabPageFixture) => { > 129 | await page.locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }).click(); | ^ 130 | await waitForIdle(page); 131 | } 132 | at clickPreviewButton (/home/runner/work/mito/mito/tests/mitoai_ui_tests/utils.ts:129:104) at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:147:29
[chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message: tests/mitoai_ui_tests/chat.spec.ts#L0
1) [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ───────────────── Retry #3 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 90000ms exceeded.
[chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message: tests/mitoai_ui_tests/utils.ts#L129
1) [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ───────────────── Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.click: Test timeout of 90000ms exceeded. Call log: - waiting for locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }) at mitoai_ui_tests/utils.ts:129 127 | 128 | export const clickPreviewButton = async (page: IJupyterLabPageFixture) => { > 129 | await page.locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }).click(); | ^ 130 | await waitForIdle(page); 131 | } 132 | at clickPreviewButton (/home/runner/work/mito/mito/tests/mitoai_ui_tests/utils.ts:129:104) at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:147:29
[chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message: tests/mitoai_ui_tests/chat.spec.ts#L0
1) [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ───────────────── Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 90000ms exceeded.
[chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message: tests/mitoai_ui_tests/chat.spec.ts#L164
1) [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ───────────────── Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toContain(expected) // indexOf Expected substring: "df[\"C_edited\"] = [7, 8, 9]" Received string: "df[\"C\"] = [7, 8, 9] df[\"D\"] = [10, 11, 12]" 162 | 163 | const code = await getCodeFromCell(page, 1); > 164 | expect(code).toContain('df["C_edited"] = [7, 8, 9]'); | ^ 165 | 166 | // Ensure previous messages are removed. 167 | const messageAssistantDivs = await page.locator('.message.message-assistant-chat').count(); at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:164:18
[chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message: tests/mitoai_ui_tests/utils.ts#L129
1) [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ───────────────── Error: locator.click: Test timeout of 90000ms exceeded. Call log: - waiting for locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }) at mitoai_ui_tests/utils.ts:129 127 | 128 | export const clickPreviewButton = async (page: IJupyterLabPageFixture) => { > 129 | await page.locator('.chat-message-buttons').getByRole('button', { name: 'Overwrite Active Cell' }).click(); | ^ 130 | await waitForIdle(page); 131 | } 132 | at clickPreviewButton (/home/runner/work/mito/mito/tests/mitoai_ui_tests/utils.ts:129:104) at /home/runner/work/mito/mito/tests/mitoai_ui_tests/chat.spec.ts:159:29
[chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message: tests/mitoai_ui_tests/chat.spec.ts#L0
1) [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ───────────────── Test timeout of 90000ms exceeded.
test-mitoai-frontend-jupyterlab (3.10, true)
Event loop is closed
🎭 Playwright Run Summary
4 failed [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent [chromium] › mitoai_ui_tests/chat.spec.ts:247:7 › Mito AI Chat › No Code blocks are displayed when active cell is empty [chromium] › mitoai_ui_tests/chatHistory.spec.ts:29:9 › Mito AI Chat - Restore history › Restore message history [chromium] › mitoai_ui_tests/shortcuts.spec.ts:32:9 › Mito AI Shortcuts › Accept AI generated code 1 flaky [chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell 8 skipped 36 passed (9.5m)
🎭 Playwright Run Summary
5 failed [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent [chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell [chromium] › mitoai_ui_tests/chat.spec.ts:247:7 › Mito AI Chat › No Code blocks are displayed when active cell is empty [chromium] › mitoai_ui_tests/chatHistory.spec.ts:29:9 › Mito AI Chat - Restore history › Restore message history [chromium] › mitoai_ui_tests/shortcuts.spec.ts:32:9 › Mito AI Shortcuts › Accept AI generated code 4 flaky [chromium] › mitoai_ui_tests/agent.spec.ts:41:9 › Agent mode basic functionality › Run agent's plan [chromium] › mitoai_ui_tests/agent.spec.ts:87:9 › Agent mode basic functionality › Run agent's plan then send a follow up message [chromium] › mitoai_ui_tests/chat.spec.ts:219:7 › Mito AI Chat › Reject reverts preview cell to original code [chromium] › mitoai_ui_tests/mitoAdvice.spec.ts:8:5 › should display an advice message in empty code cell 8 skipped 32 passed (11.1m)
🎭 Playwright Run Summary
6 failed [chromium] › mitoai_ui_tests/chat.spec.ts:95:7 › Mito AI Chat › Reject AI Generated Code ─────── [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ────────────────── [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent [chromium] › mitoai_ui_tests/chat.spec.ts:247:7 › Mito AI Chat › No Code blocks are displayed when active cell is empty [chromium] › mitoai_ui_tests/chatHistory.spec.ts:29:9 › Mito AI Chat - Restore history › Restore message history [chromium] › mitoai_ui_tests/shortcuts.spec.ts:32:9 › Mito AI Shortcuts › Accept AI generated code 3 flaky [chromium] › mitoai_ui_tests/agent.spec.ts:41:9 › Agent mode basic functionality › Run agent's plan [chromium] › mitoai_ui_tests/agent.spec.ts:87:9 › Agent mode basic functionality › Run agent's plan then send a follow up message [chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell 8 skipped 32 passed (11.6m)
🎭 Playwright Run Summary
5 failed [chromium] › mitoai_ui_tests/chat.spec.ts:136:7 › Mito AI Chat › Edit Message ────────────────── [chromium] › mitoai_ui_tests/chat.spec.ts:171:7 › Mito AI Chat › Code diffs are automatically rejected before new messages are sent [chromium] › mitoai_ui_tests/chat.spec.ts:247:7 › Mito AI Chat › No Code blocks are displayed when active cell is empty [chromium] › mitoai_ui_tests/chatHistory.spec.ts:29:9 › Mito AI Chat - Restore history › Restore message history [chromium] › mitoai_ui_tests/shortcuts.spec.ts:32:9 › Mito AI Shortcuts › Accept AI generated code 5 flaky [chromium] › mitoai_ui_tests/agent.spec.ts:41:9 › Agent mode basic functionality › Run agent's plan [chromium] › mitoai_ui_tests/chat.spec.ts:192:7 › Mito AI Chat › Always write code to the preview cell [chromium] › mitoai_ui_tests/chat.spec.ts:219:7 › Mito AI Chat › Reject reverts preview cell to original code [chromium] › mitoai_ui_tests/chat.spec.ts:258:7 › Mito AI Chat › Explain code button ─────────── [chromium] › mitoai_ui_tests/smartDebug.spec.ts:32:9 › Smart Debug tests › Smart Debug button should update code 8 skipped 31 passed (12.8m)

Artifacts

Produced during runtime
Name Size Digest
mitoai-jupyterlab-playwright-report-3.10-false-20039461214
57.2 MB
sha256:e48cd750258d8f58d13642708837f4a00acbde3f0f30b06202dd3e3bdd032b88
mitoai-jupyterlab-playwright-report-3.10-true-20039461214
76.1 MB
sha256:0f33a822b20084fb1e7d7d88128fd6bd9721870aa42534dbb4e281dce49d78ea
mitoai-jupyterlab-playwright-report-3.12-false-20039461214
30.5 MB
sha256:64d3486b35a7605cfdc0bf3b2fb20f03c1bf1cb27e01fc7df980c49693999b03
mitoai-jupyterlab-playwright-report-3.12-true-20039461214
66.2 MB
sha256:cd9a77c5e055e1ecc9c41117859a7ef2334224a66dab127667e74c8bed755d66