Parent: #125
Priority: P0
Problem
The current docked workspace layout allows the Environment panel and right dock to consume/overlay core chat/composer space instead of participating in a safe responsive layout.
This is not only a visual-density complaint. Hands-on Playwright testing reproduced actual overlapping hit regions.
At 1440×900
The docked Environment panel occupied roughly:
x = 1128 → 1440
width ≈ 312px
z-index = 20
position = absolute
Composer controls simultaneously occupied the same region, including approximately:
voice: x = 1143 → 1171
send: x = 1179 → 1207
The Environment panel can therefore cover/intercept composer controls.
At 1024×768
With left sidebar + right dock open, the layout allowed approximately:
left sidebar 256px
main workspace 176px
right dock 591px
With the Environment panel open, its controls also occupied the same horizontal region as composer model/effort controls.
A developer workspace should not permit persisted panel widths to collapse the primary working surface to ~176px or cover model/send controls.
Goal
Make workspace panel geometry responsive and deterministic so the primary chat/composer surface always retains a usable minimum width and docked panels never overlap interactive composer controls.
Required work
- Audit the layout ownership of:
- left thread sidebar
- main chat/thread surface
- Environment panel
- right dock
- composer footer
- Replace accidental absolute-overlay behavior where a panel is conceptually docked.
- Define minimum usable main-workspace width.
- Clamp persisted right-dock width against current viewport size.
- Decide explicit breakpoint behavior when all surfaces cannot coexist:
- automatically collapse a secondary panel,
- convert Environment to an overlay/drawer that does not cover composer actions,
- or otherwise preserve the main interaction surface.
- Preserve user-resizable panels at widths where the layout has sufficient space.
- Ensure resize persistence cannot restore an impossible geometry after window shrink.
Acceptance criteria
- At 1440×900, Environment + right dock + sidebar can be opened without any Environment hit target overlapping composer controls.
- At 1024×768, opening the right dock does not reduce the main workspace to an unusable sliver; the chosen responsive behavior activates instead.
- Model selector, effort selector, voice control, send control, and composer extras remain pointer- and keyboard-accessible whenever visible.
- Window resize from a wide persisted layout to 1024px resolves into a valid layout automatically.
- Browser tests assert bounding-box non-overlap for representative composer controls and panel surfaces.
- Browser tests cover both 1440×900 and 1024×768 or equivalent representative breakpoints.
- Existing Terminal/right-dock state continuity is preserved unless a deliberate responsive collapse occurs.
Non-goals
- Do not redesign Environment contents.
- Do not remove the right dock.
- Do not solve this by simply hiding core composer controls.
- Do not make all panels fixed-width if responsive clamping is sufficient.
Parent: #125
Priority: P0
Problem
The current docked workspace layout allows the Environment panel and right dock to consume/overlay core chat/composer space instead of participating in a safe responsive layout.
This is not only a visual-density complaint. Hands-on Playwright testing reproduced actual overlapping hit regions.
At 1440×900
The docked Environment panel occupied roughly:
Composer controls simultaneously occupied the same region, including approximately:
The Environment panel can therefore cover/intercept composer controls.
At 1024×768
With left sidebar + right dock open, the layout allowed approximately:
With the Environment panel open, its controls also occupied the same horizontal region as composer model/effort controls.
A developer workspace should not permit persisted panel widths to collapse the primary working surface to ~176px or cover model/send controls.
Goal
Make workspace panel geometry responsive and deterministic so the primary chat/composer surface always retains a usable minimum width and docked panels never overlap interactive composer controls.
Required work
Acceptance criteria
Non-goals