fix: resolve TUI resume to session tips#26631
Conversation
|
@alt-glitch thanks for calling this out — I dug into the overlap. #13374 is definitely the same TUI-side symptom, and it conflicts mechanically with this branch in both merge orders: both touch the The reason I’d lean toward this shape is that it keeps the resume policy in the shared session layer instead of adding compression-specific logic directly to the TUI gateway. #13374 calls This branch also covers a second resume issue: title-based resume now goes through My read of the relationships is:
So if maintainers prefer a single landing unit, I’m happy to fold the helper-layer change from #15742 into this branch. Otherwise the clean path seems to be #15742 first, then this PR; #13374’s TUI-specific redirect would be covered by the shared-resolver wiring here. |
Summary
session.resumetitles throughSessionDB.resolve_session_by_title()so/resume Projectselects the latest numbered lineage variant.SessionDB.resolve_resume_session_id()so compressed session heads resume at the transcript-holding descendant.Test Plan
scripts/run_tests.sh tests/tui_gateway/test_protocol.py::test_session_resume_returns_hydrated_messages tests/tui_gateway/test_protocol.py::test_session_resume_title_uses_latest_lineage_variant tests/tui_gateway/test_protocol.py::test_session_resume_id_redirects_to_compression_tip -qscripts/run_tests.sh tests/tui_gateway/test_protocol.py -qscripts/run_tests.sh tests/hermes_state/test_resolve_resume_session_id.py tests/test_hermes_state.py::TestTitleLineage -qgit apply --checkandgit am --3wayagainst a freshorigin/mainworktree, then focused new TUI regression tests.Notes
tui_gateway/server.pyplus protocol tests.