@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/ai-service/llm/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/ai-service/llm/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,9 @@ export declare const CONTEXT_DOCUMENT_MODES: readonly ["inline", "reference"];
|
|
|
11
11
|
export type ContextDocumentMode = (typeof CONTEXT_DOCUMENT_MODES)[number];
|
|
12
12
|
export declare const SERVER_COMPACTION_STATUSES: readonly ["cancelled", "completed", "interrupted"];
|
|
13
13
|
export type ServerCompactionStatus = (typeof SERVER_COMPACTION_STATUSES)[number];
|
|
14
|
+
/** Outcome of persisting a prompt's uploaded attachments into the context. */
|
|
15
|
+
export declare const ATTACHMENT_PERSIST_STATUSES: readonly ["failure", "success"];
|
|
16
|
+
export type AttachmentPersistStatus = (typeof ATTACHMENT_PERSIST_STATUSES)[number];
|
|
14
17
|
export interface ContextMetricIdentity {
|
|
15
18
|
applicationId?: string;
|
|
16
19
|
organizationId?: string;
|
|
@@ -37,6 +40,9 @@ export declare function recordContextDocuments(input: {
|
|
|
37
40
|
mode: ContextDocumentMode;
|
|
38
41
|
}): void;
|
|
39
42
|
export declare function recordContextRestoreEmptyCreated(): void;
|
|
43
|
+
export declare function recordAttachmentPersist(input: {
|
|
44
|
+
status: AttachmentPersistStatus;
|
|
45
|
+
}): void;
|
|
40
46
|
export declare function recordServerCompaction(input: {
|
|
41
47
|
status: ServerCompactionStatus;
|
|
42
48
|
durationMs?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-metrics.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/context-metrics.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context-metrics.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/context-metrics.ts"],"names":[],"mappings":"AA8CA,0EAA0E;AAC1E,eAAO,MAAM,oBAAoB,4DAMvB,CAAC;AACX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,sEAAsE;AACtE,eAAO,MAAM,wBAAwB,sFAO3B,CAAC;AACX,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9E,iEAAiE;AACjE,eAAO,MAAM,uBAAuB,8BAA+B,CAAC;AACpE,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,eAAO,MAAM,sBAAsB,kCAAmC,CAAC;AACvE,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E,eAAO,MAAM,0BAA0B,oDAI7B,CAAC;AACX,MAAM,MAAM,sBAAsB,GAChC,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9C,8EAA8E;AAC9E,eAAO,MAAM,2BAA2B,iCAAkC,CAAC;AAC3E,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/C,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AA+WD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,GAAG,IAAI,CAEP;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,OAAO,EAAE,qBAAqB,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,GAAG,IAAI,CAEP;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CAClC,GAAG,IAAI,CAEP;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,mBAAmB,CAAC;CAC3B,GAAG,IAAI,CAEP;AAED,wBAAgB,gCAAgC,IAAI,IAAI,CAEvD;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,MAAM,EAAE,uBAAuB,CAAC;CACjC,GAAG,IAAI,CAEP;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE;IACL,MAAM,EAAE,sBAAsB,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GAAG,qBAAqB,GACxB,IAAI,CAON;AAED,wBAAgB,mCAAmC,IAAI,IAAI,CAE1D"}
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
* - `superblocks.clark.context.server_compactions` counter {status}
|
|
25
25
|
* - `superblocks.clark.context.server_compaction.*` histograms {status}
|
|
26
26
|
* - `superblocks.clark.context.restore_empty_created_total` counter
|
|
27
|
+
* - `superblocks.clark.context.attachment_persist_total` counter {status}
|
|
27
28
|
*
|
|
28
29
|
* Base cardinality budget (documented contract — growing an enum must be a
|
|
29
30
|
* deliberate, reviewed change; the regression test pins these counts):
|
|
@@ -32,7 +33,8 @@
|
|
|
32
33
|
* instruments → 19 baseline/document series.
|
|
33
34
|
* - server_compaction status ≤ 3 across 1 counter + 7 histograms → 24 series.
|
|
34
35
|
* - restore_empty_created_total has no labels → 1 series.
|
|
35
|
-
* -
|
|
36
|
+
* - attachment_persist_total status ≤ 2 → 2 series.
|
|
37
|
+
* - Combined base: 46 worst-case series. Keep org/app identity in logs or
|
|
36
38
|
* traces, not metric labels.
|
|
37
39
|
*/
|
|
38
40
|
import { metrics, } from "@opentelemetry/api";
|
|
@@ -61,11 +63,14 @@ export const SERVER_COMPACTION_STATUSES = [
|
|
|
61
63
|
"completed",
|
|
62
64
|
"interrupted",
|
|
63
65
|
];
|
|
66
|
+
/** Outcome of persisting a prompt's uploaded attachments into the context. */
|
|
67
|
+
export const ATTACHMENT_PERSIST_STATUSES = ["failure", "success"];
|
|
64
68
|
const METER_NAME = "superblocks.clark.context";
|
|
65
69
|
const METRIC_LOAD_DURATION = "superblocks.clark.context.load_duration_seconds";
|
|
66
70
|
const METRIC_PERSIST_DURATION = "superblocks.clark.context.persist_duration_seconds";
|
|
67
71
|
const METRIC_FILE_BYTES = "superblocks.clark.context.file_bytes";
|
|
68
72
|
const METRIC_RESTORE_EMPTY_CREATED = "superblocks.clark.context.restore_empty_created_total";
|
|
73
|
+
const METRIC_ATTACHMENT_PERSIST = "superblocks.clark.context.attachment_persist_total";
|
|
69
74
|
// APPS-4891 intentionally replaced the old {state} document metric shape.
|
|
70
75
|
// Consumers should query documents{mode} for current counts and
|
|
71
76
|
// documents_added_total/documents_dropped_total{mode} for event counters.
|
|
@@ -134,6 +139,10 @@ class ClarkContextMetrics {
|
|
|
134
139
|
});
|
|
135
140
|
documentCountGauge.addCallback(this.observeDocumentCounts);
|
|
136
141
|
this.cachedInstruments = {
|
|
142
|
+
attachmentPersistCounter: meter.createCounter(METRIC_ATTACHMENT_PERSIST, {
|
|
143
|
+
description: "Count of prompt-attachment persistence outcomes when a turn carries uploaded attachments.",
|
|
144
|
+
unit: "{persist}",
|
|
145
|
+
}),
|
|
137
146
|
documentCountGauge,
|
|
138
147
|
documentsAddedCounter: meter.createCounter(METRIC_DOCUMENTS_ADDED, {
|
|
139
148
|
description: "Direct documents added to provider-bound Clark context before provider-cap enforcement.",
|
|
@@ -222,6 +231,11 @@ class ClarkContextMetrics {
|
|
|
222
231
|
recordRestoreEmptyCreated() {
|
|
223
232
|
this.getInstruments().restoreEmptyCreatedCounter.add(1);
|
|
224
233
|
}
|
|
234
|
+
recordAttachmentPersist(input) {
|
|
235
|
+
this.getInstruments().attachmentPersistCounter.add(1, {
|
|
236
|
+
status: input.status,
|
|
237
|
+
});
|
|
238
|
+
}
|
|
225
239
|
recordDocuments(input) {
|
|
226
240
|
const instruments = this.getInstruments();
|
|
227
241
|
const attributes = { mode: input.mode };
|
|
@@ -287,6 +301,9 @@ export function recordContextDocuments(input) {
|
|
|
287
301
|
export function recordContextRestoreEmptyCreated() {
|
|
288
302
|
clarkContextMetrics.recordRestoreEmptyCreated();
|
|
289
303
|
}
|
|
304
|
+
export function recordAttachmentPersist(input) {
|
|
305
|
+
clarkContextMetrics.recordAttachmentPersist(input);
|
|
306
|
+
}
|
|
290
307
|
export function recordServerCompaction(input) {
|
|
291
308
|
const { applicationId: _applicationId, organizationId: _organizationId, ...metricsInput } = input;
|
|
292
309
|
clarkContextMetrics.recordServerCompaction(metricsInput);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-metrics.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/context-metrics.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"context-metrics.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context-v2/context-metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
|
+
import { type Span } from "@opentelemetry/api";
|
|
1
2
|
import type { LLMProviderConfig, AiAttributes } from "@superblocksteam/library-shared/types";
|
|
2
3
|
import type { LLMProvider, LLMProviderSettings } from "./types.js";
|
|
3
|
-
|
|
4
|
+
/** Record an error on a span and set its status to ERROR. */
|
|
5
|
+
export declare const setSpanError: (span: Span, error: unknown) => void;
|
|
6
|
+
export declare const createLLMProvider: (settings: LLMProviderSettings, getJwt?: () => string | undefined, llmConfig?: LLMProviderConfig, getAttributes?: () => AiAttributes | undefined, traceHeaders?: {
|
|
7
|
+
traceparent?: string;
|
|
8
|
+
tracestate?: string;
|
|
9
|
+
}) => LLMProvider;
|
|
4
10
|
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/ai-service/llm/provider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/ai-service/llm/provider.ts"],"names":[],"mappings":"AAMA,OAAO,EAQL,KAAK,IAAI,EACV,MAAM,oBAAoB,CAAC;AAG5B,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACb,MAAM,uCAAuC,CAAC;AAI/C,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EAIpB,MAAM,YAAY,CAAC;AAsHpB,6DAA6D;AAC7D,eAAO,MAAM,YAAY,GAAI,MAAM,IAAI,EAAE,OAAO,OAAO,SAatD,CAAC;AA6CF,eAAO,MAAM,iBAAiB,GAC5B,UAAU,mBAAmB,EAC7B,SAAS,MAAM,MAAM,GAAG,SAAS,EACjC,YAAY,iBAAiB,EAC7B,gBAAgB,MAAM,YAAY,GAAG,SAAS,EAC9C,eAAe;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,KAC3D,WAkUF,CAAC"}
|
|
@@ -1,9 +1,151 @@
|
|
|
1
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
2
|
+
import { context, createContextKey, propagation, SpanKind, SpanStatusCode, trace, } from "@opentelemetry/api";
|
|
3
|
+
import { suppressTracing } from "@opentelemetry/core";
|
|
1
4
|
import { getLogger } from "../../util/logger.js";
|
|
2
5
|
import { clarkImpl } from "./impl/clark.js";
|
|
3
|
-
|
|
6
|
+
const removeHeader = (headers, name) => {
|
|
7
|
+
for (const key of Object.keys(headers)) {
|
|
8
|
+
if (key.toLowerCase() === name) {
|
|
9
|
+
delete headers[key];
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
const PROXY_TRACE_HEADER_NAMES = [
|
|
14
|
+
"traceparent",
|
|
15
|
+
"tracestate",
|
|
16
|
+
"x-datadog-origin",
|
|
17
|
+
"x-datadog-parent-id",
|
|
18
|
+
"x-datadog-sampling-priority",
|
|
19
|
+
"x-datadog-tags",
|
|
20
|
+
"x-datadog-trace-id",
|
|
21
|
+
];
|
|
22
|
+
const PROXY_REQUEST_CONTEXT_KEY = createContextKey("superblocks.proxy_request_context");
|
|
23
|
+
const removeProxyTraceHeaders = (headers) => {
|
|
24
|
+
for (const name of PROXY_TRACE_HEADER_NAMES) {
|
|
25
|
+
removeHeader(headers, name);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
const TRACEPARENT_PATTERN = /^[0-9a-f]{2}-([0-9a-f]{32})-([0-9a-f]{16})-([0-9a-f]{2})(?:-.+)?$/i;
|
|
29
|
+
const hexToUnsignedDecimal = (hex) => BigInt(`0x${hex}`).toString(10);
|
|
30
|
+
const addDatadogTraceHeadersFromTraceparent = (headers) => {
|
|
31
|
+
const match = headers.traceparent?.match(TRACEPARENT_PATTERN);
|
|
32
|
+
if (!match)
|
|
33
|
+
return;
|
|
34
|
+
const [, rawTraceId, rawSpanId, flags] = match;
|
|
35
|
+
if (!rawTraceId || !rawSpanId || !flags)
|
|
36
|
+
return;
|
|
37
|
+
const traceId = rawTraceId.toLowerCase();
|
|
38
|
+
const spanId = rawSpanId.toLowerCase();
|
|
39
|
+
const datadogTraceId = traceId.slice(16);
|
|
40
|
+
const datadogTraceHighBits = traceId.slice(0, 16);
|
|
41
|
+
headers["x-datadog-trace-id"] = hexToUnsignedDecimal(datadogTraceId);
|
|
42
|
+
headers["x-datadog-parent-id"] = hexToUnsignedDecimal(spanId);
|
|
43
|
+
headers["x-datadog-sampling-priority"] =
|
|
44
|
+
(Number.parseInt(flags, 16) & 1) === 1 ? "1" : "0";
|
|
45
|
+
// For 64-bit trace IDs the high bits are all zero and there is no tag to
|
|
46
|
+
// carry; omit the header rather than sending an empty value.
|
|
47
|
+
if (datadogTraceHighBits !== "0000000000000000") {
|
|
48
|
+
headers["x-datadog-tags"] = `_dd.p.tid=${datadogTraceHighBits}`;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
const injectProxyTraceHeaders = (headers, proxyRequestContext) => {
|
|
52
|
+
removeProxyTraceHeaders(headers);
|
|
53
|
+
propagation.inject(proxyRequestContext, headers);
|
|
54
|
+
addDatadogTraceHeadersFromTraceparent(headers);
|
|
55
|
+
};
|
|
56
|
+
const createProxyTraceHeaders = (proxyRequestContext) => {
|
|
57
|
+
const traceHeaders = {};
|
|
58
|
+
propagation.inject(proxyRequestContext, traceHeaders);
|
|
59
|
+
addDatadogTraceHeadersFromTraceparent(traceHeaders);
|
|
60
|
+
return traceHeaders;
|
|
61
|
+
};
|
|
62
|
+
const setProxyTraceHeadersOnRecord = (headers, traceHeaders) => {
|
|
63
|
+
removeProxyTraceHeaders(headers);
|
|
64
|
+
Object.assign(headers, traceHeaders);
|
|
65
|
+
};
|
|
66
|
+
const readProxyTraceHeaders = (headers) => {
|
|
67
|
+
const traceparent = headers.get("traceparent");
|
|
68
|
+
if (!traceparent || !TRACEPARENT_PATTERN.test(traceparent))
|
|
69
|
+
return undefined;
|
|
70
|
+
const traceHeaders = { traceparent };
|
|
71
|
+
const tracestate = headers.get("tracestate");
|
|
72
|
+
if (tracestate) {
|
|
73
|
+
traceHeaders.tracestate = tracestate;
|
|
74
|
+
}
|
|
75
|
+
addDatadogTraceHeadersFromTraceparent(traceHeaders);
|
|
76
|
+
return traceHeaders;
|
|
77
|
+
};
|
|
78
|
+
const setProxyTraceHeaders = (headers, traceHeaders) => {
|
|
79
|
+
for (const name of PROXY_TRACE_HEADER_NAMES) {
|
|
80
|
+
headers.delete(name);
|
|
81
|
+
}
|
|
82
|
+
for (const [name, value] of Object.entries(traceHeaders)) {
|
|
83
|
+
headers.set(name, value);
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
// Nothing about the header storage is per-provider, and createLLMProvider
|
|
87
|
+
// runs on every FSM transition; keep it module-scoped so a generation does
|
|
88
|
+
// not churn through fresh AsyncLocalStorage instances.
|
|
89
|
+
const proxyTraceHeadersStorage = new AsyncLocalStorage();
|
|
90
|
+
/** Record an error on a span and set its status to ERROR. */
|
|
91
|
+
export const setSpanError = (span, error) => {
|
|
92
|
+
if (error instanceof Error) {
|
|
93
|
+
span.recordException(error);
|
|
94
|
+
span.setStatus({
|
|
95
|
+
code: SpanStatusCode.ERROR,
|
|
96
|
+
message: error.message,
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
span.setStatus({
|
|
101
|
+
code: SpanStatusCode.ERROR,
|
|
102
|
+
message: String(error),
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
const mergeFetchHeaders = (input, init) => {
|
|
107
|
+
const headers = new Headers(input instanceof Request ? input.headers : {});
|
|
108
|
+
new Headers(init?.headers).forEach((value, name) => {
|
|
109
|
+
headers.set(name, value);
|
|
110
|
+
});
|
|
111
|
+
return headers;
|
|
112
|
+
};
|
|
113
|
+
const createClarkProxyFetch = (baseFetch, getCurrentProxyTraceHeaders) => (input, init) => {
|
|
114
|
+
const headers = mergeFetchHeaders(input, init);
|
|
115
|
+
const activeContext = context.active();
|
|
116
|
+
const storedProxyRequestContext = typeof activeContext.getValue === "function"
|
|
117
|
+
? activeContext.getValue(PROXY_REQUEST_CONTEXT_KEY)
|
|
118
|
+
: undefined;
|
|
119
|
+
const proxyTraceHeaders = getCurrentProxyTraceHeaders?.() ??
|
|
120
|
+
(storedProxyRequestContext &&
|
|
121
|
+
typeof storedProxyRequestContext === "object"
|
|
122
|
+
? createProxyTraceHeaders(storedProxyRequestContext)
|
|
123
|
+
: (readProxyTraceHeaders(headers) ??
|
|
124
|
+
createProxyTraceHeaders(activeContext)));
|
|
125
|
+
const contextForFetch = storedProxyRequestContext && typeof storedProxyRequestContext === "object"
|
|
126
|
+
? storedProxyRequestContext
|
|
127
|
+
: activeContext;
|
|
128
|
+
setProxyTraceHeaders(headers, proxyTraceHeaders);
|
|
129
|
+
// Keep the (input, init) calling convention: wrapped fetches (recording,
|
|
130
|
+
// chaos) read the URL and JSON body straight from their arguments, not
|
|
131
|
+
// from a Request object.
|
|
132
|
+
return context.with(suppressTracing(contextForFetch), () => (baseFetch ?? globalThis.fetch)(input, { ...init, headers }));
|
|
133
|
+
};
|
|
134
|
+
export const createLLMProvider = (settings, getJwt, llmConfig, getAttributes, traceHeaders) => {
|
|
4
135
|
const providerType = llmConfig?.provider || "bedrock";
|
|
5
136
|
const useSuperblocksAuthorizationHeader = settings.useSuperblocksAuthorizationHeader ?? true;
|
|
6
|
-
|
|
137
|
+
getLogger().info(`Creating LLM provider: type=${providerType}`);
|
|
138
|
+
if (providerType !== "bedrock" &&
|
|
139
|
+
providerType !== "vertex" &&
|
|
140
|
+
providerType !== "snowflake") {
|
|
141
|
+
getLogger().warn(`Unsupported LLM provider "${providerType}"; falling back to the Clark proxy`);
|
|
142
|
+
}
|
|
143
|
+
const usesClarkProxy = true;
|
|
144
|
+
// getTracer returns a cheap proxy that resolves the registered provider at
|
|
145
|
+
// call time, so per-provider resolution here costs nothing (unlike the
|
|
146
|
+
// AsyncLocalStorage above, which must be module-scoped).
|
|
147
|
+
const tracer = trace.getTracer("clark-llm-provider");
|
|
148
|
+
const applyAuthAndAttributes = (options, proxyTraceHeaders, proxyRequestContext = context.active()) => {
|
|
7
149
|
const jwt = getJwt?.();
|
|
8
150
|
const aiAttributes = getAttributes?.();
|
|
9
151
|
const billing = options.providerOptions?.["billing"];
|
|
@@ -23,6 +165,14 @@ export const createLLMProvider = (settings, getJwt, llmConfig, getAttributes) =>
|
|
|
23
165
|
}
|
|
24
166
|
headers["x-superblocks-authorization"] = `Bearer ${jwt}`;
|
|
25
167
|
}
|
|
168
|
+
if (usesClarkProxy) {
|
|
169
|
+
if (proxyTraceHeaders) {
|
|
170
|
+
setProxyTraceHeadersOnRecord(headers, proxyTraceHeaders);
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
injectProxyTraceHeaders(headers, proxyRequestContext);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
26
176
|
const mergedAttributes = {
|
|
27
177
|
...(options.attributes ?? {}),
|
|
28
178
|
...(aiAttributes ?? {}),
|
|
@@ -34,35 +184,162 @@ export const createLLMProvider = (settings, getJwt, llmConfig, getAttributes) =>
|
|
|
34
184
|
attributes: mergedAttributes,
|
|
35
185
|
};
|
|
36
186
|
};
|
|
187
|
+
const parentContextForProxyRequest = () => traceHeaders?.traceparent || traceHeaders?.tracestate
|
|
188
|
+
? propagation.extract(context.active(), traceHeaders)
|
|
189
|
+
: context.active();
|
|
190
|
+
const wrapStreamWithSpan = (result, span, abortSignal) => {
|
|
191
|
+
const streamResult = result;
|
|
192
|
+
if (!streamResult ||
|
|
193
|
+
typeof streamResult !== "object" ||
|
|
194
|
+
!(streamResult.stream instanceof ReadableStream)) {
|
|
195
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
196
|
+
span.end();
|
|
197
|
+
return result;
|
|
198
|
+
}
|
|
199
|
+
const reader = streamResult.stream.getReader();
|
|
200
|
+
let ended = false;
|
|
201
|
+
const onAbort = () => endOnce();
|
|
202
|
+
const endOnce = (error) => {
|
|
203
|
+
if (ended)
|
|
204
|
+
return;
|
|
205
|
+
ended = true;
|
|
206
|
+
// The ai-sdk reuses one merged abort signal for every step of a
|
|
207
|
+
// generation; a finished step must not leave its listener (and this
|
|
208
|
+
// span and reader) attached for the rest of the attempt.
|
|
209
|
+
abortSignal?.removeEventListener("abort", onAbort);
|
|
210
|
+
if (abortSignal?.aborted) {
|
|
211
|
+
// A client disconnect / cancel / timeout aborts the request. That is
|
|
212
|
+
// expected, not a provider failure, so mark it (queryable) but do not
|
|
213
|
+
// record it as an errored span.
|
|
214
|
+
span.setAttribute("ai.response.aborted", true);
|
|
215
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
216
|
+
}
|
|
217
|
+
else if (error === undefined) {
|
|
218
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
219
|
+
}
|
|
220
|
+
else {
|
|
221
|
+
setSpanError(span, error);
|
|
222
|
+
}
|
|
223
|
+
span.end();
|
|
224
|
+
};
|
|
225
|
+
// A consumer that abandons the returned stream without reading it to the
|
|
226
|
+
// end or cancelling it would otherwise leak this span (spans export only on
|
|
227
|
+
// end). End it when the request is aborted (client disconnect, cancel, or
|
|
228
|
+
// timeout) so the trace still lands.
|
|
229
|
+
if (abortSignal?.aborted) {
|
|
230
|
+
endOnce();
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
abortSignal?.addEventListener("abort", onAbort, { once: true });
|
|
234
|
+
}
|
|
235
|
+
return {
|
|
236
|
+
...streamResult,
|
|
237
|
+
stream: new ReadableStream({
|
|
238
|
+
async pull(controller) {
|
|
239
|
+
try {
|
|
240
|
+
const next = await reader.read();
|
|
241
|
+
if (next.done) {
|
|
242
|
+
endOnce();
|
|
243
|
+
controller.close();
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
246
|
+
controller.enqueue(next.value);
|
|
247
|
+
}
|
|
248
|
+
catch (error) {
|
|
249
|
+
endOnce(error);
|
|
250
|
+
controller.error(error);
|
|
251
|
+
}
|
|
252
|
+
},
|
|
253
|
+
async cancel(reason) {
|
|
254
|
+
try {
|
|
255
|
+
await reader.cancel(reason);
|
|
256
|
+
endOnce();
|
|
257
|
+
}
|
|
258
|
+
catch (error) {
|
|
259
|
+
endOnce(error);
|
|
260
|
+
throw error;
|
|
261
|
+
}
|
|
262
|
+
},
|
|
263
|
+
}),
|
|
264
|
+
};
|
|
265
|
+
};
|
|
266
|
+
const runInternalProxyRequest = async (operation, model, invoke, abortSignal) => {
|
|
267
|
+
if (!usesClarkProxy) {
|
|
268
|
+
return await invoke(context.active());
|
|
269
|
+
}
|
|
270
|
+
return context.with(parentContextForProxyRequest(), () => tracer.startActiveSpan(`clark.llm_proxy.${operation}`, {
|
|
271
|
+
attributes: {
|
|
272
|
+
"ai.clark_model": model.modelId,
|
|
273
|
+
"ai.provider": providerType,
|
|
274
|
+
},
|
|
275
|
+
kind: SpanKind.CLIENT,
|
|
276
|
+
}, async (span) => {
|
|
277
|
+
const proxyRequestContext = trace.setSpan(context.active(), span);
|
|
278
|
+
const proxyTraceHeaders = createProxyTraceHeaders(proxyRequestContext);
|
|
279
|
+
try {
|
|
280
|
+
const result = await invoke(proxyRequestContext, proxyTraceHeaders);
|
|
281
|
+
if (operation === "stream") {
|
|
282
|
+
return wrapStreamWithSpan(result, span, abortSignal);
|
|
283
|
+
}
|
|
284
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
285
|
+
return result;
|
|
286
|
+
}
|
|
287
|
+
catch (error) {
|
|
288
|
+
setSpanError(span, error);
|
|
289
|
+
if (operation === "stream") {
|
|
290
|
+
span.end();
|
|
291
|
+
}
|
|
292
|
+
throw error;
|
|
293
|
+
}
|
|
294
|
+
finally {
|
|
295
|
+
if (operation !== "stream") {
|
|
296
|
+
span.end();
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
}));
|
|
300
|
+
};
|
|
301
|
+
const runWithProxyRequestContext = (invoke, proxyRequestContext = context.active(), proxyTraceHeaders) => {
|
|
302
|
+
if (!usesClarkProxy)
|
|
303
|
+
return invoke();
|
|
304
|
+
const contextForInvocation = typeof proxyRequestContext.setValue === "function"
|
|
305
|
+
? proxyRequestContext.setValue(PROXY_REQUEST_CONTEXT_KEY, proxyRequestContext)
|
|
306
|
+
: proxyRequestContext;
|
|
307
|
+
const runInContext = () => context.with(contextForInvocation, invoke);
|
|
308
|
+
return proxyTraceHeaders
|
|
309
|
+
? proxyTraceHeadersStorage.run(proxyTraceHeaders, runInContext)
|
|
310
|
+
: runInContext();
|
|
311
|
+
};
|
|
37
312
|
const wrapDefaults = (model) => {
|
|
38
313
|
const wrapped = Object.create(model);
|
|
39
314
|
// Direct-provider SDK models can expose read-only methods. Define own
|
|
40
315
|
// methods on the wrapper instead of assigning over SDK descriptors.
|
|
41
316
|
Object.defineProperties(wrapped, {
|
|
42
317
|
doGenerate: {
|
|
43
|
-
value: (options) => {
|
|
44
|
-
|
|
45
|
-
|
|
318
|
+
value: (options) => runInternalProxyRequest("generate", model, (proxyRequestContext, proxyTraceHeaders) => {
|
|
319
|
+
const requestOptions = applyAuthAndAttributes(options, proxyTraceHeaders, proxyRequestContext);
|
|
320
|
+
return runWithProxyRequestContext(() => model.doGenerate(requestOptions), proxyRequestContext, proxyTraceHeaders);
|
|
321
|
+
}),
|
|
46
322
|
configurable: true,
|
|
47
323
|
enumerable: true,
|
|
48
324
|
},
|
|
49
325
|
doStream: {
|
|
50
|
-
value: (options) => {
|
|
51
|
-
|
|
52
|
-
|
|
326
|
+
value: (options) => runInternalProxyRequest("stream", model, (proxyRequestContext, proxyTraceHeaders) => {
|
|
327
|
+
const requestOptions = applyAuthAndAttributes(options, proxyTraceHeaders, proxyRequestContext);
|
|
328
|
+
return runWithProxyRequestContext(() => model.doStream(requestOptions), proxyRequestContext, proxyTraceHeaders);
|
|
329
|
+
}, options.abortSignal),
|
|
53
330
|
configurable: true,
|
|
54
331
|
enumerable: true,
|
|
55
332
|
},
|
|
56
333
|
});
|
|
57
334
|
return wrapped;
|
|
58
335
|
};
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
336
|
+
const impl = clarkImpl({
|
|
337
|
+
...settings,
|
|
338
|
+
clark: {
|
|
339
|
+
...settings.clark,
|
|
340
|
+
fetch: createClarkProxyFetch(settings.clark.fetch, () => proxyTraceHeadersStorage.getStore()),
|
|
341
|
+
},
|
|
342
|
+
});
|
|
66
343
|
const languageModels = {
|
|
67
344
|
classifyPrompt: wrapDefaults(impl.classifyPrompt),
|
|
68
345
|
explain: wrapDefaults(impl.explain),
|