Skip to content

[Feature] Cap question dock height so footer and history stay in viewport #216

@Astro-Han

Description

@Astro-Han

What task are you trying to do?

When the AI agent uses the question tool to ask me a multiple-choice question, I want to answer it while still being able to glance at the recent conversation history above to remind myself of context. Especially for longer questions that reference earlier decisions or code, I need to see both.

What do you do today?

Today the question dock expands to fit its content: the question text, optional hint, all option cards, the per-question progress dots, and the footer with ignore / back / next / submit. On a typical window, this stacks vertically and pushes the conversation history entirely off-screen. The only escape is the small collapse button (—) in the top-right, which hides the whole dock — so I can see history, but then I have to un-collapse and lose my place again when answering. It is an awkward either/or.

What would a good result look like?

The dock stays usable for the question, but does not monopolize the screen. Ideally I can always see at least the most recent one or two turns of conversation while the dock is active. Possible shapes (for discussion, not prescriptive):

  • Cap the whole dock at around 60-70vh and let long question text / many options scroll internally
  • Treat the dock as a floating overlay at the bottom of the conversation area instead of a full-width stacked block
  • Collapse the question body by default and show only a preview + "show full question" toggle
  • Split header + question from options + footer so the scroll region is only the options

Open to other designs; the constraint I care about is "I can see some history while answering."

Which audience does this matter to most?

Both

Extra context

Current render path:

  • packages/app/src/pages/session/composer/session-question-dock.tsx — the dock component
  • packages/ui/src/components/dock-prompt.tsx — the generic DockPrompt shell
  • packages/ui/src/components/message-part.css[data-slot="question-*"] styling (question-options already has overflow-y: auto, but it is bounded by content, not viewport)
  • packages/app/src/pages/session/composer/session-composer-region.tsx — mounts the dock when questionRequest() has a value

Related recent work: the polish PR that softened the dock's visuals (option card radius 20px, primary button brand color, pre-wrap on question text) landed as a separate scope but explicitly left this size issue out because it needs a structural layout decision rather than pure CSS polish.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1High priorityenhancementNew feature or requestuiDesign system and user interface

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions