Repository navigation
test(chat): run the follow-cancel test on a working thread - #594
Merged
Merged
Conversation
The test streamed an answer on a thread marked idle. There, a reader still within the end's last lines is kept at the end as content grows, so whether the 80px scroll left them inside that allowance decided the outcome. On a slow runner it sometimes did, and the reader was carried down with the answer (1928px and 2443px in CI). A streaming answer belongs to a working run, where end keeping is off, so only the follow's cancel is tested. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |
yaacovcorcos
pushed a commit
that referenced
this pull request
Oct 19, 2026
Catches up owned main with Scient PRs #582 (CI exact-commit reuse), #595 (Antigravity and one-click provider sign-in), #568, #569, #570 (Oh My Pi resume, status, multi-question sign-in), #583 and #594. - #582's reuse gate and its test no longer require the Test Web layout job, which this alignment retired with upstream's move to browser tests. - #595's sign-in flow is carried into the React Compiler conversion of the provider-connection files: plain values and functions instead of useMemo/useCallback, conditionals outside try blocks, and the controller's authorization page delegated to #595's shared opener. - The CI guide names the browser coverage that replaced the layout job. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
What Changed
readerScrolling.browser.test.tsx, "manual scrolling cancels limited answer following without rearming it": the streamed answer now runs on a thread marked working (isWorking: true), with a comment saying why. No app code changes.Why
This test has been failing now and then in the non-required "Test Web layout" job on unrelated PRs (#587, #590). Both times the reader was carried down: 1928px and 2443px.
The test streamed an answer on a thread marked idle, which the app doesn't do. On an idle thread, idle end keeping (
keepReadingEndInViewinreaderScrolling.ts) holds a reader at the end while they're within its last three lines. Whether the test's 80px scroll left the reader inside that allowance depended on how far the follow had moved first. On a slow runner it sometimes did, and end keeping then pinned the growing answer. The follow's cancel, which is what the test is about, worked every time.While an answer streams, its run is working and end keeping is off. The test now uses that state, so it checks only the follow.
Documentation Impact
Documentation impact: None (test only).
UI Changes
None.
Verification
Local, Windows 11, Chromium layout harness, with the CPU slowed 6× through CDP to match CI:
keepReadingEndInView(readerScrolling.ts:295, via the bookkeeping frame at:328).useBoundedAnswerFollow.ts(reverted), 6 of 6 runs fail, and the writer is the follow's owntick.readerScrolling.browser.test.tsxandresponseFollow.browser.test.tsxpass, 40 tests at normal speed.vp fmt --checkandgit diff --checkpass.Implemented through the Claude Code harness (Scient) using claude-opus-5-5.
🤖 Generated with Claude Code