@downcity/agent 1.1.232 → 1.1.237

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 (165) hide show
  1. package/bin/agent/local/Agent.d.ts +1 -1
  2. package/bin/agent/local/Agent.js +2 -2
  3. package/bin/agent/local/Agent.js.map +1 -1
  4. package/bin/agent/local/services/AgentSessions.d.ts +4 -4
  5. package/bin/agent/local/services/AgentSessions.d.ts.map +1 -1
  6. package/bin/agent/local/services/AgentSessions.js +8 -8
  7. package/bin/agent/local/services/AgentSessions.js.map +1 -1
  8. package/bin/agent/remote/RemoteSession.d.ts +2 -0
  9. package/bin/agent/remote/RemoteSession.d.ts.map +1 -1
  10. package/bin/agent/remote/RemoteSession.js +4 -0
  11. package/bin/agent/remote/RemoteSession.js.map +1 -1
  12. package/bin/agent/remote/RemoteTransport.d.ts +2 -0
  13. package/bin/agent/remote/RemoteTransport.d.ts.map +1 -1
  14. package/bin/agent/remote/transports/HttpRemoteAgentTransport.d.ts +1 -0
  15. package/bin/agent/remote/transports/HttpRemoteAgentTransport.d.ts.map +1 -1
  16. package/bin/agent/remote/transports/HttpRemoteAgentTransport.js +11 -0
  17. package/bin/agent/remote/transports/HttpRemoteAgentTransport.js.map +1 -1
  18. package/bin/agent/remote/transports/RpcRemoteAgentTransport.d.ts +1 -0
  19. package/bin/agent/remote/transports/RpcRemoteAgentTransport.d.ts.map +1 -1
  20. package/bin/agent/remote/transports/RpcRemoteAgentTransport.js +3 -0
  21. package/bin/agent/remote/transports/RpcRemoteAgentTransport.js.map +1 -1
  22. package/bin/executor/Executor.d.ts +20 -2
  23. package/bin/executor/Executor.d.ts.map +1 -1
  24. package/bin/executor/Executor.js +102 -18
  25. package/bin/executor/Executor.js.map +1 -1
  26. package/bin/executor/composer/compaction/SessionCompactionComposer.d.ts +6 -0
  27. package/bin/executor/composer/compaction/SessionCompactionComposer.d.ts.map +1 -1
  28. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.d.ts +0 -9
  29. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.d.ts.map +1 -1
  30. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.js +4 -38
  31. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.js.map +1 -1
  32. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.d.ts +1 -3
  33. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.d.ts.map +1 -1
  34. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.js +7 -59
  35. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.js.map +1 -1
  36. package/bin/executor/core-engine/CoreEngineContextCompaction.d.ts +38 -0
  37. package/bin/executor/core-engine/CoreEngineContextCompaction.d.ts.map +1 -0
  38. package/bin/executor/core-engine/CoreEngineContextCompaction.js +392 -0
  39. package/bin/executor/core-engine/CoreEngineContextCompaction.js.map +1 -0
  40. package/bin/executor/core-engine/CoreEngineMessageState.d.ts +15 -0
  41. package/bin/executor/core-engine/CoreEngineMessageState.d.ts.map +1 -1
  42. package/bin/executor/core-engine/CoreEngineMessageState.js +20 -0
  43. package/bin/executor/core-engine/CoreEngineMessageState.js.map +1 -1
  44. package/bin/executor/core-engine/CoreEngineRunner.d.ts +9 -5
  45. package/bin/executor/core-engine/CoreEngineRunner.d.ts.map +1 -1
  46. package/bin/executor/core-engine/CoreEngineRunner.js +146 -35
  47. package/bin/executor/core-engine/CoreEngineRunner.js.map +1 -1
  48. package/bin/executor/store/history/SessionHistoryStore.d.ts +4 -10
  49. package/bin/executor/store/history/SessionHistoryStore.d.ts.map +1 -1
  50. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.d.ts.map +1 -1
  51. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.js +1 -3
  52. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.js.map +1 -1
  53. package/bin/executor/types/SessionRun.d.ts +8 -0
  54. package/bin/executor/types/SessionRun.d.ts.map +1 -1
  55. package/bin/index.d.ts +1 -1
  56. package/bin/index.d.ts.map +1 -1
  57. package/bin/index.js +1 -1
  58. package/bin/index.js.map +1 -1
  59. package/bin/plugin/core/PluginLocalExecution.js +3 -3
  60. package/bin/plugin/core/PluginLocalExecution.js.map +1 -1
  61. package/bin/plugin/core/PluginRegistry.d.ts +20 -2
  62. package/bin/plugin/core/PluginRegistry.d.ts.map +1 -1
  63. package/bin/plugin/core/PluginRegistry.js +100 -3
  64. package/bin/plugin/core/PluginRegistry.js.map +1 -1
  65. package/bin/rpc/Client.d.ts +6 -4
  66. package/bin/rpc/Client.d.ts.map +1 -1
  67. package/bin/rpc/Client.js +11 -0
  68. package/bin/rpc/Client.js.map +1 -1
  69. package/bin/session/Session.d.ts +7 -3
  70. package/bin/session/Session.d.ts.map +1 -1
  71. package/bin/session/Session.js +26 -19
  72. package/bin/session/Session.js.map +1 -1
  73. package/bin/session/SessionSystemBuilder.d.ts.map +1 -1
  74. package/bin/session/SessionSystemBuilder.js +3 -1
  75. package/bin/session/SessionSystemBuilder.js.map +1 -1
  76. package/bin/session/recorder/SessionRecorderCompaction.d.ts.map +1 -1
  77. package/bin/session/recorder/SessionRecorderCompaction.js +102 -60
  78. package/bin/session/recorder/SessionRecorderCompaction.js.map +1 -1
  79. package/bin/session/runtime/SessionPromptRuntime.d.ts +11 -7
  80. package/bin/session/runtime/SessionPromptRuntime.d.ts.map +1 -1
  81. package/bin/session/runtime/SessionPromptRuntime.js +22 -24
  82. package/bin/session/runtime/SessionPromptRuntime.js.map +1 -1
  83. package/bin/session/services/SessionStateService.d.ts +10 -6
  84. package/bin/session/services/SessionStateService.d.ts.map +1 -1
  85. package/bin/session/services/SessionStateService.js +29 -20
  86. package/bin/session/services/SessionStateService.js.map +1 -1
  87. package/bin/session/services/SessionTurnService.d.ts +13 -3
  88. package/bin/session/services/SessionTurnService.d.ts.map +1 -1
  89. package/bin/session/services/SessionTurnService.js +90 -7
  90. package/bin/session/services/SessionTurnService.js.map +1 -1
  91. package/bin/types/agent/SessionActor.d.ts +8 -0
  92. package/bin/types/agent/SessionActor.d.ts.map +1 -1
  93. package/bin/types/executor/SessionRunContext.d.ts +16 -8
  94. package/bin/types/executor/SessionRunContext.d.ts.map +1 -1
  95. package/bin/types/plugin/PluginRuntime.d.ts +36 -4
  96. package/bin/types/plugin/PluginRuntime.d.ts.map +1 -1
  97. package/bin/types/plugin/PluginState.d.ts +10 -0
  98. package/bin/types/plugin/PluginState.d.ts.map +1 -1
  99. package/bin/types/rpc/RpcProtocol.d.ts +21 -0
  100. package/bin/types/rpc/RpcProtocol.d.ts.map +1 -1
  101. package/bin/types/runtime/agent/AgentContext.d.ts +2 -2
  102. package/bin/types/runtime/agent/AgentContext.js +1 -1
  103. package/bin/types/session/SessionLocalState.d.ts +2 -2
  104. package/bin/types/session/SessionOptions.d.ts +5 -5
  105. package/bin/types/session/SessionOptions.d.ts.map +1 -1
  106. package/bin/types/session/SessionQueueCommand.d.ts +68 -0
  107. package/bin/types/session/SessionQueueCommand.d.ts.map +1 -0
  108. package/bin/types/session/SessionQueueCommand.js +10 -0
  109. package/bin/types/session/SessionQueueCommand.js.map +1 -0
  110. package/bin/utils/logger/Logger.d.ts +7 -9
  111. package/bin/utils/logger/Logger.d.ts.map +1 -1
  112. package/bin/utils/logger/Logger.js +11 -9
  113. package/bin/utils/logger/Logger.js.map +1 -1
  114. package/package.json +3 -3
  115. package/scripts/core-engine-context-compaction.test.mjs +411 -0
  116. package/scripts/logger-isolation.test.mjs +55 -0
  117. package/scripts/multi-agent-plugin-isolation.test.mjs +289 -0
  118. package/scripts/plugin-tool-bridge.test.mjs +52 -0
  119. package/scripts/remote-session-reconnect.test.mjs +18 -0
  120. package/scripts/session-compaction-context-window.test.mjs +27 -26
  121. package/scripts/session-config-turn-boundary.test.mjs +80 -26
  122. package/scripts/session-prompt-runtime.test.mjs +23 -15
  123. package/scripts/session-recorder.test.mjs +15 -24
  124. package/src/agent/local/Agent.ts +2 -2
  125. package/src/agent/local/services/AgentSessions.ts +10 -10
  126. package/src/agent/remote/RemoteSession.ts +5 -0
  127. package/src/agent/remote/RemoteTransport.ts +2 -0
  128. package/src/agent/remote/transports/HttpRemoteAgentTransport.ts +15 -0
  129. package/src/agent/remote/transports/RpcRemoteAgentTransport.ts +4 -0
  130. package/src/executor/Executor.ts +111 -19
  131. package/src/executor/composer/compaction/SessionCompactionComposer.ts +7 -0
  132. package/src/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.ts +4 -57
  133. package/src/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.ts +8 -66
  134. package/src/executor/core-engine/CoreEngineContextCompaction.ts +477 -0
  135. package/src/executor/core-engine/CoreEngineMessageState.ts +29 -0
  136. package/src/executor/core-engine/CoreEngineRunner.ts +200 -48
  137. package/src/executor/store/history/SessionHistoryStore.ts +4 -12
  138. package/src/executor/store/history/jsonl/JsonlSessionHistoryStore.ts +1 -3
  139. package/src/executor/types/SessionRun.ts +9 -0
  140. package/src/index.ts +1 -1
  141. package/src/plugin/core/PluginLocalExecution.ts +3 -3
  142. package/src/plugin/core/PluginRegistry.ts +116 -3
  143. package/src/rpc/Client.ts +15 -2
  144. package/src/session/Session.ts +28 -20
  145. package/src/session/SessionSystemBuilder.ts +4 -1
  146. package/src/session/recorder/SessionRecorderCompaction.ts +113 -65
  147. package/src/session/runtime/SessionPromptRuntime.ts +31 -46
  148. package/src/session/services/SessionStateService.ts +34 -25
  149. package/src/session/services/SessionTurnService.ts +97 -8
  150. package/src/types/agent/SessionActor.ts +9 -0
  151. package/src/types/executor/SessionRunContext.ts +17 -8
  152. package/src/types/plugin/PluginRuntime.ts +38 -4
  153. package/src/types/plugin/PluginState.ts +10 -0
  154. package/src/types/rpc/RpcProtocol.ts +23 -0
  155. package/src/types/runtime/agent/AgentContext.ts +2 -2
  156. package/src/types/session/SessionLocalState.ts +2 -2
  157. package/src/types/session/SessionOptions.ts +6 -6
  158. package/src/types/session/SessionQueueCommand.ts +78 -0
  159. package/src/utils/logger/Logger.ts +10 -10
  160. package/tsconfig.tsbuildinfo +1 -1
  161. package/bin/types/session/SessionConfigMutation.d.ts +0 -68
  162. package/bin/types/session/SessionConfigMutation.d.ts.map +0 -1
  163. package/bin/types/session/SessionConfigMutation.js +0 -10
  164. package/bin/types/session/SessionConfigMutation.js.map +0 -1
  165. package/src/types/session/SessionConfigMutation.ts +0 -78
@@ -197,6 +197,7 @@ export class Executor {
197
197
  return result;
198
198
  }
199
199
  finally {
200
+ await this.release_step_plugins(run_context);
200
201
  this.recovery_policy.reset_run_state();
201
202
  if (this.abort_controller === abort_controller) {
202
203
  this.abort_controller = null;
@@ -212,6 +213,7 @@ export class Executor {
212
213
  if (!String(this.historyComposer.sessionId || "").trim()) {
213
214
  throw new Error("Executor.run requires historyComposer.sessionId");
214
215
  }
216
+ await this.refresh_step_runtime(run_context);
215
217
  const composed_context = await this.contextComposer.compose(run_context);
216
218
  const tools = this.bind_run_scope_to_tools(composed_context.tools, run_context);
217
219
  const system = await this.systemComposer.resolve(run_context);
@@ -229,14 +231,17 @@ export class Executor {
229
231
  await this.emitAction(run_context, action);
230
232
  };
231
233
  const context_window = this.get_model_context_window?.();
232
- await this.compactionComposer.run({
233
- historyStore: this.historyStore,
234
- model,
235
- ...(context_window !== undefined ? { context_window } : {}),
236
- system,
237
- retryCount: retry_count,
238
- onAction: emit_compaction_action,
239
- });
234
+ if (retry_count > 0) {
235
+ await this.compactionComposer.run({
236
+ historyStore: this.historyStore,
237
+ model,
238
+ ...(context_window !== undefined ? { context_window } : {}),
239
+ system,
240
+ retryCount: retry_count,
241
+ force: true,
242
+ onAction: emit_compaction_action,
243
+ });
244
+ }
240
245
  }
241
246
  catch (error) {
242
247
  await this.emitAction(run_context, {
@@ -276,31 +281,104 @@ export class Executor {
276
281
  execute_input: input,
277
282
  model,
278
283
  run_context,
279
- resolve_model_turn: async () => await this.resolve_model_turn(run_context),
284
+ resolve_step_inputs: async () => await this.resolve_step_inputs(run_context),
280
285
  });
281
286
  }
282
287
  /**
283
- * 解析下一次 provider 请求实际使用的运行配置。
288
+ * Assistant writer 完成后归档当前 canonical 历史。
289
+ *
290
+ * 关键点(中文):持久化 compact 不能发生在流式 Assistant 草稿仍打开时,
291
+ * 因此由 SessionTurnService 在 writer complete/fail 之后显式调用。
292
+ */
293
+ async compact_history(run_context) {
294
+ let compaction_action_id = "";
295
+ try {
296
+ await this.refresh_step_runtime(run_context);
297
+ const model = this.resolveModelOrThrow();
298
+ const system = await this.systemComposer.resolve(run_context);
299
+ const emit_compaction_action = async (action) => {
300
+ if (action.state === "running")
301
+ compaction_action_id = action.id;
302
+ await this.emitAction(run_context, action);
303
+ };
304
+ const context_window = this.get_model_context_window?.();
305
+ return await this.compactionComposer.run({
306
+ historyStore: this.historyStore,
307
+ model,
308
+ ...(context_window !== undefined ? { context_window } : {}),
309
+ system,
310
+ retryCount: 0,
311
+ force: true,
312
+ onAction: emit_compaction_action,
313
+ });
314
+ }
315
+ catch (error) {
316
+ await this.emitAction(run_context, {
317
+ type: "action",
318
+ id: compaction_action_id ||
319
+ `compacting:${this.sessionId}:failed:${Date.now()}:${generateId()}`,
320
+ title: "Session records compact failed",
321
+ description: error instanceof Error ? error.message : String(error),
322
+ state: "failed",
323
+ metadata: {
324
+ v: 1,
325
+ ts: Date.now(),
326
+ sessionId: this.sessionId,
327
+ },
328
+ });
329
+ return { compacted: false, reason: "compact_failed" };
330
+ }
331
+ finally {
332
+ await this.release_step_plugins(run_context);
333
+ }
334
+ }
335
+ /**
336
+ * 解析下一 Session step 实际使用的运行配置。
284
337
  *
285
338
  * 关键点(中文)
286
339
  * - 调用方必须先提交 Session 统一输入队列,再调用本方法。
287
340
  * - 每次调用只读取一次 model、system 与 tools,并把它们传给同一个 `streamText()`。
288
341
  */
289
- async resolve_model_turn(run_context) {
290
- run_context.agentEnv = Object.freeze({ ...this.getEnv() });
291
- if (this.get_systems) {
292
- run_context.agentSystems = Object.freeze([...this.get_systems()]);
293
- }
294
- if (this.get_plugins) {
295
- run_context.agentPlugins = this.get_plugins();
296
- }
342
+ async resolve_step_inputs(run_context) {
343
+ await this.refresh_step_runtime(run_context);
297
344
  const composed_context = await this.contextComposer.compose(run_context);
345
+ const context_window = this.get_model_context_window?.();
298
346
  return {
299
347
  model: this.resolveModelOrThrow(),
300
348
  system: await this.systemComposer.resolve(run_context),
301
349
  tools: this.bind_run_scope_to_tools(composed_context.tools, run_context),
350
+ ...(context_window !== undefined ? { context_window } : {}),
302
351
  };
303
352
  }
353
+ /**
354
+ * 刷新当前 Session step 的 effective Agent 运行视图。
355
+ */
356
+ async refresh_step_runtime(run_context) {
357
+ await this.release_step_plugins(run_context);
358
+ run_context.agentEnv = Object.freeze({ ...this.getEnv() });
359
+ if (this.get_systems) {
360
+ run_context.agentSystems = Object.freeze([...this.get_systems()]);
361
+ }
362
+ else {
363
+ delete run_context.agentSystems;
364
+ }
365
+ if (this.get_plugins) {
366
+ run_context.agentPlugins = this.get_plugins().acquire();
367
+ }
368
+ else {
369
+ delete run_context.agentPlugins;
370
+ }
371
+ }
372
+ /**
373
+ * 释放当前 Session step 持有的 Plugin execution lease。
374
+ */
375
+ async release_step_plugins(run_context) {
376
+ const plugins = run_context.agentPlugins;
377
+ if (!plugins)
378
+ return;
379
+ delete run_context.agentPlugins;
380
+ await plugins.release();
381
+ }
304
382
  /**
305
383
  * 为所有 tool 的 execute callback 绑定 ShellRunScope。
306
384
  *
@@ -349,6 +427,12 @@ export class Executor {
349
427
  ...(typeof input?.onStepCallback === "function"
350
428
  ? { onStepCallback: input.onStepCallback }
351
429
  : {}),
430
+ ...(typeof input?.hasPendingStepInput === "function"
431
+ ? { hasPendingStepInput: input.hasPendingStepInput }
432
+ : {}),
433
+ ...(typeof input?.consume_history_reload === "function"
434
+ ? { consume_history_reload: input.consume_history_reload }
435
+ : {}),
352
436
  ...(typeof input?.onAssistantStepCallback === "function"
353
437
  ? { onAssistantStepCallback: input.onAssistantStepCallback }
354
438
  : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"Executor.js","sourceRoot":"","sources":["../../src/executor/Executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Executor.js","sourceRoot":"","sources":["../../src/executor/Executor.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,12 @@ export type SessionCompactionInput = {
40
40
  * - 回调由上层 Session 负责转成订阅事件与 action record。
41
41
  */
42
42
  onAction?: (action: SessionActionRecordV1) => Promise<void>;
43
+ /**
44
+ * 是否明确要求持久化 deep compact。
45
+ *
46
+ * 普通模型调用不应因为历史字符数量而触发 compact;仅 usage 反馈或超限恢复会设置此值。
47
+ */
48
+ force?: boolean;
43
49
  };
44
50
  /**
45
51
  * Compaction Composer 协议。
@@ -1 +1 @@
1
- {"version":3,"file":"SessionCompactionComposer.d.ts","sourceRoot":"","sources":["../../../../src/executor/composer/compaction/SessionCompactionComposer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAEhF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC;;OAEG;IACH,YAAY,EAAE,mBAAmB,CAAC;IAElC;;OAEG;IACH,KAAK,EAAE,aAAa,CAAC;IAErB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAE7B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7D,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC;QAC1C,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IAEH;;;;;;OAMG;IACH,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;CAC/C"}
1
+ {"version":3,"file":"SessionCompactionComposer.d.ts","sourceRoot":"","sources":["../../../../src/executor/composer/compaction/SessionCompactionComposer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAEhF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC;;OAEG;IACH,YAAY,EAAE,mBAAmB,CAAC;IAElC;;OAEG;IACH,KAAK,EAAE,aAAa,CAAC;IAErB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAE7B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC;QAC1C,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IAEH;;;;;;OAMG;IACH,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;CAC/C"}
@@ -6,19 +6,11 @@
6
6
  * - 真正的读写与 compact 执行交由 history Store。
7
7
  */
8
8
  import type { SessionCompactionComposer, SessionCompactionInput } from "../../../composer/compaction/SessionCompactionComposer.js";
9
- type JsonlSessionCompactionComposerOptions = {
10
- keepLastMessages?: number;
11
- maxInputTokensApprox?: number;
12
- compactRatio?: number;
13
- };
14
9
  /**
15
10
  * JsonlSessionCompactionComposer 默认实现。
16
11
  */
17
12
  export declare class JsonlSessionCompactionComposer implements SessionCompactionComposer {
18
13
  readonly name = "summary_compaction_composer";
19
- private readonly options;
20
- constructor(options?: JsonlSessionCompactionComposerOptions);
21
- private resolvePolicy;
22
14
  run(input: SessionCompactionInput): Promise<{
23
15
  compacted: boolean;
24
16
  reason?: string;
@@ -32,5 +24,4 @@ export declare class JsonlSessionCompactionComposer implements SessionCompaction
32
24
  */
33
25
  shouldCompactOnError(error: unknown): boolean;
34
26
  }
35
- export {};
36
27
  //# sourceMappingURL=JsonlSessionCompactionComposer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"JsonlSessionCompactionComposer.d.ts","sourceRoot":"","sources":["../../../../../src/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,4DAA4D,CAAC;AAEpE,KAAK,qCAAqC,GAAG;IAC3C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,qBAAa,8BAA+B,YAAW,yBAAyB;IAC9E,QAAQ,CAAC,IAAI,iCAAiC;IAC9C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwC;gBAEpD,OAAO,CAAC,EAAE,qCAAqC;IAI3D,OAAO,CAAC,aAAa;IA0Cf,GAAG,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC;QAChD,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAYF;;;;;;OAMG;IACH,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;CAS9C"}
1
+ {"version":3,"file":"JsonlSessionCompactionComposer.d.ts","sourceRoot":"","sources":["../../../../../src/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,4DAA4D,CAAC;AAEpE;;GAEG;AACH,qBAAa,8BAA+B,YAAW,yBAAyB;IAC9E,QAAQ,CAAC,IAAI,iCAAiC;IAExC,GAAG,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC;QAChD,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAYF;;;;;;OAMG;IACH,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;CAS9C"}
@@ -10,48 +10,14 @@
10
10
  */
11
11
  export class JsonlSessionCompactionComposer {
12
12
  name = "summary_compaction_composer";
13
- options;
14
- constructor(options) {
15
- this.options = options || {};
16
- }
17
- resolvePolicy(retryCount, context_window) {
18
- const baseKeepLastMessages = typeof this.options.keepLastMessages === "number"
19
- ? Math.max(6, Math.min(5000, Math.floor(this.options.keepLastMessages)))
20
- : 30;
21
- const configured_max_input_tokens = typeof this.options.maxInputTokensApprox === "number"
22
- && Number.isFinite(this.options.maxInputTokensApprox)
23
- ? Math.max(2000, Math.floor(this.options.maxInputTokensApprox))
24
- : undefined;
25
- const model_context_window = Number.isSafeInteger(context_window) && Number(context_window) > 0
26
- ? Number(context_window)
27
- : undefined;
28
- const baseMaxInputTokensApprox = configured_max_input_tokens
29
- ?? (model_context_window !== undefined
30
- ? Math.max(1, Math.floor(model_context_window * 0.8))
31
- : 128000);
32
- const retryFactor = Math.max(1, Math.pow(2, retryCount));
33
- const keepLastMessages = Math.max(6, Math.floor(baseKeepLastMessages / retryFactor));
34
- const minimum_input_tokens = Math.min(2000, baseMaxInputTokensApprox);
35
- const maxInputTokensApprox = Math.max(minimum_input_tokens, Math.floor(baseMaxInputTokensApprox / retryFactor));
36
- const compactRatioRaw = typeof this.options.compactRatio === "number" &&
37
- Number.isFinite(this.options.compactRatio)
38
- ? this.options.compactRatio
39
- : 0.5;
40
- const compactRatio = Math.max(0.1, Math.min(0.9, compactRatioRaw));
41
- return {
42
- keepLastMessages,
43
- maxInputTokensApprox,
44
- compactRatio,
45
- };
46
- }
47
13
  async run(input) {
48
- const policy = this.resolvePolicy(input.retryCount, input.context_window);
14
+ if (!input.force && input.retryCount <= 0) {
15
+ return { compacted: false, reason: "not_requested" };
16
+ }
49
17
  return await input.historyStore.compact({
50
18
  model: input.model,
51
19
  system: input.system,
52
- keepLastMessages: policy.keepLastMessages,
53
- maxInputTokensApprox: policy.maxInputTokensApprox,
54
- compactRatio: policy.compactRatio,
20
+ force: true,
55
21
  ...(input.onAction ? { onAction: input.onAction } : {}),
56
22
  });
57
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"JsonlSessionCompactionComposer.js","sourceRoot":"","sources":["../../../../../src/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonlSessionCompactionComposer.js","sourceRoot":"","sources":["../../../../../src/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH;;GAEG;AACH,MAAM,OAAO,8BAA8B;IAChC,IAAI,GAAG,6BAA6B,CAAC;IAE9C,KAAK,CAAC,GAAG,CAAC,KAA6B;QAIrC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;YAC1C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;QACvD,CAAC;QACD,OAAO,MAAM,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC;YACtC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,KAAK,EAAE,IAAI;YACX,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxD,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,oBAAoB,CAAC,KAAc;QACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QACrC,OAAO,CACL,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YACnC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC7B,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YACpC,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CACpC,CAAC;IACJ,CAAC;CACF"}
@@ -11,10 +11,8 @@ import type { SessionActionRecordV1, SessionRecordV1, SessionMetadataV1 } from "
11
11
  export type SessionCompactParams = {
12
12
  model: LanguageModel;
13
13
  system: Array<SystemModelMessage>;
14
- keepLastMessages: number;
15
- maxInputTokensApprox: number;
16
14
  archiveOnCompact: boolean;
17
- compactRatio: number;
15
+ force?: boolean;
18
16
  onAction?: (action: SessionActionRecordV1) => Promise<void>;
19
17
  };
20
18
  type SessionCompactDeps = {
@@ -1 +1 @@
1
- {"version":3,"file":"JsonlSessionCompactionExecutor.d.ts","sourceRoot":"","sources":["../../../../../src/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACxB,MAAM,IAAI,CAAC;AAGZ,OAAO,KAAK,EACV,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EAElB,MAAM,oCAAoC,CAAC;AAY5C,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7D,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IACvD,OAAO,EAAE,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAC1C,oBAAoB,EAAE,CAAC,MAAM,EAAE;QAC7B,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,iBAAiB,CAAC,aAAa,CAAC,CAAC;KAChD,KAAK,eAAe,CAAC;IACtB,iBAAiB,EAAE,MAAM,MAAM,CAAC;IAChC,mBAAmB,EAAE,MAAM,MAAM,CAAC;IAClC,yBAAyB,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1E,CAAC;AAEF;;;;;;GAMG;AACH,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,kBAAkB,EACxB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAwMlD"}
1
+ {"version":3,"file":"JsonlSessionCompactionExecutor.d.ts","sourceRoot":"","sources":["../../../../../src/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACxB,MAAM,IAAI,CAAC;AAGZ,OAAO,KAAK,EACV,qBAAqB,EACrB,eAAe,EACf,iBAAiB,EAElB,MAAM,oCAAoC,CAAC;AAY5C,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAClC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7D,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IACvD,OAAO,EAAE,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAC1C,oBAAoB,EAAE,CAAC,MAAM,EAAE;QAC7B,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,iBAAiB,CAAC,aAAa,CAAC,CAAC;KAChD,KAAK,eAAe,CAAC;IACtB,iBAAiB,EAAE,MAAM,MAAM,CAAC;IAChC,mBAAmB,EAAE,MAAM,MAAM,CAAC;IAClC,yBAAyB,EAAE,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1E,CAAC;AAEF;;;;;;GAMG;AACH,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,kBAAkB,EACxB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAsLlD"}
@@ -52,28 +52,14 @@ export async function compactSessionMessagesIfNeeded(deps, params) {
52
52
  ? String(snapshot[snapshot.length - 1].id || "")
53
53
  : "";
54
54
  });
55
- if (snapshot.length < 4) {
56
- return { compacted: false, reason: "small_messages" };
57
- }
58
- const systemText = (params.system || [])
59
- .map((m) => String(m.content ?? ""))
60
- .join("\n\n");
61
- // 关键点(中文):session messages 现在可能包含 tool parts / output,必须把它们计入预算估算,否则会低估 token。
62
- let messagesJson = "";
63
- try {
64
- messagesJson = JSON.stringify(snapshot);
65
- }
66
- catch {
67
- messagesJson = "";
55
+ if (snapshot.length === 0) {
56
+ return { compacted: false, reason: "nothing_to_compact" };
68
57
  }
69
- const est = estimateTokensApproxFromText(systemText + "\n\n" + messagesJson);
70
- if (est <= params.maxInputTokensApprox) {
71
- return { compacted: false, reason: "under_budget" };
58
+ if (!params.force) {
59
+ return { compacted: false, reason: "not_requested" };
72
60
  }
73
- // 关键点(中文):触发 compact 后,优先压缩“最早一段消息”,默认比例 50%。
74
- const compactRatio = normalizeCompactRatio(params.compactRatio);
75
- const compactCount = resolveCompactCount(snapshot.length, compactRatio);
76
- const older = snapshot.slice(0, compactCount);
61
+ // 关键点(中文):明确 compact 时归档全部当前模型历史,避免单条巨大 assistant 永远留在 Active。
62
+ const older = snapshot;
77
63
  if (older.length === 0)
78
64
  return { compacted: false, reason: "nothing_to_compact" };
79
65
  action_started = true;
@@ -150,8 +136,7 @@ export async function compactSessionMessagesIfNeeded(deps, params) {
150
136
  // snapshotTailId 用于 debug,不作为强一致性依赖。
151
137
  void snapshotTailId;
152
138
  const current_model_messages = current.filter(is_session_message_record);
153
- const currentCompactCount = resolveCompactCount(current_model_messages.length, compactRatio);
154
- const currentOlder = current_model_messages.slice(0, currentCompactCount);
139
+ const currentOlder = current_model_messages;
155
140
  if (currentOlder.length === 0)
156
141
  return;
157
142
  const compacted_ids = new Set(currentOlder
@@ -188,43 +173,6 @@ export async function compactSessionMessagesIfNeeded(deps, params) {
188
173
  }
189
174
  return { compacted: true };
190
175
  }
191
- /**
192
- * 归一化压缩比例。
193
- *
194
- * 关键点(中文)
195
- * - 仅允许 0.1~0.9,避免“几乎不压缩”或“几乎全压缩”。
196
- */
197
- function normalizeCompactRatio(value) {
198
- if (!Number.isFinite(value))
199
- return 0.5;
200
- return Math.max(0.1, Math.min(0.9, value));
201
- }
202
- /**
203
- * 按比例计算前段压缩条数。
204
- *
205
- * 关键点(中文)
206
- * - 至少压缩 1 条;
207
- * - 至少保留 1 条未压缩消息。
208
- */
209
- function resolveCompactCount(total, ratio) {
210
- const n = Math.max(0, Math.floor(total));
211
- if (n <= 1)
212
- return 0;
213
- const raw = Math.floor(n * ratio);
214
- return Math.max(1, Math.min(n - 1, raw));
215
- }
216
- /**
217
- * 近似 token 估算。
218
- *
219
- * 算法说明(中文)
220
- * - 这里使用经验近似,不追求精确 tokenizer 一致性。
221
- * - 目标是为 compact 提供保守预算,宁可略高估也不要低估。
222
- */
223
- function estimateTokensApproxFromText(text) {
224
- const t = String(text || "");
225
- // 经验值:英文 ~4 chars/token;中文更接近 1-2 chars/token。这里用保守的 3 chars/token。
226
- return Math.ceil(t.length / 3);
227
- }
228
176
  /**
229
177
  * 从 UIMessage 提取可摘要的纯文本。
230
178
  *
@@ -1 +1 @@
1
- {"version":3,"file":"JsonlSessionCompactionExecutor.js","sourceRoot":"","sources":["../../../../../src/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonlSessionCompactionExecutor.js","sourceRoot":"","sources":["../../../../../src/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * CoreEngine 模型上下文压缩。
3
+ *
4
+ * 关键点(中文)
5
+ * - 触发条件只读取 Provider 返回的真实 usage,不做调用前 token 预估。
6
+ * - 压缩只作用于本次运行的 ModelMessage,不修改 Session canonical Message。
7
+ * - reasoning、tool call、tool result 与 approval 按 AI SDK 关联关系清理。
8
+ * - 首级保留文本历史,后续深度把历史前缀折叠为 checkpoint;最后 user 与最新工具事务始终原子保留。
9
+ * - 字符上限只用于约束已经决定压缩后的单个 part,不参与是否触发压缩的判断。
10
+ */
11
+ import { type ModelMessage } from "ai";
12
+ /** usage 达到模型上下文窗口 95% 时安排下一 step 压缩。 */
13
+ export declare const MODEL_CONTEXT_COMPACTION_TRIGGER_RATIO = 0.95;
14
+ /** 压缩后的真实 usage 需要回落到模型上下文窗口 50% 以内。 */
15
+ export declare const MODEL_CONTEXT_COMPACTION_TARGET_RATIO = 0.5;
16
+ /**
17
+ * 读取 Provider usage 中的实际总 token。
18
+ *
19
+ * 优先使用 `totalTokens`;Provider 未返回时才回退为 input 与 output 之和。
20
+ */
21
+ export declare function resolve_model_usage_tokens(usage: unknown): number | null;
22
+ /** 计算真实 usage 占当前模型上下文窗口的比例。 */
23
+ export declare function resolve_model_usage_ratio(usage: unknown, context_window: number | undefined): number | null;
24
+ /**
25
+ * 判断一次真实 usage 是否要求下一 step 继续压缩。
26
+ *
27
+ * 普通调用使用 95% 触发水位;刚执行过压缩的调用使用 50% 目标水位验收。
28
+ */
29
+ export declare function should_compact_after_usage(usage_ratio: number | null, validating_compaction: boolean): boolean;
30
+ /**
31
+ * 对当前 ModelMessage 做一次 part 级深度压缩。
32
+ *
33
+ * `compact_depth` 每增加一级都会把保留预算减半,用于真实 usage 未达到目标水位时继续收紧。
34
+ */
35
+ export declare function deep_compact_model_messages(messages: ModelMessage[], compact_depth?: number): ModelMessage[];
36
+ /** 对文本做确定性的 head/tail 折叠。 */
37
+ export declare function fold_compacted_text(text: string, max_chars: number): string;
38
+ //# sourceMappingURL=CoreEngineContextCompaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoreEngineContextCompaction.d.ts","sourceRoot":"","sources":["../../../src/executor/core-engine/CoreEngineContextCompaction.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAiB,KAAK,YAAY,EAAE,MAAM,IAAI,CAAC;AAEtD,yCAAyC;AACzC,eAAO,MAAM,sCAAsC,OAAO,CAAC;AAE3D,wCAAwC;AACxC,eAAO,MAAM,qCAAqC,MAAM,CAAC;AAWzD;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAUxE;AAED,gCAAgC;AAChC,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,EACd,cAAc,EAAE,MAAM,GAAG,SAAS,GACjC,MAAM,GAAG,IAAI,CAOf;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,qBAAqB,EAAE,OAAO,GAC7B,OAAO,CAKT;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,YAAY,EAAE,EACxB,aAAa,SAAI,GAChB,YAAY,EAAE,CA2EhB;AAED,6BAA6B;AAC7B,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAS3E"}