Skip to content

Allow ACP session settings to be changed offline and replayed on reconnect #127

Description

@cxxxxxn

Problem

ACP session settings currently require a live connection. If the agent is unavailable, changing a cached model, mode, or config option fails and the optimistic selection is reverted.

Expected behavior

Treat selector changes as durable per-thread intent:

  • Allow changing cached settings while the ACP agent is offline.
  • Persist the requested selection before attempting the live RPC.
  • Replay pending selections when the session reconnects.
  • Preserve intent after transient connection failures.
  • Clear intent only when the agent definitively rejects the value.
  • Show a pending synchronization state.
  • Keep selectors unavailable only when no cached catalogue exists.

Existing foundation

The ACP driver already persists per-thread selections and replays them when opening or resuming a session. However, the current set-RPC path records a selection only after the live control operation succeeds.

Acceptance criteria

  • Offline model selections survive reload.
  • Pending selections are applied before the next prompt after reconnect.
  • Transient failures do not erase user intent.
  • Unsupported selections are removed with an actionable message.
  • Existing online changes remain immediate.
  • Tests cover persistence, reconnect replay, rejection, and missing catalogues.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions