fix: show readable session names across Windows UX#983
Conversation
|
Codex review: needs maintainer review before merge. Reviewed July 14, 2026, 9:02 AM ET / 13:02 UTC. Summary Reproducibility: yes. at source level: current main formats and groups sessions from legacy display names and colon-delimited routing-key positions, so generated and background keys predictably surface in Windows UX; no live current-main recording was provided. Review metrics: 3 noteworthy metrics.
Root-cause cluster Members:
Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Proof guidance:
Risk before merge
Maintainer options:
Next step before merge
Maintainer decision needed
Security Review detailsBest possible solution: Approve and land a stable additive Gateway presentation contract with the Windows consumer, retain raw-key routing and the bounded older-Gateway fallback, explicitly confirm each surface's background-session policy, and capture redacted current-head WinUI evidence before merge. Do we have a high-confidence way to reproduce the issue? Yes at source level: current main formats and groups sessions from legacy display names and colon-delimited routing-key positions, so generated and background keys predictably surface in Windows UX; no live current-main recording was provided. Is this the best way to solve the issue? Yes for the implementation shape: structured Gateway presentation with a bounded legacy fallback and separate raw routing identity is the narrowest maintainable approach, but the default visibility policy and rollout still require approval. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 77c42440376e. Label changesLabel justifications:
Evidence reviewedWhat I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
Review history (9 earlier review cycles; latest 8 shown)
|

Closes #981
What Problem This Solves
Fixes an issue where Windows users opening session pickers, the Sessions page, or tray menus would see opaque Gateway routing keys and machine-like IDs, especially for channel, heartbeat, subagent, cron, and TUI sessions.
Why This Change Was Made
Consumes the Gateway’s additive session
presentationcontract, preserves the raw key only for routing, and keeps a conservative fallback for older Gateways. Friendly titles now use explicit labels and Gateway presentation metadata; background sessions are hidden by default with an opt-in toggle, while an explicitly active background chat remains selectable.The fallback recognizes only established built-in key families and treats the remaining key tail as opaque text, shortening UUID/hash runs instead of teaching WinUI every Gateway routing grammar.
User Impact
Session surfaces show useful names instead of values such as
agent:main:tui-847241c7-…:heartbeat. Foreground chats are easier to find, duplicate friendly names remain distinguishable, account/agent/node context appears as secondary text, and routing continues to use the exact original session key.Evidence
git diff --checkpassed.80dbd80a: 2,815 Shared, 1,716 Tray, 422 Connection, 126 WinNode CLI, 18 Tray integration, 10 functional UI, 423 SetupEngine, 78 Tray UI, and 19 accessibility tests.win-x64andwin-arm64.Change Type
Scope
winnodeValidation
git diff --check— passed.xmllint --noouton all five changed locale resources — passed.29291054905— passed, including the required Shared and Tray suites plus downstream connection, CLI, integration, functional UI, SetupEngine, Tray UI, accessibility, E2E, and Release-build lanes.Real Behavior Proof
Collected on July 15, 2026 with the merged Parallels Windows workflows from openclaw/openclaw#107881 and #992.
OpenClaw.Tray.WinUI.exein an isolated tray-data directory, navigates the production Hub deep-link path, inspects the rendered WinUI Automation tree, and captures the Hub window.77c42440376e2b8cd503290bb2bfc7ac816bab63.80dbd80ad7800cdd710fcd007194ba128614f6ce.tests/OpenClaw.Tray.UITests/OpenClaw.Tray.UITests.csprojforwin-arm64, then runSessionTitleBehaviorProofTestswith screenshot and proof-output paths enabled.OpenClaw Windows Tray (main/fork).OpenClaw Windows Tray (2), showsagent mainas secondary context, and the Sessions page exposes the newShow backgroundcontrol.agent:main:mainandagent:main:fork.sessions.list.presentationresponse from feat: expose readable session presentation metadata openclaw#106832.Before — merge-base
77c42440376eAfter — PR head
80dbd80ad780Security Impact
Yes/No): NoYes/No): NoYes/No): NoYes/No): NoYes/No): NoYes, explain the risk and mitigation: N/ACompatibility and Migration
Yes/No): YesYes/No): NoYes/No): Nopresentationmetadata is optional, and older Gateways use the bounded client fallback.63ff2e8bd6eeadc3dd56d2f2f1237f30e101a529.Review Conversations
Coordinated Gateway contract PR: openclaw/openclaw#106832