461
break;
462
case 'dispatchAction':
464
>
this._logService.trace(`[ProtocolServer] dispatchAction: ${JSON.stringify(msg.params.action.type)}`);
465
>
const action = msg.params.action as SessionAction | ChatAction | TerminalAction | ClientChangesetAction | ClientAnnotationsAction | IRootConfigChangedAction;
466
>
const channel = msg.params.channel;
467
>
// Multiroot working-directory mutations are declared in the
468
>
// protocol but not yet supported: they would mutate the
469
>
// synchronized access set without reconfiguring the agent's
470
>
// actual directory access. Reject them through the normal
471
>
// reconciliation path (preserving the client's origin) so the
472
>
// client rolls back its optimistic action instead of leaving
473
>
// it pending, until capability-backed multiroot support lands.
474
>
if (UNSUPPORTED_CLIENT_ACTION_TYPES.has(action.type)) {
475
this._logService.warn(`[ProtocolServer] rejecting unsupported client action: ${action.type}`);
476
this._stateManager.rejectClientAction(