fix: collapse stale compression sidebar segments#1930
Closed
ai-ag2026 wants to merge 1 commit into
Closed
Conversation
Contributor
Author
|
Review note: this PR is intentionally independent of the long-session navigation stack (#1927-#1929). It only addresses stale compression/sidebar lineage collapse behavior, with focused regression coverage for the stale optimistic row case. No dependency on the scroll/jump-button work. Current state: 3/3 CI checks are green and the PR is mergeable. |
Collaborator
|
Shipped in v0.51.29 via the Release F batch (release PR #1934, merge SHA 🚀 Release notes: https://github.com/nesquena/hermes-webui/releases/tag/v0.51.29 Thanks for the contribution! |
pull Bot
pushed a commit
to soitun/hermes-webui
that referenced
this pull request
May 8, 2026
…persistence + scroll/lineage fixes + i18n cleanup) Six-PR contributor batch: - PR nesquena#1919 (franksong2702): Persist login rate limit attempts (closes nesquena#1910) - PR nesquena#1920 (franksong2702): Remove dead Kanban start i18n key - PR nesquena#1921 (Michaelyklam): Production Docker image hardening (closes nesquena#1908) - PR nesquena#1926 (ai-ag2026): Prevent chat scroll resets after final render - PR nesquena#1927 (ai-ag2026): Preserve viewport when loading older messages - PR nesquena#1930 (ai-ag2026): Collapse stale compression sidebar segments Tests: 4947 → 4960 (+13 net new). Browser API harness all-green. Opus advisor: SHIP-READY. CHANGELOG conflict on nesquena#1919 auto-resolved during stage rebase (CHANGELOG took ours strategy).
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
Root cause
The sidebar collapse key treated any row whose
parent_session_idpointed at another visible row as a non-collapsible child/fork row. That is correct for subagent/fork sessions without lineage metadata, but automatic compression continuations also form visible parent chains when stale optimistic rows remain in browser memory during an active stream. Those compression rows already carry_lineage_root_id/lineage_root_id, so they should collapse by lineage even when parent segments are still locally visible.Related reconnaissance
Test plan
node --check static/sessions.jspytest -q tests/test_session_lineage_collapse.py tests/test_session_lineage_metadata_api.py-> 14 passedpytest -q tests/test_gateway_sync.py tests/test_session_lineage_collapse.py tests/test_session_lineage_metadata_api.py-> 65 passedgit diff --checkeval()/console.log()matches existing source-extraction pattern and is not production code.