Skip to content

feat: add model selector UI to chat #2157

feat: add model selector UI to chat

feat: add model selector UI to chat #2157

Triggered via pull request September 14, 2026 02:55
Status Failure
Total duration 4m 5s
Artifacts 1

visual-regression.yml

on: pull_request
webview-visual
4m 0s
webview-visual
theme-fixtures
2m 47s
theme-fixtures
extension-host-visual
3m 57s
extension-host-visual
Fit to window
Zoom out
Zoom in

Annotations

4 errors and 2 notices
extension-host-visual
Process completed with exit code 1.
src/visual/electron.visual.ts:212:6 › renders chat-dark in the real VS Code Extension Host: apps/vscode-e2e/src/visual/electron.visual.ts#L241
3) src/visual/electron.visual.ts:212:6 › renders chat-dark in the real VS Code Extension Host ──── Error: expect(locator).toHaveScreenshot(expected) failed Locator: locator('.part.sidebar') 449 pixels (ratio 0.01 of all image pixels) are different. Snapshot: electron-chat-dark-sidebar.png Call log: - Expect "toHaveScreenshot(electron-chat-dark-sidebar.png)" with timeout 60000ms - verifying given screenshot expectation - waiting for locator('.part.sidebar') - locator resolved to <div role="none" id="workbench.parts.sidebar" class="part sidebar left pane-composite-part">…</div> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - 449 pixels (ratio 0.01 of all image pixels) are different. - waiting 100ms before taking screenshot - waiting for locator('.part.sidebar') - locator resolved to <div role="none" id="workbench.parts.sidebar" class="part sidebar left pane-composite-part">…</div> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - captured a stable screenshot - 449 pixels (ratio 0.01 of all image pixels) are different. 239 | const sidebar = running.page.locator(".part.sidebar") 240 | await expect(sidebar).toBeVisible() > 241 | await expect(sidebar).toHaveScreenshot(`electron-${scenario.name}-sidebar.png`) | ^ 242 | 243 | if (scenario.webviewSnapshot) { 244 | const webview = running.page.locator('iframe[src*="extensionId=ZooCodeOrganization.zoo-code"]') at /__w/Zoo-Code/Zoo-Code/apps/vscode-e2e/src/visual/electron.visual.ts:241:26
src/visual/electron.visual.ts:212:6 › renders chat-dark in the real VS Code Extension Host: apps/vscode-e2e/src/visual/electron.visual.ts#L241
2) src/visual/electron.visual.ts:212:6 › renders chat-dark in the real VS Code Extension Host ──── Error: expect(locator).toHaveScreenshot(expected) failed Locator: locator('.part.sidebar') 449 pixels (ratio 0.01 of all image pixels) are different. Snapshot: electron-chat-dark-sidebar.png Call log: - Expect "toHaveScreenshot(electron-chat-dark-sidebar.png)" with timeout 60000ms - verifying given screenshot expectation - waiting for locator('.part.sidebar') - locator resolved to <div role="none" id="workbench.parts.sidebar" class="part sidebar left pane-composite-part">…</div> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - 449 pixels (ratio 0.01 of all image pixels) are different. - waiting 100ms before taking screenshot - waiting for locator('.part.sidebar') - locator resolved to <div role="none" id="workbench.parts.sidebar" class="part sidebar left pane-composite-part">…</div> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - captured a stable screenshot - 449 pixels (ratio 0.01 of all image pixels) are different. 239 | const sidebar = running.page.locator(".part.sidebar") 240 | await expect(sidebar).toBeVisible() > 241 | await expect(sidebar).toHaveScreenshot(`electron-${scenario.name}-sidebar.png`) | ^ 242 | 243 | if (scenario.webviewSnapshot) { 244 | const webview = running.page.locator('iframe[src*="extensionId=ZooCodeOrganization.zoo-code"]') at /__w/Zoo-Code/Zoo-Code/apps/vscode-e2e/src/visual/electron.visual.ts:241:26
src/visual/electron.visual.ts:212:6 › renders chat-dark in the real VS Code Extension Host: apps/vscode-e2e/src/visual/electron.visual.ts#L241
1) src/visual/electron.visual.ts:212:6 › renders chat-dark in the real VS Code Extension Host ──── Error: expect(locator).toHaveScreenshot(expected) failed Locator: locator('.part.sidebar') 449 pixels (ratio 0.01 of all image pixels) are different. Snapshot: electron-chat-dark-sidebar.png Call log: - Expect "toHaveScreenshot(electron-chat-dark-sidebar.png)" with timeout 60000ms - verifying given screenshot expectation - waiting for locator('.part.sidebar') - locator resolved to <div role="none" id="workbench.parts.sidebar" class="part sidebar left pane-composite-part">…</div> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - 449 pixels (ratio 0.01 of all image pixels) are different. - waiting 100ms before taking screenshot - waiting for locator('.part.sidebar') - locator resolved to <div role="none" id="workbench.parts.sidebar" class="part sidebar left pane-composite-part">…</div> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - captured a stable screenshot - 449 pixels (ratio 0.01 of all image pixels) are different. 239 | const sidebar = running.page.locator(".part.sidebar") 240 | await expect(sidebar).toBeVisible() > 241 | await expect(sidebar).toHaveScreenshot(`electron-${scenario.name}-sidebar.png`) | ^ 242 | 243 | if (scenario.webviewSnapshot) { 244 | const webview = running.page.locator('iframe[src*="extensionId=ZooCodeOrganization.zoo-code"]') at /__w/Zoo-Code/Zoo-Code/apps/vscode-e2e/src/visual/electron.visual.ts:241:26
🎭 Playwright Run Summary
3 failed src/visual/electron.visual.ts:212:6 › renders chat-dark in the real VS Code Extension Host ───── src/visual/electron.visual.ts:212:6 › renders chat-dark in the real VS Code Extension Host ───── src/visual/electron.visual.ts:212:6 › renders chat-dark in the real VS Code Extension Host ───── 6 passed (1.4m)
🎭 Playwright Run Summary
52 passed (2.1m)

Artifacts

Produced during runtime
Name Size Digest
extension-host-visual-regression
11 MB
sha256:705b739530bcc156cab624766ad12aa13aff4f45a3bd955f5186cd86eda8916f