nolo-cli 0.204.0-alpha.1 → 0.204.0-alpha.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.
Files changed (63) hide show
  1. package/{_executeModel-P6PJZHAX.js → _executeModel-ZUESBV6T.js} +12 -12
  2. package/{accountResolver-42BYPMVY.js → accountResolver-4LKIHEKL.js} +2 -2
  3. package/{agentDeleteCommand-X5I5MWOV.js → agentDeleteCommand-INOBZ3HP.js} +12 -12
  4. package/{agentEmailCommands-E5XLDF6C.js → agentEmailCommands-J6UTZBJC.js} +14 -14
  5. package/{agentListCommands-POQKNVWF.js → agentListCommands-6344UIVZ.js} +2 -2
  6. package/{agentMachineCommands-SKUVXH4H.js → agentMachineCommands-TE6IRTIB.js} +3 -3
  7. package/{agentRecordCommands-Y4MDCVEW.js → agentRecordCommands-34MHHVFX.js} +13 -13
  8. package/{agentRunCommand-D3ZNM22C.js → agentRunCommand-7OMDQBRA.js} +14 -14
  9. package/{agentRuntimeLocal-M2RCAORY.js → agentRuntimeLocal-EO6WCTF2.js} +2 -2
  10. package/{agentSlice-PQVS46OF.js → agentSlice-HUFGX25R.js} +1 -1
  11. package/{appDeleteCommands-JI6AEOJO.js → appDeleteCommands-3DCLKVYC.js} +2 -2
  12. package/{appDeployCommands-W3W4T7BU.js → appDeployCommands-X3MUBDOP.js} +2 -2
  13. package/{appDeployStatusCommands-QXPI3XS4.js → appDeployStatusCommands-PXC3EHHS.js} +2 -2
  14. package/{appGetCommands-SQV3MNFW.js → appGetCommands-ETPPE6H7.js} +2 -2
  15. package/{appListCommands-DMYRVV7E.js → appListCommands-OFIDLALN.js} +2 -2
  16. package/{chromeCommands-IVYZCGFL.js → chromeCommands-REEAH4SX.js} +2 -2
  17. package/{chromeOpsCommands-JFT4J4LQ.js → chromeOpsCommands-O4J346EQ.js} +2 -2
  18. package/{chunk-LV5V3KRZ.js → chunk-3MXJWFLO.js} +15 -3
  19. package/{chunk-4JBJG7XB.js → chunk-6KWPMJ5C.js} +12 -6
  20. package/{chunk-7H3DHUWL.js → chunk-77GDSGRM.js} +9 -8
  21. package/{chunk-IVNI335J.js → chunk-BC4UX4EZ.js} +2 -2
  22. package/{chunk-4UCFQCD4.js → chunk-BER2RSTL.js} +2 -2
  23. package/{chunk-ZZC64BCU.js → chunk-DQ7PCRZ6.js} +3 -3
  24. package/{chunk-7JWW65DU.js → chunk-F7CI2ZC5.js} +1 -1
  25. package/{chunk-COJ76M7O.js → chunk-G7RFM5QA.js} +2 -2
  26. package/{chunk-33OJHC3O.js → chunk-HNO2SEYI.js} +8 -8
  27. package/{chunk-WAECKLPA.js → chunk-IZLXIV5L.js} +1 -1
  28. package/{chunk-SRDWWDBV.js → chunk-KCYY5F2P.js} +2 -2
  29. package/{chunk-SQTBTTAE.js → chunk-M43VXSMX.js} +2 -2
  30. package/{chunk-PHNVUFU5.js → chunk-NGJWYWCF.js} +5 -5
  31. package/{chunk-QVJ7PDL7.js → chunk-SEEXRWNB.js} +9 -9
  32. package/{chunk-FC4MYLAX.js → chunk-SXMTSDFS.js} +2 -2
  33. package/{chunk-N5E77S4C.js → chunk-SZXJVQ7L.js} +7 -7
  34. package/{chunk-R7FPHYDS.js → chunk-UMIQZ7PX.js} +1 -1
  35. package/{chunk-HMQUNXZ7.js → chunk-VXZ4YYNK.js} +38 -12
  36. package/{chunk-HIVDQPQR.js → chunk-Y63ZSOR6.js} +1 -1
  37. package/{chunk-EWAQ4DYY.js → chunk-YPYNRTWB.js} +2 -2
  38. package/{chunk-6YY6MOCF.js → chunk-YR4MRACW.js} +3 -3
  39. package/{commandRegistry-YQ47YCJW.js → commandRegistry-XBZJWVTJ.js} +44 -44
  40. package/{contentThunks-UI4LT732.js → contentThunks-V5NBNTC5.js} +3 -3
  41. package/{createAgentAutomationAction-52LH2MRZ.js → createAgentAutomationAction-4TXJ366P.js} +3 -3
  42. package/{createDialogAction-35JSC2RO.js → createDialogAction-4SPT75DB.js} +4 -4
  43. package/{createPageAction-BPVFIHSO.js → createPageAction-D4GMHUPC.js} +3 -3
  44. package/{dialogCommands-XBAEKJVC.js → dialogCommands-6RRP5KUH.js} +2 -2
  45. package/{dialogSlice-KHGNTCKG.js → dialogSlice-IGPTWSPB.js} +2 -2
  46. package/{dist-Q2JSMAKA.js → dist-M676ULYG.js} +221 -2
  47. package/{docCreateCommands-XBI32MGB.js → docCreateCommands-7ODYDGRL.js} +2 -2
  48. package/{docDeleteCommands-7EKY3XJR.js → docDeleteCommands-OEIRM3CC.js} +2 -2
  49. package/{docReadCommands-LWDKFZKJ.js → docReadCommands-W56GNAWP.js} +2 -2
  50. package/{docStore-6MKEBLHS.js → docStore-HEAGW26W.js} +1 -1
  51. package/{docUpdateCommands-VFB53K4G.js → docUpdateCommands-33Q3SEG7.js} +2 -2
  52. package/{handleSendMessageAction-24JWFHXL.js → handleSendMessageAction-R2E7VYHQ.js} +7 -7
  53. package/index.js +3 -3
  54. package/{localRuntimeAdapter-RLASCXQ5.js → localRuntimeAdapter-J5GD66XZ.js} +12 -12
  55. package/{machineCommands-CF72WAXL.js → machineCommands-AT7B4LFO.js} +13 -13
  56. package/{machineWsRunDispatch-HITLYZOL.js → machineWsRunDispatch-CRDELH46.js} +13 -13
  57. package/package.json +1 -1
  58. package/{readlineWorkspace-K5EIF774.js → readlineWorkspace-FPHZGNZP.js} +15 -15
  59. package/{runAgentClientLoop-V7XBFJYH.js → runAgentClientLoop-6AAA5HNQ.js} +10 -10
  60. package/{spaceCommands-BFES7F7G.js → spaceCommands-LPKHBCPU.js} +2 -2
  61. package/{streamAgentChatTurn-RKRNK3P5.js → streamAgentChatTurn-WNNXYOLC.js} +12 -12
  62. package/{tools-5U5DDFBH.js → tools-QLURHFLS.js} +7 -7
  63. package/{updateDialogTitleAction-EK2S55EO.js → updateDialogTitleAction-5UVS3ADT.js} +3 -3
@@ -25,7 +25,7 @@ import {
25
25
  import {
26
26
  formatImageSummary,
27
27
  readLocalImage
28
- } from "./chunk-HIVDQPQR.js";
28
+ } from "./chunk-Y63ZSOR6.js";
29
29
  import {
30
30
  hasImageInRuntimeMessages,
31
31
  stripImagePartsFromMessages
@@ -19750,9 +19750,9 @@ function attachFailedTurnPersistence(error, status) {
19750
19750
  } catch {
19751
19751
  }
19752
19752
  }
19753
- async function loadAdapterDialogHistory(adapter, dialogId, strictContinueHistory) {
19753
+ async function loadAdapterDialogHistory(adapter, dialogId, options) {
19754
19754
  if (adapter.loadDialogHistoryWithSource) {
19755
- return await adapter.loadDialogHistoryWithSource(dialogId, { strictContinueHistory });
19755
+ return await adapter.loadDialogHistoryWithSource(dialogId, options);
19756
19756
  }
19757
19757
  return { messages: await adapter.loadDialogHistory(dialogId) };
19758
19758
  }
@@ -19856,8 +19856,14 @@ async function runLocalAgentTurn(input) {
19856
19856
  const loaded = await loadAdapterDialogHistory(
19857
19857
  input.adapter,
19858
19858
  input.continueDialogId,
19859
- input.strictContinueHistory
19859
+ {
19860
+ strictContinueHistory: input.strictContinueHistory,
19861
+ freshDialog: input.freshDialog
19862
+ }
19860
19863
  );
19864
+ if (input.freshDialog && loaded.messages.length > 0) {
19865
+ throw new Error("Fresh dialog already has history");
19866
+ }
19861
19867
  if (input.strictContinueHistory && (loaded.source === "none" || loaded.source === "partial")) {
19862
19868
  throw new Error(`Strict continuation history unavailable: ${loaded.source}`);
19863
19869
  }
@@ -19865,7 +19871,7 @@ async function runLocalAgentTurn(input) {
19865
19871
  dialogHistorySource = loaded.source;
19866
19872
  }
19867
19873
  } catch (error) {
19868
- if (input.strictContinueHistory) throw error;
19874
+ if (input.strictContinueHistory || input.freshDialog) throw error;
19869
19875
  const dialogId = await persistFailedLocalTurn({
19870
19876
  adapter: input.adapter,
19871
19877
  agentKey: agentConfig.key,
@@ -19878,7 +19884,7 @@ async function runLocalAgentTurn(input) {
19878
19884
  throw error;
19879
19885
  }
19880
19886
  loopTiming.mark("loadDialogHistory", 0);
19881
- if (input.continueDialogId && history.length === 0 && dialogHistorySource === "none") {
19887
+ if (input.continueDialogId && !input.freshDialog && history.length === 0 && dialogHistorySource === "none") {
19882
19888
  console.warn(
19883
19889
  `[localLoop] dialog history unavailable for ${input.continueDialogId} (source: none); continuing without prior context.`
19884
19890
  );
@@ -9,7 +9,7 @@ import {
9
9
  resolveRawAgentInput,
10
10
  resolveServerUrl,
11
11
  writeUsage
12
- } from "./chunk-LV5V3KRZ.js";
12
+ } from "./chunk-3MXJWFLO.js";
13
13
  import {
14
14
  parsePositiveFiniteNumberOrFallback
15
15
  } from "./chunk-Y5GCAMGP.js";
@@ -38,7 +38,7 @@ import {
38
38
  resolveFileWriteGateEnabled,
39
39
  resolveLocalUserId,
40
40
  validateInstaboxWorkspaceSelection
41
- } from "./chunk-HMQUNXZ7.js";
41
+ } from "./chunk-VXZ4YYNK.js";
42
42
  import {
43
43
  clearCredentialAvailability,
44
44
  readEffectiveCredentialEntry,
@@ -72,14 +72,14 @@ import {
72
72
  } from "./chunk-BMQ2MJUK.js";
73
73
  import {
74
74
  resolveCliLocalRuntimeKeyCapability
75
- } from "./chunk-QVJ7PDL7.js";
75
+ } from "./chunk-SEEXRWNB.js";
76
76
  import {
77
77
  isTransientFetchError
78
78
  } from "./chunk-KFHREHUQ.js";
79
79
  import {
80
80
  parseUiCard,
81
81
  uiCardFallback
82
- } from "./chunk-SRDWWDBV.js";
82
+ } from "./chunk-KCYY5F2P.js";
83
83
  import {
84
84
  isGatewayHttpStatus
85
85
  } from "./chunk-NF64D32W.js";
@@ -88,7 +88,7 @@ import {
88
88
  chooseMemoryOwners,
89
89
  loadMemoryCandidatesFromDb,
90
90
  resolveAgentMemoryPolicy
91
- } from "./chunk-COJ76M7O.js";
91
+ } from "./chunk-G7RFM5QA.js";
92
92
  import {
93
93
  API_REPORTED_COST_MULTIPLIER,
94
94
  estimateMessagesTokens,
@@ -96,7 +96,7 @@ import {
96
96
  resolveAgentContextWindow,
97
97
  resolveOccupancy,
98
98
  resolveOccupancyWindow
99
- } from "./chunk-33OJHC3O.js";
99
+ } from "./chunk-HNO2SEYI.js";
100
100
  import {
101
101
  isCliAuthorityBrokerProtocolError,
102
102
  isCliAuthorityBrokerTimeoutError,
@@ -116,7 +116,7 @@ import {
116
116
  LOCAL_AGENT_CONFIG_MISSING_CODE,
117
117
  LOCAL_TURN_ABORTED_CODE,
118
118
  readActionGate
119
- } from "./chunk-4JBJG7XB.js";
119
+ } from "./chunk-6KWPMJ5C.js";
120
120
  import {
121
121
  resolveAgentRuntimeConfigFromRecord
122
122
  } from "./chunk-MZXWSY4E.js";
@@ -11412,7 +11412,7 @@ function isBalanceExhaustedError(error) {
11412
11412
 
11413
11413
  // packages/cli/client/agentRun.ts
11414
11414
  async function loadRunLocalAgentTurn() {
11415
- const { runLocalAgentTurn } = await import("./agentRuntimeLocal-M2RCAORY.js");
11415
+ const { runLocalAgentTurn } = await import("./agentRuntimeLocal-EO6WCTF2.js");
11416
11416
  return runLocalAgentTurn;
11417
11417
  }
11418
11418
  var stripDebugNoise = (s) => s.replace(/\s*raw="[\s\S]*"/g, "").replace(/\s*raw=\S+/g, "").replace(/\s*headers=\[[^\]]*\]/g, "").replace(/\s*headers=\S+/g, "").trim();
@@ -16167,6 +16167,7 @@ async function runAgentRunCommand(args, deps) {
16167
16167
  let result = await raceWithWatchdog(
16168
16168
  runner({
16169
16169
  ...buildRunOptions(effectiveAgentKey),
16170
+ ...parsed.freshDialog ? { freshDialog: true } : {},
16170
16171
  ...modelOverride ? { modelOverride } : {}
16171
16172
  })
16172
16173
  );
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  toolRegistry
3
- } from "./chunk-QVJ7PDL7.js";
3
+ } from "./chunk-SEEXRWNB.js";
4
4
  import {
5
5
  runtime_default
6
- } from "./chunk-33OJHC3O.js";
6
+ } from "./chunk-HNO2SEYI.js";
7
7
  import {
8
8
  canonicalizeToolNames
9
9
  } from "./chunk-AKE53VMW.js";
@@ -2,7 +2,7 @@ import {
2
2
  clipMultilineText,
3
3
  fetchAndSerializeTable,
4
4
  waitForAbortableDelay
5
- } from "./chunk-SRDWWDBV.js";
5
+ } from "./chunk-KCYY5F2P.js";
6
6
  import {
7
7
  isGatewayHttpStatus
8
8
  } from "./chunk-NF64D32W.js";
@@ -21,7 +21,7 @@ import {
21
21
  } from "./chunk-AGIM7IMJ.js";
22
22
  import {
23
23
  fetchAndCacheMessages
24
- } from "./chunk-33OJHC3O.js";
24
+ } from "./chunk-HNO2SEYI.js";
25
25
  import {
26
26
  createSpaceKey
27
27
  } from "./chunk-UAD2WT54.js";
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  createCliLocalRuntimeAdapter,
3
3
  summarizeEndpoint
4
- } from "./chunk-HMQUNXZ7.js";
4
+ } from "./chunk-VXZ4YYNK.js";
5
5
  import {
6
6
  clipMultilineText
7
- } from "./chunk-SRDWWDBV.js";
7
+ } from "./chunk-KCYY5F2P.js";
8
8
  import {
9
9
  runLocalAgentTurn
10
- } from "./chunk-4JBJG7XB.js";
10
+ } from "./chunk-6KWPMJ5C.js";
11
11
  import {
12
12
  applyToolSurfaceConstraints
13
13
  } from "./chunk-2Q3LOAFE.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  formatImageSummary,
3
3
  readLocalImage
4
- } from "./chunk-HIVDQPQR.js";
4
+ } from "./chunk-Y63ZSOR6.js";
5
5
  import {
6
6
  toErrorMessage
7
7
  } from "./chunk-HNMXYYJR.js";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  addContentToSpace
3
- } from "./chunk-WAECKLPA.js";
3
+ } from "./chunk-IZLXIV5L.js";
4
4
  import {
5
5
  format,
6
6
  prepareAndPersistMessage,
7
7
  uiAskChoiceFunc,
8
8
  uiAskChoiceFunctionSchema
9
- } from "./chunk-33OJHC3O.js";
9
+ } from "./chunk-HNO2SEYI.js";
10
10
  import {
11
11
  formatISO
12
12
  } from "./chunk-ZRAU6T47.js";
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk-523DITKR.js";
12
12
  import {
13
13
  runLlm
14
- } from "./chunk-6YY6MOCF.js";
14
+ } from "./chunk-YR4MRACW.js";
15
15
  import {
16
16
  isMediaToolConfirmation
17
17
  } from "./chunk-QYPE3TS3.js";
@@ -11077,7 +11077,7 @@ var messageSlice = createSliceWithThunks({
11077
11077
  runtimeOptions: args.runtimeOptions
11078
11078
  });
11079
11079
  if (agentKeyToUse) {
11080
- const { streamAgentChatTurn } = await import("./agentSlice-PQVS46OF.js");
11080
+ const { streamAgentChatTurn } = await import("./agentSlice-HUFGX25R.js");
11081
11081
  await dispatch(
11082
11082
  streamAgentChatTurn({
11083
11083
  agentKey: agentKeyToUse,
@@ -13891,7 +13891,7 @@ var deleteDialogThunk = async (payload, thunkApi) => {
13891
13891
  }
13892
13892
  if (isCurrentDialog) {
13893
13893
  await thunkApi.dispatch(resetMsgs());
13894
- const { clearPendingAttachments: clearPendingAttachments2 } = await import("./dialogSlice-KHGNTCKG.js");
13894
+ const { clearPendingAttachments: clearPendingAttachments2 } = await import("./dialogSlice-IGPTWSPB.js");
13895
13895
  dispatch(clearPendingAttachments2());
13896
13896
  }
13897
13897
  return { dialogKey, isCurrentDialog, attachmentPlan };
@@ -13899,15 +13899,15 @@ var deleteDialogThunk = async (payload, thunkApi) => {
13899
13899
 
13900
13900
  // packages/chat/dialog/dialogSlice.ts
13901
13901
  var runCreateDialogAction = async (args, thunkApi) => {
13902
- const { createDialogAction } = await import("./createDialogAction-35JSC2RO.js");
13902
+ const { createDialogAction } = await import("./createDialogAction-4SPT75DB.js");
13903
13903
  return createDialogAction(args, thunkApi);
13904
13904
  };
13905
13905
  var runCreateAgentAutomationAction = async (args, thunkApi) => {
13906
- const { createAgentAutomationAction } = await import("./createAgentAutomationAction-52LH2MRZ.js");
13906
+ const { createAgentAutomationAction } = await import("./createAgentAutomationAction-4TXJ366P.js");
13907
13907
  return createAgentAutomationAction(args, thunkApi);
13908
13908
  };
13909
13909
  var runUpdateDialogTitleAction = async (args, thunkApi) => {
13910
- const { updateDialogTitleAction } = await import("./updateDialogTitleAction-EK2S55EO.js");
13910
+ const { updateDialogTitleAction } = await import("./updateDialogTitleAction-5UVS3ADT.js");
13911
13911
  return updateDialogTitleAction(args, thunkApi);
13912
13912
  };
13913
13913
  var runAddDialogAgentAction = async (args, thunkApi) => {
@@ -13931,7 +13931,7 @@ var runSetDialogExtraReferencesAction = async (args, thunkApi) => {
13931
13931
  return setDialogExtraReferencesAction(args, thunkApi);
13932
13932
  };
13933
13933
  var runHandleSendMessageAction = async (args, thunkApi) => {
13934
- const { handleSendMessageAction } = await import("./handleSendMessageAction-24JWFHXL.js");
13934
+ const { handleSendMessageAction } = await import("./handleSendMessageAction-R2E7VYHQ.js");
13935
13935
  return handleSendMessageAction(args, thunkApi);
13936
13936
  };
13937
13937
  function clearDialogState() {
@@ -13944,7 +13944,7 @@ var createPageAndAddReference = createAsyncThunk(
13944
13944
  async (payload, { dispatch, getState, rejectWithValue }) => {
13945
13945
  const { slateData, jsonData, title, type, fileId, groupId, dialogKey } = payload;
13946
13946
  try {
13947
- const { createDocState } = await import("./docStore-6MKEBLHS.js");
13947
+ const { createDocState } = await import("./docStore-HEAGW26W.js");
13948
13948
  const pageKey = await createDocState(
13949
13949
  { slateData, title },
13950
13950
  { dispatch, getState }
@@ -7,7 +7,7 @@ import {
7
7
  deleteDialog,
8
8
  runtime_default,
9
9
  toast
10
- } from "./chunk-33OJHC3O.js";
10
+ } from "./chunk-HNO2SEYI.js";
11
11
  import {
12
12
  UNCATEGORIZED_ID,
13
13
  addContentAction,
@@ -16,7 +16,7 @@ import {
16
16
  } from "./chunk-RXUKDHS5.js";
17
17
  import {
18
18
  fetchAndCacheTableRows
19
- } from "./chunk-WAECKLPA.js";
19
+ } from "./chunk-IZLXIV5L.js";
20
20
  import {
21
21
  createSpaceKey
22
22
  } from "./chunk-UAD2WT54.js";
@@ -783,7 +783,7 @@ var executeToolRun = createAsyncThunk(
783
783
  if (!executionInput) {
784
784
  throw new Error(`ToolRun ${id} has no input to execute with.`);
785
785
  }
786
- const { findToolExecutor } = await import("./tools-5U5DDFBH.js");
786
+ const { findToolExecutor } = await import("./tools-QLURHFLS.js");
787
787
  const { executor } = findToolExecutor(run.toolName);
788
788
  toolRunStarted({
789
789
  id: run.id,
@@ -333,7 +333,7 @@ async function saveDocState(arg, { dispatch, getState }) {
333
333
  ).unwrap();
334
334
  if (dbSpaceId) {
335
335
  try {
336
- const { updateContentTitle } = await import("./contentThunks-UI4LT732.js");
336
+ const { updateContentTitle } = await import("./contentThunks-V5NBNTC5.js");
337
337
  await dispatch(
338
338
  updateContentTitle({
339
339
  spaceId: dbSpaceId,
@@ -372,7 +372,7 @@ async function saveDocState(arg, { dispatch, getState }) {
372
372
  }
373
373
  }
374
374
  async function createDocState(args, thunkApi) {
375
- const { createPageAction } = await import("./createPageAction-BPVFIHSO.js");
375
+ const { createPageAction } = await import("./createPageAction-D4GMHUPC.js");
376
376
  return createPageAction(args, thunkApi);
377
377
  }
378
378
  function subscribe(listener) {
@@ -7,7 +7,7 @@ import {
7
7
  mergeReferences,
8
8
  resolveReferenceAssets,
9
9
  resolveToolsFromKeys
10
- } from "./chunk-4UCFQCD4.js";
10
+ } from "./chunk-BER2RSTL.js";
11
11
  import {
12
12
  UI_CARD_ENVELOPE_MAX_BYTES,
13
13
  getAllToolRuns,
@@ -18,14 +18,14 @@ import {
18
18
  selectSpaceContextLevel,
19
19
  selectUserTonePreset,
20
20
  uiCardFallback
21
- } from "./chunk-SRDWWDBV.js";
21
+ } from "./chunk-KCYY5F2P.js";
22
22
  import {
23
23
  resolveAgentRecommendedSkillNames,
24
24
  resolveAgentRequiredPackIds
25
25
  } from "./chunk-I5PBXF7O.js";
26
26
  import {
27
27
  getDocState
28
- } from "./chunk-SQTBTTAE.js";
28
+ } from "./chunk-M43VXSMX.js";
29
29
  import {
30
30
  resolveToolBaseUrl
31
31
  } from "./chunk-MYOH447Z.js";
@@ -37,7 +37,7 @@ import {
37
37
  } from "./chunk-A2ZMIRLN.js";
38
38
  import {
39
39
  getTableState
40
- } from "./chunk-WAECKLPA.js";
40
+ } from "./chunk-IZLXIV5L.js";
41
41
  import {
42
42
  getCurrentSpaceIdRaw,
43
43
  getViewMode
@@ -46,7 +46,7 @@ import {
46
46
  PERSONALIZATION_DIALOG_CATEGORY,
47
47
  buildPersonalizationDialogPolicyContext,
48
48
  selectAllMsgs
49
- } from "./chunk-33OJHC3O.js";
49
+ } from "./chunk-HNO2SEYI.js";
50
50
  import {
51
51
  selectPendingFiles
52
52
  } from "./chunk-OWYYDMGJ.js";
@@ -38,7 +38,7 @@ import {
38
38
  toolRunUpdated,
39
39
  uiCardFallback,
40
40
  waitForAbortableDelay
41
- } from "./chunk-SRDWWDBV.js";
41
+ } from "./chunk-KCYY5F2P.js";
42
42
  import {
43
43
  isGatewayHttpStatus
44
44
  } from "./chunk-NF64D32W.js";
@@ -55,7 +55,7 @@ import {
55
55
  } from "./chunk-I5PBXF7O.js";
56
56
  import {
57
57
  createDocState
58
- } from "./chunk-SQTBTTAE.js";
58
+ } from "./chunk-M43VXSMX.js";
59
59
  import {
60
60
  ToolApiError,
61
61
  buildToolRequestHeaders,
@@ -79,7 +79,7 @@ import {
79
79
  } from "./chunk-63W5N6P3.js";
80
80
  import {
81
81
  createDialogAction
82
- } from "./chunk-COJ76M7O.js";
82
+ } from "./chunk-G7RFM5QA.js";
83
83
  import {
84
84
  DEFAULT_COLLAPSED_CATEGORIES,
85
85
  addContentToSpace,
@@ -96,7 +96,7 @@ import {
96
96
  updateContentCategory,
97
97
  updateContentTitle,
98
98
  writeStoredCollapsedCategories
99
- } from "./chunk-WAECKLPA.js";
99
+ } from "./chunk-IZLXIV5L.js";
100
100
  import {
101
101
  getCurrentSpaceId,
102
102
  getCurrentSpaceIdRaw,
@@ -119,14 +119,14 @@ import {
119
119
  selectMsgById,
120
120
  uiAskChoiceFunc,
121
121
  uiAskChoiceFunctionSchema
122
- } from "./chunk-33OJHC3O.js";
122
+ } from "./chunk-HNO2SEYI.js";
123
123
  import {
124
124
  createAgent,
125
125
  deleteServerSyncedCredential,
126
126
  runLlm,
127
127
  streamAgentChatTurn,
128
128
  updateAgent
129
- } from "./chunk-6YY6MOCF.js";
129
+ } from "./chunk-YR4MRACW.js";
130
130
  import {
131
131
  buildMediaToolConfirmation,
132
132
  normalizeMediaConfirmExecutionRevision
@@ -3882,7 +3882,7 @@ async function deleteDialogsFunc(args, thunkApi) {
3882
3882
  const deletedDialogIds = [];
3883
3883
  const deletedDialogKeys = [];
3884
3884
  const failures = [];
3885
- const { deleteDialog: deleteDialog2 } = await import("./dialogSlice-KHGNTCKG.js");
3885
+ const { deleteDialog: deleteDialog2 } = await import("./dialogSlice-IGPTWSPB.js");
3886
3886
  for (const target of targets) {
3887
3887
  try {
3888
3888
  await thunkApi.dispatch(deleteDialog2(target.dbKey)).unwrap();
@@ -14351,7 +14351,7 @@ async function startAgentRunFunc(args, thunkApi, _context) {
14351
14351
  const bgResult = runtimeKey === "local" ? await hostAgentRunDispatcher({
14352
14352
  agentKey: effectiveAgentKey,
14353
14353
  userInput: content,
14354
- ...continueDialogId ? { continueDialogId, strictContinueHistory: true } : {},
14354
+ ...continueDialogId ? { continueDialogId, strictContinueHistory: true } : { freshDialog: true },
14355
14355
  waitForCompletion: wait === true,
14356
14356
  runKind: "subtask",
14357
14357
  runTitle: title,
@@ -18693,7 +18693,7 @@ async function updateDocFunc(args, thunkApi) {
18693
18693
  updated_at: (/* @__PURE__ */ new Date()).toISOString()
18694
18694
  };
18695
18695
  await dispatch(write({ data: updatedPageData, customKey: id })).unwrap();
18696
- const { getDocState, applyExternalDocUpdate } = await import("./docStore-6MKEBLHS.js");
18696
+ const { getDocState, applyExternalDocUpdate } = await import("./docStore-HEAGW26W.js");
18697
18697
  if (getDocState().pageKey === id) {
18698
18698
  applyExternalDocUpdate({
18699
18699
  slateData: finalSlateData,
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  fetchReferenceContents,
3
3
  resolveReferenceAssets
4
- } from "./chunk-4UCFQCD4.js";
4
+ } from "./chunk-BER2RSTL.js";
5
5
  import {
6
6
  updateTokensAction
7
- } from "./chunk-33OJHC3O.js";
7
+ } from "./chunk-HNO2SEYI.js";
8
8
  import {
9
9
  applyUpdateTokensFulfilled
10
10
  } from "./chunk-OWYYDMGJ.js";
@@ -5,7 +5,7 @@ import {
5
5
  inlineImageUrlsForCustomProvider,
6
6
  prepareTools,
7
7
  shouldInlineImageUrlsForAgent
8
- } from "./chunk-IVNI335J.js";
8
+ } from "./chunk-BC4UX4EZ.js";
9
9
  import {
10
10
  CONFIRMATION_INPUT_KEYS,
11
11
  INVALID_TOOL_ARGS_REPLACEMENT,
@@ -14,16 +14,16 @@ import {
14
14
  performFetchRequest,
15
15
  sanitizeOutboundMessages,
16
16
  stripModelToolArgs
17
- } from "./chunk-EWAQ4DYY.js";
17
+ } from "./chunk-YPYNRTWB.js";
18
18
  import {
19
19
  findToolExecutor,
20
20
  toolDefinitionsByName
21
- } from "./chunk-QVJ7PDL7.js";
21
+ } from "./chunk-SEEXRWNB.js";
22
22
  import {
23
23
  classifyApiError,
24
24
  classifyGenerationError,
25
25
  extractErrorDiagnostics
26
- } from "./chunk-4UCFQCD4.js";
26
+ } from "./chunk-BER2RSTL.js";
27
27
  import {
28
28
  createSSEParser,
29
29
  createToolRunId,
@@ -32,7 +32,7 @@ import {
32
32
  toolRunSetPending,
33
33
  toolRunStarted,
34
34
  toolRunSucceeded
35
- } from "./chunk-SRDWWDBV.js";
35
+ } from "./chunk-KCYY5F2P.js";
36
36
  import {
37
37
  getPublicImageAgentMode
38
38
  } from "./chunk-VIDPVFP3.js";
@@ -46,10 +46,10 @@ import {
46
46
  toast,
47
47
  toolResultNeedsUserConfirmation,
48
48
  updateToolMessage
49
- } from "./chunk-33OJHC3O.js";
49
+ } from "./chunk-HNO2SEYI.js";
50
50
  import {
51
51
  streamAgentChatTurn
52
- } from "./chunk-6YY6MOCF.js";
52
+ } from "./chunk-YR4MRACW.js";
53
53
  import {
54
54
  addActiveController,
55
55
  getActiveDialogKey,
@@ -16,7 +16,7 @@ import {
16
16
  } from "./chunk-CJ37ZMCQ.js";
17
17
  import {
18
18
  clearCliLocalRuntimePreparedAgentCache
19
- } from "./chunk-HMQUNXZ7.js";
19
+ } from "./chunk-VXZ4YYNK.js";
20
20
  import {
21
21
  readCredentialAvailability
22
22
  } from "./chunk-HAB2UDLT.js";
@@ -49,7 +49,7 @@ import {
49
49
  createChromeConnectorClientResolver,
50
50
  createVerifiedChromeConnectorClient,
51
51
  executeChromeConnectorTool
52
- } from "./chunk-7JWW65DU.js";
52
+ } from "./chunk-F7CI2ZC5.js";
53
53
  import {
54
54
  applyPublicAgentCatalogOverride
55
55
  } from "./chunk-RQ22OZD7.js";
@@ -68,7 +68,7 @@ import {
68
68
  import {
69
69
  inlineImageUrlsForCustomProvider,
70
70
  prepareTools
71
- } from "./chunk-IVNI335J.js";
71
+ } from "./chunk-BC4UX4EZ.js";
72
72
  import {
73
73
  getServerProviderSecret
74
74
  } from "./chunk-HS7MLR74.js";
@@ -90,7 +90,7 @@ import {
90
90
  resolveCliLocalRuntimeKeyCapability,
91
91
  resolveCliLocalSpawnDispatch,
92
92
  resolveStartAgentRunCwd
93
- } from "./chunk-QVJ7PDL7.js";
93
+ } from "./chunk-SEEXRWNB.js";
94
94
  import {
95
95
  fetchWithTransientRetry,
96
96
  isTransientFetchError
@@ -111,14 +111,14 @@ import {
111
111
  resolveBuiltinPlatformAgentConfig,
112
112
  runKeyed,
113
113
  validateAskChoiceInput
114
- } from "./chunk-33OJHC3O.js";
114
+ } from "./chunk-HNO2SEYI.js";
115
115
  import {
116
116
  BUILTIN_DIALOG_LLM_CHAT_FALLBACK_MODEL,
117
117
  BUILTIN_TITLE_LLM_CONFIG
118
118
  } from "./chunk-523DITKR.js";
119
119
  import {
120
120
  fetchServerSyncedCredential
121
- } from "./chunk-6YY6MOCF.js";
121
+ } from "./chunk-YR4MRACW.js";
122
122
  import {
123
123
  getDefaultCliLocalRuntimeDb
124
124
  } from "./chunk-P64WRQYV.js";
@@ -178,7 +178,7 @@ import {
178
178
  runExecShellGates,
179
179
  validateConfiguredRootExecutionLease,
180
180
  verifyOwnerRouteAck
181
- } from "./chunk-4JBJG7XB.js";
181
+ } from "./chunk-6KWPMJ5C.js";
182
182
  import {
183
183
  accumulateGeminiChunks,
184
184
  buildGeminiGenerateContentRequest,
@@ -4785,11 +4785,23 @@ async function loadCliDialogHistoryWithSource(args) {
4785
4785
  const { store, dialogId } = args;
4786
4786
  const localMessages = await readDialogMessages({ store, dialogId });
4787
4787
  const localState = await readCliDialogHistoryState({ store, dialogId });
4788
+ if (args.freshDialog) {
4789
+ if (localState || localMessages.length > 0) {
4790
+ throw new Error(`Fresh dialog already has history or recovery state: ${dialogId}`);
4791
+ }
4792
+ return { messages: [], source: "local" };
4793
+ }
4794
+ if (args.strictContinueHistory && localState?.reason === "remote-damaged") {
4795
+ throw new Error(`Strict continuation history load failed for ${dialogId}: local history incomplete (remote-damaged; damaged remote records)`);
4796
+ }
4788
4797
  if (args.strictContinueHistory && localMessages.length > 0) {
4789
- if (localState?.complete === false || localState?.reason === "remote-damaged") {
4790
- throw new Error(`Strict continuation history load failed for ${dialogId}: local history incomplete (${localState.reason}${localState.reason === "remote-damaged" ? `; damaged remote records, ${localState.issueCount ?? 0} finding(s)` : ""})`);
4798
+ if (localState?.reason === "remote-damaged") {
4799
+ throw new Error(`Strict continuation history load failed for ${dialogId}: local history incomplete (${localState.reason}; damaged remote records, ${localState.issueCount ?? 0} finding(s))`);
4800
+ }
4801
+ if (localState?.complete === false) {
4802
+ } else {
4803
+ return { messages: localMessages, source: "local" };
4791
4804
  }
4792
- return { messages: localMessages, source: "local" };
4793
4805
  }
4794
4806
  if (localMessages.length > 0 && localState?.complete === true) {
4795
4807
  if (localState.reason === "remote-damaged") {
@@ -4802,6 +4814,11 @@ async function loadCliDialogHistoryWithSource(args) {
4802
4814
  const authToken = resolveAuthToken(args.env);
4803
4815
  const base = resolveServerUrl(args.env);
4804
4816
  if (!authToken || !base) {
4817
+ if (args.strictContinueHistory) {
4818
+ throw new Error(
4819
+ `Strict continuation history load failed for ${dialogId}: local history incomplete (${localState?.reason ?? "remote-unavailable"})`
4820
+ );
4821
+ }
4805
4822
  if (localMessages.length > 0) {
4806
4823
  return {
4807
4824
  messages: localMessages,
@@ -4850,6 +4867,10 @@ async function loadCliDialogHistoryWithSource(args) {
4850
4867
  const reason = analysis ? `remote history incomplete: ${describeIssues(analysis.issues)}` : toErrorMessage(remoteError);
4851
4868
  throw new Error(`Strict continuation history load failed for ${dialogId}: ${reason}`);
4852
4869
  }
4870
+ if (args.strictContinueHistory && analysis && analysis.messages.length === 0 && localMessages.length > 0) {
4871
+ await persistIncompleteState({ store, dialogId, log: args.log });
4872
+ throw new Error(`Strict continuation history load failed for ${dialogId}: remote history empty while local messages exist`);
4873
+ }
4853
4874
  if (!analysis || analysis.messages.length === 0) {
4854
4875
  if (analysis && analysis.issues.length > 0) {
4855
4876
  args.log?.(
@@ -4866,12 +4887,16 @@ async function loadCliDialogHistoryWithSource(args) {
4866
4887
  args.log?.(`[cli] dialog history unavailable for ${dialogId} (source: none)`);
4867
4888
  return { messages: [], source: "none" };
4868
4889
  }
4869
- return await restoreRemoteHistory({
4890
+ const restored = await restoreRemoteHistory({
4870
4891
  store,
4871
4892
  dialogId,
4872
4893
  analysis,
4873
4894
  log: args.log
4874
4895
  });
4896
+ if (args.strictContinueHistory && restored.source !== "remote") {
4897
+ throw new Error(`Strict continuation history load failed for ${dialogId}: restored history is not clean (source: ${restored.source})`);
4898
+ }
4899
+ return restored;
4875
4900
  }
4876
4901
  async function restoreRemoteHistory(args) {
4877
4902
  const { store, dialogId, analysis } = args;
@@ -7367,7 +7392,7 @@ function createCliStartAgentRunExecutor(deps = {}) {
7367
7392
  "--msg-file",
7368
7393
  "PLACEHOLDER",
7369
7394
  "--bg",
7370
- ...continueDialogId ? ["--continue", continueDialogId, "--strict-continue-history"] : [],
7395
+ ...continueDialogId ? ["--continue", continueDialogId, "--strict-continue-history"] : ["--fresh"],
7371
7396
  // 非持久化派发(review 等一次性任务):透传 --ephemeral,run 完成后不留
7372
7397
  // dialog 记录。与 web 端 runAgentBackground 的 ephemeral: true 对齐。
7373
7398
  ...args.ephemeral === true ? ["--ephemeral"] : [],
@@ -10014,7 +10039,7 @@ async function createLocalDockerWorkload(args) {
10014
10039
  const createLifecycle = args.createLifecycle ?? (async () => {
10015
10040
  const [{ DockerWorkloadLifecycle, createDockerBindingAuthorizer }, accounts] = await Promise.all([
10016
10041
  import("./workloadLifecycle-JA75D6JR.js"),
10017
- import("./accountResolver-42BYPMVY.js")
10042
+ import("./accountResolver-4LKIHEKL.js")
10018
10043
  ]);
10019
10044
  const resolveAccount = args.resolveAccount ?? accounts.createDockerAccountResolver({
10020
10045
  env: args.env,
@@ -12943,6 +12968,7 @@ function createCliLocalRuntimeAdapter(deps) {
12943
12968
  // remote history reports `none` instead of looking like a new dialog.
12944
12969
  loadDialogHistoryWithSource: async (dialogId, options) => loadCliDialogHistoryWithSource({
12945
12970
  strictContinueHistory: options?.strictContinueHistory,
12971
+ freshDialog: options?.freshDialog,
12946
12972
  dialogId,
12947
12973
  store: await getOrCreateSharedStore(deps),
12948
12974
  env: deps.env,
@@ -27,7 +27,7 @@ async function readLocalImage(path, options) {
27
27
  if (!expected) throw new Error("read_image: unsupported image extension (PNG/JPEG/WebP/GIF only)");
28
28
  const bytes = await readFile(path);
29
29
  if (detectMime(bytes) !== expected) throw new Error("read_image: image extension and magic bytes do not match");
30
- const { default: sharp } = await import("./dist-Q2JSMAKA.js");
30
+ const { default: sharp } = await import("./dist-M676ULYG.js");
31
31
  const image = sharp(bytes, { limitInputPixels: 4e7, animated: false });
32
32
  const meta = await image.metadata();
33
33
  if (!meta.width || !meta.height) throw new Error("read_image: invalid image dimensions");