diff --git a/packages/kilo-vscode/tests/unit/agent-manager-arch.test.ts b/packages/kilo-vscode/tests/unit/agent-manager-arch.test.ts index 178ca01f9a9f..86fea5de23f3 100644 --- a/packages/kilo-vscode/tests/unit/agent-manager-arch.test.ts +++ b/packages/kilo-vscode/tests/unit/agent-manager-arch.test.ts @@ -79,6 +79,7 @@ const TSX_FILES = [ path.join(ROOT, "webview-ui/src/components/chat/TabDnd.tsx"), path.join(ROOT, "webview-ui/diff-viewer/BaseBranchPicker.tsx"), ] +const SHARED_CSS = path.join(ROOT, "webview-ui/src/styles/session-tabs.css") const TSX_FILE = TSX_FILES[0]! const KEYBIND_DEFAULTS_FILE = path.join(ROOT, "webview-ui/agent-manager/keybind-defaults.ts") const PROVIDER_FILE = path.join(ROOT, "src/agent-manager/AgentManagerProvider.ts") @@ -145,7 +146,7 @@ describe("Agent Manager CSS Prefix", () => { describe("Agent Manager CSS/TSX Consistency", () => { it("all classes used in TSX should be defined in CSS", () => { - const css = readAllCss() + const css = readAllCss() + fs.readFileSync(SHARED_CSS, "utf-8") const tsx = readAllTsx() // Extract am- classes defined in CSS @@ -162,7 +163,7 @@ describe("Agent Manager CSS/TSX Consistency", () => { }) it("all am- classes defined in CSS should be used in TSX", () => { - const css = readAllCss() + const css = readAllCss() + fs.readFileSync(SHARED_CSS, "utf-8") const tsx = readAllTsx() // Extract am- classes defined in CSS diff --git a/packages/kilo-vscode/webview-ui/agent-manager/agent-manager.css b/packages/kilo-vscode/webview-ui/agent-manager/agent-manager.css index 43062ac434bb..6fe8794f787d 100644 --- a/packages/kilo-vscode/webview-ui/agent-manager/agent-manager.css +++ b/packages/kilo-vscode/webview-ui/agent-manager/agent-manager.css @@ -4814,35 +4814,6 @@ body.vscode-high-contrast-light { } } -/* Context menu — restyle to match dropdown-menu visuals. - The kilo-ui ContextMenu component hardcodes its own data-component / data-slot - attributes after the prop spread, so we can't override them via props. - Instead we apply a class and re-declare the styles here. */ - -.am-ctx-menu { - min-width: 210px; - border: 1px solid color-mix(in oklch, var(--border-base) 50%, transparent) !important; - box-shadow: var(--shadow-md) !important; - - [data-slot="context-menu-item"], - [data-slot="context-menu-checkbox-item"], - [data-slot="context-menu-radio-item"], - [data-slot="context-menu-sub-trigger"] { - padding: 6px 10px; - font-size: var(--font-size-small); - transition: none; - - &:hover, - &[data-highlighted] { - background: var(--surface-raised-base-hover); - } - } - - [data-slot="context-menu-separator"] { - margin: 4px 0; - } -} - /* Shared sortable inspector tabs. */ .am-tab-closable, diff --git a/packages/kilo-vscode/webview-ui/src/styles/session-tabs.css b/packages/kilo-vscode/webview-ui/src/styles/session-tabs.css index e0b4358614f2..bf4909275770 100644 --- a/packages/kilo-vscode/webview-ui/src/styles/session-tabs.css +++ b/packages/kilo-vscode/webview-ui/src/styles/session-tabs.css @@ -319,7 +319,8 @@ } /* Match tab context menus to dropdown-menu visuals on every tab surface. */ -.session-tab-menu { +.session-tab-menu, +.am-ctx-menu { min-width: 210px; border: 1px solid color-mix(in oklch, var(--border-base) 50%, transparent) !important; box-shadow: var(--shadow-md) !important; diff --git a/script/kilocode-duplication-allowlist.json b/script/kilocode-duplication-allowlist.json index 117c97a95ad8..1e1ae53be56c 100644 --- a/script/kilocode-duplication-allowlist.json +++ b/script/kilocode-duplication-allowlist.json @@ -188,18 +188,6 @@ "owner": "kilo-vscode", "reason": "Existing duplication before the ratchet; remove through a focused, behavior-preserving extraction." }, - { - "files": [ - "packages/kilo-vscode/webview-ui/agent-manager/agent-manager.css", - "packages/kilo-vscode/webview-ui/src/styles/session-tabs.css" - ], - "fingerprint": "73d7672dd2e6cd26", - "maxMatches": 1, - "maxTokens": 155, - "kind": "legacy", - "owner": "kilo-vscode", - "reason": "Existing duplication before the ratchet; remove through a focused, behavior-preserving extraction." - }, { "files": [ "packages/kilo-vscode/webview-ui/agent-manager/agent-manager.css",