Skip to content

feat: resume Muse ACP sessions without replay - #5

Draft
obviyus wants to merge 4 commits into
bex-co:mainfrom
obviyus:codex/muse-session-resume
Draft

feat: resume Muse ACP sessions without replay#5
obviyus wants to merge 4 commits into
bex-co:mainfrom
obviyus:codex/muse-session-resume

Conversation

@obviyus

@obviyus obviyus commented Sep 1, 2026

Copy link
Copy Markdown

Problem

The adapter supports history-replaying session/load but not lightweight session/resume. Clients cannot rebind a retained Muse session with current MCP servers without replaying its full transcript.

Fix

  • Advertise and implement stable ACP session/resume.
  • Preserve live mode and configuration while replacing the current MCP server snapshot.
  • Recreate adapter state from Muse's retained session store after close or process restart without replaying history.
  • Keep the canonical original workspace and reject real workspace changes with a clear next step.
  • Accept symlink-equivalent paths while storing the canonical target to prevent later symlink retargeting.
  • Reject missing/deleted workspaces, extra workspace roots, unknown sessions, and mid-turn resume with typed ACP errors.

Verification

  • Same-connection mode/config preservation and MCP refresh.
  • Symlink-equivalent workspace acceptance and canonical storage.
  • Changed, missing, and deleted workspace error paths.
  • Additional-directory rejection.
  • Mid-turn rejection with unchanged state.
  • Real Muse echo: close → resume → no history replay → next prompt succeeds.
  • npm run check
  • npm run build
  • npm run test:run — 125 passed, 2 live-provider tests skipped
  • P1 autoreview — clean.
  • Fable protocol, safety, and implementation reviews — clean.

Dependencies

This draft is stacked on #2, #3, and #4. Merge those first; GitHub will then reduce this PR to the resume implementation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant