* fix(cli): continue queued follow-up prompts
* test(cli): stabilize local model persistence test
* fix(cli): preserve queued prompt order
* fix(cli): persist queued prompts before processing
* chore(cli): clarify prompt queue settling
* fix(cli): preserve queued prompt history order
* fix(cli): clear queue state on release and test abort
The switch(model.prompt) block in SystemPrompt.provider() was
accidentally dropped during merge conflict resolution in fa2c979ac.
This meant the prompt property set by the Kilo gateway (e.g. codex,
anthropic, beast) was stored on the model but never read, causing all
Kilo-routed models to fall back to model.api.id string matching.
* fix(cli): remap child session references on fork to prevent subagent state leaks
When forking a session, task tool parts referencing child sessions were
copied verbatim, causing both original and forked sessions to share the
same subagent references. This led to SSE events and permission prompts
leaking across sessions in the Agent Manager.
* fix: remove redundant recursive remapChildren call
Session.fork() already calls remapChildren via the hook, so the explicit
recursive call inside remapChildren was double-forking nested descendants.
Update DiffVirtualApp and PermissionDiff to reconstruct before/after
content from the patch field when explicit before/after values are not
provided. Export the `text` helper from kilo-ui session-diff and add
`patch` to the PermissionFileDiff type.
In message-v2, refine stripMessageMetadata to only strip oversized
patches (exceeding MAX_DIFF_SIZE) rather than all patches, preserving
small patches so the UI can render inline diffs without additional
fetches.
Replace before/after content fields with unified patch field across
the diff pipeline. WorktreeDiff now generates patch strings via
createTwoFilesPatch, and all consumers (summary stripping, size
checks, content hashing, TUI sync, ingest queue) operate on the
patch field instead of before/after.
Consolidate model variant into the model object, removing the
separate variant field from MessageV2.User, PlanFollowup inject,
and resolveCodeModel interfaces.
Additional changes:
- Add session-diff module export to kilo-ui package
- Remove batch tool (batch.ts deleted)
- Fix WebSocket proxy to convert Uint8Array to ArrayBuffer
- Switch VscodeSessionTurn from useDiffComponent to useFileComponent
- Update SnapshotFileDiff type references in vscode extension