Skip to content

Preserve composer drafts across shell navigation - #205

Merged
hamzamerzic merged 1 commit into
mobius-os:mainfrom
hamzamerzic:fix/chat-draft-navigation-handoffs
Jul 24, 2026
Merged

Preserve composer drafts across shell navigation#205
hamzamerzic merged 1 commit into
mobius-os:mainfrom
hamzamerzic:fix/chat-draft-navigation-handoffs

Conversation

@hamzamerzic

Copy link
Copy Markdown
Collaborator

Summary

  • resume the untouched Standard-mode chat after a temporary app visit instead of allocating a second blank chat
  • keep Builder mode additive when opening another chat
  • deliver app-supplied open-chat drafts to retained ChatViews as well as remounted ones
  • share the existing one-shot composer handoff for draft updates and focus without forcing chat remounts

Why

Möbius already persisted each composer draft, but two navigation paths could make it appear lost. In Standard mode, using New chat after visiting an app allocated another blank chat instead of returning to the unfinished one. App handoffs such as Contribute's Refresh in chat wrote only to browser storage, so a ChatView that remained mounted kept its old controlled composer state.

The fix keeps the existing authoritative empty-chat verification, limits resume behavior to Standard mode, and updates retained composers without resetting transcript, scroll, or stream state.

Related work

#117 preserves unfinished attachment drafts across chat remounts. This addresses the separate shell-routing and retained-component paths, including app-provided drafts when no remount occurs.

Testing

  • focused Shell draft, navigation, and handoff tests (92 passed)
  • complete frontend unit suite (1,860 passed)
  • production frontend build
  • exact browser checks for Standard chat → app → New chat and Contribute → already-mounted source chat

Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
@hamzamerzic hamzamerzic added area: ui User interface and interaction design bug Something isn't working labels Jul 24, 2026
@hamzamerzic
hamzamerzic merged commit a6b05c7 into mobius-os:main Jul 24, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: ui User interface and interaction design bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant