acpx 0.13.1 → 0.13.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/flows.js CHANGED
@@ -1,2 +1,2 @@
1
- import { a as parseStrictJsonObject, d as checkpoint, f as compute, i as parseJsonObject, l as acp, m as shell, n as decisionEdge, o as FlowRunner, p as defineFlow, r as extractJsonObject, s as flowRunsBaseDir, t as decision, u as action } from "./flows-fzH0GKYF.js";
1
+ import { a as parseStrictJsonObject, d as checkpoint, f as compute, i as parseJsonObject, l as acp, m as shell, n as decisionEdge, o as FlowRunner, p as defineFlow, r as extractJsonObject, s as flowRunsBaseDir, t as decision, u as action } from "./flows-BiRKgCnW.js";
2
2
  export { FlowRunner, acp, action, checkpoint, compute, decision, decisionEdge, defineFlow, extractJsonObject, flowRunsBaseDir, parseJsonObject, parseStrictJsonObject, shell };
@@ -982,7 +982,7 @@ function parseJsonRpcErrorMessage(message) {
982
982
  }
983
983
  //#endregion
984
984
  //#region src/session/event-log.ts
985
- const DEFAULT_EVENT_SEGMENT_MAX_BYTES = 64 * 1024 * 1024;
985
+ const DEFAULT_EVENT_SEGMENT_MAX_BYTES = 67108864;
986
986
  function sessionBaseDir$1() {
987
987
  return path.join(os.homedir(), ".acpx", "sessions");
988
988
  }
@@ -2068,7 +2068,7 @@ function toWritePreview(content) {
2068
2068
  const visibleLines = lines.slice(0, WRITE_PREVIEW_MAX_LINES);
2069
2069
  let preview = visibleLines.join("\n");
2070
2070
  if (lines.length > visibleLines.length) preview += `\n... (${lines.length - visibleLines.length} more lines)`;
2071
- if (preview.length > WRITE_PREVIEW_MAX_CHARS) preview = `${preview.slice(0, WRITE_PREVIEW_MAX_CHARS - 3)}...`;
2071
+ if (preview.length > WRITE_PREVIEW_MAX_CHARS) preview = `${preview.slice(0, 1197)}...`;
2072
2072
  return preview;
2073
2073
  }
2074
2074
  async function defaultConfirmWrite(filePath, preview) {
@@ -3338,7 +3338,7 @@ function maybeWrapSessionControlError(method, error, context) {
3338
3338
  }
3339
3339
  //#endregion
3340
3340
  //#region src/acp/terminal-manager.ts
3341
- const DEFAULT_TERMINAL_OUTPUT_LIMIT_BYTES = 64 * 1024;
3341
+ const DEFAULT_TERMINAL_OUTPUT_LIMIT_BYTES = 65536;
3342
3342
  const DEFAULT_KILL_GRACE_MS = 1500;
3343
3343
  function nowIso() {
3344
3344
  return (/* @__PURE__ */ new Date()).toISOString();
@@ -5882,18 +5882,6 @@ function trimRuntimeToolResult(result) {
5882
5882
  if (typeof result.output === "string") result.output = trimRuntimeText(result.output, MAX_RUNTIME_TOOL_IO_CHARS);
5883
5883
  }
5884
5884
  //#endregion
5885
- //#region src/session/config-options.ts
5886
- function applyConfigOptionsToState(state, configOptions) {
5887
- const acpxState = cloneSessionAcpxState(state) ?? {};
5888
- applyConfigOptionsModelState(acpxState, configOptions);
5889
- return acpxState;
5890
- }
5891
- function applyConfigOptionsToRecord(record, result) {
5892
- const configOptions = result?.configOptions;
5893
- if (!configOptions) return;
5894
- record.acpx = applyConfigOptionsToState(record.acpx, configOptions);
5895
- }
5896
- //#endregion
5897
5885
  //#region src/session/mode-preference.ts
5898
5886
  function ensureAcpxState(state) {
5899
5887
  return state ?? {};
@@ -5926,17 +5914,6 @@ function setDesiredModeId(record, modeId) {
5926
5914
  else delete acpx.desired_mode_id;
5927
5915
  record.acpx = acpx;
5928
5916
  }
5929
- function setDesiredConfigOption(record, configId, value) {
5930
- const normalizedConfigId = normalizeModeId(configId);
5931
- if (!normalizedConfigId || normalizedConfigId === "mode" || normalizedConfigId === "model") return;
5932
- const acpx = ensureAcpxState(record.acpx);
5933
- const desired = { ...acpx.desired_config_options };
5934
- if (typeof value === "string") desired[normalizedConfigId] = value;
5935
- else delete desired[normalizedConfigId];
5936
- if (Object.keys(desired).length > 0) acpx.desired_config_options = desired;
5937
- else delete acpx.desired_config_options;
5938
- record.acpx = acpx;
5939
- }
5940
5917
  function clearDesiredConfigOption(state, configId) {
5941
5918
  const normalizedConfigId = normalizeModeId(configId);
5942
5919
  if (!normalizedConfigId || !state.desired_config_options) return;
@@ -5948,20 +5925,6 @@ function clearDesiredConfigOption(state, configId) {
5948
5925
  function getDesiredModelId(state) {
5949
5926
  return normalizeModelId(state?.session_options?.model);
5950
5927
  }
5951
- function hasStoredSessionOptions(options) {
5952
- return typeof options.model === "string" || Array.isArray(options.allowed_tools) || typeof options.max_turns === "number" || options.system_prompt !== void 0 || options.env !== void 0;
5953
- }
5954
- function setDesiredModelId(record, modelId, modelConfigId) {
5955
- const acpx = ensureAcpxState(record.acpx);
5956
- const normalized = normalizeModelId(modelId);
5957
- const sessionOptions = { ...acpx.session_options };
5958
- if (normalized) sessionOptions.model = normalized;
5959
- else delete sessionOptions.model;
5960
- if (hasStoredSessionOptions(sessionOptions)) acpx.session_options = sessionOptions;
5961
- else delete acpx.session_options;
5962
- clearDesiredConfigOption(acpx, modelConfigId ?? modelStateFromConfigOptions(acpx.config_options)?.configId);
5963
- record.acpx = acpx;
5964
- }
5965
5928
  function setCurrentModelId(record, modelId) {
5966
5929
  const acpx = ensureAcpxState(record.acpx);
5967
5930
  const normalized = normalizeModelId(modelId);
@@ -5998,6 +5961,50 @@ async function applyRequestedModelIfAdvertised(params) {
5998
5961
  };
5999
5962
  }
6000
5963
  //#endregion
5964
+ //#region src/session/config-options.ts
5965
+ function applyConfigOptionsToState(state, configOptions) {
5966
+ const acpxState = cloneSessionAcpxState(state) ?? {};
5967
+ applyConfigOptionsModelState(acpxState, configOptions);
5968
+ return acpxState;
5969
+ }
5970
+ function applyConfigOptionsToRecord(record, result) {
5971
+ const configOptions = result?.configOptions;
5972
+ if (!configOptions) return;
5973
+ record.acpx = applyConfigOptionsToState(record.acpx, configOptions);
5974
+ }
5975
+ function applyAcceptedConfigOptions(state, response) {
5976
+ const next = cloneSessionAcpxState(state) ?? {};
5977
+ if (!response) return next;
5978
+ applyConfigOptionsModelState(next, response.configOptions);
5979
+ if (!next.desired_config_options) return next;
5980
+ const desired = {};
5981
+ for (const option of response.configOptions) if (typeof option.currentValue === "string" && Object.hasOwn(next.desired_config_options, option.id)) desired[option.id] = option.currentValue;
5982
+ if (Object.keys(desired).length > 0) next.desired_config_options = desired;
5983
+ else delete next.desired_config_options;
5984
+ return next;
5985
+ }
5986
+ function applyModelSelection(state, modelId, response) {
5987
+ const modelConfigId = advertisedModelState(state)?.configId;
5988
+ const next = applyAcceptedConfigOptions(state, response);
5989
+ next.session_options = {
5990
+ ...next.session_options,
5991
+ model: modelId
5992
+ };
5993
+ next.current_model_id = currentModelIdFromSetModelResponse(response, modelId);
5994
+ clearDesiredConfigOption(next, modelConfigId ?? advertisedModelState(next)?.configId);
5995
+ return next;
5996
+ }
5997
+ function applyConfigOptionSelection(state, configId, value, response, modelConfigId = advertisedModelState(state)?.configId) {
5998
+ if (configId === modelConfigId || configId === modelStateFromConfigOptions(response.configOptions)?.configId) return applyModelSelection(state, value, response);
5999
+ const next = cloneSessionAcpxState(state) ?? {};
6000
+ if (configId === "mode") next.desired_mode_id = value;
6001
+ else next.desired_config_options = {
6002
+ ...next.desired_config_options,
6003
+ [configId]: value
6004
+ };
6005
+ return applyAcceptedConfigOptions(next, response);
6006
+ }
6007
+ //#endregion
6001
6008
  //#region src/runtime/engine/reconnect.ts
6002
6009
  function isProcessAlive(pid) {
6003
6010
  if (!pid || !Number.isInteger(pid) || pid <= 0 || pid === process.pid) return false;
@@ -6042,8 +6049,11 @@ async function replayDesiredMode(params) {
6042
6049
  });
6043
6050
  }
6044
6051
  }
6052
+ function canReplayModel(desiredModelId, models, createdFreshSession) {
6053
+ return Boolean(desiredModelId) && (createdFreshSession || models !== void 0);
6054
+ }
6045
6055
  async function replayDesiredModel(params) {
6046
- if (!params.desiredModelId) return { replayed: false };
6056
+ if (!canReplayModel(params.desiredModelId, params.models, params.createdFreshSession)) return { replayed: false };
6047
6057
  try {
6048
6058
  emitModelSupportWarning(assertRequestedModelSupported({
6049
6059
  requestedModel: params.desiredModelId,
@@ -6051,21 +6061,21 @@ async function replayDesiredModel(params) {
6051
6061
  agentCommand: params.record.agentCommand,
6052
6062
  context: "replay"
6053
6063
  }), params.suppressWarnings);
6054
- if (!params.models || params.models.currentModelId === params.desiredModelId) return { replayed: false };
6064
+ if (!params.models) return { replayed: false };
6055
6065
  const response = await withTimeout(params.client.setSessionModel(params.sessionId, params.desiredModelId, params.models), params.timeoutMs);
6056
- applyConfigOptionsToRecord(params.record, response);
6066
+ params.record.acpx = applyModelSelection(params.record.acpx, params.desiredModelId, response);
6057
6067
  const models = response ? modelStateFromConfigOptions(response.configOptions) : {
6058
6068
  ...params.models,
6059
6069
  currentModelId: params.desiredModelId
6060
6070
  };
6061
- if (params.verbose) process.stderr.write(`[acpx] replayed desired model ${params.desiredModelId} on fresh ACP session ${params.sessionId} (previous ${params.previousSessionId})\n`);
6071
+ if (params.verbose) process.stderr.write(`[acpx] replayed desired model ${params.desiredModelId} on ACP session ${params.sessionId} (previous ${params.previousSessionId})\n`);
6062
6072
  return {
6063
6073
  replayed: true,
6064
6074
  models,
6065
- configOptionsPresent: response !== void 0
6075
+ configOptions: response?.configOptions
6066
6076
  };
6067
6077
  } catch (error) {
6068
- throw new SessionModelReplayError(`Failed to replay saved session model ${params.desiredModelId} on fresh ACP session ${params.sessionId}: ${formatErrorMessage(error)}`, {
6078
+ throw new SessionModelReplayError(`Failed to replay saved session model ${params.desiredModelId} on ACP session ${params.sessionId}: ${formatErrorMessage(error)}`, {
6069
6079
  cause: error instanceof Error ? error : void 0,
6070
6080
  retryable: true
6071
6081
  });
@@ -6076,19 +6086,25 @@ function emitModelSupportWarning(warning, suppressWarnings) {
6076
6086
  }
6077
6087
  async function replayDesiredConfigOptions(params) {
6078
6088
  let result = { replayed: false };
6079
- for (const [configId, value] of Object.entries(params.desiredConfigOptions)) try {
6080
- const response = await withTimeout(params.client.setSessionConfigOption(params.sessionId, configId, value), params.timeoutMs);
6081
- applyConfigOptionsToRecord(params.record, response);
6082
- result = {
6083
- replayed: true,
6084
- models: modelStateFromConfigOptions(response.configOptions)
6085
- };
6086
- if (params.verbose) process.stderr.write(`[acpx] replayed desired config option ${configId} on fresh ACP session ${params.sessionId} (previous ${params.previousSessionId})\n`);
6087
- } catch (error) {
6088
- throw new SessionConfigOptionReplayError(`Failed to replay saved session config option ${configId} on fresh ACP session ${params.sessionId}: ${formatErrorMessage(error)}`, {
6089
- cause: error instanceof Error ? error : void 0,
6090
- retryable: true
6091
- });
6089
+ let acceptedConfigOptions = params.acceptedConfigOptions;
6090
+ const replacingKey = resolveReplacingConfigOptionId(params.replacingConfigOption, params.record);
6091
+ for (const [configId, value] of Object.entries(params.desiredConfigOptions)) {
6092
+ if (configId === replacingKey || acceptedConfigOptions && !acceptsSavedConfigValue(acceptedConfigOptions.find((option) => option.id === configId), value)) continue;
6093
+ try {
6094
+ const response = await withTimeout(params.client.setSessionConfigOption(params.sessionId, configId, value), params.timeoutMs);
6095
+ params.record.acpx = applyConfigOptionSelection(params.record.acpx, configId, value, response);
6096
+ acceptedConfigOptions = response.configOptions;
6097
+ result = {
6098
+ replayed: true,
6099
+ models: modelStateFromConfigOptions(response.configOptions)
6100
+ };
6101
+ if (params.verbose) process.stderr.write(`[acpx] replayed desired config option ${configId} on ACP session ${params.sessionId} (previous ${params.previousSessionId})\n`);
6102
+ } catch (error) {
6103
+ throw new SessionConfigOptionReplayError(`Failed to replay saved session config option ${configId} on ACP session ${params.sessionId}: ${formatErrorMessage(error)}`, {
6104
+ cause: error instanceof Error ? error : void 0,
6105
+ retryable: true
6106
+ });
6107
+ }
6092
6108
  }
6093
6109
  return result;
6094
6110
  }
@@ -6135,10 +6151,12 @@ async function connectAndLoadSession(options) {
6135
6151
  createdFreshSession = loadState.createdFreshSession;
6136
6152
  pendingAgentSessionId = loadState.pendingAgentSessionId;
6137
6153
  sessionModels = loadState.sessionModels;
6138
- const preferenceReplay = await replayFreshSessionPreferences({
6154
+ const preferenceReplay = await replaySessionPreferences({
6139
6155
  client,
6140
6156
  record,
6141
6157
  createdFreshSession,
6158
+ reusingLoadedSession,
6159
+ replacingConfigOption: options.replacingConfigOption,
6142
6160
  sessionId,
6143
6161
  pendingAgentSessionId,
6144
6162
  originalSessionId,
@@ -6169,7 +6187,7 @@ function preserveLegacyModels(models) {
6169
6187
  return models && !models.configId ? models : void 0;
6170
6188
  }
6171
6189
  function resolveConfigOptionsPresenceAfterReplay(replay, initiallyPresent) {
6172
- return initiallyPresent || replay.configReplay.replayed || replay.modelReplay.replayed && replay.modelReplay.configOptionsPresent;
6190
+ return initiallyPresent || replay.configReplay.replayed || replay.modelReplay.configOptions !== void 0;
6173
6191
  }
6174
6192
  function applyReconnectedModelState(record, sessionModels, configOptionsPresent, legacyModelMetadataPresent, createdFreshSession) {
6175
6193
  clearOmittedFreshSessionConfigOptions(record, createdFreshSession, configOptionsPresent);
@@ -6192,18 +6210,30 @@ function logReconnectAttempt(record, storedProcessAlive, shouldReconnect, verbos
6192
6210
  }
6193
6211
  if (shouldReconnect) process.stderr.write(`[acpx] saved session pid ${record.pid} is dead; respawning agent and attempting session reconnect\n`);
6194
6212
  }
6195
- async function replayFreshSessionPreferences(params) {
6196
- if (!params.createdFreshSession) return {
6213
+ function replacesModel(replacingConfigOption, models, originalAcpx) {
6214
+ const key = replacingConfigOption?.key;
6215
+ return key !== void 0 && (key === "model" || key === models?.configId || key === advertisedModelState(originalAcpx)?.configId);
6216
+ }
6217
+ function acceptsSavedConfigValue(option, value) {
6218
+ if (!option || option.type !== "select") return false;
6219
+ return option.currentValue === value || option.options.some((entry) => "options" in entry ? entry.options.some((choice) => choice.value === value) : entry.value === value);
6220
+ }
6221
+ function resolveReplacingConfigOptionId(replacement, record) {
6222
+ return replacement?.resolve?.(record) ?? replacement?.key;
6223
+ }
6224
+ async function replaySessionPreferences(params) {
6225
+ if (params.reusingLoadedSession) return {
6197
6226
  modelReplay: { replayed: false },
6198
6227
  configReplay: { replayed: false }
6199
6228
  };
6200
6229
  let modelReplay = { replayed: false };
6201
6230
  let configReplay = { replayed: false };
6231
+ const replacingModel = replacesModel(params.replacingConfigOption, params.sessionModels, params.originalAcpx);
6202
6232
  try {
6203
6233
  await replayDesiredMode({
6204
6234
  client: params.client,
6205
6235
  sessionId: params.sessionId,
6206
- desiredModeId: params.desiredModeId,
6236
+ desiredModeId: params.createdFreshSession ? params.desiredModeId : void 0,
6207
6237
  previousSessionId: params.originalSessionId,
6208
6238
  timeoutMs: params.timeoutMs,
6209
6239
  verbose: params.verbose
@@ -6211,10 +6241,11 @@ async function replayFreshSessionPreferences(params) {
6211
6241
  modelReplay = await replayDesiredModel({
6212
6242
  client: params.client,
6213
6243
  sessionId: params.sessionId,
6214
- desiredModelId: params.desiredModelId,
6244
+ desiredModelId: replacingModel ? void 0 : params.desiredModelId,
6215
6245
  previousSessionId: params.originalSessionId,
6216
6246
  record: params.record,
6217
6247
  models: params.sessionModels,
6248
+ createdFreshSession: params.createdFreshSession,
6218
6249
  timeoutMs: params.timeoutMs,
6219
6250
  verbose: params.verbose,
6220
6251
  suppressWarnings: params.suppressWarnings
@@ -6223,7 +6254,9 @@ async function replayFreshSessionPreferences(params) {
6223
6254
  client: params.client,
6224
6255
  record: params.record,
6225
6256
  sessionId: params.sessionId,
6226
- desiredConfigOptions: params.desiredConfigOptions,
6257
+ desiredConfigOptions: replacingModel ? {} : params.desiredConfigOptions,
6258
+ acceptedConfigOptions: modelReplay.configOptions,
6259
+ replacingConfigOption: replacingModel ? void 0 : params.replacingConfigOption,
6227
6260
  previousSessionId: params.originalSessionId,
6228
6261
  timeoutMs: params.timeoutMs,
6229
6262
  verbose: params.verbose
@@ -6379,6 +6412,7 @@ async function withConnectedSession(options) {
6379
6412
  client,
6380
6413
  record,
6381
6414
  resumePolicy: options.resumePolicy,
6415
+ replacingConfigOption: options.replacingConfigOption,
6382
6416
  timeoutMs: options.timeoutMs,
6383
6417
  verbose: options.verbose,
6384
6418
  activeController,
@@ -6516,6 +6550,6 @@ var LiveSessionCheckpoint = class {
6516
6550
  }
6517
6551
  };
6518
6552
  //#endregion
6519
- export { writeSessionRecord as $, PERMISSION_POLICY_ACTIONS as $t, REQUESTED_MODEL_UNSUPPORTED_ERROR_CODE as A, TimeoutError as At, getAcpxVersion as B, formatErrorMessage as Bt, mergeSessionOptions as C, PromptInputValidationError as Ct, applyLifecycleSnapshotToRecord as D, promptToDisplayText as Dt, applyConversation as E, parsePromptSource as Et, modelStateFromConfigOptions as F, normalizeAgentName$1 as Ft, findSession as G, toAcpErrorPayload as Gt, DEFAULT_HISTORY_LIMIT as H, normalizeOutputError as Ht, normalizeAgentCommandInput as I, resolveAgentArgv as It, listSessions as J, NON_INTERACTIVE_PERMISSION_POLICIES as Jt, findSessionByDirectoryWalk as K, AUTH_POLICIES as Kt, renderArgvIdentity as L, resolveAgentCommand as Lt, RequestedModelUnsupportedError as M, withTimeout as Mt, assertRequestedModelSupported as N, DEFAULT_AGENT_NAME as Nt, reconcileAgentSessionId as O, textPrompt as Ot, isRequestedModelUnsupportedError as P, listBuiltInAgents as Pt, resolveSessionRecord as Q, PERMISSION_MODES as Qt, runTimedExecFile as R, resolveCanonicalAgentName as Rt, advertisedModelState as S, parsePromptStopReason as St, sessionOptionsFromRecord as T, mergePromptSourceWithText as Tt, absolutePath as U, extractAcpError as Ut, permissionModeSatisfies as V, isRetryablePromptError as Vt, findGitRepositoryRoot as W, isAcpResourceNotFoundError as Wt, normalizeName as X, OUTPUT_ERROR_ORIGINS as Xt, listSessionsForAgent as Y, OUTPUT_ERROR_CODES as Yt, pruneSessions as Z, OUTPUT_FORMATS as Zt, createSessionConversation as _, sessionEventLockPath as _t, applyRequestedModelIfAdvertised as a, measurePerf as at, recordSessionUpdate as b, isAcpJsonRpcMessage as bt, setCurrentModelId as c, setPerfGauge as ct, setDesiredModelId as d, serializeSessionRecordForDisk as dt, SESSION_RECORD_SCHEMA as en, createAtomicWriteTempPath as et, syncAdvertisedModelState as f, normalizeRuntimeSessionId as ft, cloneSessionConversation as g, sessionEventActivePath as gt, cloneSessionAcpxState as h, sessionBaseDir$1 as ht, connectAndLoadSession as i, QueueProtocolError as in, incrementPerfCounter as it, REQUESTED_MODEL_UNSUPPORTED_REASONS as j, withInterrupt as jt, AcpClient as k, InterruptedError as kt, setDesiredConfigOption as l, startPerfTimer as lt, applyConfigOptionsToState as m, defaultSessionEventLog as mt, runPromptTurn as n, AgentSpawnError as nn, formatPerfMetric as nt, currentModelIdFromSetModelResponse as o, recordPerfDuration as ot, applyConfigOptionsToRecord as p, DEFAULT_EVENT_SEGMENT_MAX_BYTES as pt, isoNow$2 as q, EXIT_CODES as qt, withConnectedSession as r, QueueConnectionError as rn, getPerfMetricsSnapshot as rt, clearDesiredConfigOption as s, resetPerfMetrics as st, LiveSessionCheckpoint as t, AcpxOperationalError as tn, assertPersistedKeyPolicy as tt, setDesiredModeId as u, parseSessionRecord as ut, recordClientOperation as v, sessionEventSegmentPath as vt, persistSessionOptions as w, isPromptInput as wt, trimConversationForRuntime as x, parseJsonRpcErrorMessage as xt, recordPromptSubmission as y, extractSessionUpdateNotification as yt, splitCommandLine as z, exitCodeForOutputErrorCode as zt };
6553
+ export { formatPerfMetric as $, AgentSpawnError as $t, RequestedModelUnsupportedError as A, DEFAULT_AGENT_NAME as At, absolutePath as B, extractAcpError as Bt, sessionOptionsFromRecord as C, parsePromptSource as Ct, AcpClient as D, TimeoutError as Dt, reconcileAgentSessionId as E, InterruptedError as Et, runTimedExecFile as F, resolveCanonicalAgentName as Ft, listSessions as G, NON_INTERACTIVE_PERMISSION_POLICIES as Gt, findSession as H, toAcpErrorPayload as Ht, splitCommandLine as I, exitCodeForOutputErrorCode as It, pruneSessions as J, OUTPUT_FORMATS as Jt, listSessionsForAgent as K, OUTPUT_ERROR_CODES as Kt, getAcpxVersion as L, formatErrorMessage as Lt, modelStateFromConfigOptions as M, normalizeAgentName$1 as Mt, normalizeAgentCommandInput as N, resolveAgentArgv as Nt, REQUESTED_MODEL_UNSUPPORTED_ERROR_CODE as O, withInterrupt as Ot, renderArgvIdentity as P, resolveAgentCommand as Pt, assertPersistedKeyPolicy as Q, AcpxOperationalError as Qt, permissionModeSatisfies as R, isRetryablePromptError as Rt, persistSessionOptions as S, mergePromptSourceWithText as St, applyLifecycleSnapshotToRecord as T, textPrompt as Tt, findSessionByDirectoryWalk as U, AUTH_POLICIES as Ut, findGitRepositoryRoot as V, isAcpResourceNotFoundError as Vt, isoNow$2 as W, EXIT_CODES as Wt, writeSessionRecord as X, PERMISSION_POLICY_ACTIONS as Xt, resolveSessionRecord as Y, PERMISSION_MODES as Yt, createAtomicWriteTempPath as Z, SESSION_RECORD_SCHEMA as Zt, recordPromptSubmission as _, isAcpJsonRpcMessage as _t, applyConfigOptionSelection as a, setPerfGauge as at, advertisedModelState as b, PromptInputValidationError as bt, applyRequestedModelIfAdvertised as c, serializeSessionRecordForDisk as ct, setDesiredModeId as d, defaultSessionEventLog as dt, QueueConnectionError as en, getPerfMetricsSnapshot as et, syncAdvertisedModelState as f, sessionBaseDir$1 as ft, recordClientOperation as g, extractSessionUpdateNotification as gt, createSessionConversation as h, sessionEventSegmentPath as ht, connectAndLoadSession as i, resetPerfMetrics as it, isRequestedModelUnsupportedError as j, listBuiltInAgents as jt, REQUESTED_MODEL_UNSUPPORTED_REASONS as k, withTimeout as kt, currentModelIdFromSetModelResponse as l, normalizeRuntimeSessionId as lt, cloneSessionConversation as m, sessionEventLockPath as mt, runPromptTurn as n, measurePerf as nt, applyConfigOptionsToRecord as o, startPerfTimer as ot, cloneSessionAcpxState as p, sessionEventActivePath as pt, normalizeName as q, OUTPUT_ERROR_ORIGINS as qt, withConnectedSession as r, recordPerfDuration as rt, applyModelSelection as s, parseSessionRecord as st, LiveSessionCheckpoint as t, QueueProtocolError as tn, incrementPerfCounter as tt, setCurrentModelId as u, DEFAULT_EVENT_SEGMENT_MAX_BYTES as ut, recordSessionUpdate as v, parseJsonRpcErrorMessage as vt, applyConversation as w, promptToDisplayText as wt, mergeSessionOptions as x, isPromptInput as xt, trimConversationForRuntime as y, parsePromptStopReason as yt, DEFAULT_HISTORY_LIMIT as z, normalizeOutputError as zt };
6520
6554
 
6521
- //# sourceMappingURL=live-checkpoint-BSIrfgVo.js.map
6555
+ //# sourceMappingURL=live-checkpoint-Gw2oGjhe.js.map