Remove mistral from the provider reasoning variant detection list
and update bare repo test assertions to use "kilo" cache directory
naming instead of "opencode".
Re-run code generation to emit the SnapshotSummaryFileDiff named type
and replace inline anonymous diff objects across Session,
SyncEventSessionUpdated, and GlobalSession. Alphabetically sort
dependency entries in the opencode package.json and add previously
appended Kilo-specific packages into their correct positions.
Add a lightweight SummaryFileDiff derived from FileDiff via
Struct.omit(["patch"]) to keep session summary DB payloads small.
Replace inline anonymous object types in session.sql.ts, revert.ts,
and session.ts with the new schema. Cast SessionPrompt input in
remote-sender to satisfy narrowed PromptInput type, guard against
null in permission normalizeInput, and switch remaining bare .parse
calls to .zod.parse for Effect Schema compatibility.
Include unit tests verifying SummaryFileDiff field exclusion and
round-trip parsing behavior.
Replace direct Zod schema calls (Config.Info.parse, Config.Info.safeParse,
Snapshot.FileDiff, WorktreeDiff.Item) with their .zod counterparts to
align with the Effect Schema migration that wraps schemas via withStatics.
Migrate WorktreeDiff.Item from Zod's z.object/extend to Effect's
Schema.Struct with annotate and zod bridge. Add missing return statement
in TsClient notify.open stub and widen waitForDiagnostics input type to
match updated upstream interface.
DeepSeek thinking mode may return empty reasoning_content on assistant
messages in a tool call chain, which must be sent back in subsequent
requests. The interleaved transform's truthy check was dropping it.
Always set providerOptions.openaiCompatible[field] for assistant
messages so the AI SDK's metadata spread carries it through.
Cherry-picked from anomalyco/opencode#24146 (931e6ed).
Add a check for UTF-16 byte order marks before the NUL/control-char
heuristic so that legitimate UTF-16 encoded files are not incorrectly
classified as binary. Also update Opus 4.7 transform test to expect
the `display: "summarized"` property in xhigh reasoning config.
Remove unused `open` from fs/promises and `readDirectoryFiles` from
kilocode read-directory module to clean up dead imports in the
compatibility layer.
Replace object spread (`{...props}`) with `mergeProps` when forwarding
props through the plugin Slot wrapper. Spreading props in SolidJS
evaluates each prop once at mount time, freezing reactive values like
`ref`, `visible`, `disabled`, and `on_submit`. This caused handlers to
bind against stale closures after overlay transitions, breaking Enter
submission on the session_prompt slot.
Add regression tests verifying the wrapper uses `mergeProps` (not
spread) and that reactive prop tracking is preserved at runtime.
Drop a debug short-circuit shipped upstream in #23037 that flipped `sync.ready` before sync actually finished, producing a 1-2s delay before home content (agents, news, tips) appeared in the TUI. Bisected from origin/main.
Add a minimal ambient module declaration for jschardet so the repo
pre-push typecheck hook passes in worktrees where upstream dependency
typings are not resolved by tsgo.
Add unit tests for the Encoding namespace and extend the tool integration
suite with ApplyPatch delete and EditTool replaceAll paths for non-UTF-8
files.