diff options
| author | Burak Yigit Kaya <[email protected]> | 2026-03-24 14:01:25 +0000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-03-24 09:01:25 -0500 |
| commit | 431e0586add85c108ceadc0366a08ee09b862ecc (patch) | |
| tree | 1533a7b03ab12766eaa3271f1d733e2b70c67a76 /packages/app/src/context/sync.tsx | |
| parent | fde201c286a83ff32dda9b41d61d734a4449fe70 (diff) | |
| download | opencode-431e0586add85c108ceadc0366a08ee09b862ecc.tar.gz opencode-431e0586add85c108ceadc0366a08ee09b862ecc.zip | |
fix(app): filter non-renderable part types from browser store (#18926)
Diffstat (limited to 'packages/app/src/context/sync.tsx')
| -rw-r--r-- | packages/app/src/context/sync.tsx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/packages/app/src/context/sync.tsx b/packages/app/src/context/sync.tsx index 0f2008723..66b889e2a 100644 --- a/packages/app/src/context/sync.tsx +++ b/packages/app/src/context/sync.tsx @@ -14,6 +14,8 @@ import { useSDK } from "./sdk" import type { Message, Part } from "@opencode-ai/sdk/v2/client" import { SESSION_CACHE_LIMIT, dropSessionCaches, pickSessionCacheEvictions } from "./global-sync/session-cache" +const SKIP_PARTS = new Set(["patch", "step-start", "step-finish"]) + function sortParts(parts: Part[]) { return parts.filter((part) => !!part?.id).sort((a, b) => cmp(a.id, b.id)) } @@ -336,7 +338,8 @@ export const { use: useSync, provider: SyncProvider } = createSimpleContext({ batch(() => { input.setStore("message", input.sessionID, reconcile(message, { key: "id" })) for (const p of next.part) { - input.setStore("part", p.id, p.part) + const filtered = p.part.filter((x) => !SKIP_PARTS.has(x.type)) + if (filtered.length) input.setStore("part", p.id, filtered) } setMeta("limit", key, message.length) setMeta("cursor", key, next.cursor) |
