Repository navigation
fix(web): expanding stacked notices no longer scrolls a working thread - #20086
Open
derektrimm wants to merge 1 commit into
Open
derektrimm wants to merge 1 commit into
derektrimm wants to merge 1 commit into
Conversation
Contributor
ApprovabilityVerdict: Approved at Macroscope's review found this PR approvable — This is a localized web bug fix that prevents expanded stacked notices from increasing the timeline reservation and causing a later scroll jump. Existing behavior remains unchanged when the optional adjustment is absent, and the new calculation is covered by focused tests. You can add or adjust custom eligibility rules. Learn more. |
derektrimm
force-pushed
the
fix/notice-stack-late-jump
branch
from
October 16, 2026 01:02
00fe53e to
e7ed45a
Compare
Hovering the composer's notice stack grows the overlay, and the timeline reserved that growth as footer space. The thread did not move at once, but the next row re-pinned it to the new end, jumping by the expanded height. The reservation now leaves out how far the stack grew past its collapsed height, so working threads behave like idle ones: the expanded notices cover the last rows until the pointer leaves. Fixes pingdotgg#19880
derektrimm
force-pushed
the
fix/notice-stack-late-jump
branch
from
October 16, 2026 14:07
e7ed45a to
5004d02
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #19880
Hovering the notice stack's peek strip expands the stacked notices inside the composer overlay.
publishComposerOverlayHeightmeasured that growth and added it to the timeline's footer reservation.TIMELINE_MAINTAIN_SCROLL_AT_ENDignores footer growth, so nothing moved at first, but the next row on a working thread re-pinned the timeline to the new end and the thread jumped up by the expanded height. As triaged on the issue, the covering is intended and only the late jump is the bug.The reservation now leaves out how far the stack grew past its collapsed height (the
min-h-3that holds the peek strip), rounded once so it equals the collapsed overlay.ComposerBannerStackmarks its container withdata-composer-banner-stackfor this, the same way the model strip is found. Working threads now behave like idle ones: the expanded notices cover the last rows until the pointer leaves, and nothing moves on expand, on the next row or on collapse.Checked in a dev web build (
vp run dev) on Linux, headless Chromium at 1280x640, with a Claude thread runningsleep 3; echo progress Nsteps. Switching the project's branch mid-turn stacked a "Branch changed" notice behind/usage-limits. I scrolled to the end, hovered the peek strip and sampled the timeline'sscrollTopand scroll range every 100 ms:Recordings (14 s each, hovering the stack while rows stream in): before, on main and after, on this branch.
The new case in
composerFooterLayout.test.tsfails on main and passes here. Typecheck and lint pass forapps/web.Not checked: the three-account
/usage-limitsstack from the issue, since this machine has one account; the stacked notice here was the compact branch notice, so the measured jump was 31 px rather than 360 px. Mobile renders its own composer and does not use this stack.Made with Claude Opus 5.5 in Claude Code, running in T3 Code.