Triage
Confirmed on current main (d2c9281, the commit this report cites). No later commit changes this path.
The chevron only hides the question body. collapsedQuestionId stays inside ComposerPendingUserInputPanel and toggles that card’s Collapsible. The custom-answer editor and the footer are rendered next to it by ChatComposer, so they stay at full height. That leftover editor is intentional in #6773: a collapsed prompt is still supposed to be answerable.
Scroll-rest cannot finish the job. showComposerTopDrawer is true for any pendingUserInputs.length > 0, and that sets composerHasExpandedChrome. canScrollCollapseComposer requires expanded chrome to be false, and the effect beside it clears isComposerScrollCollapsed whenever the gate is closed. shouldUseRestingComposerLayout also refuses to rest while hasExpandedChrome is true. The collapsed flag never reaches either check, so with Collapse composer on scroll on, an empty collapsed question still cannot rest. Wheel and keyboard timeline scroll share composerScrollCollapseEligibleRef. This is the desktop path; mobile does not scroll-rest.
Not a duplicate:
- #6773 / #4431 added the header chevron. They do not rest the composer.
- #10444 keeps a multiline draft expanded. A pending custom answer is not
prompt(onPromptChangewrites the question draft instead), butuseComposerMultilinePromptstill measures the editor, so a wrapped answer is already under that guard. An empty answer is not. Leave multiline drafts in discussion #6849. - #6849 is the wider “get the composer out of the way” request (approvals and multiline drafts included). This issue is the pending-question slice already split out there. Approvals use the same expanded-chrome bit and have no chevron; they stay with #6849.
- #14232 is a different scroll-rest failure: an unmeasured last row makes
timelineOverflowsfalse. Unrelated.
The focus rule in the report is not how scroll-rest works today. The wheel handler does not look at editor focus. #10437 removed collapse-on-blur; focus still expands a composer that is already resting. Once the chrome gate allows it, a short custom answer would rest on scroll whether or not the caret is in the field. Keeping an in-progress answer open is worth doing in the fix. It should not also start resting multiline drafts.