@superblocksteam/vite-plugin-file-sync 2.0.130-next.1 → 2.0.130-next.3

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 (131) hide show
  1. package/dist/ai-service/agent/prompts/build-base-system-prompt.js +1 -1
  2. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  3. package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
  4. package/dist/ai-service/agent/tool-message-utils.js +30 -0
  5. package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
  6. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts +11 -1
  7. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
  8. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +144 -29
  9. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
  10. package/dist/ai-service/agent/utils.d.ts.map +1 -1
  11. package/dist/ai-service/agent/utils.js +6 -1
  12. package/dist/ai-service/agent/utils.js.map +1 -1
  13. package/dist/ai-service/app-skills/helpers.d.ts.map +1 -1
  14. package/dist/ai-service/app-skills/helpers.js +17 -18
  15. package/dist/ai-service/app-skills/helpers.js.map +1 -1
  16. package/dist/ai-service/chat/chat-push-metrics.d.ts +12 -0
  17. package/dist/ai-service/chat/chat-push-metrics.d.ts.map +1 -0
  18. package/dist/ai-service/chat/chat-push-metrics.js +68 -0
  19. package/dist/ai-service/chat/chat-push-metrics.js.map +1 -0
  20. package/dist/ai-service/chat/chat-session-store.d.ts +61 -5
  21. package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
  22. package/dist/ai-service/chat/chat-session-store.js +214 -8
  23. package/dist/ai-service/chat/chat-session-store.js.map +1 -1
  24. package/dist/ai-service/chat/transcript-budget.d.ts +108 -0
  25. package/dist/ai-service/chat/transcript-budget.d.ts.map +1 -0
  26. package/dist/ai-service/chat/transcript-budget.js +175 -0
  27. package/dist/ai-service/chat/transcript-budget.js.map +1 -0
  28. package/dist/ai-service/chat/transcript-metrics.d.ts +16 -0
  29. package/dist/ai-service/chat/transcript-metrics.d.ts.map +1 -0
  30. package/dist/ai-service/chat/transcript-metrics.js +128 -0
  31. package/dist/ai-service/chat/transcript-metrics.js.map +1 -0
  32. package/dist/ai-service/context-download.d.ts.map +1 -1
  33. package/dist/ai-service/context-download.js +48 -1
  34. package/dist/ai-service/context-download.js.map +1 -1
  35. package/dist/ai-service/context-upload.d.ts.map +1 -1
  36. package/dist/ai-service/context-upload.js +10 -0
  37. package/dist/ai-service/context-upload.js.map +1 -1
  38. package/dist/ai-service/index.d.ts.map +1 -1
  39. package/dist/ai-service/index.js +4 -0
  40. package/dist/ai-service/index.js.map +1 -1
  41. package/dist/ai-service/llm/clark-stream-telemetry-sink.d.ts +4 -0
  42. package/dist/ai-service/llm/clark-stream-telemetry-sink.d.ts.map +1 -0
  43. package/dist/ai-service/llm/clark-stream-telemetry-sink.js +105 -0
  44. package/dist/ai-service/llm/clark-stream-telemetry-sink.js.map +1 -0
  45. package/dist/ai-service/llm/client.d.ts.map +1 -1
  46. package/dist/ai-service/llm/client.js +63 -39
  47. package/dist/ai-service/llm/client.js.map +1 -1
  48. package/dist/ai-service/llm/context-v2/compaction/client-side.d.ts.map +1 -1
  49. package/dist/ai-service/llm/context-v2/compaction/client-side.js +10 -1
  50. package/dist/ai-service/llm/context-v2/compaction/client-side.js.map +1 -1
  51. package/dist/ai-service/llm/context-v2/context.d.ts +14 -0
  52. package/dist/ai-service/llm/context-v2/context.d.ts.map +1 -1
  53. package/dist/ai-service/llm/context-v2/context.js +94 -3
  54. package/dist/ai-service/llm/context-v2/context.js.map +1 -1
  55. package/dist/ai-service/llm/context-v2/storage/event-types.d.ts +10 -1
  56. package/dist/ai-service/llm/context-v2/storage/event-types.d.ts.map +1 -1
  57. package/dist/ai-service/llm/context-v2/storage/event-types.js +7 -1
  58. package/dist/ai-service/llm/context-v2/storage/event-types.js.map +1 -1
  59. package/dist/ai-service/llm/stream/config.d.ts +30 -0
  60. package/dist/ai-service/llm/stream/config.d.ts.map +1 -1
  61. package/dist/ai-service/llm/stream/config.js +34 -17
  62. package/dist/ai-service/llm/stream/config.js.map +1 -1
  63. package/dist/ai-service/llm/stream/errors.d.ts +10 -1
  64. package/dist/ai-service/llm/stream/errors.d.ts.map +1 -1
  65. package/dist/ai-service/llm/stream/errors.js +3 -1
  66. package/dist/ai-service/llm/stream/errors.js.map +1 -1
  67. package/dist/ai-service/llm/stream/idle-monitor.d.ts +34 -4
  68. package/dist/ai-service/llm/stream/idle-monitor.d.ts.map +1 -1
  69. package/dist/ai-service/llm/stream/idle-monitor.js +90 -6
  70. package/dist/ai-service/llm/stream/idle-monitor.js.map +1 -1
  71. package/dist/ai-service/llm/stream/index.d.ts +1 -1
  72. package/dist/ai-service/llm/stream/index.d.ts.map +1 -1
  73. package/dist/ai-service/llm/stream/index.js.map +1 -1
  74. package/dist/ai-service/llm/stream/managed-stream.d.ts.map +1 -1
  75. package/dist/ai-service/llm/stream/managed-stream.js +11 -0
  76. package/dist/ai-service/llm/stream/managed-stream.js.map +1 -1
  77. package/dist/ai-service/llm/stream/orchestrator.d.ts +19 -0
  78. package/dist/ai-service/llm/stream/orchestrator.d.ts.map +1 -1
  79. package/dist/ai-service/llm/stream/orchestrator.js +387 -33
  80. package/dist/ai-service/llm/stream/orchestrator.js.map +1 -1
  81. package/dist/ai-service/llm/stream/retry-engine.d.ts +18 -2
  82. package/dist/ai-service/llm/stream/retry-engine.d.ts.map +1 -1
  83. package/dist/ai-service/llm/stream/retry-engine.js +76 -3
  84. package/dist/ai-service/llm/stream/retry-engine.js.map +1 -1
  85. package/dist/ai-service/llm/stream/session.d.ts +6 -0
  86. package/dist/ai-service/llm/stream/session.d.ts.map +1 -1
  87. package/dist/ai-service/llm/stream/session.js +28 -0
  88. package/dist/ai-service/llm/stream/session.js.map +1 -1
  89. package/dist/ai-service/llm/stream/types.d.ts +1 -0
  90. package/dist/ai-service/llm/stream/types.d.ts.map +1 -1
  91. package/dist/ai-service/llm/stream/wait-state-tracker.d.ts +54 -0
  92. package/dist/ai-service/llm/stream/wait-state-tracker.d.ts.map +1 -0
  93. package/dist/ai-service/llm/stream/wait-state-tracker.js +105 -0
  94. package/dist/ai-service/llm/stream/wait-state-tracker.js.map +1 -0
  95. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  96. package/dist/ai-service/state-machine/clark-fsm.js +13 -7
  97. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  98. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  99. package/dist/ai-service/state-machine/handlers/agent-planning.js +55 -43
  100. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  101. package/dist/ai-service/state-machine/handlers/flush-pending-chat-pushes.d.ts +11 -0
  102. package/dist/ai-service/state-machine/handlers/flush-pending-chat-pushes.d.ts.map +1 -0
  103. package/dist/ai-service/state-machine/handlers/flush-pending-chat-pushes.js +11 -0
  104. package/dist/ai-service/state-machine/handlers/flush-pending-chat-pushes.js.map +1 -0
  105. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  106. package/dist/ai-service/state-machine/handlers/llm-generating.js +10 -0
  107. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  108. package/dist/ai-service/state-machine/helpers/background-chat-record-metrics.d.ts +8 -0
  109. package/dist/ai-service/state-machine/helpers/background-chat-record-metrics.d.ts.map +1 -0
  110. package/dist/ai-service/state-machine/helpers/background-chat-record-metrics.js +52 -0
  111. package/dist/ai-service/state-machine/helpers/background-chat-record-metrics.js.map +1 -0
  112. package/dist/ai-service/state-machine/helpers/background-chat-record.d.ts +33 -0
  113. package/dist/ai-service/state-machine/helpers/background-chat-record.d.ts.map +1 -0
  114. package/dist/ai-service/state-machine/helpers/background-chat-record.js +61 -0
  115. package/dist/ai-service/state-machine/helpers/background-chat-record.js.map +1 -0
  116. package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
  117. package/dist/ai-service/state-machine/mocks.js +1 -0
  118. package/dist/ai-service/state-machine/mocks.js.map +1 -1
  119. package/dist/ai-service/tasks/peer-push.d.ts +7 -4
  120. package/dist/ai-service/tasks/peer-push.d.ts.map +1 -1
  121. package/dist/ai-service/tasks/peer-push.js +7 -4
  122. package/dist/ai-service/tasks/peer-push.js.map +1 -1
  123. package/dist/migration-templates/app-fullstack/package.json +1 -1
  124. package/dist/socket-manager.d.ts +2 -1
  125. package/dist/socket-manager.d.ts.map +1 -1
  126. package/dist/socket-manager.js +17 -6
  127. package/dist/socket-manager.js.map +1 -1
  128. package/dist/util/logger.d.ts +1 -0
  129. package/dist/util/logger.d.ts.map +1 -1
  130. package/dist/util/logger.js.map +1 -1
  131. package/package.json +8 -8
@@ -7,6 +7,7 @@ import { SERVER_COMPACTION_INTERRUPTED_SUMMARY, SERVER_COMPACTION_SUMMARY, Serve
7
7
  import { DEFAULT_OPTIONS, DEFAULT_CACHING } from "./config.js";
8
8
  import { recordContextPersist, } from "./context-metrics.js";
9
9
  import { OperationQueue } from "./operation-queue.js";
10
+ import { CLIENT_COMPACTION_MARKER } from "./storage/event-types.js";
10
11
  import { getTotalInputTokens } from "./token-tracker.js";
11
12
  import { toStoredMessage, toSdkMessages, CACHE_BREAKPOINT_PROVIDER_OPTIONS, normalizeToolMessage, stripUndefinedFromToolOutputs, repairBrokenToolCalls, repairOrphanedToolResults, enforceToolUsePairing, normalizeReasoningProviderOptions, stripUnsignedReasoning, stripTrailingAssistantPrefill, extractTokenUsage, } from "./types.js";
12
13
  import { uniquifyFilePartFilenames } from "./uniquify-filenames.js";
@@ -148,8 +149,32 @@ export class ContextV2 {
148
149
  this.contextId = options.contextId;
149
150
  this.compaction = options.compaction ?? new ServerSideCompactionStrategy();
150
151
  }
152
+ // Cached result of getMessages() normalization. Avoids recomputing
153
+ // 10+ repair/normalization passes when messages haven't changed.
154
+ // Invalidated by any operation that modifies this.messages or systemPrompt.
155
+ // NOTE: Returns a shallow copy of the cached array. Element references are
156
+ // shared — callers must treat returned message objects as read-only.
157
+ _cachedMessages = null;
158
+ /**
159
+ * Call this before AND after every operation that modifies `this.messages`
160
+ * or `this.systemPrompt`. Pre-enqueue call prevents fast-path cache hits
161
+ * while the mutation is queued; post-mutation call handles the scenario where
162
+ * a `getMessages()` queue op ran and cached a result between enqueue and
163
+ * execution.
164
+ *
165
+ * CHECKLIST for new mutation methods:
166
+ * - Synchronous mutations: call once after the mutation.
167
+ * - Async queue mutations: call once before enqueue, once after the mutation
168
+ * inside the queue op.
169
+ */
170
+ invalidateMessageCache() {
171
+ this._cachedMessages = null;
172
+ }
151
173
  updateConfig(config) {
152
174
  this.config = { ...this.config, ...config };
175
+ // NOTE: getMessages() reads this.caching (immutable after construction), not
176
+ // this.config, so cache invalidation is not required here. If getMessages()
177
+ // ever becomes config-dependent, add invalidateMessageCache() here.
153
178
  this.compaction.updateConfig(config);
154
179
  }
155
180
  /**
@@ -225,10 +250,12 @@ export class ContextV2 {
225
250
  return this.attachments;
226
251
  }
227
252
  truncateAfterTimestamp(timestamp) {
253
+ this.invalidateMessageCache();
228
254
  void this.queue.enqueue(async () => {
229
255
  const initialCount = this.messages.length;
230
256
  this.messages = this.messages.filter((msg) => !msg._superblocks?.timestamp ||
231
257
  msg._superblocks.timestamp <= timestamp);
258
+ this.invalidateMessageCache();
232
259
  const removed = initialCount - this.messages.length;
233
260
  logger.info(`Truncated context after timestamp ${timestamp}. Removed ${removed} messages, ${this.messages.length} remaining.`);
234
261
  await this.persist("truncate");
@@ -238,6 +265,13 @@ export class ContextV2 {
238
265
  const context = new ContextV2(options);
239
266
  context.messages = record.messages;
240
267
  context.attachments = record.attachments;
268
+ // Live sessions keep media on only the newest screenshot, but event-log
269
+ // entries are appended before that stripping happens, so a restored
270
+ // record can resurrect every screenshot's media. Re-stripping here keeps
271
+ // the restored request bytes identical to what the provider's prompt
272
+ // cache saw before the restart (APPS-4751) — and avoids re-sending
273
+ // megabytes of stale base64.
274
+ context.stripAllButLatestScreenshot();
241
275
  return context;
242
276
  }
243
277
  toRecord() {
@@ -249,12 +283,15 @@ export class ContextV2 {
249
283
  }
250
284
  setSystemPrompt(prompt) {
251
285
  this.systemPrompt = toStoredMessage(prompt);
286
+ this.invalidateMessageCache();
252
287
  }
253
288
  async addUserMessage(message) {
254
289
  this.serverCompactionCompletedBeforeStart = false;
290
+ this.invalidateMessageCache();
255
291
  return this.queue.enqueue(async () => {
256
292
  const storedMessage = toStoredMessage(message);
257
293
  this.messages.push(storedMessage);
294
+ this.invalidateMessageCache();
258
295
  await this.appendEvent("prompt_sent", storedMessage);
259
296
  });
260
297
  }
@@ -270,6 +307,7 @@ export class ContextV2 {
270
307
  * persistent contexts, re-append every message to the event log).
271
308
  */
272
309
  async initializeWith(messages) {
310
+ this.invalidateMessageCache();
273
311
  const tracer = this.tracer ?? LLMObsTracer.instance;
274
312
  return tracer.trace({ kind: "task", name: "context.replay" }, (span) => this.replayMessages(messages, tracer, span));
275
313
  }
@@ -313,6 +351,7 @@ export class ContextV2 {
313
351
  await this.appendEvent("response_received", storedResponse, eventUsage);
314
352
  }
315
353
  this.stripAllButLatestScreenshot();
354
+ this.invalidateMessageCache();
316
355
  await this.persist("replay");
317
356
  replayMs = Math.round(performance.now() - replayStartedAt);
318
357
  });
@@ -325,10 +364,12 @@ export class ContextV2 {
325
364
  logger.info(`initializeWith: replayed ${messages.length} messages in ${replayMs}ms (queueWaitMs=${queueWaitMs})`);
326
365
  }
327
366
  async addResponse(response, usage) {
367
+ this.invalidateMessageCache();
328
368
  await this.queue.enqueue(async () => {
329
369
  const storedResponse = this.ingestResponse(response, usage, {
330
370
  stripOlderScreenshots: true,
331
371
  });
372
+ this.invalidateMessageCache();
332
373
  if (response.role === "assistant" || response.role === "tool") {
333
374
  const eventUsage = response.role === "assistant" ? extractTokenUsage(usage) : undefined;
334
375
  await this.appendEvent("response_received", storedResponse, eventUsage);
@@ -363,6 +404,7 @@ export class ContextV2 {
363
404
  if (responses.length === 0) {
364
405
  return;
365
406
  }
407
+ this.invalidateMessageCache();
366
408
  await this.queue.enqueue(async () => {
367
409
  for (const response of responses) {
368
410
  const storedResponse = this.ingestResponse(response, usage, {
@@ -376,6 +418,7 @@ export class ContextV2 {
376
418
  }
377
419
  }
378
420
  this.stripAllButLatestScreenshot();
421
+ this.invalidateMessageCache();
379
422
  });
380
423
  // Compaction runs once after the step is committed. It inspects the whole
381
424
  // message array and only acts when no tool calls are pending, so a single
@@ -507,6 +550,7 @@ export class ContextV2 {
507
550
  });
508
551
  if (result.messages) {
509
552
  this.messages = result.messages;
553
+ this.invalidateMessageCache();
510
554
  }
511
555
  if (result.skillsNeedReload) {
512
556
  this.skillsNeedReload = true;
@@ -520,7 +564,18 @@ export class ContextV2 {
520
564
  });
521
565
  }
522
566
  async getMessages() {
567
+ // Fast path: return cached result when messages haven't changed.
568
+ // This avoids re-running 10+ normalization/repair passes and avoids
569
+ // queue contention on the second call within the same LLM step.
570
+ if (this._cachedMessages) {
571
+ logger.debug(`getMessages: cache hit (${this._cachedMessages.length} messages)`);
572
+ return [...this._cachedMessages];
573
+ }
523
574
  return this.queue.enqueue(async () => {
575
+ // Re-check inside queue in case another enqueued op just computed it.
576
+ if (this._cachedMessages) {
577
+ return [...this._cachedMessages];
578
+ }
524
579
  // Strip system-role messages from the conversation array before
525
580
  // building the wire payload. The `compaction_received` marker
526
581
  // (written by `onCompactionDetected`, surfaced by
@@ -604,11 +659,13 @@ export class ContextV2 {
604
659
  enforced[idx].providerOptions = CACHE_BREAKPOINT_PROVIDER_OPTIONS;
605
660
  }
606
661
  }
607
- return enforced;
662
+ this._cachedMessages = enforced;
663
+ return [...enforced];
608
664
  });
609
665
  }
610
666
  async onCompactionDetected() {
611
667
  const detectedGeneration = this.activeServerCompactionGeneration;
668
+ this.invalidateMessageCache();
612
669
  // Serialize with `addUserMessage` / `addResponse` / `getMessages`: this
613
670
  // method is driven by the stream observer and can otherwise interleave
614
671
  // with a queued write, leading to lost mutations or torn state.
@@ -616,6 +673,7 @@ export class ContextV2 {
616
673
  const result = this.compaction.onCompactionDetected(this.messages);
617
674
  if (result.messages) {
618
675
  this.messages = result.messages;
676
+ this.invalidateMessageCache();
619
677
  }
620
678
  if (result.skillsNeedReload) {
621
679
  this.skillsNeedReload = true;
@@ -707,11 +765,44 @@ export class ContextV2 {
707
765
  if (!this.eventStore || !this.contextId) {
708
766
  return;
709
767
  }
768
+ // System-role messages are in-memory/on-disk breadcrumbs (e.g. a
769
+ // restored compaction marker), not conversation turns; rewriting them
770
+ // into the window would accumulate one marker per compact/restore cycle.
771
+ const windowMessages = messages.filter((msg) => msg.role !== "system");
772
+ // Never write an anchor for an empty window: the backward scan in
773
+ // `loadMessages` would treat it as the replay point and restore an
774
+ // empty conversation.
775
+ if (windowMessages.length === 0) {
776
+ logger.warn("Compaction window is empty after system-role filtering; skipping event log write");
777
+ return;
778
+ }
779
+ // Phase-2 windows begin with an `isSummary` message that
780
+ // `JsonlEventStore.loadMessages` recognizes as a replay anchor.
781
+ // Phase-1-only windows carry no such message, so write an explicit
782
+ // `compaction_received` marker first — without an anchor the next
783
+ // load would replay the raw pre-compaction events, resurrecting the
784
+ // uncompacted context and invalidating the provider prompt cache on
785
+ // every page refresh (APPS-4751).
786
+ const needsMarker = windowMessages[0]?._superblocks?.isSummary !== true;
787
+ // The marker + window writes are not atomic: a crash mid-write leaves
788
+ // a partial window behind the anchor and the next load replays an
789
+ // incomplete window. That is still preferable to replaying the raw
790
+ // pre-compaction history; phase-2/server-side windows share the same
791
+ // exposure.
710
792
  try {
711
- for (const message of messages) {
793
+ if (needsMarker) {
794
+ await this.eventStore.appendEvent(this.contextId, {
795
+ type: "compaction_received",
796
+ timestamp: Date.now(),
797
+ role: "system",
798
+ content: CLIENT_COMPACTION_MARKER,
799
+ });
800
+ }
801
+ for (const message of windowMessages) {
712
802
  await this.eventStore.appendEvent(this.contextId, this.toEventLogEntry(message));
713
803
  }
714
- logger.info(`Wrote ${messages.length} client-side compaction message(s) to event log`);
804
+ logger.info(`Wrote ${windowMessages.length} client-side compaction message(s) to event log ` +
805
+ `(anchor: ${needsMarker ? "phase-1 marker" : "isSummary message"})`);
715
806
  }
716
807
  catch (err) {
717
808
  logger.error(`Failed to append client-side compaction window: ${err}`);
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/context.ts"],"names":[],"mappings":"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"}
@@ -12,9 +12,18 @@ import type { SuperblocksMetadata } from "../types.js";
12
12
  *
13
13
  * - `prompt_sent`: A user prompt was sent to the LLM.
14
14
  * - `response_received`: An assistant response was received from the LLM.
15
- * - `compaction_received`: A server-side compaction summary replaced earlier history.
15
+ * - `compaction_received`: A compaction replaced earlier history — either a
16
+ * server-side compaction summary or the anchor marker written before a
17
+ * client-side phase-1 compaction window.
16
18
  */
17
19
  export type EventType = "prompt_sent" | "response_received" | "compaction_received";
20
+ /**
21
+ * Content of the `compaction_received` marker written before a client-side
22
+ * phase-1 compaction window. The marker is the replay anchor that
23
+ * `JsonlEventStore.loadMessages` scans back to; phase-2 windows do not need
24
+ * it because their first message carries `isSummary`.
25
+ */
26
+ export declare const CLIENT_COMPACTION_MARKER = "Client-side compaction applied";
18
27
  /**
19
28
  * Message role aligned with AI SDK's `ModelMessage` role literals.
20
29
  */
@@ -1 +1 @@
1
- {"version":3,"file":"event-types.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/storage/event-types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,MAAM,SAAS,GACjB,aAAa,GACb,mBAAmB,GACnB,qBAAqB,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEnE;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC5B,2BAA2B;IAC3B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,wDAAwD;IACxD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,iEAAiE;IACjE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,yFAAyF;IACzF,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,6EAA6E;IAC7E,QAAQ,CAAC,KAAK,CAAC,EAAE;QACf,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,iEAAiE;IACjE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpD,+FAA+F;IAC/F,QAAQ,CAAC,YAAY,CAAC,EAAE,mBAAmB,CAAC;CAC7C"}
1
+ {"version":3,"file":"event-types.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/storage/event-types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD;;;;;;;;GAQG;AACH,MAAM,MAAM,SAAS,GACjB,aAAa,GACb,mBAAmB,GACnB,qBAAqB,CAAC;AAE1B;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,mCAAmC,CAAC;AAEzE;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEnE;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC5B,2BAA2B;IAC3B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,wDAAwD;IACxD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,iEAAiE;IACjE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,yFAAyF;IACzF,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,6EAA6E;IAC7E,QAAQ,CAAC,KAAK,CAAC,EAAE;QACf,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,iEAAiE;IACjE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpD,+FAA+F;IAC/F,QAAQ,CAAC,YAAY,CAAC,EAAE,mBAAmB,CAAC;CAC7C"}
@@ -6,5 +6,11 @@
6
6
  * or compaction received). The event log replaces full-context JSON
7
7
  * blob storage with an incremental, corruption-tolerant format.
8
8
  */
9
- export {};
9
+ /**
10
+ * Content of the `compaction_received` marker written before a client-side
11
+ * phase-1 compaction window. The marker is the replay anchor that
12
+ * `JsonlEventStore.loadMessages` scans back to; phase-2 windows do not need
13
+ * it because their first message carries `isSummary`.
14
+ */
15
+ export const CLIENT_COMPACTION_MARKER = "Client-side compaction applied";
10
16
  //# sourceMappingURL=event-types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-types.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/storage/event-types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
1
+ {"version":3,"file":"event-types.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context-v2/storage/event-types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAkBH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,gCAAgC,CAAC"}
@@ -3,6 +3,23 @@ import type { FileArtifact } from "../../types.js";
3
3
  export type ProviderType = "vertex" | "bedrock" | "snowflake";
4
4
  export type CoreModelType = "claude-sonnet-4-5" | "claude-sonnet-4-6" | "claude-opus-4-5" | "claude-opus-4-6" | "claude-opus-4-7";
5
5
  export type { FallbackStrategy };
6
+ /**
7
+ * The time budgets that govern stall detection and the retry max-time wall for
8
+ * a single model. These differ by model (e.g. extended-thinking opus models get
9
+ * a larger idle/total budget than sonnet), so fallback attempts must resolve
10
+ * them against the CURRENT model, not the initial one. See APPS-4775.
11
+ */
12
+ export interface RetryBudget {
13
+ idleTimeoutMs: number;
14
+ firstChunkTimeoutMs: number;
15
+ maxTotalTimeMs: number;
16
+ }
17
+ /**
18
+ * Resolves the time budgets for a given model. Callers that vary budgets by
19
+ * model (LLMClient) supply one; everything else falls back to the flat resolved
20
+ * values so behavior is unchanged.
21
+ */
22
+ export type RetryBudgetResolver = (model: CoreModelType) => RetryBudget;
6
23
  export interface RetryConfigOptions {
7
24
  maxAttempts?: number;
8
25
  maxAttemptsPerProvider?: number | Record<ProviderType, Record<CoreModelType, number> | number>;
@@ -15,6 +32,13 @@ export interface RetryConfigOptions {
15
32
  * gaps after the compaction start event. See APPS-4520.
16
33
  */
17
34
  firstChunkTimeoutMs?: number;
35
+ /**
36
+ * Per-model budget resolver. When supplied, the orchestrator's IdleMonitor
37
+ * and the RetryEngine's max-time guard recompute idle/first-chunk/max-time
38
+ * from the CURRENT attempt's model instead of inheriting the initial model's
39
+ * frozen budget across fallback. See APPS-4775.
40
+ */
41
+ budgetForModel?: RetryBudgetResolver;
18
42
  initialDelayMs?: number;
19
43
  maxDelayMs?: number;
20
44
  backoffMultiplier?: number;
@@ -80,6 +104,12 @@ interface ResolvedRetryConfig {
80
104
  maxTotalTimeMs: number;
81
105
  idleTimeoutMs: number;
82
106
  firstChunkTimeoutMs: number;
107
+ /**
108
+ * Always present. When the caller supplies no resolver, returns the flat
109
+ * resolved budget for every model so behavior is unchanged. The orchestrator
110
+ * and retry engine call this with the current attempt's model. See APPS-4775.
111
+ */
112
+ budgetForModel: RetryBudgetResolver;
83
113
  initialDelayMs: number;
84
114
  maxDelayMs: number;
85
115
  backoffMultiplier: number;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/config.ts"],"names":[],"mappings":"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"}
@@ -45,26 +45,43 @@ export class StreamConfig {
45
45
  "These values should come from the UI feature flags " +
46
46
  "(ui.clark-ai.llm-provider and superblocks.ai.core-model.name).");
47
47
  }
48
+ // Generic default for callers with no server-side context management.
49
+ // Like firstChunkTimeoutMs below, StreamConfig stays agnostic and does
50
+ // NOT floor this against the proxy upstream-stall timeout — callers that
51
+ // run behind the proxy must pass a value >= the proxy stall budget so a
52
+ // single upstream stall can't exhaust the retry clock (LLMClient does
53
+ // this via Math.max(..., proxyStallTimeoutMs)). See APPS-4520.
54
+ const resolvedMaxTotalTimeMs = options.retry?.maxTotalTimeMs ?? 120_000;
55
+ const resolvedIdleTimeoutMs = options.retry?.idleTimeoutMs ?? 90_000;
56
+ // Defaults to the inter-chunk idle budget so generic callers see no
57
+ // behavior change. StreamConfig is context-management-agnostic and does
58
+ // NOT itself apply the larger server-side first-chunk budget — callers
59
+ // that opt into server-side context management must pass a value derived
60
+ // from `defaultFirstChunkTimeoutMs(serverSide, idleTimeoutMs)` (LLMClient
61
+ // does this). See APPS-4520.
62
+ const resolvedFirstChunkTimeoutMs = options.retry?.firstChunkTimeoutMs ??
63
+ options.retry?.idleTimeoutMs ??
64
+ 90_000;
65
+ // When the caller varies budgets by model (LLMClient), the flat fields
66
+ // reflect the INITIAL model's budget so observers/tests reading them are
67
+ // unchanged, and budgetForModel resolves per attempt. Otherwise
68
+ // budgetForModel returns the flat budget for every model — no behavior
69
+ // change for callers that don't supply a resolver. See APPS-4775.
70
+ const initialBudget = options.retry?.budgetForModel
71
+ ? options.retry.budgetForModel(options.model)
72
+ : {
73
+ idleTimeoutMs: resolvedIdleTimeoutMs,
74
+ firstChunkTimeoutMs: resolvedFirstChunkTimeoutMs,
75
+ maxTotalTimeMs: resolvedMaxTotalTimeMs,
76
+ };
77
+ const budgetForModel = options.retry?.budgetForModel ?? (() => initialBudget);
48
78
  const retry = {
49
79
  maxAttempts: options.retry?.maxAttempts ?? 5,
50
80
  maxAttemptsPerProvider: options.retry?.maxAttemptsPerProvider ?? 2,
51
- // Generic default for callers with no server-side context management.
52
- // Like firstChunkTimeoutMs below, StreamConfig stays agnostic and does
53
- // NOT floor this against the proxy upstream-stall timeout — callers that
54
- // run behind the proxy must pass a value >= the proxy stall budget so a
55
- // single upstream stall can't exhaust the retry clock (LLMClient does
56
- // this via Math.max(..., proxyStallTimeoutMs)). See APPS-4520.
57
- maxTotalTimeMs: options.retry?.maxTotalTimeMs ?? 120_000,
58
- idleTimeoutMs: options.retry?.idleTimeoutMs ?? 90_000,
59
- // Defaults to the inter-chunk idle budget so generic callers see no
60
- // behavior change. StreamConfig is context-management-agnostic and does
61
- // NOT itself apply the larger server-side first-chunk budget — callers
62
- // that opt into server-side context management must pass a value derived
63
- // from `defaultFirstChunkTimeoutMs(serverSide, idleTimeoutMs)` (LLMClient
64
- // does this). See APPS-4520.
65
- firstChunkTimeoutMs: options.retry?.firstChunkTimeoutMs ??
66
- options.retry?.idleTimeoutMs ??
67
- 90_000,
81
+ maxTotalTimeMs: initialBudget.maxTotalTimeMs,
82
+ idleTimeoutMs: initialBudget.idleTimeoutMs,
83
+ firstChunkTimeoutMs: initialBudget.firstChunkTimeoutMs,
84
+ budgetForModel,
68
85
  initialDelayMs: options.retry?.initialDelayMs ?? 500,
69
86
  maxDelayMs: options.retry?.maxDelayMs ?? 10_000,
70
87
  backoffMultiplier: options.retry?.backoffMultiplier ?? 2,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/config.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,14 @@ export declare class AbortedError extends Error {
10
10
  name: string;
11
11
  constructor(message?: string);
12
12
  }
13
+ /**
14
+ * Which idle budget was in effect when a stall fired. "first-chunk" means the
15
+ * model never sent content (only silence/keep-alives) before the stall;
16
+ * "inter-chunk" means content was flowing and then stopped. Carried on the
17
+ * error so downstream logging classifies stalls without re-deriving the budget
18
+ * by numeric comparison — which is ambiguous now that budgets are per-model.
19
+ */
20
+ export type StallBudgetKind = "first-chunk" | "inter-chunk";
13
21
  /**
14
22
  * Error thrown when a stream has been idle for too long.
15
23
  * This is a retryable error that triggers the retry logic.
@@ -19,7 +27,8 @@ export declare class StallTimeoutError extends Error implements RetryableError {
19
27
  readonly isRetryable = true;
20
28
  readonly idleTimeMs: number;
21
29
  readonly maxIdleTimeMs: number;
22
- constructor(idleTimeMs: number, maxIdleTimeMs: number);
30
+ readonly budgetKind: StallBudgetKind;
31
+ constructor(idleTimeMs: number, maxIdleTimeMs: number, budgetKind?: StallBudgetKind);
23
32
  }
24
33
  /**
25
34
  * Wraps an error for consistent error handling.
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/errors.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,oBAAoB,EAEpB,gBAAgB,EAChB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,CAAC;AAErD,qBAAa,qBAAsB,SAAQ,KAAK;IACrC,IAAI,SAA2B;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;gBAEjB,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO;CAMnE;AAED,qBAAa,YAAa,SAAQ,KAAK;IAC5B,IAAI,SAAkB;gBAEnB,OAAO,SAAoB;CAGxC;AAED;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,KAAM,YAAW,cAAc;IAC3D,IAAI,SAAuB;IACpC,QAAQ,CAAC,WAAW,QAAQ;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAEnB,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAOtD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,gBAAgB,CA0D3E"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/errors.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,oBAAoB,EAEpB,gBAAgB,EAChB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,CAAC;AAErD,qBAAa,qBAAsB,SAAQ,KAAK;IACrC,IAAI,SAA2B;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;gBAEjB,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO;CAMnE;AAED,qBAAa,YAAa,SAAQ,KAAK;IAC5B,IAAI,SAAkB;gBAEnB,OAAO,SAAoB;CAGxC;AAED;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG,aAAa,CAAC;AAE5D;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,KAAM,YAAW,cAAc;IAC3D,IAAI,SAAuB;IACpC,QAAQ,CAAC,WAAW,QAAQ;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;gBAGnC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,UAAU,GAAE,eAA+B;CAS9C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,gBAAgB,CA0D3E"}
@@ -27,10 +27,12 @@ export class StallTimeoutError extends Error {
27
27
  isRetryable = true;
28
28
  idleTimeMs;
29
29
  maxIdleTimeMs;
30
- constructor(idleTimeMs, maxIdleTimeMs) {
30
+ budgetKind;
31
+ constructor(idleTimeMs, maxIdleTimeMs, budgetKind = "inter-chunk") {
31
32
  super(`Stream stalled: no activity for ${idleTimeMs}ms (max: ${maxIdleTimeMs}ms)`);
32
33
  this.idleTimeMs = idleTimeMs;
33
34
  this.maxIdleTimeMs = maxIdleTimeMs;
35
+ this.budgetKind = budgetKind;
34
36
  }
35
37
  }
36
38
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/errors.ts"],"names":[],"mappings":"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"}