@superblocksteam/vite-plugin-file-sync 2.0.139 → 2.0.140-next.1
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.
- package/dist/ai-service/agent/tools/apis/api-validation-orchestrator.js +1 -1
- package/dist/ai-service/agent/tools/apis/api-validation-orchestrator.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api.js +3 -2
- package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +1 -13
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/git.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/git.js +19 -1
- package/dist/ai-service/agent/tools2/tools/git.js.map +1 -1
- package/dist/ai-service/agent/utils.d.ts.map +1 -1
- package/dist/ai-service/agent/utils.js +46 -3
- package/dist/ai-service/agent/utils.js.map +1 -1
- package/dist/ai-service/app-interface/npm-registry.d.ts +11 -7
- package/dist/ai-service/app-interface/npm-registry.d.ts.map +1 -1
- package/dist/ai-service/app-interface/npm-registry.js +11 -7
- package/dist/ai-service/app-interface/npm-registry.js.map +1 -1
- package/dist/ai-service/app-skills/helpers.d.ts.map +1 -1
- package/dist/ai-service/app-skills/helpers.js +2 -0
- package/dist/ai-service/app-skills/helpers.js.map +1 -1
- package/dist/ai-service/chat/chat-session-store-metrics.d.ts.map +1 -1
- package/dist/ai-service/chat/chat-session-store-metrics.js +26 -17
- package/dist/ai-service/chat/chat-session-store-metrics.js.map +1 -1
- package/dist/ai-service/chat/chat-session-store.d.ts +1 -4
- package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
- package/dist/ai-service/chat/chat-session-store.js +32 -8
- package/dist/ai-service/chat/chat-session-store.js.map +1 -1
- package/dist/ai-service/chat/transcript-metrics.d.ts +5 -0
- package/dist/ai-service/chat/transcript-metrics.d.ts.map +1 -1
- package/dist/ai-service/chat/transcript-metrics.js +42 -15
- package/dist/ai-service/chat/transcript-metrics.js.map +1 -1
- package/dist/ai-service/index.d.ts +2 -0
- package/dist/ai-service/index.d.ts.map +1 -1
- package/dist/ai-service/index.js +206 -31
- package/dist/ai-service/index.js.map +1 -1
- package/dist/ai-service/llm/client.d.ts.map +1 -1
- package/dist/ai-service/llm/client.js +9 -9
- package/dist/ai-service/llm/client.js.map +1 -1
- package/dist/ai-service/llm/context-v2/context-metrics.d.ts +6 -0
- package/dist/ai-service/llm/context-v2/context-metrics.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/context-metrics.js +18 -1
- package/dist/ai-service/llm/context-v2/context-metrics.js.map +1 -1
- package/dist/ai-service/llm/provider.d.ts +7 -1
- package/dist/ai-service/llm/provider.d.ts.map +1 -1
- package/dist/ai-service/llm/provider.js +292 -15
- package/dist/ai-service/llm/provider.js.map +1 -1
- package/dist/ai-service/llm/stream/empty-tool-call-tracker.d.ts +47 -0
- package/dist/ai-service/llm/stream/empty-tool-call-tracker.d.ts.map +1 -0
- package/dist/ai-service/llm/stream/empty-tool-call-tracker.js +122 -0
- package/dist/ai-service/llm/stream/empty-tool-call-tracker.js.map +1 -0
- package/dist/ai-service/llm/stream/errors.d.ts +21 -1
- package/dist/ai-service/llm/stream/errors.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/errors.js +20 -0
- package/dist/ai-service/llm/stream/errors.js.map +1 -1
- package/dist/ai-service/llm/stream/managed-stream.d.ts +5 -1
- package/dist/ai-service/llm/stream/managed-stream.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/managed-stream.js +51 -1
- package/dist/ai-service/llm/stream/managed-stream.js.map +1 -1
- package/dist/ai-service/llm/stream/orchestrator.d.ts +17 -2
- package/dist/ai-service/llm/stream/orchestrator.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/orchestrator.js +185 -135
- package/dist/ai-service/llm/stream/orchestrator.js.map +1 -1
- package/dist/ai-service/llmobs/otel-exporter.d.ts.map +1 -1
- package/dist/ai-service/llmobs/otel-exporter.js +17 -6
- package/dist/ai-service/llmobs/otel-exporter.js.map +1 -1
- package/dist/ai-service/llmobs/tracer.d.ts +24 -2
- package/dist/ai-service/llmobs/tracer.d.ts.map +1 -1
- package/dist/ai-service/llmobs/tracer.js +90 -25
- package/dist/ai-service/llmobs/tracer.js.map +1 -1
- package/dist/ai-service/llmobs/types.d.ts +5 -0
- package/dist/ai-service/llmobs/types.d.ts.map +1 -1
- package/dist/ai-service/state-machine/clark-fsm.d.ts +24 -7
- package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
- package/dist/ai-service/state-machine/clark-fsm.js +5 -0
- package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.js +30 -43
- package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/awaiting-user.js +21 -0
- package/dist/ai-service/state-machine/handlers/awaiting-user.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/idle.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/idle.js +16 -1
- package/dist/ai-service/state-machine/handlers/idle.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.js +10 -21
- package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/persist-prompt-attachments.d.ts +25 -0
- package/dist/ai-service/state-machine/handlers/persist-prompt-attachments.d.ts.map +1 -0
- package/dist/ai-service/state-machine/handlers/persist-prompt-attachments.js +68 -0
- package/dist/ai-service/state-machine/handlers/persist-prompt-attachments.js.map +1 -0
- package/dist/ai-service/state-machine/helpers/prompt-failure.d.ts +51 -0
- package/dist/ai-service/state-machine/helpers/prompt-failure.d.ts.map +1 -0
- package/dist/ai-service/state-machine/helpers/prompt-failure.js +149 -0
- package/dist/ai-service/state-machine/helpers/prompt-failure.js.map +1 -0
- package/dist/ai-service/state-machine/helpers/prompt-request-metrics.d.ts +77 -0
- package/dist/ai-service/state-machine/helpers/prompt-request-metrics.d.ts.map +1 -0
- package/dist/ai-service/state-machine/helpers/prompt-request-metrics.js +229 -0
- package/dist/ai-service/state-machine/helpers/prompt-request-metrics.js.map +1 -0
- package/dist/ai-service/state-machine/helpers/transition.d.ts.map +1 -1
- package/dist/ai-service/state-machine/helpers/transition.js +5 -1
- package/dist/ai-service/state-machine/helpers/transition.js.map +1 -1
- package/dist/ai-service/state-machine/traced-fsm.d.ts +6 -1
- package/dist/ai-service/state-machine/traced-fsm.d.ts.map +1 -1
- package/dist/ai-service/state-machine/traced-fsm.js +13 -3
- package/dist/ai-service/state-machine/traced-fsm.js.map +1 -1
- package/dist/ai-service/util/llm-config-utils.d.ts +2 -2
- package/dist/ai-service/util/llm-config-utils.d.ts.map +1 -1
- package/dist/ai-service/util/llm-config-utils.js +2 -2
- package/dist/ai-service/util/llm-config-utils.js.map +1 -1
- package/dist/git-service/app-layout-guard.d.ts +36 -0
- package/dist/git-service/app-layout-guard.d.ts.map +1 -0
- package/dist/git-service/app-layout-guard.js +66 -0
- package/dist/git-service/app-layout-guard.js.map +1 -0
- package/dist/git-service/errors.d.ts +5 -0
- package/dist/git-service/errors.d.ts.map +1 -1
- package/dist/git-service/errors.js +10 -0
- package/dist/git-service/errors.js.map +1 -1
- package/dist/git-service/index.d.ts +2 -2
- package/dist/git-service/index.d.ts.map +1 -1
- package/dist/git-service/index.js +2 -2
- package/dist/git-service/index.js.map +1 -1
- package/dist/migration-templates/app-fullstack/package.json +1 -1
- package/dist/socket-manager.d.ts.map +1 -1
- package/dist/socket-manager.js +6 -0
- package/dist/socket-manager.js.map +1 -1
- package/dist/sync-service/index.d.ts +16 -9
- package/dist/sync-service/index.d.ts.map +1 -1
- package/dist/sync-service/index.js +154 -4
- package/dist/sync-service/index.js.map +1 -1
- package/dist/util/logger.d.ts +7 -0
- package/dist/util/logger.d.ts.map +1 -1
- package/dist/util/logger.js +29 -0
- package/dist/util/logger.js.map +1 -1
- package/package.json +14 -13
|
@@ -3,7 +3,7 @@ import { getErrorMeta, } from "../../../util/logger.js";
|
|
|
3
3
|
import { buildThinkingProviderOptions } from "../../util/llm-config-utils.js";
|
|
4
4
|
import { LLMProviderError } from "../error.js";
|
|
5
5
|
import { getServerCompactionTextBlockUpdate } from "./compaction-text-block.js";
|
|
6
|
-
import { AbortedError, RetriesExhaustedError, StallTimeoutError, ToolExecutionTimeoutError, } from "./errors.js";
|
|
6
|
+
import { AbortedError, EmptyToolCallError, RetriesExhaustedError, StallTimeoutError, ToolExecutionTimeoutError, } from "./errors.js";
|
|
7
7
|
import { IdleMonitor } from "./idle-monitor.js";
|
|
8
8
|
import { createManagedStream } from "./managed-stream.js";
|
|
9
9
|
import { RetryEngine } from "./retry-engine.js";
|
|
@@ -15,7 +15,6 @@ const TOOL_EXECUTION_TIMEOUTS_METRIC = "superblocks.clark.tool.execution.timeout
|
|
|
15
15
|
const TOOL_EXECUTION_DURATION_METRIC = "superblocks.clark.tool.execution.duration_seconds";
|
|
16
16
|
const STREAM_TERMINAL_TOTAL_METRIC = "superblocks.clark.stream.terminal.total";
|
|
17
17
|
const EMPTY_TOOL_CALLS_TOTAL_METRIC = "superblocks.clark.stream.empty_tool_calls.total";
|
|
18
|
-
const MAX_TOOL_INPUT_PARSE_DEPTH = 10;
|
|
19
18
|
const streamIdentityAttributes = (streamId) => ({
|
|
20
19
|
ai_stream_request_id: streamId,
|
|
21
20
|
stream_id: streamId,
|
|
@@ -74,38 +73,6 @@ function recordEmptyToolCalls(provider, model, count) {
|
|
|
74
73
|
provider,
|
|
75
74
|
});
|
|
76
75
|
}
|
|
77
|
-
function hasUsableToolInput(value, depth = 0) {
|
|
78
|
-
if (depth > MAX_TOOL_INPUT_PARSE_DEPTH) {
|
|
79
|
-
return true;
|
|
80
|
-
}
|
|
81
|
-
if (value === null || value === undefined || value === "") {
|
|
82
|
-
return false;
|
|
83
|
-
}
|
|
84
|
-
if (typeof value === "string") {
|
|
85
|
-
try {
|
|
86
|
-
return hasUsableToolInput(JSON.parse(value), depth + 1);
|
|
87
|
-
}
|
|
88
|
-
catch {
|
|
89
|
-
return true;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
if (Array.isArray(value)) {
|
|
93
|
-
return value.length > 0;
|
|
94
|
-
}
|
|
95
|
-
if (typeof value === "object") {
|
|
96
|
-
return Object.keys(value).length > 0;
|
|
97
|
-
}
|
|
98
|
-
return true;
|
|
99
|
-
}
|
|
100
|
-
function getToolCallId(chunk) {
|
|
101
|
-
if (typeof chunk.toolCallId === "string") {
|
|
102
|
-
return chunk.toolCallId;
|
|
103
|
-
}
|
|
104
|
-
if (typeof chunk.id === "string") {
|
|
105
|
-
return chunk.id;
|
|
106
|
-
}
|
|
107
|
-
return undefined;
|
|
108
|
-
}
|
|
109
76
|
function getToolExecutionTimeoutMs(tool) {
|
|
110
77
|
// Treat non-positive, non-finite, or absent values as "use default".
|
|
111
78
|
return typeof tool.timeoutMs === "number" &&
|
|
@@ -336,7 +303,10 @@ export class StreamOrchestrator {
|
|
|
336
303
|
for (const observer of this.observers) {
|
|
337
304
|
observer.attach(session.events, this.config);
|
|
338
305
|
}
|
|
339
|
-
|
|
306
|
+
// Records the metric + structured warning when an attempt's stream ends with
|
|
307
|
+
// one or more unusable tool calls. The managed stream owns detection per
|
|
308
|
+
// attempt and surfaces a retryable error; this hook only reports it.
|
|
309
|
+
const reportEmptyToolCalls = (tracker) => this.logEmptyToolCalls(session, tracker);
|
|
340
310
|
session.events.on("session:error", (error, endedSession) => {
|
|
341
311
|
this.logTerminalStreamSummary(endedSession, waitStateTracker, "error", error);
|
|
342
312
|
});
|
|
@@ -549,15 +519,102 @@ export class StreamOrchestrator {
|
|
|
549
519
|
idleMonitor.start();
|
|
550
520
|
// wrapper order matters here. managed stream throws errors (error chunks), retry wrapper catches them.
|
|
551
521
|
// Pass the idle monitor so it can interrupt hung streams.
|
|
552
|
-
const managedStream = createManagedStream(result.fullStream, session, idleMonitor);
|
|
553
|
-
const retryableFullStream = this.wrapWithRetry(managedStream, (r) => createManagedStream(r.fullStream, session, idleMonitor), optionsWithAbort, session, retryEngine, internalAbortController, attempts, waitStateTracker);
|
|
554
|
-
//
|
|
555
|
-
//
|
|
556
|
-
|
|
522
|
+
const managedStream = createManagedStream(result.fullStream, session, idleMonitor, reportEmptyToolCalls);
|
|
523
|
+
const retryableFullStream = this.wrapWithRetry(managedStream, (r) => createManagedStream(r.fullStream, session, idleMonitor, reportEmptyToolCalls), optionsWithAbort, session, retryEngine, internalAbortController, attempts, waitStateTracker);
|
|
524
|
+
// fullStream (typed parts) and textStream (text deltas only) are two views
|
|
525
|
+
// of the same retry-wrapped source. A plain `tee()` keeps both readable
|
|
526
|
+
// independently, but it buffers every chunk for any branch that is never
|
|
527
|
+
// read -- and in practice each caller reads exactly one view (the agent
|
|
528
|
+
// loop reads fullStream; summarizers read textStream). That left the unread
|
|
529
|
+
// branch pinning one part reference per chunk (including large tool
|
|
530
|
+
// results) for the whole generation.
|
|
531
|
+
//
|
|
532
|
+
// Instead, tee lazily: a lone consumer reads the source directly, and we
|
|
533
|
+
// only tee when both views are actually requested. The tee decision is made
|
|
534
|
+
// synchronously when the second view is accessed, while each view binds to
|
|
535
|
+
// the source on first read (highWaterMark 0, so no eager pull) -- so a
|
|
536
|
+
// second view requested before any read still gets a clean tee branch.
|
|
537
|
+
const source = retryableFullStream;
|
|
538
|
+
let teeBranches;
|
|
539
|
+
let firstView;
|
|
540
|
+
let readStarted = false;
|
|
541
|
+
let fullStreamView;
|
|
542
|
+
let textStreamView;
|
|
543
|
+
const noteViewAccess = (view) => {
|
|
544
|
+
if (firstView === undefined) {
|
|
545
|
+
firstView = view;
|
|
546
|
+
}
|
|
547
|
+
else if (firstView !== view && teeBranches === undefined) {
|
|
548
|
+
// Both views must be set up before either starts reading, so the tee
|
|
549
|
+
// splits off a source no one has consumed yet. Once the first view has
|
|
550
|
+
// read, the source is partially or fully drained: tee() would either
|
|
551
|
+
// throw "ReadableStream is locked" (mid-read) or silently return closed
|
|
552
|
+
// branches that read as empty (already drained). Both are worse than a
|
|
553
|
+
// clear error, so refuse once reading has started.
|
|
554
|
+
if (readStarted) {
|
|
555
|
+
throw new Error("[StreamOrchestrator] cannot create a second stream view after reading has started: " +
|
|
556
|
+
"access both fullStream and textStream before reading either.");
|
|
557
|
+
}
|
|
558
|
+
teeBranches = source.tee();
|
|
559
|
+
}
|
|
560
|
+
};
|
|
561
|
+
// Reads the shared parts for one view, choosing its tee branch when both
|
|
562
|
+
// views are live and the raw source when this is the only consumer. The
|
|
563
|
+
// branch is resolved on first read, after the tee decision is settled.
|
|
564
|
+
// tee() returns [branch0, branch1] in call order, so branch 0 feeds
|
|
565
|
+
// fullStream and branch 1 feeds textStream.
|
|
566
|
+
const readParts = (view) => (async function* () {
|
|
567
|
+
// Mark reading as begun so a late second-view access fails loudly
|
|
568
|
+
// instead of teeing an already-consumed source.
|
|
569
|
+
readStarted = true;
|
|
570
|
+
const branch = teeBranches
|
|
571
|
+
? teeBranches[view === "full" ? 0 : 1]
|
|
572
|
+
: source;
|
|
573
|
+
const reader = branch.getReader();
|
|
574
|
+
let drained = false;
|
|
575
|
+
try {
|
|
576
|
+
while (true) {
|
|
577
|
+
const { done, value } = await reader.read();
|
|
578
|
+
if (done) {
|
|
579
|
+
drained = true;
|
|
580
|
+
return;
|
|
581
|
+
}
|
|
582
|
+
yield value;
|
|
583
|
+
}
|
|
584
|
+
}
|
|
585
|
+
finally {
|
|
586
|
+
reader.releaseLock();
|
|
587
|
+
// If the consumer stopped early (cancellation), cancel the branch so
|
|
588
|
+
// the source stops producing instead of buffering with no reader.
|
|
589
|
+
if (!drained) {
|
|
590
|
+
await branch.cancel().catch(() => { });
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
})();
|
|
594
|
+
// Arrow builders capture `this` lexically and memoize each view, so the
|
|
595
|
+
// getters below stay thin and the tee decision happens once per view.
|
|
596
|
+
const buildFullStream = () => {
|
|
597
|
+
if (!fullStreamView) {
|
|
598
|
+
noteViewAccess("full");
|
|
599
|
+
fullStreamView = this.readableFromAsyncIterable(readParts("full"));
|
|
600
|
+
}
|
|
601
|
+
return fullStreamView;
|
|
602
|
+
};
|
|
603
|
+
const buildTextStream = () => {
|
|
604
|
+
if (!textStreamView) {
|
|
605
|
+
noteViewAccess("text");
|
|
606
|
+
textStreamView = this.readableFromAsyncIterable(this.extractTextDeltas(readParts("text")));
|
|
607
|
+
}
|
|
608
|
+
return textStreamView;
|
|
609
|
+
};
|
|
557
610
|
return {
|
|
558
611
|
...result,
|
|
559
|
-
fullStream
|
|
560
|
-
|
|
612
|
+
get fullStream() {
|
|
613
|
+
return buildFullStream();
|
|
614
|
+
},
|
|
615
|
+
get textStream() {
|
|
616
|
+
return buildTextStream();
|
|
617
|
+
},
|
|
561
618
|
};
|
|
562
619
|
}
|
|
563
620
|
asAsyncIterableStream(stream) {
|
|
@@ -583,27 +640,60 @@ export class StreamOrchestrator {
|
|
|
583
640
|
},
|
|
584
641
|
});
|
|
585
642
|
}
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
if (
|
|
598
|
-
|
|
643
|
+
/**
|
|
644
|
+
* Wraps an async iterable as a ReadableStream that pulls one item per read.
|
|
645
|
+
* highWaterMark 0 keeps it from pulling eagerly, so binding to the underlying
|
|
646
|
+
* source is deferred until the consumer actually reads.
|
|
647
|
+
*/
|
|
648
|
+
readableFromAsyncIterable(iterable) {
|
|
649
|
+
const iterator = iterable[Symbol.asyncIterator]();
|
|
650
|
+
const stream = new ReadableStream({
|
|
651
|
+
async pull(controller) {
|
|
652
|
+
try {
|
|
653
|
+
const { done, value } = await iterator.next();
|
|
654
|
+
if (done) {
|
|
655
|
+
controller.close();
|
|
656
|
+
}
|
|
657
|
+
else {
|
|
658
|
+
controller.enqueue(value);
|
|
599
659
|
}
|
|
600
|
-
return;
|
|
601
660
|
}
|
|
602
|
-
|
|
603
|
-
controller.
|
|
661
|
+
catch (error) {
|
|
662
|
+
controller.error(error);
|
|
604
663
|
}
|
|
605
664
|
},
|
|
606
|
-
|
|
665
|
+
async cancel(reason) {
|
|
666
|
+
// Returning the iterator runs the generator's finally block, which
|
|
667
|
+
// releases the reader and cancels the upstream branch/source so
|
|
668
|
+
// cancellation propagates all the way back to the provider.
|
|
669
|
+
await iterator.return?.(reason);
|
|
670
|
+
},
|
|
671
|
+
}, { highWaterMark: 0 });
|
|
672
|
+
return this.asAsyncIterableStream(stream);
|
|
673
|
+
}
|
|
674
|
+
/**
|
|
675
|
+
* Projects a stream of typed parts down to text deltas, dropping server-side
|
|
676
|
+
* compaction summary blocks so they never surface through textStream.
|
|
677
|
+
*/
|
|
678
|
+
async *extractTextDeltas(parts) {
|
|
679
|
+
const compactionTextBlockIds = new Set();
|
|
680
|
+
for await (const chunk of parts) {
|
|
681
|
+
const compactionBlock = getServerCompactionTextBlockUpdate(chunk);
|
|
682
|
+
if (compactionBlock.kind === "start") {
|
|
683
|
+
compactionTextBlockIds.add(compactionBlock.id);
|
|
684
|
+
continue;
|
|
685
|
+
}
|
|
686
|
+
if (compactionBlock.kind === "part" &&
|
|
687
|
+
compactionTextBlockIds.has(compactionBlock.id)) {
|
|
688
|
+
if (compactionBlock.done) {
|
|
689
|
+
compactionTextBlockIds.delete(compactionBlock.id);
|
|
690
|
+
}
|
|
691
|
+
continue;
|
|
692
|
+
}
|
|
693
|
+
if (chunk.type === "text-delta") {
|
|
694
|
+
yield chunk.text;
|
|
695
|
+
}
|
|
696
|
+
}
|
|
607
697
|
}
|
|
608
698
|
logTerminalStreamSummary(session, waitStateTracker, outcome, error) {
|
|
609
699
|
if (this.terminalSummariesObserved.has(session)) {
|
|
@@ -672,6 +762,11 @@ export class StreamOrchestrator {
|
|
|
672
762
|
error.cause instanceof StallTimeoutError) {
|
|
673
763
|
return "idle_monitor_timeout";
|
|
674
764
|
}
|
|
765
|
+
if (error instanceof EmptyToolCallError ||
|
|
766
|
+
(error instanceof RetriesExhaustedError &&
|
|
767
|
+
error.cause instanceof EmptyToolCallError)) {
|
|
768
|
+
return "empty_tool_call";
|
|
769
|
+
}
|
|
675
770
|
if (error instanceof LLMProviderError &&
|
|
676
771
|
error.cause instanceof ToolExecutionTimeoutError) {
|
|
677
772
|
return "tool_timeout";
|
|
@@ -893,83 +988,38 @@ export class StreamOrchestrator {
|
|
|
893
988
|
},
|
|
894
989
|
});
|
|
895
990
|
}
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
991
|
+
/**
|
|
992
|
+
* Record the metric + structured warning for an attempt that ended with one
|
|
993
|
+
* or more unusable tool calls. Called at the terminal finish chunk so the
|
|
994
|
+
* signal is captured whether or not the orchestrator goes on to retry.
|
|
995
|
+
*/
|
|
996
|
+
logEmptyToolCalls(session, tracker) {
|
|
997
|
+
recordEmptyToolCalls(session.provider.name, session.provider.model, tracker.pendingCount);
|
|
998
|
+
const attributes = {
|
|
999
|
+
event: "empty_tool_call",
|
|
1000
|
+
empty_tool_call_count: tracker.pendingCount,
|
|
1001
|
+
model: session.provider.model,
|
|
1002
|
+
provider: session.provider.name,
|
|
1003
|
+
tool_names: tracker.toolNames.join(","),
|
|
906
1004
|
};
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
pendingEmptyToolCalls.set(toolCallId, toolName);
|
|
926
|
-
}
|
|
927
|
-
return;
|
|
928
|
-
}
|
|
929
|
-
if (chunk.type === "tool-result") {
|
|
930
|
-
const toolCallId = getToolCallId(chunk);
|
|
931
|
-
if (typeof toolCallId === "string") {
|
|
932
|
-
pendingEmptyToolCalls.delete(toolCallId);
|
|
933
|
-
}
|
|
934
|
-
return;
|
|
935
|
-
}
|
|
936
|
-
if (chunk.type === "finish") {
|
|
937
|
-
finishReason = chunk.finishReason;
|
|
938
|
-
rawFinishReason = chunk
|
|
939
|
-
.rawFinishReason;
|
|
940
|
-
}
|
|
941
|
-
});
|
|
942
|
-
session.events.on("session:complete", (endedSession) => {
|
|
943
|
-
if (pendingEmptyToolCalls.size === 0) {
|
|
944
|
-
return;
|
|
945
|
-
}
|
|
946
|
-
recordEmptyToolCalls(endedSession.provider.name, endedSession.provider.model, pendingEmptyToolCalls.size);
|
|
947
|
-
const attributes = {
|
|
948
|
-
event: "empty_tool_call",
|
|
949
|
-
empty_tool_call_count: pendingEmptyToolCalls.size,
|
|
950
|
-
model: endedSession.provider.model,
|
|
951
|
-
provider: endedSession.provider.name,
|
|
952
|
-
tool_names: [...new Set(pendingEmptyToolCalls.values())].join(","),
|
|
953
|
-
};
|
|
954
|
-
if (finishReason) {
|
|
955
|
-
attributes.finish_reason = finishReason;
|
|
956
|
-
}
|
|
957
|
-
if (typeof rawFinishReason === "string") {
|
|
958
|
-
attributes.raw_finish_reason = rawFinishReason;
|
|
959
|
-
}
|
|
960
|
-
if (endedSession.organizationId) {
|
|
961
|
-
attributes.organization_id = endedSession.organizationId;
|
|
962
|
-
}
|
|
963
|
-
if (endedSession.applicationId) {
|
|
964
|
-
attributes.application_id = endedSession.applicationId;
|
|
965
|
-
}
|
|
966
|
-
if (this.logger.warnStructured) {
|
|
967
|
-
this.logger.warnStructured("[orchestrator] Tool call ended without usable input", attributes);
|
|
968
|
-
}
|
|
969
|
-
else {
|
|
970
|
-
this.logger.warn("[orchestrator] Tool call ended without usable input", attributes);
|
|
971
|
-
}
|
|
972
|
-
});
|
|
1005
|
+
if (tracker.finishReason) {
|
|
1006
|
+
attributes.finish_reason = tracker.finishReason;
|
|
1007
|
+
}
|
|
1008
|
+
if (typeof tracker.rawFinishReason === "string") {
|
|
1009
|
+
attributes.raw_finish_reason = tracker.rawFinishReason;
|
|
1010
|
+
}
|
|
1011
|
+
if (session.organizationId) {
|
|
1012
|
+
attributes.organization_id = session.organizationId;
|
|
1013
|
+
}
|
|
1014
|
+
if (session.applicationId) {
|
|
1015
|
+
attributes.application_id = session.applicationId;
|
|
1016
|
+
}
|
|
1017
|
+
if (this.logger.warnStructured) {
|
|
1018
|
+
this.logger.warnStructured("[orchestrator] Tool call ended without usable input", attributes);
|
|
1019
|
+
}
|
|
1020
|
+
else {
|
|
1021
|
+
this.logger.warn("[orchestrator] Tool call ended without usable input", attributes);
|
|
1022
|
+
}
|
|
973
1023
|
}
|
|
974
1024
|
/**
|
|
975
1025
|
* Wraps each tool's execute so only the live attempt can run it. The Vercel AI
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"otel-exporter.d.ts","sourceRoot":"","sources":["../../../src/ai-service/llmobs/otel-exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;
|
|
1
|
+
{"version":3,"file":"otel-exporter.d.ts","sourceRoot":"","sources":["../../../src/ai-service/llmobs/otel-exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AA6KH;;;;;;;;;;;GAWG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,aAAa,CAA+C;IAEpE;;;OAGG;IACH,OAAO,KAAK,UAAU,GAErB;IAED;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAyClC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,QAAQ;IAqDhB;;;;;;;;;OASG;IACH,OAAO,CAAC,YAAY;IA+CpB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,OAAO,CAAC,oBAAoB;IA4F5B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAgCrB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA+D3B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA8C/B;;OAEG;IACH,OAAO,CAAC,eAAe;IAUvB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAoB5B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA0B5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAwB3B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA2B/B;;OAEG;IACH,OAAO,CAAC,aAAa;IASrB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAYvB;;;OAGG;IACI,OAAO,IAAI,IAAI;CAQvB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,oBAA2B,CAAC"}
|
|
@@ -108,6 +108,15 @@ const VALID_FINISH_REASONS = new Set([
|
|
|
108
108
|
"tool_calls",
|
|
109
109
|
"error",
|
|
110
110
|
]);
|
|
111
|
+
// "undefined" and "null" appear when a JS undefined/null was stringified
|
|
112
|
+
// upstream; "0" is dd-trace's no-parent sentinel on some root-span paths.
|
|
113
|
+
const NO_PARENT_SENTINELS = new Set(["undefined", "null", "0"]);
|
|
114
|
+
const normalizeParentId = (parentId) => {
|
|
115
|
+
if (!parentId || NO_PARENT_SENTINELS.has(parentId)) {
|
|
116
|
+
return undefined;
|
|
117
|
+
}
|
|
118
|
+
return parentId;
|
|
119
|
+
};
|
|
111
120
|
/**
|
|
112
121
|
* Converts LLMObs spans to OTEL spans for CLOUD_PREM deployments.
|
|
113
122
|
*
|
|
@@ -183,9 +192,10 @@ export class LLMObsOtelExporter {
|
|
|
183
192
|
children.set(e.span_id, []);
|
|
184
193
|
}
|
|
185
194
|
for (const e of events) {
|
|
186
|
-
|
|
195
|
+
const parentId = normalizeParentId(e.parent_id);
|
|
196
|
+
if (parentId && byId.has(parentId)) {
|
|
187
197
|
inDegree.set(e.span_id, (inDegree.get(e.span_id) ?? 0) + 1);
|
|
188
|
-
children.get(
|
|
198
|
+
children.get(parentId).push(e);
|
|
189
199
|
}
|
|
190
200
|
}
|
|
191
201
|
// Kahn's algorithm: iterate children directly — O(N) total.
|
|
@@ -231,16 +241,17 @@ export class LLMObsOtelExporter {
|
|
|
231
241
|
for (const event of sorted) {
|
|
232
242
|
try {
|
|
233
243
|
let parentCtx;
|
|
234
|
-
|
|
244
|
+
const parentId = normalizeParentId(event.parent_id);
|
|
245
|
+
if (parentId) {
|
|
235
246
|
// Child span: look for parent in this batch or a prior batch
|
|
236
247
|
parentCtx =
|
|
237
|
-
perFlushCtx.get(
|
|
238
|
-
otelContextRegistry.getCreated(
|
|
248
|
+
perFlushCtx.get(parentId) ??
|
|
249
|
+
otelContextRegistry.getCreated(parentId);
|
|
239
250
|
if (!parentCtx) {
|
|
240
251
|
// Orphaned child — parent not in this batch or any prior batch.
|
|
241
252
|
// Emit at WARN so this is visible in filtered production logs;
|
|
242
253
|
// this is the exact symptom the PR was written to fix.
|
|
243
|
-
getLogger().warn(`LLMObsOtelExporter: parent span ${
|
|
254
|
+
getLogger().warn(`LLMObsOtelExporter: parent span ${parentId} not found for child ${event.span_id} — emitting as root span`);
|
|
244
255
|
}
|
|
245
256
|
}
|
|
246
257
|
else {
|