Repository navigation
fix(transcript): automatically continue restored reading ranges - #1850
Merged
vastsa merged 2 commits intoOct 24, 2026
Merged
Conversation
Restored reading ranges should preserve their bookmark without leaving readers behind a manual history paging control. Continue bounded pages near the viewport boundary and rejoin live output only after the gap closes. Keep explicit search paging isolated, preserve the viewport and model input, and cover continuation, retries, and hidden-pane cleanup.
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.
Summary
Follow up on my reading-position restoration change in #1665 without reverting bookmark restoration.
Restoring an evicted session loads a bounded range around its bookmark. That range was treated as a permanently frozen historical snapshot, while automatic paging only handled older messages. This left ordinary restored reading behind a Load later messages button and prevented it from naturally rejoining live output.
Verification
Task candidate:
a3306d456e36d6f0bd8d2d0eb48e1488bbbd6f2cBase main:
cdad68e61e504adbfd1af10492a338daec09bdfaEnvironment: Windows; isolated Electron fixture, no running user instance or real model provider.
Passed on the final candidate:
pnpm --filter @pi-desktop/desktop build(chunk-size warnings only)pnpm --filter @pi-desktop/desktop typecheckpnpm lintnode --test apps/desktop/test/transcript-*.test.mjs apps/desktop/test/session-search*.test.mjs— 163 passed, 0 failednode scripts/e2e-transcript-reading-position.mjs— scrolling, real SessionPane restoration/continuation, and continuation lifecycle probes all passedgit diff --checkandpnpm check:pr-baseFull-suite limitation
A broader Windows desktop test run during implementation was not green: 4,281 passed, 64 failed, 8 skipped. Failures included path/permission, SSH/askpass/host fixtures, and longer user-path tests. Two updater path failures were independently reproduced against unchanged main; the remaining failures have not all been baseline-verified and are not claimed to be pre-existing. The focused transcript/search suite is green, but upstream integration CI is still required before merge.