clawconnect-agent 0.2.6 → 0.2.7

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 (118) hide show
  1. package/README.md +7 -3
  2. package/README.zh-CN.md +7 -3
  3. package/dist/commands/hermes-file-transfer-outcome.d.ts +18 -0
  4. package/dist/commands/hermes-file-transfer-outcome.js +40 -0
  5. package/dist/commands/hermes-file-transfer-outcome.js.map +1 -0
  6. package/dist/commands/send-file.js +39 -33
  7. package/dist/commands/send-file.js.map +1 -1
  8. package/dist/core/command-types.d.ts +5 -0
  9. package/dist/core/relay/chat-payload.js +32 -22
  10. package/dist/core/relay/chat-payload.js.map +1 -1
  11. package/dist/core/relay/file-upload.d.ts +1 -0
  12. package/dist/core/relay/file-upload.js +3 -0
  13. package/dist/core/relay/file-upload.js.map +1 -1
  14. package/dist/core/relay/mobile-chat-run-bridge.d.ts +53 -8
  15. package/dist/core/relay/mobile-chat-run-bridge.js +45 -0
  16. package/dist/core/relay/mobile-chat-run-bridge.js.map +1 -1
  17. package/dist/core/relay/office-payload.js +54 -22
  18. package/dist/core/relay/office-payload.js.map +1 -1
  19. package/dist/core/relay/source-commit.d.ts +41 -0
  20. package/dist/core/relay/source-commit.js +118 -0
  21. package/dist/core/relay/source-commit.js.map +1 -0
  22. package/dist/core/relay/timeline-event-builder.d.ts +6 -0
  23. package/dist/core/relay/timeline-event-builder.js +3 -0
  24. package/dist/core/relay/timeline-event-builder.js.map +1 -1
  25. package/dist/core/relay/timeline-event-log.d.ts +29 -0
  26. package/dist/core/relay/timeline-event-log.js +37 -0
  27. package/dist/core/relay/timeline-event-log.js.map +1 -1
  28. package/dist/core/relay/timeline-projection-v3.d.ts +63 -0
  29. package/dist/core/relay/timeline-projection-v3.js +87 -0
  30. package/dist/core/relay/timeline-projection-v3.js.map +1 -0
  31. package/dist/hermes/hermes-relay-manager.js +3 -0
  32. package/dist/hermes/hermes-relay-manager.js.map +1 -1
  33. package/dist/hermes/hermes-runtime-test-support.d.ts +3 -3
  34. package/dist/hermes/hermes-runtime-test-support.js +12 -6
  35. package/dist/hermes/hermes-runtime-test-support.js.map +1 -1
  36. package/dist/hermes/runtime/hermes-file-transfer-state.d.ts +33 -0
  37. package/dist/hermes/runtime/hermes-file-transfer-state.js +139 -0
  38. package/dist/hermes/runtime/hermes-file-transfer-state.js.map +1 -0
  39. package/dist/hermes/runtime/hermes-mobile-file-route-store.d.ts +17 -0
  40. package/dist/hermes/runtime/hermes-mobile-file-route-store.js +103 -0
  41. package/dist/hermes/runtime/hermes-mobile-file-route-store.js.map +1 -0
  42. package/dist/hermes/runtime/hermes-runtime-api-client.d.ts +1 -0
  43. package/dist/hermes/runtime/hermes-runtime-api-client.js +16 -0
  44. package/dist/hermes/runtime/hermes-runtime-api-client.js.map +1 -1
  45. package/dist/hermes/runtime/hermes-runtime-chat.d.ts +35 -4
  46. package/dist/hermes/runtime/hermes-runtime-chat.js +426 -51
  47. package/dist/hermes/runtime/hermes-runtime-chat.js.map +1 -1
  48. package/dist/hermes/runtime/hermes-runtime-command-router.js +9 -1
  49. package/dist/hermes/runtime/hermes-runtime-command-router.js.map +1 -1
  50. package/dist/hermes/runtime/hermes-runtime-cron.d.ts +1 -0
  51. package/dist/hermes/runtime/hermes-runtime-cron.js +34 -66
  52. package/dist/hermes/runtime/hermes-runtime-cron.js.map +1 -1
  53. package/dist/hermes/runtime/hermes-runtime-history-completion.d.ts +8 -1
  54. package/dist/hermes/runtime/hermes-runtime-history-completion.js +112 -41
  55. package/dist/hermes/runtime/hermes-runtime-history-completion.js.map +1 -1
  56. package/dist/hermes/runtime/hermes-runtime-history.js +92 -17
  57. package/dist/hermes/runtime/hermes-runtime-history.js.map +1 -1
  58. package/dist/hermes/runtime/hermes-runtime-models.js +4 -1
  59. package/dist/hermes/runtime/hermes-runtime-models.js.map +1 -1
  60. package/dist/hermes/runtime/hermes-runtime-process.js +4 -3
  61. package/dist/hermes/runtime/hermes-runtime-process.js.map +1 -1
  62. package/dist/hermes/runtime/hermes-runtime-state-db.d.ts +6 -0
  63. package/dist/hermes/runtime/hermes-runtime-state-db.js +20 -1
  64. package/dist/hermes/runtime/hermes-runtime-state-db.js.map +1 -1
  65. package/dist/hermes/runtime/hermes-runtime-tool-log-watcher.js +12 -20
  66. package/dist/hermes/runtime/hermes-runtime-tool-log-watcher.js.map +1 -1
  67. package/dist/index.js +16 -2
  68. package/dist/index.js.map +1 -1
  69. package/dist/openclaw/config/provider-config.js +4 -1
  70. package/dist/openclaw/config/provider-config.js.map +1 -1
  71. package/dist/openclaw/relay/agent-identity-helpers.d.ts +9 -0
  72. package/dist/openclaw/relay/agent-identity-helpers.js +118 -0
  73. package/dist/openclaw/relay/agent-identity-helpers.js.map +1 -0
  74. package/dist/openclaw/relay/assistant-media-sidecar.d.ts +19 -2
  75. package/dist/openclaw/relay/assistant-media-sidecar.js +131 -15
  76. package/dist/openclaw/relay/assistant-media-sidecar.js.map +1 -1
  77. package/dist/openclaw/relay/chat-history.d.ts +37 -2
  78. package/dist/openclaw/relay/chat-history.js +565 -51
  79. package/dist/openclaw/relay/chat-history.js.map +1 -1
  80. package/dist/openclaw/relay/chat-run-identity.js +3 -1
  81. package/dist/openclaw/relay/chat-run-identity.js.map +1 -1
  82. package/dist/openclaw/relay/gateway-history-projection.d.ts +4 -0
  83. package/dist/openclaw/relay/gateway-history-projection.js +67 -0
  84. package/dist/openclaw/relay/gateway-history-projection.js.map +1 -0
  85. package/dist/openclaw/relay/openclaw-active-run-state.d.ts +67 -0
  86. package/dist/openclaw/relay/openclaw-active-run-state.js +283 -0
  87. package/dist/openclaw/relay/openclaw-active-run-state.js.map +1 -0
  88. package/dist/openclaw/relay/openclaw-message-tool-real-shape.fixture.d.ts +12 -0
  89. package/dist/openclaw/relay/openclaw-message-tool-real-shape.fixture.js +48 -0
  90. package/dist/openclaw/relay/openclaw-message-tool-real-shape.fixture.js.map +1 -0
  91. package/dist/openclaw/relay/openclaw-source-commit-watcher.d.ts +22 -0
  92. package/dist/openclaw/relay/openclaw-source-commit-watcher.js +64 -0
  93. package/dist/openclaw/relay/openclaw-source-commit-watcher.js.map +1 -0
  94. package/dist/openclaw/relay/outgoing-media-relay.d.ts +30 -3
  95. package/dist/openclaw/relay/outgoing-media-relay.js +407 -118
  96. package/dist/openclaw/relay/outgoing-media-relay.js.map +1 -1
  97. package/dist/openclaw/relay/relay-manager-history-timing.d.ts +1 -4
  98. package/dist/openclaw/relay/relay-manager-history-timing.js +4 -4
  99. package/dist/openclaw/relay/relay-manager-history-timing.js.map +1 -1
  100. package/dist/openclaw/relay/relay-manager-payload-helpers.d.ts +28 -1
  101. package/dist/openclaw/relay/relay-manager-payload-helpers.js +219 -11
  102. package/dist/openclaw/relay/relay-manager-payload-helpers.js.map +1 -1
  103. package/dist/openclaw/relay/session-context.d.ts +15 -0
  104. package/dist/openclaw/relay/session-context.js +48 -4
  105. package/dist/openclaw/relay/session-context.js.map +1 -1
  106. package/dist/openclaw/relay/source-commit-projection.d.ts +25 -0
  107. package/dist/openclaw/relay/source-commit-projection.js +140 -0
  108. package/dist/openclaw/relay/source-commit-projection.js.map +1 -0
  109. package/dist/openclaw/relay/transcript-dedupe.js +11 -42
  110. package/dist/openclaw/relay/transcript-dedupe.js.map +1 -1
  111. package/dist/openclaw/relay-manager.js +323 -135
  112. package/dist/openclaw/relay-manager.js.map +1 -1
  113. package/dist/openclaw/runtime/local-runtime.js +4 -2
  114. package/dist/openclaw/runtime/local-runtime.js.map +1 -1
  115. package/package.json +1 -1
  116. package/dist/openclaw/session-store.d.ts +0 -6
  117. package/dist/openclaw/session-store.js +0 -231
  118. package/dist/openclaw/session-store.js.map +0 -1
@@ -1,3 +1,4 @@
1
+ import { canonicalizeOpenClawSessionScope, } from "./session-context.js";
1
2
  const OPENCLAW_ASSISTANT_MEDIA_IDEMPOTENCY_SUFFIX = ":assistant-media";
2
3
  const OPENCLAW_MESSAGE_TOOL_IDEMPOTENCY_MARKER = ":message-tool:";
3
4
  /**
@@ -5,7 +6,9 @@ const OPENCLAW_MESSAGE_TOOL_IDEMPOTENCY_MARKER = ":message-tool:";
5
6
  * idempotency key explicitly names its parent run. The desktop UI projects the
6
7
  * pair as one activity; mobile history must use the same stable relation.
7
8
  */
8
- export function normalizeOpenClawAssistantMediaSidecars(messages, fallbackSessionKey) {
9
+ export function normalizeOpenClawAssistantMediaSidecars(messages, fallbackSessionKey, options) {
10
+ const materialized = materializeOpenClawDisplayContent(messages);
11
+ messages = materialized.messages;
9
12
  const candidatesByScopeAndRun = new Map();
10
13
  const messagesById = new Map();
11
14
  const sidecars = [];
@@ -13,7 +16,7 @@ export function normalizeOpenClawAssistantMediaSidecars(messages, fallbackSessio
13
16
  const message = asRecord(messages[index]);
14
17
  if (!message || message.role !== "assistant")
15
18
  continue;
16
- const scope = messageSessionScope(message, fallbackSessionKey);
19
+ const scope = messageSessionScope(message, fallbackSessionKey, options?.sessionDefaults);
17
20
  const messageId = firstString(message.id, message.messageId, message.message_id);
18
21
  if (messageId && !messagesById.has(messageId)) {
19
22
  messagesById.set(messageId, { index, message });
@@ -39,7 +42,7 @@ export function normalizeOpenClawAssistantMediaSidecars(messages, fallbackSessio
39
42
  candidatesByScopeAndRun.set(key, candidates);
40
43
  }
41
44
  if (sidecars.length === 0)
42
- return { messages, changed: false };
45
+ return { messages, changed: materialized.changed };
43
46
  const mergedByIndex = new Map();
44
47
  const suppressedIndexes = new Set();
45
48
  const processedSidecarKeys = new Set();
@@ -47,13 +50,15 @@ export function normalizeOpenClawAssistantMediaSidecars(messages, fallbackSessio
47
50
  const explicitParent = sidecar.parentId ? messagesById.get(sidecar.parentId) : undefined;
48
51
  const candidates = explicitParent
49
52
  ? [explicitParent]
50
- : candidatesByScopeAndRun.get(`${sidecar.scope}\u0000${sidecar.runId}`);
53
+ : options?.projectionVersion === 3
54
+ ? undefined
55
+ : candidatesByScopeAndRun.get(`${sidecar.scope}\u0000${sidecar.runId}`);
51
56
  // An ambiguous or incomplete relation is deliberately preserved. We never
52
57
  // infer a parent by matching text, time, position, or a "latest" message.
53
58
  if (!candidates || candidates.length !== 1)
54
59
  continue;
55
60
  const parent = candidates[0];
56
- if (messageSessionScope(parent.message, fallbackSessionKey) !== sidecar.scope ||
61
+ if (messageSessionScope(parent.message, fallbackSessionKey, options?.sessionDefaults) !== sidecar.scope ||
57
62
  (normalAssistantRunId(parent.message) && normalAssistantRunId(parent.message) !== sidecar.runId))
58
63
  continue;
59
64
  const sidecarKey = `${sidecar.scope}\u0000${sidecar.runId}`;
@@ -69,7 +74,7 @@ export function normalizeOpenClawAssistantMediaSidecars(messages, fallbackSessio
69
74
  processedSidecarKeys.add(sidecarKey);
70
75
  }
71
76
  if (suppressedIndexes.size === 0)
72
- return { messages, changed: false };
77
+ return { messages, changed: materialized.changed };
73
78
  return {
74
79
  messages: messages.flatMap((message, index) => {
75
80
  if (suppressedIndexes.has(index))
@@ -85,14 +90,42 @@ export function normalizeOpenClawAssistantMediaSidecars(messages, fallbackSessio
85
90
  * tool call. Concurrent calls may finish in any order, so restore the original
86
91
  * tool-call order before folding them into the turn's visible assistant reply.
87
92
  */
88
- export function normalizeOpenClawAutomaticMediaReplies(messages, fallbackSessionKey) {
93
+ export function normalizeOpenClawAutomaticMediaReplies(messages, fallbackSessionKey, options) {
94
+ const materialized = materializeOpenClawDisplayContent(messages);
95
+ messages = materialized.messages;
96
+ // A message-tool delivery is a source row in the transcript, not a media
97
+ // fragment of the final assistant row. In projection v3 it stays visible
98
+ // (and gets its own sourceMessageId), but a replay of the same exact tool
99
+ // call is still projected only once. Distinct tool calls remain distinct,
100
+ // even when they reference the same file.
101
+ if (options?.projectionVersion === 3) {
102
+ const seenRelations = new Set();
103
+ let changed = materialized.changed;
104
+ const deduped = messages.filter((message) => {
105
+ const record = asRecord(message);
106
+ const relation = record ? extractOpenClawMessageToolRelation(record) : undefined;
107
+ const scope = record
108
+ ? messageSessionScope(record, fallbackSessionKey, options.sessionDefaults)
109
+ : undefined;
110
+ if (!relation || !scope)
111
+ return true;
112
+ const relationKey = `${scope}\u0000${relation.sourceRunId}\u0000${relation.toolCallId}`;
113
+ if (seenRelations.has(relationKey)) {
114
+ changed = true;
115
+ return false;
116
+ }
117
+ seenRelations.add(relationKey);
118
+ return true;
119
+ });
120
+ return { messages: changed ? deduped : messages, changed };
121
+ }
89
122
  const runs = new Map();
90
123
  const automaticReplies = [];
91
124
  for (let index = 0; index < messages.length; index += 1) {
92
125
  const message = asRecord(messages[index]);
93
126
  if (!message || message.role !== "assistant")
94
127
  continue;
95
- const scope = messageSessionScope(message, fallbackSessionKey);
128
+ const scope = messageSessionScope(message, fallbackSessionKey, options?.sessionDefaults);
96
129
  if (!scope)
97
130
  continue;
98
131
  const relation = automaticMediaReplyRelation(message);
@@ -129,7 +162,7 @@ export function normalizeOpenClawAutomaticMediaReplies(messages, fallbackSession
129
162
  runs.set(key, run);
130
163
  }
131
164
  if (automaticReplies.length === 0)
132
- return { messages, changed: false };
165
+ return { messages, changed: materialized.changed };
133
166
  const mergedByIndex = new Map();
134
167
  const suppressedIndexes = new Set();
135
168
  const processedReplies = new Set();
@@ -146,7 +179,9 @@ export function normalizeOpenClawAutomaticMediaReplies(messages, fallbackSession
146
179
  if (!run || !parent)
147
180
  continue;
148
181
  const uniqueReplies = replies.filter((reply) => {
149
- const replayKey = `${key}\u0000${reply.identity}`;
182
+ const replayKey = reply.toolCallId
183
+ ? `${key}\u0000tool-call\u0000${reply.toolCallId}`
184
+ : `${key}\u0000identity\u0000${reply.identity}`;
150
185
  if (processedReplies.has(replayKey)) {
151
186
  suppressedIndexes.add(reply.index);
152
187
  return false;
@@ -168,7 +203,7 @@ export function normalizeOpenClawAutomaticMediaReplies(messages, fallbackSession
168
203
  mergedByIndex.set(parent.index, currentParent);
169
204
  }
170
205
  if (suppressedIndexes.size === 0)
171
- return { messages, changed: false };
206
+ return { messages, changed: materialized.changed };
172
207
  return {
173
208
  messages: messages.flatMap((message, index) => {
174
209
  if (suppressedIndexes.has(index))
@@ -195,6 +230,26 @@ export function canonicalizeOpenClawAssistantMediaSidecarPayload(payload) {
195
230
  return payload;
196
231
  return { ...record, runId: sidecarRunId, turnId: sidecarRunId };
197
232
  }
233
+ /**
234
+ * Materialize the media projection on a live chat event as canonical message
235
+ * content. OpenClaw's delivery mirror can expose the image only through
236
+ * `openclawDisplayContent`; Control UI renders that field, while Relay clients
237
+ * consume `message.content`.
238
+ */
239
+ export function materializeOpenClawDisplayContentPayload(payload) {
240
+ const record = asRecord(payload);
241
+ if (!record)
242
+ return payload;
243
+ const message = asRecord(record.message);
244
+ if (message) {
245
+ const materialized = materializeOpenClawDisplayContent([message]);
246
+ if (!materialized.changed)
247
+ return payload;
248
+ return { ...record, message: materialized.messages[0] };
249
+ }
250
+ const materialized = materializeOpenClawDisplayContent([record]);
251
+ return materialized.changed ? materialized.messages[0] : payload;
252
+ }
198
253
  /** True only for the documented OpenClaw automatic-media sidecar identity. */
199
254
  export function isOpenClawAssistantMediaSidecarPayload(payload) {
200
255
  const record = asRecord(payload);
@@ -209,6 +264,56 @@ function mergeAssistantMediaSidecar(parent, sidecar) {
209
264
  ? parent
210
265
  : { ...parent, content: [...parentContent, ...sidecarMedia] };
211
266
  }
267
+ /**
268
+ * OpenClaw's delivery-mirror transcript rows keep media-only output in
269
+ * `openclawDisplayContent` while leaving protocol `content` empty. The
270
+ * desktop Control UI renders that display projection directly, but Relay and
271
+ * mobile clients consume canonical content blocks. Promote only media display
272
+ * blocks here, before sidecar folding and outgoing-media upload, so the same
273
+ * transcript event has one portable representation across clients.
274
+ */
275
+ function materializeOpenClawDisplayContent(messages) {
276
+ let changed = false;
277
+ const nextMessages = messages.map((message) => {
278
+ const record = asRecord(message);
279
+ if (!record || record.role !== "assistant" || !Array.isArray(record.openclawDisplayContent)) {
280
+ return message;
281
+ }
282
+ const displayMedia = record.openclawDisplayContent.filter(isDisplayMediaBlock);
283
+ if (displayMedia.length === 0)
284
+ return message;
285
+ const content = normalizeContentBlocks(record.content);
286
+ const existingMediaKeys = new Set(mediaContentBlocks(content).map(mediaContentIdentity).filter((key) => Boolean(key)));
287
+ const additions = displayMedia.filter((block) => {
288
+ const key = mediaContentIdentity(block);
289
+ // Only suppress a display block already represented by protocol content.
290
+ // Do not update this set while walking displayMedia: two display entries
291
+ // with the same identity can be intentional repeated sends.
292
+ return !key || !existingMediaKeys.has(key);
293
+ });
294
+ if (additions.length === 0)
295
+ return message;
296
+ changed = true;
297
+ return { ...record, content: [...content, ...additions] };
298
+ });
299
+ return { messages: changed ? nextMessages : messages, changed };
300
+ }
301
+ function isDisplayMediaBlock(block) {
302
+ const record = asRecord(block);
303
+ if (!record)
304
+ return false;
305
+ const type = firstString(record.type)?.toLowerCase();
306
+ if (!type || !["image", "file", "audio", "voice", "video"].includes(type))
307
+ return false;
308
+ return Boolean(firstString(record.url, record.openUrl, record.downloadUrl, record.downloadPath, record.download_path, record.artifactId, record.attachmentId, record.fileId));
309
+ }
310
+ function mediaContentIdentity(block) {
311
+ const record = asRecord(block);
312
+ if (!record)
313
+ return undefined;
314
+ const value = firstString(record.url, record.openUrl, record.downloadUrl, record.downloadPath, record.download_path, record.artifactId, record.attachmentId, record.fileId);
315
+ return value ? `${firstString(record.type)?.toLowerCase() ?? "media"}\u0000${value}` : undefined;
316
+ }
212
317
  function mediaContentBlocks(content) {
213
318
  return normalizeContentBlocks(content).filter((block) => !isTextContentBlock(block));
214
319
  }
@@ -222,8 +327,8 @@ function isTextContentBlock(block) {
222
327
  const type = typeof record?.type === "string" ? record.type.trim().toLowerCase() : "";
223
328
  return type === "text" || type === "input_text" || type === "output_text";
224
329
  }
225
- function messageSessionScope(message, fallbackSessionKey) {
226
- return firstString(message.sessionKey, message.sessionId, fallbackSessionKey);
330
+ function messageSessionScope(message, fallbackSessionKey, sessionDefaults) {
331
+ return canonicalizeOpenClawSessionScope(firstString(message.sessionKey, message.sessionId, fallbackSessionKey), sessionDefaults);
227
332
  }
228
333
  function normalAssistantRunId(message) {
229
334
  const idempotencyKey = firstString(message.idempotencyKey, message.idempotency_key);
@@ -236,12 +341,16 @@ function automaticMediaReplySourceRunId(message) {
236
341
  const metadata = asRecord(message.__openclaw);
237
342
  return firstString(message.sourceRunId, message.source_run_id, metadata?.sourceRunId, metadata?.source_run_id);
238
343
  }
239
- function automaticMediaReplyRelation(message) {
344
+ export function extractOpenClawMessageToolRelation(message) {
240
345
  const explicitSourceRunId = automaticMediaReplySourceRunId(message);
346
+ const explicitToolCallId = firstString(message.toolCallId, message.tool_call_id, message.sourceToolCallId, message.source_tool_call_id);
347
+ if (explicitSourceRunId && explicitToolCallId) {
348
+ return { sourceRunId: explicitSourceRunId, toolCallId: explicitToolCallId };
349
+ }
241
350
  const idempotencyKey = firstString(message.idempotencyKey, message.idempotency_key, asRecord(message.__openclaw)?.idempotencyKey, asRecord(message.__openclaw)?.idempotency_key);
242
351
  const markerIndex = idempotencyKey?.indexOf(OPENCLAW_MESSAGE_TOOL_IDEMPOTENCY_MARKER) ?? -1;
243
352
  if (!idempotencyKey || markerIndex <= 0) {
244
- return explicitSourceRunId ? { sourceRunId: explicitSourceRunId } : undefined;
353
+ return undefined;
245
354
  }
246
355
  const sourceRunId = idempotencyKey.slice(0, markerIndex).trim();
247
356
  const suffix = idempotencyKey.slice(markerIndex + OPENCLAW_MESSAGE_TOOL_IDEMPOTENCY_MARKER.length);
@@ -251,6 +360,13 @@ function automaticMediaReplyRelation(message) {
251
360
  }
252
361
  return { sourceRunId, toolCallId };
253
362
  }
363
+ function automaticMediaReplyRelation(message) {
364
+ const relation = extractOpenClawMessageToolRelation(message);
365
+ if (relation)
366
+ return relation;
367
+ const explicitSourceRunId = automaticMediaReplySourceRunId(message);
368
+ return explicitSourceRunId ? { sourceRunId: explicitSourceRunId } : undefined;
369
+ }
254
370
  function messageToolCallIds(content) {
255
371
  if (!Array.isArray(content))
256
372
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"assistant-media-sidecar.js","sourceRoot":"","sources":["../../../src/openclaw/relay/assistant-media-sidecar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assistant-media-sidecar.js","sourceRoot":"","sources":["../../../src/openclaw/relay/assistant-media-sidecar.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import type { CanonicalTimelineHistorySnapshotPage } from "../../core/relay/timeline-event-log.js";
1
+ import type { CanonicalTimelineHistorySnapshotPage, TimelineContentBlock } from "../../core/relay/timeline-event-log.js";
2
2
  import { type GatewaySessionDefaults } from "./session-context.js";
3
+ import { type SourceCommit } from "../../core/relay/source-commit.js";
3
4
  export type HistoryMessage = {
4
5
  [key: string]: unknown;
5
6
  id?: string;
@@ -28,7 +29,13 @@ export type HistoryResponse = {
28
29
  hasMore?: boolean;
29
30
  nextCursor?: string;
30
31
  newestCursor?: string;
32
+ projectionVersion?: 3;
31
33
  timelineSnapshot?: CanonicalTimelineHistorySnapshotPage;
34
+ /** Internal source-range metadata used by the source-commit watcher. */
35
+ sourceReadThroughSeq?: number;
36
+ sourceRangeStartSeq?: number;
37
+ sourceRangeHasGap?: boolean;
38
+ sourceHasMore?: boolean;
32
39
  };
33
40
  export type ChatHistoryOutcome = {
34
41
  kind: "final";
@@ -48,10 +55,21 @@ export type TranscriptHistoryRequest = {
48
55
  sessionKey: string;
49
56
  sessionId?: string;
50
57
  transcriptPath: string;
58
+ /** Internal Relay identity; never forwarded to OpenClaw's wire API. */
59
+ projectionGatewayId?: string;
51
60
  limit?: unknown;
52
61
  cursor?: unknown;
53
62
  direction?: unknown;
63
+ projectionVersion?: 3;
64
+ sessionDefaults?: GatewaySessionDefaults;
54
65
  };
66
+ /**
67
+ * Read the durable OpenClaw SQLite watermark for one session. This is a
68
+ * source-commit signal only; callers must not use it to derive message ids or
69
+ * reorder rows. It intentionally returns null when the authoritative SQLite
70
+ * source is not available so the caller can use the native gateway stream.
71
+ */
72
+ export declare function readOpenClawSourceCommitCursor(rawParams: unknown, defaults: GatewaySessionDefaults): SourceCommit | null;
55
73
  export declare function clearTranscriptHistoryCache(): void;
56
74
  export declare function readOpenClawTranscriptChatHistory(rawParams: unknown, defaults: GatewaySessionDefaults): Promise<HistoryResponse | null>;
57
75
  export declare function readChatHistoryFromTranscriptFile(request: TranscriptHistoryRequest): Promise<HistoryResponse>;
@@ -65,6 +83,9 @@ export declare function readChatHistoryFromTranscriptFile(request: TranscriptHis
65
83
  export declare function canonicalizeOpenClawGatewayHistoryResponse(history: HistoryResponse, request: {
66
84
  sessionKey: string;
67
85
  cursor?: string;
86
+ projectionVersion?: 3;
87
+ projectionGatewayId?: string;
88
+ sessionDefaults?: GatewaySessionDefaults;
68
89
  }): HistoryResponse;
69
90
  /**
70
91
  * OpenClaw 会把内部心跳探测写入 transcript。只有精确的保留提示最终得到纯确认回执时,
@@ -72,5 +93,19 @@ export declare function canonicalizeOpenClawGatewayHistoryResponse(history: Hist
72
93
  */
73
94
  export declare function filterOpenClawHeartbeatArtifacts<T extends HistoryMessage>(messages: T[]): T[];
74
95
  export declare function filterOpenClawHeartbeatHistoryResponse(history: HistoryResponse): HistoryResponse;
75
- export declare function extractHistoryOutcome(history: HistoryResponse | undefined, context: ChatRunContext): ChatHistoryOutcome;
96
+ export declare function extractHistoryOutcome(history: HistoryResponse | undefined, context: ChatRunContext, preferredText?: string): ChatHistoryOutcome;
97
+ /**
98
+ * Return all media delivery rows belonging to the matched OpenClaw turn.
99
+ * A provider may emit only the first image on the live terminal while the
100
+ * remaining message-tool deliveries are committed to history. This helper
101
+ * keeps the user-turn boundary as the only scope and never matches by text.
102
+ */
103
+ export declare function extractHistoryMediaContent(history: HistoryResponse | undefined, context: ChatRunContext): TimelineContentBlock[];
104
+ /**
105
+ * Collect media rows only when the provider gives an explicit parent edge.
106
+ * v3 message-tool rows remain independent canonical messages; this helper is
107
+ * solely for an outgoing terminal payload that deliberately owns its child
108
+ * sidecars, and never falls back to run/client/text/time matching.
109
+ */
110
+ export declare function extractExplicitParentMediaContent(history: HistoryResponse | undefined, parentMessage: HistoryMessage | undefined): TimelineContentBlock[];
76
111
  export declare function withTimeout<T>(promise: Promise<T>, timeoutMs: number, label: string): Promise<T>;