@downcity/agent 1.1.198 → 1.1.200

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 (143) hide show
  1. package/bin/executor/Executor.d.ts +2 -2
  2. package/bin/executor/Executor.d.ts.map +1 -1
  3. package/bin/executor/Executor.js +23 -24
  4. package/bin/executor/Executor.js.map +1 -1
  5. package/bin/executor/composer/compaction/SessionCompactionComposer.d.ts +5 -5
  6. package/bin/executor/composer/compaction/SessionCompactionComposer.d.ts.map +1 -1
  7. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.js +1 -1
  8. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.js.map +1 -1
  9. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.d.ts +2 -2
  10. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.d.ts.map +1 -1
  11. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.js +23 -30
  12. package/bin/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.js.map +1 -1
  13. package/bin/executor/composer/context/LocalSessionContextComposer.d.ts +2 -2
  14. package/bin/executor/composer/context/LocalSessionContextComposer.d.ts.map +1 -1
  15. package/bin/executor/composer/context/LocalSessionContextComposer.js.map +1 -1
  16. package/bin/executor/composer/context/SessionContextComposer.d.ts +2 -2
  17. package/bin/executor/composer/context/SessionContextComposer.d.ts.map +1 -1
  18. package/bin/executor/composer/history/jsonl/JsonlSessionHistoryComposer.d.ts.map +1 -1
  19. package/bin/executor/composer/history/jsonl/JsonlSessionHistoryComposer.js +4 -3
  20. package/bin/executor/composer/history/jsonl/JsonlSessionHistoryComposer.js.map +1 -1
  21. package/bin/executor/core-engine/CoreEngineRunner.d.ts.map +1 -1
  22. package/bin/executor/core-engine/CoreEngineRunner.js.map +1 -1
  23. package/bin/executor/core-engine/CoreEngineSignals.d.ts +4 -4
  24. package/bin/executor/core-engine/CoreEngineSignals.d.ts.map +1 -1
  25. package/bin/executor/core-engine/CoreEngineSignals.js.map +1 -1
  26. package/bin/executor/core-engine/CoreEngineUiStreamCollector.d.ts +3 -3
  27. package/bin/executor/core-engine/CoreEngineUiStreamCollector.d.ts.map +1 -1
  28. package/bin/executor/core-engine/CoreEngineUiStreamCollector.js.map +1 -1
  29. package/bin/executor/messages/AssistantResultPersistence.d.ts +3 -3
  30. package/bin/executor/messages/AssistantResultPersistence.d.ts.map +1 -1
  31. package/bin/executor/messages/AssistantResultPersistence.js.map +1 -1
  32. package/bin/executor/messages/SessionAttachmentMapper.d.ts +3 -3
  33. package/bin/executor/messages/SessionAttachmentMapper.d.ts.map +1 -1
  34. package/bin/executor/messages/SessionAttachmentMapper.js.map +1 -1
  35. package/bin/executor/messages/SessionMessageCodec.d.ts +1 -1
  36. package/bin/executor/messages/SessionMessageCodec.d.ts.map +1 -1
  37. package/bin/executor/messages/SessionMessageCodec.js +5 -5
  38. package/bin/executor/messages/SessionMessageCodec.js.map +1 -1
  39. package/bin/executor/messages/SessionMessageLog.d.ts +3 -3
  40. package/bin/executor/messages/SessionMessageLog.d.ts.map +1 -1
  41. package/bin/executor/messages/SessionMessageLog.js.map +1 -1
  42. package/bin/executor/messages/SessionStepEventMapper.d.ts +2 -2
  43. package/bin/executor/messages/SessionStepEventMapper.d.ts.map +1 -1
  44. package/bin/executor/messages/SessionStepEventMapper.js.map +1 -1
  45. package/bin/executor/messages/UserVisibleText.d.ts +2 -2
  46. package/bin/executor/messages/UserVisibleText.d.ts.map +1 -1
  47. package/bin/executor/messages/UserVisibleText.js +5 -0
  48. package/bin/executor/messages/UserVisibleText.js.map +1 -1
  49. package/bin/executor/services/ExecutorInflightService.d.ts +2 -2
  50. package/bin/executor/services/ExecutorInflightService.d.ts.map +1 -1
  51. package/bin/executor/services/ExecutorInflightService.js +9 -5
  52. package/bin/executor/services/ExecutorInflightService.js.map +1 -1
  53. package/bin/executor/store/history/SessionHistoryStore.d.ts +11 -11
  54. package/bin/executor/store/history/SessionHistoryStore.d.ts.map +1 -1
  55. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.d.ts +9 -7
  56. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.d.ts.map +1 -1
  57. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.js +98 -52
  58. package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.js.map +1 -1
  59. package/bin/executor/types/SessionMessages.d.ts +57 -18
  60. package/bin/executor/types/SessionMessages.d.ts.map +1 -1
  61. package/bin/executor/types/SessionMessages.js +33 -5
  62. package/bin/executor/types/SessionMessages.js.map +1 -1
  63. package/bin/executor/types/SessionRun.d.ts +2 -3
  64. package/bin/executor/types/SessionRun.d.ts.map +1 -1
  65. package/bin/index.d.ts +1 -1
  66. package/bin/index.d.ts.map +1 -1
  67. package/bin/index.js.map +1 -1
  68. package/bin/session/SessionTitle.d.ts.map +1 -1
  69. package/bin/session/SessionTitle.js +5 -0
  70. package/bin/session/SessionTitle.js.map +1 -1
  71. package/bin/session/browse/Browse.d.ts.map +1 -1
  72. package/bin/session/browse/Browse.js +36 -26
  73. package/bin/session/browse/Browse.js.map +1 -1
  74. package/bin/session/runtime/SessionPromptRuntime.d.ts +2 -2
  75. package/bin/session/runtime/SessionPromptRuntime.d.ts.map +1 -1
  76. package/bin/session/runtime/SessionPromptRuntime.js.map +1 -1
  77. package/bin/session/services/SessionStateService.d.ts +10 -10
  78. package/bin/session/services/SessionStateService.d.ts.map +1 -1
  79. package/bin/session/services/SessionStateService.js +44 -53
  80. package/bin/session/services/SessionStateService.js.map +1 -1
  81. package/bin/session/services/SessionTurnService.d.ts.map +1 -1
  82. package/bin/session/services/SessionTurnService.js +3 -3
  83. package/bin/session/services/SessionTurnService.js.map +1 -1
  84. package/bin/session/services/SessionViewService.d.ts.map +1 -1
  85. package/bin/session/services/SessionViewService.js +17 -27
  86. package/bin/session/services/SessionViewService.js.map +1 -1
  87. package/bin/session/storage/Persistence.d.ts +2 -2
  88. package/bin/session/storage/Persistence.d.ts.map +1 -1
  89. package/bin/session/storage/Persistence.js.map +1 -1
  90. package/bin/types/agent/SessionTypes.d.ts +10 -10
  91. package/bin/types/agent/SessionTypes.d.ts.map +1 -1
  92. package/bin/types/executor/SessionRunContext.d.ts +6 -6
  93. package/bin/types/executor/SessionRunContext.d.ts.map +1 -1
  94. package/bin/types/sdk/AgentSessionAction.d.ts +67 -0
  95. package/bin/types/sdk/AgentSessionAction.d.ts.map +1 -0
  96. package/bin/types/sdk/AgentSessionAction.js +10 -0
  97. package/bin/types/sdk/AgentSessionAction.js.map +1 -0
  98. package/bin/types/sdk/AgentSessionEvent.d.ts +2 -2
  99. package/bin/types/sdk/AgentSessionEvent.d.ts.map +1 -1
  100. package/bin/types/sdk/AgentSessionTurn.d.ts +2 -2
  101. package/bin/types/sdk/AgentSessionTurn.d.ts.map +1 -1
  102. package/package.json +3 -3
  103. package/scripts/{session-operation-message.test.mjs → session-action-message.test.mjs} +58 -41
  104. package/src/executor/Executor.ts +28 -29
  105. package/src/executor/composer/compaction/SessionCompactionComposer.ts +5 -5
  106. package/src/executor/composer/compaction/jsonl/JsonlSessionCompactionComposer.ts +1 -1
  107. package/src/executor/composer/compaction/jsonl/JsonlSessionCompactionExecutor.ts +32 -37
  108. package/src/executor/composer/context/LocalSessionContextComposer.ts +5 -2
  109. package/src/executor/composer/context/SessionContextComposer.ts +5 -2
  110. package/src/executor/composer/history/jsonl/JsonlSessionHistoryComposer.ts +7 -4
  111. package/src/executor/core-engine/CoreEngineRunner.ts +7 -4
  112. package/src/executor/core-engine/CoreEngineSignals.ts +7 -7
  113. package/src/executor/core-engine/CoreEngineUiStreamCollector.ts +5 -5
  114. package/src/executor/messages/AssistantResultPersistence.ts +6 -3
  115. package/src/executor/messages/SessionAttachmentMapper.ts +12 -9
  116. package/src/executor/messages/SessionMessageCodec.ts +5 -7
  117. package/src/executor/messages/SessionMessageLog.ts +5 -3
  118. package/src/executor/messages/SessionStepEventMapper.ts +5 -5
  119. package/src/executor/messages/UserVisibleText.ts +8 -2
  120. package/src/executor/services/ExecutorInflightService.ts +11 -7
  121. package/src/executor/store/history/SessionHistoryStore.ts +11 -10
  122. package/src/executor/store/history/jsonl/JsonlSessionHistoryStore.ts +120 -63
  123. package/src/executor/types/SessionMessages.ts +92 -22
  124. package/src/executor/types/SessionRun.ts +6 -3
  125. package/src/index.ts +5 -6
  126. package/src/session/SessionTitle.ts +3 -0
  127. package/src/session/browse/Browse.ts +49 -30
  128. package/src/session/runtime/SessionPromptRuntime.ts +6 -3
  129. package/src/session/services/SessionStateService.ts +56 -65
  130. package/src/session/services/SessionTurnService.ts +5 -4
  131. package/src/session/services/SessionViewService.ts +17 -27
  132. package/src/session/storage/Persistence.ts +5 -2
  133. package/src/types/agent/SessionTypes.ts +10 -10
  134. package/src/types/executor/SessionRunContext.ts +11 -11
  135. package/src/types/sdk/AgentSessionAction.ts +79 -0
  136. package/src/types/sdk/AgentSessionEvent.ts +2 -2
  137. package/src/types/sdk/AgentSessionTurn.ts +2 -2
  138. package/tsconfig.tsbuildinfo +1 -1
  139. package/bin/types/sdk/AgentSessionOperation.d.ts +0 -99
  140. package/bin/types/sdk/AgentSessionOperation.d.ts.map +0 -1
  141. package/bin/types/sdk/AgentSessionOperation.js +0 -10
  142. package/bin/types/sdk/AgentSessionOperation.js.map +0 -1
  143. package/src/types/sdk/AgentSessionOperation.ts +0 -125
@@ -7,9 +7,9 @@
7
7
  * - 这个接口刻意独立于 Composer,避免把“落盘事实源”误当成“组装策略”。
8
8
  */
9
9
  import type { LanguageModel } from "ai";
10
- import type { SessionMessageV1, SessionMetadataV1 } from "../../../executor/types/SessionMessages.js";
10
+ import type { SessionActionMessageV1, SessionMessageV1, SessionMetadataV1 } from "../../../executor/types/SessionMessages.js";
11
11
  import type { SessionSystemMessage } from "../../../executor/types/SessionPrompts.js";
12
- import type { AgentSessionOperationRecord } from "../../../types/sdk/AgentSessionOperation.js";
12
+ import type { AgentSessionActionRecord } from "../../../types/sdk/AgentSessionAction.js";
13
13
  /**
14
14
  * compact 输入参数。
15
15
  */
@@ -39,9 +39,9 @@ export type SessionHistoryCompactInput = {
39
39
  */
40
40
  compactRatio: number;
41
41
  /**
42
- * 可选 operation 发布回调。
42
+ * 可选 action 发布回调。
43
43
  */
44
- onOperation?: (operation: AgentSessionOperationRecord) => Promise<void>;
44
+ onAction?: (action: AgentSessionActionRecord) => Promise<void>;
45
45
  };
46
46
  /**
47
47
  * 会话历史事实源。
@@ -133,21 +133,21 @@ export interface SessionHistoryStore {
133
133
  source?: "egress" | "compact";
134
134
  }): SessionMessageV1;
135
135
  /**
136
- * 构造 operation 消息。
136
+ * 构造 action 消息。
137
137
  */
138
- operation(input: {
138
+ action(input: {
139
139
  /**
140
- * 当前 operation 结构化记录。
140
+ * 当前 action 结构化记录。
141
141
  */
142
- operation: AgentSessionOperationRecord;
142
+ action: AgentSessionActionRecord;
143
143
  /**
144
- * 消息元信息(除 schema 字段、kind、source 与 operation 字段)。
144
+ * 消息元信息(除 schema 字段)。
145
145
  */
146
- metadata: Omit<SessionMetadataV1, "v" | "ts" | "kind" | "source" | "operation"> & Partial<Pick<SessionMetadataV1, "ts">>;
146
+ metadata: Pick<SessionMetadataV1, "sessionId"> & Partial<Pick<SessionMetadataV1, "ts">>;
147
147
  /**
148
148
  * 可选消息 ID(默认自动生成)。
149
149
  */
150
150
  id?: string;
151
- }): SessionMessageV1;
151
+ }): SessionActionMessageV1;
152
152
  }
153
153
  //# sourceMappingURL=SessionHistoryStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SessionHistoryStore.d.ts","sourceRoot":"","sources":["../../../../src/executor/store/history/SessionHistoryStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionHistoryStore.d.ts","sourceRoot":"","sources":["../../../../src/executor/store/history/SessionHistoryStore.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,8 @@
6
6
  * - append 与 compact 共用同一把文件锁,避免并发覆盖。
7
7
  * - 不负责为模型组装 messages;组装逻辑放在 `JsonlSessionHistoryComposer`。
8
8
  */
9
- import type { SessionMessageV1, SessionMetadataV1 } from "../../../../executor/types/SessionMessages.js";
10
- import type { AgentSessionOperationRecord } from "../../../../types/sdk/AgentSessionOperation.js";
9
+ import type { SessionActionMessageV1, SessionMessageV1, SessionMetadataV1 } from "../../../../executor/types/SessionMessages.js";
10
+ import type { AgentSessionActionRecord } from "../../../../types/sdk/AgentSessionAction.js";
11
11
  import type { SessionHistoryPathOverrides } from "../../../../executor/types/SessionHistoryPaths.js";
12
12
  import type { SessionHistoryCompactInput, SessionHistoryStore } from "../../../../executor/store/history/SessionHistoryStore.js";
13
13
  /**
@@ -59,6 +59,7 @@ export declare class JsonlSessionHistoryStore implements SessionHistoryStore {
59
59
  private ensureLayout;
60
60
  private normalizeText;
61
61
  private normalizePersistedMessage;
62
+ private normalizeActionMessage;
62
63
  private hasStructuredAssistantParts;
63
64
  private mergeInflightWithFinal;
64
65
  private readMetaUnsafe;
@@ -67,9 +68,10 @@ export declare class JsonlSessionHistoryStore implements SessionHistoryStore {
67
68
  private writeInflightUnsafe;
68
69
  private removeInflightUnsafe;
69
70
  private appendMessageUnsafe;
71
+ private rewriteMessagesUnsafe;
72
+ private upsertActionMessageUnsafe;
70
73
  private withWriteLock;
71
74
  private normalizeSystem;
72
- private normalizeOperation;
73
75
  compact(input: SessionHistoryCompactInput): Promise<{
74
76
  compacted: boolean;
75
77
  reason?: string;
@@ -102,10 +104,10 @@ export declare class JsonlSessionHistoryStore implements SessionHistoryStore {
102
104
  kind?: "normal" | "summary";
103
105
  source?: "egress" | "compact";
104
106
  }): SessionMessageV1;
105
- operation(input: {
106
- operation: AgentSessionOperationRecord;
107
- metadata: Omit<SessionMetadataV1, "v" | "ts" | "kind" | "source" | "operation"> & Partial<Pick<SessionMetadataV1, "ts">>;
107
+ action(input: {
108
+ action: AgentSessionActionRecord;
109
+ metadata: Pick<SessionMetadataV1, "sessionId"> & Partial<Pick<SessionMetadataV1, "ts">>;
108
110
  id?: string;
109
- }): SessionMessageV1;
111
+ }): SessionActionMessageV1;
110
112
  }
111
113
  //# sourceMappingURL=JsonlSessionHistoryStore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"JsonlSessionHistoryStore.d.ts","sourceRoot":"","sources":["../../../../../src/executor/store/history/jsonl/JsonlSessionHistoryStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonlSessionHistoryStore.d.ts","sourceRoot":"","sources":["../../../../../src/executor/store/history/jsonl/JsonlSessionHistoryStore.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ import path from "node:path";
12
12
  import { generateId } from "../../../../utils/Id.js";
13
13
  import { getLogger } from "../../../../utils/logger/Logger.js";
14
14
  import { compactSessionMessagesIfNeeded } from "../../../composer/compaction/jsonl/JsonlSessionCompactionExecutor.js";
15
+ import { isSessionActionMessage, isSessionModelMessage, toSessionActionMessage, } from "../../../../executor/types/SessionMessages.js";
15
16
  function getDowncityDirPath(rootPath) {
16
17
  return path.join(rootPath, ".downcity");
17
18
  }
@@ -122,16 +123,56 @@ export class JsonlSessionHistoryStore {
122
123
  normalizePersistedMessage(input) {
123
124
  if (!input || typeof input !== "object")
124
125
  return null;
126
+ if (input.type === "action") {
127
+ return this.normalizeActionMessage(input);
128
+ }
125
129
  const candidate = input;
126
130
  const role = String(candidate.role || "");
127
- if (role !== "user" && role !== "assistant")
131
+ if (role !== "user" && role !== "assistant") {
128
132
  return null;
133
+ }
129
134
  if (!Array.isArray(candidate.parts))
130
135
  return null;
131
- return candidate;
136
+ return input;
137
+ }
138
+ normalizeActionMessage(input) {
139
+ if (!input || typeof input !== "object")
140
+ return null;
141
+ const candidate = input;
142
+ const id = String(candidate.id || "").trim();
143
+ const title = String(candidate.title || "").trim();
144
+ const state = String(candidate.state || "").trim();
145
+ if (!id || !title)
146
+ return null;
147
+ if (state !== "running" && state !== "completed" && state !== "failed") {
148
+ return null;
149
+ }
150
+ const metadata_input = candidate.metadata && typeof candidate.metadata === "object"
151
+ ? candidate.metadata
152
+ : {};
153
+ const metadata_candidate = metadata_input;
154
+ const session_id = String(metadata_candidate.sessionId || "").trim() || this.sessionId;
155
+ const description = String(candidate.description || "").trim();
156
+ return {
157
+ type: "action",
158
+ id,
159
+ title,
160
+ ...(description ? { description } : {}),
161
+ state,
162
+ metadata: {
163
+ v: 1,
164
+ ts: typeof metadata_candidate.ts === "number"
165
+ ? metadata_candidate.ts
166
+ : Date.now(),
167
+ sessionId: session_id,
168
+ ...(metadata_candidate.turnId ? { turnId: metadata_candidate.turnId } : {}),
169
+ },
170
+ };
132
171
  }
133
172
  hasStructuredAssistantParts(message) {
134
- if (!message || message.role !== "assistant" || !Array.isArray(message.parts)) {
173
+ if (!isSessionModelMessage(message) ||
174
+ message.role !== "assistant" ||
175
+ !Array.isArray(message.parts)) {
135
176
  return false;
136
177
  }
137
178
  return message.parts.some((part) => {
@@ -142,6 +183,10 @@ export class JsonlSessionHistoryStore {
142
183
  });
143
184
  }
144
185
  mergeInflightWithFinal(inflight, finalMessage) {
186
+ if (!isSessionModelMessage(finalMessage))
187
+ return inflight;
188
+ if (!isSessionModelMessage(inflight))
189
+ return finalMessage;
145
190
  const final_parts = Array.isArray(finalMessage.parts)
146
191
  ? finalMessage.parts.filter((part) => part && typeof part === "object")
147
192
  : [];
@@ -255,7 +300,8 @@ export class JsonlSessionHistoryStore {
255
300
  }
256
301
  async writeInflightUnsafe(message) {
257
302
  const normalized = this.normalizePersistedMessage(message);
258
- if (!normalized || normalized.role !== "assistant") {
303
+ if (!isSessionModelMessage(normalized) ||
304
+ normalized.role !== "assistant") {
259
305
  throw new Error("inflight assistant must be an assistant UIMessage");
260
306
  }
261
307
  const file = this.getInflightFilePath();
@@ -270,6 +316,40 @@ export class JsonlSessionHistoryStore {
270
316
  async appendMessageUnsafe(message) {
271
317
  await fs.appendFile(this.getMessagesFilePath(), JSON.stringify(message) + "\n", "utf8");
272
318
  }
319
+ async rewriteMessagesUnsafe(messages) {
320
+ const file = this.getMessagesFilePath();
321
+ const temp = `${file}.${process.pid}.${Date.now()}.tmp`;
322
+ const payload = messages.length > 0
323
+ ? messages.map((message) => JSON.stringify(message)).join("\n") + "\n"
324
+ : "";
325
+ await fs.writeFile(temp, payload, "utf8");
326
+ await fs.move(temp, file, { overwrite: true });
327
+ }
328
+ async upsertActionMessageUnsafe(message) {
329
+ const file = this.getMessagesFilePath();
330
+ const raw = await fs.readFile(file, "utf8").catch(() => "");
331
+ const messages = [];
332
+ let replaced = false;
333
+ for (const line of raw.split("\n").filter(Boolean)) {
334
+ try {
335
+ const current = this.normalizePersistedMessage(JSON.parse(line));
336
+ if (!current)
337
+ continue;
338
+ if (isSessionActionMessage(current) && current.id === message.id) {
339
+ messages.push(message);
340
+ replaced = true;
341
+ continue;
342
+ }
343
+ messages.push(current);
344
+ }
345
+ catch {
346
+ // 关键点(中文):重写 action 时顺手跳过损坏行,避免坏 JSON 阻断状态更新。
347
+ }
348
+ }
349
+ if (!replaced)
350
+ messages.push(message);
351
+ await this.rewriteMessagesUnsafe(messages);
352
+ }
273
353
  async withWriteLock(fn) {
274
354
  await this.ensureLayout();
275
355
  const lockPath = this.getLockFilePath();
@@ -331,40 +411,6 @@ export class JsonlSessionHistoryStore {
331
411
  return [];
332
412
  return system.filter((item) => item && typeof item === "object");
333
413
  }
334
- normalizeOperation(operation) {
335
- const operation_id = String(operation.operationId || "").trim() || generateId();
336
- const name = String(operation.name || "").trim() || "operation";
337
- const status = String(operation.status || "").trim();
338
- const normalized_status = status === "started" ||
339
- status === "progress" ||
340
- status === "finished" ||
341
- status === "skipped" ||
342
- status === "failed"
343
- ? status
344
- : "progress";
345
- return {
346
- operationId: operation_id,
347
- name,
348
- status: normalized_status,
349
- ...(typeof operation.turnId === "string" && operation.turnId.trim()
350
- ? { turnId: operation.turnId.trim() }
351
- : {}),
352
- ...(typeof operation.label === "string" && operation.label.trim()
353
- ? { label: operation.label.trim() }
354
- : {}),
355
- ...(typeof operation.reason === "string" && operation.reason.trim()
356
- ? { reason: operation.reason.trim() }
357
- : {}),
358
- ...(typeof operation.progress === "number" && Number.isFinite(operation.progress)
359
- ? { progress: Math.max(0, Math.min(1, operation.progress)) }
360
- : {}),
361
- ...(operation.result !== undefined ? { result: operation.result } : {}),
362
- ...(typeof operation.error === "string" && operation.error.trim()
363
- ? { error: operation.error.trim() }
364
- : {}),
365
- ...(operation.visible === false ? { visible: false } : {}),
366
- };
367
- }
368
414
  async compact(input) {
369
415
  return await compactSessionMessagesIfNeeded({
370
416
  rootPath: this.rootPath,
@@ -396,7 +442,7 @@ export class JsonlSessionHistoryStore {
396
442
  maxInputTokensApprox: input.maxInputTokensApprox,
397
443
  archiveOnCompact: input.archiveOnCompact,
398
444
  compactRatio: input.compactRatio,
399
- ...(input.onOperation ? { onOperation: input.onOperation } : {}),
445
+ ...(input.onAction ? { onAction: input.onAction } : {}),
400
446
  });
401
447
  }
402
448
  async append(message) {
@@ -404,9 +450,13 @@ export class JsonlSessionHistoryStore {
404
450
  const normalized = this.normalizePersistedMessage(message);
405
451
  if (!normalized)
406
452
  return;
453
+ if (isSessionActionMessage(normalized)) {
454
+ await this.upsertActionMessageUnsafe(normalized);
455
+ return;
456
+ }
407
457
  // 关键点(中文):若上一次 assistant 在运行中中断,新的 user 到来前先把残留快照收口到正式历史,
408
458
  // 避免 `list()` 时旧 inflight 跑到新 user 后面,打乱时序。
409
- if (normalized.role === "user") {
459
+ if (isSessionModelMessage(normalized) && normalized.role === "user") {
410
460
  const current_inflight = await this.readInflightUnsafe();
411
461
  if (current_inflight) {
412
462
  await this.appendMessageUnsafe(current_inflight);
@@ -534,22 +584,18 @@ export class JsonlSessionHistoryStore {
534
584
  parts: [{ type: "text", text: String(input.text ?? "") }],
535
585
  };
536
586
  }
537
- operation(input) {
538
- const operation = this.normalizeOperation(input.operation);
539
- const label = String(operation.label || `${operation.name}: ${operation.status}`).trim();
587
+ action(input) {
540
588
  const { ts, ...metadata } = input.metadata;
589
+ const message = toSessionActionMessage({
590
+ ...input.action,
591
+ ...(input.id ? { id: input.id } : {}),
592
+ }, metadata.sessionId || this.sessionId);
541
593
  return {
542
- id: input.id || `op:${this.sessionId}:${operation.operationId}:${generateId()}`,
543
- role: "assistant",
594
+ ...message,
544
595
  metadata: {
545
- v: 1,
546
- ts: typeof ts === "number" ? ts : Date.now(),
547
- ...metadata,
548
- source: "operation",
549
- kind: "operation",
550
- operation,
596
+ ...message.metadata,
597
+ ts: typeof ts === "number" ? ts : message.metadata.ts,
551
598
  },
552
- parts: [{ type: "text", text: label }],
553
599
  };
554
600
  }
555
601
  }
@@ -1 +1 @@
1
- {"version":3,"file":"JsonlSessionHistoryStore.js","sourceRoot":"","sources":["../../../../../src/executor/store/history/jsonl/JsonlSessionHistoryStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonlSessionHistoryStore.js","sourceRoot":"","sources":["../../../../../src/executor/store/history/jsonl/JsonlSessionHistoryStore.ts"],"names":[],"mappings":"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"}
@@ -3,21 +3,22 @@
3
3
  *
4
4
  * 关键点(中文)
5
5
  * - 这里统一描述 session 消息落盘格式与元信息结构。
6
- * - session 的唯一事实源是 `UIMessage[]`,不会再维护第二套平行消息结构。
6
+ * - session 的唯一事实源是消息 JSONL,模型消息继续使用 AI SDK `UIMessage`。
7
7
  * - 这些类型会被 history Store、history Composer、compact、control UI、task runtime 共同复用。
8
8
  */
9
9
  import type { UIMessage } from "ai";
10
10
  import type { JsonObject } from "../../types/common/Json.js";
11
- import type { AgentSessionOperationRecord } from "../../types/sdk/AgentSessionOperation.js";
11
+ import type { AgentSessionActionRecord, AgentSessionActionState } from "../../types/sdk/AgentSessionAction.js";
12
12
  /**
13
13
  * Session 消息:以 UIMessage[] 作为唯一事实源。
14
14
  *
15
15
  * 关键点(中文)
16
16
  * - 持久化存储在 `.downcity/agents/<encodedAgentId>/sessions/<encodedSessionId>/messages/messages.jsonl`
17
- * - 默认只存 `role=user|assistant`
17
+ * - 默认只存模型消息,或 `type=action` 的 UI 状态消息。
18
18
  * - compact 会把更早消息压缩为一条 `assistant` 摘要消息
19
+ * - action 只用于 UI timeline,不进入 LLM 输入
19
20
  */
20
- export type SessionMessageKind = "normal" | "summary" | "operation";
21
+ export type SessionMessageKind = "normal" | "summary";
21
22
  /**
22
23
  * Session 消息来源类型。
23
24
  *
@@ -26,7 +27,7 @@ export type SessionMessageKind = "normal" | "summary" | "operation";
26
27
  * - `egress`:模型或 agent 输出写入的 assistant 消息。
27
28
  * - `compact`:由 compact 过程生成的摘要消息。
28
29
  */
29
- export type SessionMessageSource = "ingress" | "egress" | "compact" | "operation";
30
+ export type SessionMessageSource = "ingress" | "egress" | "compact";
30
31
  /**
31
32
  * 入站消息细分类型。
32
33
  *
@@ -63,14 +64,6 @@ export type SessionMetadataV1 = {
63
64
  archiveId?: string;
64
65
  /** compact 摘要所覆盖的原始消息范围。 */
65
66
  sourceRange?: SessionMessageSourceRangeV1;
66
- /**
67
- * operation message 对应的结构化操作记录。
68
- *
69
- * 说明(中文)
70
- * - 仅当 `kind=operation` 或 `source=operation` 时存在。
71
- * - 该字段供前端恢复时间线状态,不会进入 LLM 输入。
72
- */
73
- operation?: AgentSessionOperationRecord;
74
67
  /**
75
68
  * 扩展元信息。
76
69
  *
@@ -81,18 +74,64 @@ export type SessionMetadataV1 = {
81
74
  extra?: JsonObject;
82
75
  };
83
76
  /**
84
- * Session UI 消息结构。
77
+ * 模型可消费的 Session UI 消息结构。
85
78
  */
86
- export type SessionMessageV1 = UIMessage<SessionMetadataV1>;
79
+ export type SessionModelMessageV1 = UIMessage<SessionMetadataV1>;
80
+ /**
81
+ * action 消息元信息。
82
+ */
83
+ export type SessionActionMetadataV1 = {
84
+ /** 元信息 schema 版本号。 */
85
+ v: 1;
86
+ /** 当前 action 写入时的毫秒时间戳。 */
87
+ ts: number;
88
+ /** 当前 action 所属的 session ID。 */
89
+ sessionId: string;
90
+ /** 当前 action 关联的 turn 标识。 */
91
+ turnId?: string;
92
+ };
93
+ /**
94
+ * action 类型的 Session 消息结构。
95
+ *
96
+ * 关键点(中文)
97
+ * - `action` 不是 AI SDK 原生模型消息。
98
+ * - 它只存在于 JSONL history 与前端 timeline,进入 LLM 前必须过滤。
99
+ */
100
+ export type SessionActionMessageV1 = {
101
+ /** item 类型固定为 `action`。 */
102
+ type: "action";
103
+ /** 同一个 action 生命周期内稳定复用的 ID。 */
104
+ id: string;
105
+ /** 当前 action 标题。 */
106
+ title: string;
107
+ /** 当前 action 描述。 */
108
+ description?: string;
109
+ /** 当前 action 状态。 */
110
+ state: AgentSessionActionState;
111
+ /** action 元信息。 */
112
+ metadata: SessionActionMetadataV1;
113
+ };
114
+ /**
115
+ * Session 持久化消息结构。
116
+ */
117
+ export type SessionMessageV1 = SessionModelMessageV1 | SessionActionMessageV1;
87
118
  /**
88
119
  * user 角色的 Session 消息结构。
89
120
  */
90
- export type SessionUserMessageV1 = SessionMessageV1 & {
121
+ export type SessionUserMessageV1 = SessionModelMessageV1 & {
91
122
  /** 消息角色固定为 `user`。 */
92
123
  role: "user";
93
124
  };
94
125
  /**
95
- * 判断一条消息是否为 operation message。
126
+ * 判断一条消息是否为 action message。
127
+ */
128
+ export declare function isSessionActionMessage(message: SessionMessageV1 | null | undefined): message is SessionActionMessageV1;
129
+ /**
130
+ * 从订阅事件构造 action message。
131
+ */
132
+ export declare function toSessionActionMessage(action: AgentSessionActionRecord, session_id: string): SessionActionMessageV1;
133
+ /**
134
+ * 判断一条消息是否为模型可消费的 UIMessage。
96
135
  */
97
- export declare function isSessionOperationMessage(message: SessionMessageV1 | null | undefined): boolean;
136
+ export declare function isSessionModelMessage(message: SessionMessageV1 | null | undefined): message is SessionModelMessageV1;
98
137
  //# sourceMappingURL=SessionMessages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SessionMessages.d.ts","sourceRoot":"","sources":["../../../src/executor/types/SessionMessages.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAExF;;;;;;;GAOG;AACH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;AAEpE;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAC5B,SAAS,GACT,QAAQ,GACR,SAAS,GACT,WAAW,CAAC;AAEhB;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAExC;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG;IACxC,eAAe;IACf,MAAM,EAAE,MAAM,CAAC;IACf,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,sBAAsB;IACtB,CAAC,EAAE,CAAC,CAAC;IACL,qBAAqB;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,uBAAuB;IACvB,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,6BAA6B;IAC7B,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,2BAA2B,CAAC;IAC1C;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,2BAA2B,CAAC;IACxC;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,SAAS,CAAC,iBAAiB,CAAC,CAAC;AAE5D;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,GAAG;IACpD,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,GAC3C,OAAO,CAIT"}
1
+ {"version":3,"file":"SessionMessages.d.ts","sourceRoot":"","sources":["../../../src/executor/types/SessionMessages.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EACV,wBAAwB,EACxB,uBAAuB,EACxB,MAAM,mCAAmC,CAAC;AAE3C;;;;;;;;GAQG;AACH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEtD;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAC5B,SAAS,GACT,QAAQ,GACR,SAAS,CAAC;AAEd;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAExC;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG;IACxC,eAAe;IACf,MAAM,EAAE,MAAM,CAAC;IACf,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,sBAAsB;IACtB,CAAC,EAAE,CAAC,CAAC;IACL,qBAAqB;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,uBAAuB;IACvB,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,6BAA6B;IAC7B,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,2BAA2B,CAAC;IAC1C;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,SAAS,CAAC,iBAAiB,CAAC,CAAC;AAEjE;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,sBAAsB;IACtB,CAAC,EAAE,CAAC,CAAC;IACL,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,2BAA2B;IAC3B,IAAI,EAAE,QAAQ,CAAC;IACf,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB;IACpB,KAAK,EAAE,uBAAuB,CAAC;IAC/B,kBAAkB;IAClB,QAAQ,EAAE,uBAAuB,CAAC;CACnC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,qBAAqB,GAAG,sBAAsB,CAAC;AAE9E;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,qBAAqB,GAAG;IACzD,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,GAC3C,OAAO,IAAI,sBAAsB,CAGnC;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,wBAAwB,EAChC,UAAU,EAAE,MAAM,GACjB,sBAAsB,CAiBxB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,gBAAgB,GAAG,IAAI,GAAG,SAAS,GAC3C,OAAO,IAAI,qBAAqB,CAGlC"}
@@ -3,16 +3,44 @@
3
3
  *
4
4
  * 关键点(中文)
5
5
  * - 这里统一描述 session 消息落盘格式与元信息结构。
6
- * - session 的唯一事实源是 `UIMessage[]`,不会再维护第二套平行消息结构。
6
+ * - session 的唯一事实源是消息 JSONL,模型消息继续使用 AI SDK `UIMessage`。
7
7
  * - 这些类型会被 history Store、history Composer、compact、control UI、task runtime 共同复用。
8
8
  */
9
9
  /**
10
- * 判断一条消息是否为 operation message。
10
+ * 判断一条消息是否为 action message。
11
11
  */
12
- export function isSessionOperationMessage(message) {
12
+ export function isSessionActionMessage(message) {
13
13
  if (!message || typeof message !== "object")
14
14
  return false;
15
- const metadata = (message.metadata || null);
16
- return metadata?.kind === "operation" || metadata?.source === "operation";
15
+ return message.type === "action";
16
+ }
17
+ /**
18
+ * 从订阅事件构造 action message。
19
+ */
20
+ export function toSessionActionMessage(action, session_id) {
21
+ const title = String(action.title || "").trim() || "Action";
22
+ const description = String(action.description || "").trim();
23
+ const id = String(action.id || "").trim() || `action:${session_id}:${Date.now()}`;
24
+ return {
25
+ type: "action",
26
+ id,
27
+ title,
28
+ ...(description ? { description } : {}),
29
+ state: action.state,
30
+ metadata: {
31
+ v: 1,
32
+ ts: Date.now(),
33
+ sessionId: session_id,
34
+ ...(action.turnId ? { turnId: action.turnId } : {}),
35
+ },
36
+ };
37
+ }
38
+ /**
39
+ * 判断一条消息是否为模型可消费的 UIMessage。
40
+ */
41
+ export function isSessionModelMessage(message) {
42
+ if (!message || typeof message !== "object")
43
+ return false;
44
+ return !isSessionActionMessage(message);
17
45
  }
18
46
  //# sourceMappingURL=SessionMessages.js.map