Skip to content

fix(vscode): stabilize session status dock - #13231

Merged
marius-kilocode merged 11 commits into
mainfrom
optimize-message-submission-ux-transitions
Aug 19, 2026
Merged

fix(vscode): stabilize session status dock#13231
marius-kilocode merged 11 commits into
mainfrom
optimize-message-submission-ux-transitions

Conversation

@marius-kilocode

Copy link
Copy Markdown
Collaborator

The chat composer currently changes its vertical geometry at turn boundaries. The working indicator lives inside the scrollable transcript and collapses when work finishes, while the session actions appear separately above the composer. Those two independently changing regions leave a small height difference, so the conversation text moves when the UI swaps between working and idle states. On narrow sidebars, a fixed-height attempt also clipped the wrapped actions row.

This adds one session dock between the transcript and composer. The working indicator and session actions share the same layout cell, with the inactive state hidden but still participating in layout. The dock therefore sizes itself to the taller state at the current width, including wrapped action rows, and the transcript viewport does not move when the state changes. The working indicator is a compact centered cluster with a reserved timer width, so the spinner and elapsed time remain visually connected on both the VS Code sidebar and wide Agent Manager surfaces.

The change includes unit and browser geometry coverage for idle, working, narrow wrapped, wide centered, and timer-width states.

Agent Manager

Before, the working indicator stretched across the composer and separated the spinner from the elapsed time:

Agent Manager session dock before

After, the indicator is a compact centered cluster aligned with the session actions:

Agent Manager session dock after

VS Code Sidebar

Before, the narrow sidebar showed the old working row and action layout:

VS Code sidebar session dock before

After, the working state stays centered and the wrapped idle actions remain inside the dock without clipping:

VS Code sidebar session dock after

…ission-ux-transitions

# Conflicts:
#	packages/kilo-vscode/webview-ui/src/context/session.tsx
…ission-ux-transitions

# Conflicts:
#	packages/kilo-vscode/webview-ui/src/context/session-queue.ts
#	packages/kilo-vscode/webview-ui/src/context/session-utils.ts
#	packages/kilo-vscode/webview-ui/src/context/session.tsx
@marius-kilocode
marius-kilocode force-pushed the optimize-message-submission-ux-transitions branch from 0f745f2 to 889768e Compare August 19, 2026 10:27
…ission-ux-transitions

# Conflicts:
#	packages/kilo-docs/public/img/screenshot-tests/kilo-vscode/visual-regression/chat/chat-view-requirements-checking-chromium-linux.png
#	packages/kilo-docs/public/img/screenshot-tests/kilo-vscode/visual-regression/chat/chat-view-requirements-malformed-chromium-linux.png
#	packages/kilo-docs/public/img/screenshot-tests/kilo-vscode/visual-regression/chat/chat-view-requirements-missing-extension-chromium-linux.png
#	packages/kilo-docs/public/img/screenshot-tests/kilo-vscode/visual-regression/chat/chat-view-requirements-missing-tools-chromium-linux.png
Comment thread packages/kilo-vscode/webview-ui/src/components/chat/ChatView.tsx Outdated
Comment thread packages/kilo-vscode/webview-ui/src/components/chat/SessionDock.tsx Outdated
Comment thread packages/kilo-vscode/webview-ui/src/context/session.tsx Outdated
Comment thread packages/kilo-vscode/webview-ui/agent-manager/DiffPanel.tsx
Comment thread packages/kilo-vscode/webview-ui/diff-viewer/FullScreenDiffView.tsx
@kilo-code-bot

kilo-code-bot Bot commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Files Reviewed (10 files)
  • packages/kilo-vscode/tests/unit/agent-manager-diff-state.test.ts
  • packages/kilo-vscode/tests/unit/prompt-send-contract.test.ts
  • packages/kilo-vscode/tests/unit/session-queue.test.ts
  • packages/kilo-vscode/webview-ui/agent-manager/DiffPanel.tsx
  • packages/kilo-vscode/webview-ui/diff-viewer/FullScreenDiffView.tsx
  • packages/kilo-vscode/webview-ui/diff-viewer/diff-open-policy.ts
  • packages/kilo-vscode/webview-ui/src/components/chat/ChatView.tsx
  • packages/kilo-vscode/webview-ui/src/components/chat/SessionDock.tsx
  • packages/kilo-vscode/webview-ui/src/context/session.tsx
  • packages/kilo-vscode/webview-ui/src/styles/chat-layout.css
Previous Review Summary (commit 0f49ed4)

Current summary above is authoritative. Previous snapshots are kept for context only.

Previous review (commit 0f49ed4)

Status: 5 Issues Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 0
WARNING 5
SUGGESTION 0
Issue Details (click to expand)

WARNING

File Line Issue
packages/kilo-vscode/webview-ui/src/components/chat/ChatView.tsx 378 Readonly chats lose the working indicator
packages/kilo-vscode/webview-ui/src/components/chat/SessionDock.tsx 34 Blocked/empty docks still reserve a blank row
packages/kilo-vscode/webview-ui/src/context/session.tsx 2916 Queued follow-ups hide live tool status
packages/kilo-vscode/webview-ui/agent-manager/DiffPanel.tsx 141 New live review files stay collapsed after first accordion change
packages/kilo-vscode/webview-ui/diff-viewer/FullScreenDiffView.tsx 143 Same live-open freeze in fullscreen review
Files Reviewed (19 files)
  • .changeset/steady-session-dock.md - 0 issues
  • packages/kilo-vscode/tests/session-dock-stability.spec.ts - 0 issues
  • packages/kilo-vscode/tests/unit/prompt-send-contract.test.ts - 0 issues
  • packages/kilo-vscode/tests/unit/session-dock.test.ts - 0 issues
  • packages/kilo-vscode/tests/unit/session-queue.test.ts - 0 issues
  • packages/kilo-vscode/tests/visual-regression.spec.ts - 0 issues
  • packages/kilo-ui/src/components/diff.tsx - 0 issues
  • packages/kilo-vscode/webview-ui/agent-manager/DiffPanel.tsx - 1 issue
  • packages/kilo-vscode/webview-ui/diff-viewer/FullScreenDiffView.tsx - 1 issue
  • packages/kilo-vscode/webview-ui/src/components/chat/ChatView.tsx - 1 issue
  • packages/kilo-vscode/webview-ui/src/components/chat/MessageList.tsx - 0 issues
  • packages/kilo-vscode/webview-ui/src/components/chat/SessionDock.tsx - 1 issue
  • packages/kilo-vscode/webview-ui/src/components/shared/WorkingIndicator.tsx - 0 issues
  • packages/kilo-vscode/webview-ui/src/components/shared/working-indicator-utils.ts - 0 issues
  • packages/kilo-vscode/webview-ui/src/context/session-queue.ts - 0 issues
  • packages/kilo-vscode/webview-ui/src/context/session.tsx - 1 issue
  • packages/kilo-vscode/webview-ui/src/stories/chat.stories.tsx - 0 issues
  • packages/kilo-vscode/webview-ui/src/styles/chat-layout.css - 0 issues
  • packages/kilo-vscode/webview-ui/src/styles/session-actions.css - 0 issues

Fix these issues in Kilo Cloud


Reviewed by grok-4.6 · Input: 137K · Output: 39.8K · Cached: 600.8K

Review guidance: REVIEW.md from base branch main

@marius-kilocode
marius-kilocode merged commit 37ce173 into main Aug 19, 2026
35 checks passed
@marius-kilocode
marius-kilocode deleted the optimize-message-submission-ux-transitions branch August 19, 2026 17:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants