Compare commits

..

6 Commits

Author SHA1 Message Date
Brendan Allan f69ff61600 fix(app): sync session selection before prompts 2026-08-05 19:32:42 +08:00
Brendan Allan a81628ebfe test(app): stabilize reconnect offset timing 2026-08-05 18:53:30 +08:00
Brendan Allan 232ee3b10d test(app): fix v2 timeline fixture ids 2026-08-05 16:15:56 +08:00
Brendan Allan dcd1d457b0 chore(app): merge v2 into v1 removal 2026-08-05 16:02:18 +08:00
Brendan Allan 76b318e990 refactor(app): gate unsupported v2 capabilities (#40381) 2026-08-05 15:15:26 +08:00
opencode-agent[bot] c0ab35c3c2 fix(app): show active search details (#40597)
Co-authored-by: Luke Parker <10430890+Hona@users.noreply.github.com>
2026-08-05 17:09:42 +10:00
3 changed files with 12 additions and 5 deletions
@@ -263,7 +263,7 @@ function turn(index: number, target: boolean, status: "running" | "completed" =
),
contextTool(contextIDs[3]!, assistantID, "list", { path: "src" }, status),
{
id: "prt_0104_text",
id: followingTextID,
sessionID,
messageID: assistantID,
type: "text",
@@ -45,8 +45,7 @@ test("reports a divergent native offset once and ignores equal offsets and unrel
route.remove()
document.body.append(route)
await new Promise((resolve) => setTimeout(resolve, 0))
await frames(3)
await waitFor(() => calls.length === 1)
expect(calls).toEqual([[0, false]])
route.remove()
@@ -197,3 +196,8 @@ async function frames(count: number) {
await new Promise<void>((resolve) => requestAnimationFrame(() => resolve()))
}
}
async function waitFor(condition: () => boolean) {
const deadline = performance.now() + 1_000
while (!condition() && performance.now() < deadline) await frames(1)
}
@@ -1142,6 +1142,9 @@ export function ContextToolGroup(props: {
const running = createMemo(
() => partAccessor().state.status === "pending" || partAccessor().state.status === "running",
)
const showDetails = createMemo(
() => !running() || partAccessor().tool === "glob" || partAccessor().tool === "grep",
)
return (
<div data-slot="context-tool-group-item">
<div data-component="tool-trigger">
@@ -1152,10 +1155,10 @@ export function ContextToolGroup(props: {
<span data-slot="basic-tool-tool-title">
<TextShimmer text={trigger().title} active={running()} />
</span>
<Show when={!running() && trigger().subtitle}>
<Show when={showDetails() && trigger().subtitle}>
<span data-slot="basic-tool-tool-subtitle">{trigger().subtitle}</span>
</Show>
<Show when={!running() && trigger().args?.length}>
<Show when={showDetails() && trigger().args?.length}>
<For each={trigger().args}>
{(arg) => <span data-slot="basic-tool-tool-arg">{arg}</span>}
</For>