Skip to content

fix(extension): prevent footer label overlap - #4930

Merged
iscekic merged 1 commit into
mainfrom
model-effort-overlap-1f14
Jul 31, 2026
Merged

fix(extension): prevent footer label overlap#4930
iscekic merged 1 commit into
mainfrom
model-effort-overlap-1f14

Conversation

@iscekic

@iscekic iscekic commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

What

Prevent the extension sidepanel footer's long model label from painting over the Thinking effort control at narrow widths.

Why

Blink kept the flex trigger button at fit-content width while its block wrapper shrank. The long label then overflowed right into the effort select at 320px.

How

  • Make the ModelPicker wrapper a flex container so the trigger's existing flex-1 min-w-0 fills and shrinks with it.
  • Add a Playwright regression spec that pins no-overlap, truncation, readable effort text, usable context control, and the intentional wide single-row layout at 320/400/560px.

Verification

  • pnpm format
  • pnpm --filter kilo-extension verify — 49 files, 456 tests passed
  • pnpm --filter kilo-extension build
  • pnpm --filter kilo-extension build:firefox
  • pnpm --filter kilo-extension e2e:chrome -- tests/e2e/footer-layout.test.ts — passed in independent verifier
  • pnpm --filter kilo-extension e2e:chrome — 96 passed, 11 expected live-backend skips
  • Firefox E2E intentionally skipped locally: this is a shared Tailwind layout class with no Firefox-only path; Chromium geometry covers the changed behavior and CI runs Firefox.

Visual Changes

Before — 320px

footer-320px.png

Before — 360px

footer-360px.png

After — 320px

footer-320px-after.png

After — 560px

footer-560px-after.png

@iscekic
iscekic requested a review from jeanduplessis July 31, 2026 14:02
@iscekic iscekic self-assigned this Jul 31, 2026
@iscekic
iscekic requested a review from pandemicsyn July 31, 2026 14:02
@kilo-code-bot

kilo-code-bot Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Executive Summary

Reviewed the one-class Tailwind layout fix in the sidepanel ModelPicker wrapper and the new Playwright footer-layout regression spec; both are consistent with existing extension patterns and I found no correctness, security, or reliability defects in the changed lines (high confidence).

Notes

  • relative flex min-w-0 flex-1 correctly turns the trigger's existing flex-1 min-w-0 into an effective shrink constraint; the fixed inset-0 overlay child stays out-of-flow, so the new flex context does not alter the model-picker dialog layout.
  • ModelPicker has a single call site (agent-footer-controls.tsx:226) and no test asserts the old class string, so the change has no other blast radius.
  • The new spec's assumptions check out: ModeControl exposes ... mode: ..., the donut summary exposes Context usage: ..., and Instant is indeed the longest label emitted by thinkingEffortLabel.
  • No new listeners, timers, or retained references are introduced, so no memory-leak risk from this diff.
Files Reviewed (2 files)
  • apps/extension/entrypoints/sidepanel/model-picker.tsx
  • apps/extension/tests/e2e/footer-layout.test.ts

Reviewed by claude-opus-5 · Input: 58 · Output: 15.1K · Cached: 1.6M

Review guidance: REVIEW.md from base branch main

@iscekic iscekic added the human-ready The PR is ready for human review. label Jul 31, 2026
@iscekic
iscekic enabled auto-merge (squash) July 31, 2026 14:19
@iscekic
iscekic merged commit 0e1d857 into main Jul 31, 2026
19 checks passed
@iscekic
iscekic deleted the model-effort-overlap-1f14 branch July 31, 2026 14:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

human-ready The PR is ready for human review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants