feat(web): show inline previews for images agents refer to #1027
ci.yml
on: pull_request
Format, Lint, Typecheck, Test, Build
1m 24s
Browser Test
18m 44s
Release Smoke
56s
Deploy app.threadlines.dev
/
deploy
Annotations
11 errors and 10 warnings
|
Format, Lint, Typecheck, Test, Build
Process completed with exit code 1.
|
|
[chromium] src/components/sidebar/SidebarVersionTag.browser.tsx > SidebarVersionTag > keeps the installed build label independent of the nightly update preference:
apps/web/src/components/sidebar/SidebarVersionTag.browser.tsx#L116
VitestBrowserElementError: Cannot find element with locator: getByText('Dev')
<body>
<div>
<button
style="position: fixed; top: 0px; left: 0px;"
type="button"
>
elsewhere
</button>
<div
style="position: fixed; bottom: 8px; left: 8px;"
>
<button
aria-expanded="false"
aria-haspopup="dialog"
aria-label="Dev · Version 0.0.1"
class="relative inline-flex h-7 w-[4.25rem] shrink-0 cursor-pointer items-center justify-center overflow-hidden rounded-md border px-1.5 text-[9px] font-medium leading-none tracking-tight tabular-nums transition-[background-color,border-color,color,box-shadow,opacity] duration-300 hover:bg-current/10 border-transparent bg-transparent text-muted-foreground/40 hover:text-muted-foreground/70"
data-base-ui-click-trigger=""
data-slot="popover-trigger"
data-testid="sidebar-version-chip"
id="base-ui-_r_4_"
tabindex="0"
type="button"
>
<span
class="relative z-10 inline-flex min-w-0 items-center justify-center gap-1"
>
<span
class="min-w-0 truncate"
>
v0.0.1
</span>
</span>
</button>
</div>
</div>
</body>
❯ toBeVisible src/components/sidebar/SidebarVersionTag.browser.tsx:116:66
Caused by: Caused by: Error: Matcher did not succeed in time.
❯ src/components/sidebar/SidebarVersionTag.browser.tsx:116:4
|
|
[chromium] src/components/sidebar/SidebarVersionTag.browser.tsx > SidebarVersionTag > reveals the build card on hover and hides it again on hover-out:
apps/web/src/components/sidebar/SidebarVersionTag.browser.tsx#L101
VitestBrowserElementError: Cannot find element with locator: getByTestId('sidebar-version-card')
<body>
<div>
<button
style="position: fixed; top: 0px; left: 0px;"
type="button"
>
elsewhere
</button>
<div
style="position: fixed; bottom: 8px; left: 8px;"
>
<button
aria-expanded="false"
aria-haspopup="dialog"
aria-label="Dev · Version 0.0.1"
class="relative inline-flex h-7 w-[4.25rem] shrink-0 cursor-pointer items-center justify-center overflow-hidden rounded-md border px-1.5 text-[9px] font-medium leading-none tracking-tight tabular-nums transition-[background-color,border-color,color,box-shadow,opacity] duration-300 hover:bg-current/10 border-transparent bg-transparent text-muted-foreground/40 hover:text-muted-foreground/70"
data-base-ui-click-trigger=""
data-slot="popover-trigger"
data-testid="sidebar-version-chip"
id="base-ui-_r_1_"
tabindex="0"
type="button"
>
<span
class="relative z-10 inline-flex min-w-0 items-center justify-center gap-1"
>
<span
class="min-w-0 truncate"
>
v0.0.1
</span>
</span>
</button>
</div>
</div>
</body>
❯ toBeVisible src/components/sidebar/SidebarVersionTag.browser.tsx:101:40
Caused by: Caused by: Error: Matcher did not succeed in time.
❯ src/components/sidebar/SidebarVersionTag.browser.tsx:101:4
|
|
[chromium] src/components/pull-requests/PullRequestsView.browser.tsx > PullRequestsView > opens the checkout dialog prefilled with the pull request URL:
apps/web/src/components/pull-requests/PullRequestsView.browser.tsx#L459
TimeoutError: locator.click: Timeout 29872ms exceeded.
Call log:
- waiting for locator('[data-vitest="true"]').contentFrame().getByRole('button', { name: 'Review in a thread' })
- locator resolved to <button type="button" data-slot="button" id="base-ui-_r_2q_" aria-label="Review in a thread" data-base-ui-tooltip-trigger="" class="[&_svg]:-mx-0.5 inline-flex shrink-0 cursor-pointer items-center justify-center gap-2 whitespace-nowrap border font-medium text-base outline-none transition-shadow before:pointer-events-none before:absolute before:inset-0 pointer-coarse:after:absolute pointer-coarse:after:size-full pointer-coarse:after:min-h-11 pointer-coarse:after:min-w-11 focus-ring disabled:pointer-eve…>…</button>
- attempting click action
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- performing click action
- <vite-error-overlay></vite-error-overlay> intercepts pointer events
- retrying click action
- waiting 20ms
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- performing click action
- <vite-error-overlay></vite-error-overlay> intercepts pointer events
- retrying click action
- waiting 100ms
57 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- performing click action
- <vite-error-overlay></vite-error-overlay> intercepts pointer events
- retrying click action
- waiting 500ms
❯ click src/components/pull-requests/PullRequestsView.browser.tsx:459:20
|
|
[chromium] src/components/pull-requests/PullRequestsView.browser.tsx > PullRequestsView > narrows the list from the filters and gives the rows back from the chip:
apps/web/src/components/pull-requests/PullRequestsView.browser.tsx#L408
TimeoutError: locator.click: Timeout 29860ms exceeded.
Call log:
- waiting for locator('[data-vitest="true"]').contentFrame().getByTestId('pull-requests-filters')
- locator resolved to <button tabindex="0" type="button" id="base-ui-_r_1u_" aria-expanded="false" aria-haspopup="dialog" data-slot="popover-trigger" data-base-ui-click-trigger="" data-testid="pull-requests-filters" class="[&_svg]:-mx-0.5 relative inline-flex cursor-pointer items-center justify-center whitespace-nowrap rounded-lg border font-medium text-base outline-none transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] pointer-coarse:after:absolute poin…>…</button>
- attempting click action
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- performing click action
- <vite-error-overlay></vite-error-overlay> intercepts pointer events
- retrying click action
- waiting 20ms
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- performing click action
- <vite-error-overlay></vite-error-overlay> intercepts pointer events
- retrying click action
- waiting 100ms
57 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- performing click action
- <vite-error-overlay></vite-error-overlay> intercepts pointer events
- retrying click action
- waiting 500ms
❯ click src/components/pull-requests/PullRequestsView.browser.tsx:408:20
|
|
[chromium] src/components/pull-requests/PullRequestsView.browser.tsx > PullRequestsView > steps back to the list from the detail on a phone:
apps/web/src/components/pull-requests/PullRequestsView.browser.tsx#L378
TimeoutError: locator.click: Timeout 29860ms exceeded.
Call log:
- waiting for locator('[data-vitest="true"]').contentFrame().getByTestId('pull-requests-row')
- locator resolved to <button type="button" data-testid="pull-requests-row" aria-label="Open pull request #1: Add the pull requests page" class="absolute inset-0 z-0 w-full cursor-pointer rounded-md focus-ring"></button>
- attempting click action
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- performing click action
- <vite-error-overlay></vite-error-overlay> intercepts pointer events
- retrying click action
- waiting 20ms
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- performing click action
- <vite-error-overlay></vite-error-overlay> intercepts pointer events
- retrying click action
- waiting 100ms
56 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- performing click action
- <vite-error-overlay></vite-error-overlay> intercepts pointer events
- retrying click action
- waiting 500ms
❯ click src/components/pull-requests/PullRequestsView.browser.tsx:378:22
|
|
[chromium] src/components/pull-requests/PullRequestsView.browser.tsx > PullRequestsView > opens a row into the detail column and closes back to the list:
apps/web/src/components/pull-requests/PullRequestsView.browser.tsx#L363
AssertionError: expected [ <div …(2)>…(1)</div> ] to have a length of +0 but got 1
- Expected
+ Received
- 0
+ 1
❯ toHaveLength src/components/pull-requests/PullRequestsView.browser.tsx:363:71
|
|
[chromium] src/components/chat/providerStatusNotice.browser.tsx > provider status composer notice > offers targeted refresh and diagnostics actions for provider probe timeouts:
apps/web/src/components/chat/providerStatusNotice.browser.tsx#L144
AssertionError: expected "vi.fn()" to be called with arguments: [ { instanceId: 'codex' } ]
Number of calls: 0
❯ toHaveBeenCalledWith src/components/chat/providerStatusNotice.browser.tsx:144:37
|
|
[chromium] src/components/chat/ProviderModelPicker.browser.tsx > ProviderModelPicker > toggles favorite stars when clicked:
apps/web/src/components/chat/ProviderModelPicker.browser.tsx#L1263
AssertionError: expected 'Add to favorites' to be 'Remove from favorites' // Object.is equality
Expected: "Remove from favorites"
Received: "Add to favorites"
❯ toBe src/components/chat/ProviderModelPicker.browser.tsx:1263:64
|
|
[chromium] src/components/ThreadTerminalDrawer.browser.tsx > TerminalViewport > renders terminal selection actions and attaches selected output to chat:
apps/web/src/components/ThreadTerminalDrawer.browser.tsx#L572
AssertionError: expected "vi.fn()" to be called with arguments: [ { terminalId: 'default', …(4) } ]
Number of calls: 0
❯ toHaveBeenCalledWith src/components/ThreadTerminalDrawer.browser.tsx:572:37
|
|
[chromium] src/components/GitActionsControl.browser.tsx > PublishRepositoryDialog > reviews empty-repository effects and submits provider-aware options:
apps/web/src/components/GitActionsControl.browser.tsx#L622
AssertionError: expected "vi.fn()" to be called with arguments: [ { provider: 'github', …(6) } ]
Received:
1st vi.fn() call:
@@ -4,8 +4,8 @@
"protocol": "https",
"provider": "github",
"remoteName": "origin",
"repository": "acme/dojostorm",
"team": "design",
- "visibility": "internal",
+ "visibility": "private",
},
]
Number of calls: 1
❯ toHaveBeenCalledWith src/components/GitActionsControl.browser.tsx:622:48
|
|
react(memo-dependencies):
apps/web/src/components/settings/ExtensionsSettings.tsx#L4760
apps/web/src/components/settings/ExtensionsSettings.tsx:4760:29: Found extra memoization dependencies
|
|
react(memo-dependencies):
apps/web/src/components/settings/ExtensionsSettings.tsx#L4746
apps/web/src/components/settings/ExtensionsSettings.tsx:4746:28: Found extra memoization dependencies
|
|
react(memo-dependencies):
apps/web/src/components/settings/ExtensionsSettings.tsx#L4700
apps/web/src/components/settings/ExtensionsSettings.tsx:4700:7: Found extra memoization dependencies
|
|
react(exhaustive-effect-dependencies):
apps/web/src/components/settings/ExtensionsSettings.tsx#L4577
apps/web/src/components/settings/ExtensionsSettings.tsx:4577:7: Found extra effect dependencies
|
|
react(exhaustive-effect-dependencies):
apps/web/src/components/settings/ExtensionsSettings.tsx#L4569
apps/web/src/components/settings/ExtensionsSettings.tsx:4569:7: Found extra effect dependencies
|
|
react(exhaustive-effect-dependencies):
apps/web/src/components/settings/ExtensionsSettings.tsx#L3456
apps/web/src/components/settings/ExtensionsSettings.tsx:3456:41: Found missing/extra effect dependencies
|
|
react(exhaustive-effect-dependencies):
apps/web/src/components/settings/ExtensionsSettings.tsx#L1576
apps/web/src/components/settings/ExtensionsSettings.tsx:1576:18: Found extra effect dependencies
|
|
react(exhaustive-effect-dependencies):
apps/web/src/components/settings/ExtensionsSettings.tsx#L1548
apps/web/src/components/settings/ExtensionsSettings.tsx:1548:7: Found extra effect dependencies
|
|
eslint(no-unused-vars):
apps/server/src/cli/config.test.ts#L712
apps/server/src/cli/config.test.ts:712:13: Variable 'derivedPaths' is declared but never used. Unused variables should start with a '_'.
|
|
react(set-state-in-effect):
apps/web/src/components/settings/useProviderConnectFlow.ts#L180
apps/web/src/components/settings/useProviderConnectFlow.ts:180:7: Calling setState synchronously within an effect can trigger cascading renders
|
Artifacts
Produced during runtime
| Name | Size | Digest | |
|---|---|---|---|
|
browser-test-screenshots
Expired
|
1.94 MB |
sha256:bedd98a44227bc80fcab6fa4830edcb801007f158344e0ec68fa4efbd576c76a
|
|