Skip to content

fix(studio): scroll a tall plan card inside the chat panel and keep Approve in view - #75

Closed
jm-rivera wants to merge 1 commit into
devfrom
fix/studio-plan-card-scroll
Closed

jm-rivera wants to merge 1 commit into
devfrom
fix/studio-plan-card-scroll

Conversation

@jm-rivera

Copy link
Copy Markdown
Contributor

A tall plan card in a narrow chat panel left the user stuck: the card did not scroll, the transcript above it shrank to a sliver, and the panel clipped the approve bar and the input, so "View full plan" was the only control in reach. The card sits in the chat foot (.chatFoot in ChatPanel.module.scss), which lets a child scroll when it opts in with min-height: 0; the clarify picker does, the plan card did not (.planWrap { flex-shrink: 0 }, .plan { overflow: hidden } in PlanCard.module.scss).

The card now opts in the same way. .planWrap may shrink, .plan scrolls, and the approve bar (.proceed) keeps its size, so Cancel and Approve stay under the card at any panel height. .chatScroll keeps a floor of rem(88), since with a flex basis of 0 the foot otherwise squeezed the transcript to its padding. A card that fits lays out as before.

Testing: tsc, eslint, stylelint and prettier are clean, and src/lib/studio/test/plan.test.ts passes (112). A static page rendering ChatPanel with a recorded five-step plan, under next dev, was checked in headless Chrome at a 350 px panel and at 1280 by 640 and 800: before, Approve was clipped or missing; after, the question stays visible, the card scrolls to "View full plan", and Approve and the input stay in view. The 1280 by 800 layout is unchanged.

…pprove in view

The plan card refused to shrink in the chat foot (.planWrap flex-shrink: 0,
.plan overflow: hidden), so a tall card squeezed the transcript to nothing
and the panel clipped the approve bar and the input. The card body now
scrolls the way the clarify picker does, the approve bar stays pinned under
it, and the transcript keeps a minimum height.
@jm-rivera jm-rivera closed this Oct 31, 2026
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.

1 participant