Pierre destroys and rebuilds the DOM on annotation changes, resetting
scrollTop. Wrap all comment mutations (add, update, delete, cancel draft,
send all) with a preserveScroll helper that captures and restores the
scroll position across animation frames.
Rename 'Open Worktree' to 'New Worktree' (dialog title) and
'Create Workspace' to 'Create Worktree' (submit button) across
all 16 locales for consistent naming throughout the UI flow.
* fix: resolve diff viewer race condition and add diagnostics for Agent Manager
onRequestWorktreeDiff now awaits stateReady before resolving the diff
target, preventing a race where startDiffWatch fires before state loads
from disk. Added diagnostic logging to resolveDiffTarget, diff polling,
and the server-side /experimental/worktree/diff endpoint so silent
failures become visible in the output channel.
* fix: guard stateReady await so rejection doesn't break diff polling
* docs: clarify why .catch() is required on stateReady await
* perf: filter tool diagnostics to only edited files
Tools (edit, write, apply_patch) stored LSP diagnostics for ALL project
files in their metadata. In large projects this adds 100-500KB of
unrelated diagnostics per tool call, bloating session payloads by
50-77%.
The UI only renders diagnostics for the edited file(s), so the rest is
dead weight. Extract a filterDiagnostics utility that keeps only the
relevant files' diagnostics and use it in all three tools.
* add kilocode_change marker to diagnostics filter test
Replace the flat issue list in the migration plan with 37 detailed doc
files, one per issue, grouped into ui-polish/, features/, migration/,
error-handling/, performance/, infrastructure/, and cli-side/ directories.
Each doc describes the problem, what remains to be done, and implementation
notes — readable without opening the GitHub issue. The migration plan tables
now link to these docs instead of bare issue references.
Cross-referenced all open items from the GitHub project board
(https://github.com/orgs/Kilo-Org/projects/25) with the existing plan.
Added 37 open issues not previously tracked, grouped by category:
UI polish/bugs, features, migration, error handling, performance,
infrastructure, and CLI-side items.
* feat(vscode): add multi-model comparison mode to Open Workspace dialog
* fix(vscode): address PR review - use dedicated setSessionModel message and guard allocation count
- Use agentManager.setSessionModel message type in Phase 1 instead of
sendInitialMessage to avoid prematurely clearing busy state
- Add count < 1 guard to setAllocationCount to prevent zombie entries
- Add test for the new guard
* style(vscode): remove raw color fallbacks, use kilo-ui tokens exclusively
Remove unnecessary rgba() and hex fallbacks from multi-model CSS.
All properties now use kilo-ui theme variables directly.
Remove the fixDuplicateReasoning workaround function and its call site
from the message transform pipeline. This function was a workaround for
@openrouter/ai-sdk-provider v1 duplicating reasoning, which was fixed
upstream in OpenRouterTeam/ai-sdk-provider#344.