Skip to content

fix(tui): retain transcript anchors across history updates - #395

Closed
dallenpyrah wants to merge 1 commit into
mainfrom
capy/retain-transcript-anchors-across
Closed

dallenpyrah wants to merge 1 commit into
mainfrom
capy/retain-transcript-anchors-across

Conversation

@dallenpyrah

Copy link
Copy Markdown
Collaborator

Anchor loaded transcript windows on retained member identities instead of numeric offsets, and keep mounted group nodes keyed by stable group IDs. Prepending history no longer jumps to newest; count-only membership updates preserve expansion and selection.

Home reaches the oldest retained content in one press, arrows cross mounted windows, and Home/End scrolling applies even when the mounted page does not change.

Part of #381. This remains draft pending #378 and Generalist #464: the offline input contract only contains loaded items, not authoritative paging cursors, unloaded membership, or reconnect receipts. The group mount limit is not a leaf-row cap. No hosted paging protocol is invented here.

Bun 1.4.0 validation passed: six focused unit tests, two real OpenTUI fixtures, standalone typecheck/lint, scoped ast-grep, repository lint, and diff hygiene. Fixtures cover 10,000 entries, oversized first families, count-only append, resize, immutable replacement, selection, and expansion.

Actual End → single Home keyboard result, preserving the selected and expanded oldest entry:

Oldest retained entry after Home

Open in Capy

@railway-app

railway-app Bot commented Sep 8, 2026 •

Copy link
Copy Markdown

🚅 Deployed to the rika-pr-395 environment in rika

Service Status Web Updated
api ◻️ Removed (View Logs) Oct 4, 2026 at 7:25 pm UTC
web ◻️ Removed (View Logs) Oct 4, 2026 at 7:25 pm UTC
proxy ◻️ Removed (View Logs) Web Oct 4, 2026 at 7:23 pm UTC

@railway-app
railway-app Bot temporarily deployed to rika / rika-pr-395 September 8, 2026 18:28 Destroyed

This branch was successfully deployed

No deployments
rika / rika-pr-395 — d847788d Deployed Sep 8, 2026 by railway-app[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant