You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(desktop): preserve Side Conversations across linked-session navigation #4494
Desktop Side Conversations are removed whenever navigation changes the active Session away from their source Session. This also happens when the destination is a linked child/Sub Agent Session belonging to the same unit of work.
For example:
Open a Side Conversation from a parent Session.
Keep a draft or start a Turn in the Side Conversation.
Open one of the parent Session's linked child/Sub Agent Sessions.
Return to the parent Session.
The Side Conversation has been closed and its temporary fork removed. A running answer, draft, and conversation history can no longer be resumed from the parent.
This is consistent with the current temporary lifecycle rather than an implementation regression: the Desktop controller removes panels whose sourceSessionId differs from the active Session, and the Side Conversation documentation specifies cleanup when the owning Session changes. However, a linked child is still part of the same work, so treating that navigation like switching to an unrelated Session makes inspection of delegated work unnecessarily destructive.
Desired outcome
Preserve a source Session's Side Conversations while the user navigates between that source and its linked descendant Sessions.
The Side Conversation remains owned by its original source Session; it is not reparented to the child.
Its draft, transcript, and running Turn remain intact while a linked child is open.
Returning to the source restores the same Side Conversation tabs.
Explicitly closing the tab keeps the current cleanup behavior.
Navigating to an unrelated Session may keep the current temporary cleanup behavior.
Removing the source Session still cleans up its temporary Side Conversations.
This does not make Side Conversations durable across restart, widen their permissions, synchronize their model with later parent changes, or promote them into ordinary Sessions.
This should be tracked as a focused lifecycle slice under #4331.
Alternatives or workarounds
Return to the parent before opening or continuing a Side Conversation. This prevents simultaneous inspection of linked child work.
Promote the Side Conversation to a durable ordinary Session. That is a broader product decision and is unnecessary for navigation within one linked Session family.
Retain every Side Conversation globally. That would change the temporary lifecycle for unrelated work and is broader than needed.
Reparent the Side Conversation to the active child. That would change lineage and cleanup ownership and should be avoided.
Closing this as an issue for now: the direction has not been confirmed by a maintainer, and the tracker only keeps proposals that already have an agreed scope. Please continue it in GitHub Discussions (https://github.com/apache/maka/discussions); once the shape and acceptance criteria are settled there, open an issue with that scope and it will be picked up.
Activity
testikun commentedon Sep 3, 2026
I’d like to take this focused Desktop lifecycle slice.
Scope:
I’ll first verify the controller cleanup path, then add a navigation round-trip regression test before changing behavior.
中文摘要: 认领关联父子 Session 间导航时的 Side Conversation 生命周期修复,保留草稿、历史和运行状态,不扩大为持久化会话。
fix(desktop): preserve side conversations across linked sessions
fix(desktop): preserve side conversations across linked sessions
Astro-Han commentedon Sep 17, 2026
Closing this as an issue for now: the direction has not been confirmed by a maintainer, and the tracker only keeps proposals that already have an agreed scope. Please continue it in GitHub Discussions (https://github.com/apache/maka/discussions); once the shape and acceptance criteria are settled there, open an issue with that scope and it will be picked up.