@burdenoff/fe-libs 2026.926.2 → 2026.926.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.
- package/dist/shared/assistant/capabilities.d.ts +5 -0
- package/dist/shared/assistant/capabilities.d.ts.map +1 -1
- package/dist/shared/assistant/capabilities.js +2 -1
- package/dist/shared/assistant/index.d.ts +2 -0
- package/dist/shared/assistant/index.d.ts.map +1 -1
- package/dist/shared/assistant/operations.d.ts +7 -0
- package/dist/shared/assistant/operations.d.ts.map +1 -1
- package/dist/shared/assistant/operations.js +2 -2
- package/dist/shared/assistant/prewarm.d.ts +32 -4
- package/dist/shared/assistant/prewarm.d.ts.map +1 -1
- package/dist/shared/assistant/prewarm.js +35 -15
- package/dist/shared/assistant/product.d.ts +11 -1
- package/dist/shared/assistant/product.d.ts.map +1 -1
- package/dist/shared/assistant/product.js +8 -6
- package/dist/shared/assistant/turnTimeline.d.ts +37 -3
- package/dist/shared/assistant/turnTimeline.d.ts.map +1 -1
- package/dist/shared/assistant/turnTimeline.js +45 -33
- package/dist/shared/assistant/turnTimingReport.d.ts +86 -0
- package/dist/shared/assistant/turnTimingReport.d.ts.map +1 -0
- package/dist/shared/assistant/turnTimingReport.js +123 -0
- package/dist/shared/assistant/turnTimingReporter.d.ts +146 -0
- package/dist/shared/assistant/turnTimingReporter.d.ts.map +1 -0
- package/dist/shared/assistant/turnTimingReporter.js +321 -0
- package/dist/shared/assistant/ui/AssistantChatArea.d.ts.map +1 -1
- package/dist/shared/assistant/ui/AssistantChatArea.js +526 -503
- package/dist/shared/graphql/fetch.d.ts +10 -0
- package/dist/shared/graphql/fetch.d.ts.map +1 -1
- package/dist/shared/graphql/fetch.js +64 -62
- package/dist/shared-assistant.js +133 -131
- package/package.json +2 -2
|
@@ -11,6 +11,11 @@ interface AssistantCapabilities {
|
|
|
11
11
|
waitForSandboxRunning: CapabilityState;
|
|
12
12
|
sinceParam: CapabilityState;
|
|
13
13
|
sse: CapabilityState;
|
|
14
|
+
/**
|
|
15
|
+
* `reportMyAssistantTurnTimings` (BOFF-7801). `unsupported` also when the
|
|
16
|
+
* service says collection is switched off: either way, stop for this page.
|
|
17
|
+
*/
|
|
18
|
+
turnTimings: CapabilityState;
|
|
14
19
|
}
|
|
15
20
|
export declare function getCapability(key: keyof AssistantCapabilities): CapabilityState;
|
|
16
21
|
export declare function markSupported(key: keyof AssistantCapabilities): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/capabilities.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,CAAC;AAEtE,UAAU,qBAAqB;IAC7B,qBAAqB,EAAE,eAAe,CAAC;IACvC,UAAU,EAAE,eAAe,CAAC;IAC5B,GAAG,EAAE,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/capabilities.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,CAAC;AAEtE,UAAU,qBAAqB;IAC7B,qBAAqB,EAAE,eAAe,CAAC;IACvC,UAAU,EAAE,eAAe,CAAC;IAC5B,GAAG,EAAE,eAAe,CAAC;IACrB;;;OAGG;IACH,WAAW,EAAE,eAAe,CAAC;CAC9B;AASD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,qBAAqB,GAAG,eAAe,CAE/E;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,qBAAqB,GAAG,IAAI,CAEpE;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,qBAAqB,GAAG,IAAI,CAEtE;AAED,8EAA8E;AAC9E,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAK3D"}
|
|
@@ -154,6 +154,8 @@ export * from './permissionError';
|
|
|
154
154
|
export * from './autoRouting';
|
|
155
155
|
export * from './turnOutcome';
|
|
156
156
|
export * from './turnTimeline';
|
|
157
|
+
export * from './turnTimingReport';
|
|
158
|
+
export * from './turnTimingReporter';
|
|
157
159
|
export * from './prewarm';
|
|
158
160
|
export * from './localUiCommands';
|
|
159
161
|
export * from './localUiCommandCopy';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,4 +17,11 @@ export declare const STOP_ASSISTANT_SANDBOX = "\n mutation StopAssistantSandbox
|
|
|
17
17
|
export declare const EXTEND_SANDBOX_TTL = "\n mutation ExtendSandboxTtl($id: ID!, $additionalSeconds: Int!, $context: ContextInput!) {\n extendSandboxTTL(id: $id, additionalSeconds: $additionalSeconds, context: $context) {\n id\n expiresAt\n }\n }\n";
|
|
18
18
|
export declare const CHECK_AI_CREDITS = "\n mutation CheckAiCredits {\n checkAiCredits\n }\n";
|
|
19
19
|
export declare const REPORT_AI_TOKEN_USAGE = "\n mutation ReportAiTokenUsage($input: ReportAiTokenUsageInput!) {\n reportAiTokenUsage(input: $input)\n }\n";
|
|
20
|
+
/**
|
|
21
|
+
* BOFF-7801: finished turns' timings for the production latency histograms
|
|
22
|
+
* (wspace-sandbox-svc). Self-scoped — the actor comes from the gateway, and
|
|
23
|
+
* the input carries timings and coarse dimensions only. Feature-detected: on a
|
|
24
|
+
* supergraph without it the reporter stops for the page load.
|
|
25
|
+
*/
|
|
26
|
+
export declare const REPORT_MY_ASSISTANT_TURN_TIMINGS = "\n mutation ReportMyAssistantTurnTimings($input: ReportAssistantTurnTimingsInput!) {\n reportMyAssistantTurnTimings(input: $input) {\n enabled\n accepted\n rejected\n duplicate\n rateLimited\n }\n }\n";
|
|
20
27
|
//# sourceMappingURL=operations.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/operations.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,cAAc,mMAW1B,CAAC;AAEF,eAAO,MAAM,WAAW,qNAWvB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,mPAQpC,CAAC;AAEF,eAAO,MAAM,oBAAoB,4MAWhC,CAAC;AAEF,eAAO,MAAM,qBAAqB,4JAOjC,CAAC;AAEF,eAAO,MAAM,sBAAsB,gKAOlC,CAAC;AAEF,eAAO,MAAM,kBAAkB,qOAO9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,6DAI5B,CAAC;AAEF,eAAO,MAAM,qBAAqB,sHAIjC,CAAC"}
|
|
1
|
+
{"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/operations.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,cAAc,mMAW1B,CAAC;AAEF,eAAO,MAAM,WAAW,qNAWvB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,mPAQpC,CAAC;AAEF,eAAO,MAAM,oBAAoB,4MAWhC,CAAC;AAEF,eAAO,MAAM,qBAAqB,4JAOjC,CAAC;AAEF,eAAO,MAAM,sBAAsB,gKAOlC,CAAC;AAEF,eAAO,MAAM,kBAAkB,qOAO9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,6DAI5B,CAAC;AAEF,eAAO,MAAM,qBAAqB,sHAIjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,8OAU5C,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
//#region src/shared/assistant/operations.ts
|
|
2
|
-
var e = "\n mutation CreateSandbox($input: CreateSandboxInput!) {\n createSandbox(input: $input) {\n id\n name\n status\n network {\n internalUrl\n }\n }\n }\n", t = "\n query GetSandbox($id: ID!, $context: ContextInput!) {\n getSandbox(id: $id, context: $context) {\n id\n status\n errorMessage\n network {\n internalUrl\n }\n }\n }\n", n = "\n query WaitForSandboxRunning($id: ID!, $timeoutSeconds: Int, $context: ContextInput!) {\n waitForSandboxRunning(id: $id, timeoutSeconds: $timeoutSeconds, context: $context) {\n id\n status\n errorMessage\n }\n }\n", r = "\n query GetActiveSandboxes($context: ContextInput!) {\n getActiveSandboxes(context: $context) {\n id\n name\n status\n metadata\n template\n createdBy\n }\n }\n", i = "\n mutation ProxySandboxRequest($input: ProxySandboxRequestInput!) {\n proxySandboxRequest(input: $input) {\n status\n body\n }\n }\n", a = "\n mutation StopAssistantSandbox($id: ID!, $context: ContextInput!) {\n stopSandbox(id: $id, context: $context) {\n id\n status\n }\n }\n", o = "\n mutation ExtendSandboxTtl($id: ID!, $additionalSeconds: Int!, $context: ContextInput!) {\n extendSandboxTTL(id: $id, additionalSeconds: $additionalSeconds, context: $context) {\n id\n expiresAt\n }\n }\n", s = "\n mutation CheckAiCredits {\n checkAiCredits\n }\n", c = "\n mutation ReportAiTokenUsage($input: ReportAiTokenUsageInput!) {\n reportAiTokenUsage(input: $input)\n }\n";
|
|
2
|
+
var e = "\n mutation CreateSandbox($input: CreateSandboxInput!) {\n createSandbox(input: $input) {\n id\n name\n status\n network {\n internalUrl\n }\n }\n }\n", t = "\n query GetSandbox($id: ID!, $context: ContextInput!) {\n getSandbox(id: $id, context: $context) {\n id\n status\n errorMessage\n network {\n internalUrl\n }\n }\n }\n", n = "\n query WaitForSandboxRunning($id: ID!, $timeoutSeconds: Int, $context: ContextInput!) {\n waitForSandboxRunning(id: $id, timeoutSeconds: $timeoutSeconds, context: $context) {\n id\n status\n errorMessage\n }\n }\n", r = "\n query GetActiveSandboxes($context: ContextInput!) {\n getActiveSandboxes(context: $context) {\n id\n name\n status\n metadata\n template\n createdBy\n }\n }\n", i = "\n mutation ProxySandboxRequest($input: ProxySandboxRequestInput!) {\n proxySandboxRequest(input: $input) {\n status\n body\n }\n }\n", a = "\n mutation StopAssistantSandbox($id: ID!, $context: ContextInput!) {\n stopSandbox(id: $id, context: $context) {\n id\n status\n }\n }\n", o = "\n mutation ExtendSandboxTtl($id: ID!, $additionalSeconds: Int!, $context: ContextInput!) {\n extendSandboxTTL(id: $id, additionalSeconds: $additionalSeconds, context: $context) {\n id\n expiresAt\n }\n }\n", s = "\n mutation CheckAiCredits {\n checkAiCredits\n }\n", c = "\n mutation ReportAiTokenUsage($input: ReportAiTokenUsageInput!) {\n reportAiTokenUsage(input: $input)\n }\n", l = "\n mutation ReportMyAssistantTurnTimings($input: ReportAssistantTurnTimingsInput!) {\n reportMyAssistantTurnTimings(input: $input) {\n enabled\n accepted\n rejected\n duplicate\n rateLimited\n }\n }\n";
|
|
3
3
|
//#endregion
|
|
4
|
-
export { s as CHECK_AI_CREDITS, e as CREATE_SANDBOX, o as EXTEND_SANDBOX_TTL, r as GET_ACTIVE_SANDBOXES, t as GET_SANDBOX, i as PROXY_SANDBOX_REQUEST, c as REPORT_AI_TOKEN_USAGE, a as STOP_ASSISTANT_SANDBOX, n as WAIT_FOR_SANDBOX_RUNNING };
|
|
4
|
+
export { s as CHECK_AI_CREDITS, e as CREATE_SANDBOX, o as EXTEND_SANDBOX_TTL, r as GET_ACTIVE_SANDBOXES, t as GET_SANDBOX, i as PROXY_SANDBOX_REQUEST, c as REPORT_AI_TOKEN_USAGE, l as REPORT_MY_ASSISTANT_TURN_TIMINGS, a as STOP_ASSISTANT_SANDBOX, n as WAIT_FOR_SANDBOX_RUNNING };
|
|
@@ -72,6 +72,13 @@ export interface WarmOutcome {
|
|
|
72
72
|
sandboxId?: string;
|
|
73
73
|
/** It created, probed or adopted — not merely trusted a fresh proof. */
|
|
74
74
|
didWork: boolean;
|
|
75
|
+
/**
|
|
76
|
+
* It created a sandbox, or waited out a boot it found under way — the part
|
|
77
|
+
* of a cold start a send joining it waits on. A warm that only PROBED a
|
|
78
|
+
* running sandbox did work (`didWork`) but booted nothing: a send joining it
|
|
79
|
+
* waited seconds, not a boot, and is not a pre-warm turn (BOFF-7801).
|
|
80
|
+
*/
|
|
81
|
+
booted: boolean;
|
|
75
82
|
/**
|
|
76
83
|
* What it proved dead. Carried to the send that joins, because the warm's
|
|
77
84
|
* own record of it lives in the panel that STARTED it — which may be gone
|
|
@@ -94,6 +101,18 @@ export interface WarmHandle {
|
|
|
94
101
|
step: AssistantTurnStage | null;
|
|
95
102
|
/** Progress forwarded to the send that joined, if one has. */
|
|
96
103
|
onStep: ((step: AssistantTurnStage) => void) | null;
|
|
104
|
+
/**
|
|
105
|
+
* The warm has begun a BOOT: it requested a sandbox, or found one still
|
|
106
|
+
* starting and is waiting it out. A send that joins it from then on is
|
|
107
|
+
* waiting on a pre-warm's boot, and is told so WHILE it waits (`onBoot`),
|
|
108
|
+
* not only once the warm settles: a turn the person gives up on mid-wait is
|
|
109
|
+
* otherwise reported with no runtime at all (BOFF-7801 review round 3).
|
|
110
|
+
*/
|
|
111
|
+
readonly booting: boolean;
|
|
112
|
+
/** Told once, when the warm begins a boot, for the sends that joined it. */
|
|
113
|
+
onBoot: (() => void) | null;
|
|
114
|
+
/** Call as the warm begins a boot (`beginCreate` does). Idempotent. */
|
|
115
|
+
beginBoot(): void;
|
|
97
116
|
/** Call immediately before the CreateSandbox request; call the result when it settles. */
|
|
98
117
|
beginCreate(): () => void;
|
|
99
118
|
/** Settle the warm. Idempotent. */
|
|
@@ -106,10 +125,16 @@ export declare function startWarm(workspaceId: string, plan: PrewarmPlan, now: n
|
|
|
106
125
|
/** What a send learned from settling a warm (see `settleWarmBeforeSend`). */
|
|
107
126
|
export interface WarmSettlement {
|
|
108
127
|
/**
|
|
109
|
-
* `joined` — it waited for a warm that
|
|
110
|
-
* waited for one that failed (the wait still cost it); null — neither
|
|
128
|
+
* `joined` — it waited for a warm that BOOTED a sandbox; `joinedFailed` — it
|
|
129
|
+
* waited for one that failed (the wait still cost it); null — neither: no
|
|
130
|
+
* warm, a cancelled one, or one that only probed or trusted a proof.
|
|
111
131
|
*/
|
|
112
132
|
joined: "joined" | "joinedFailed" | null;
|
|
133
|
+
/**
|
|
134
|
+
* The send waited on a live warm in its mode, whatever that warm did. Such
|
|
135
|
+
* a warm did not finish ahead of the send, so it is never a `hit`.
|
|
136
|
+
*/
|
|
137
|
+
waited: boolean;
|
|
113
138
|
/** The sandbox the warm proved ready, for the send's own readiness record. */
|
|
114
139
|
verified?: string;
|
|
115
140
|
/** Sandboxes the warm proved dead, for the send's own quarantine. */
|
|
@@ -119,7 +144,10 @@ export interface WarmSettlement {
|
|
|
119
144
|
* What a send does about a warm before acquiring its own sandbox.
|
|
120
145
|
*
|
|
121
146
|
* - Same mode, still live: JOIN — mirror its progress, wait for it, and take
|
|
122
|
-
* over what it learned (the panel that started it may be gone).
|
|
147
|
+
* over what it learned (the panel that started it may be gone). `onBoot` is
|
|
148
|
+
* called once if the warm is booting a sandbox — at once when the boot is
|
|
149
|
+
* already under way, else as the warm begins it — so the turn can record
|
|
150
|
+
* what it is waiting on before the warm settles.
|
|
123
151
|
* - Another mode — or a warm some earlier send already CANCELLED: cancel it
|
|
124
152
|
* (again, harmlessly), take it out of the registry so it blocks no one, and
|
|
125
153
|
* wait only while its create request is on the wire. Once that lands the
|
|
@@ -127,7 +155,7 @@ export interface WarmSettlement {
|
|
|
127
155
|
* lands, a one-slot workspace would refuse the send. A cancelled warm is
|
|
128
156
|
* never joined: it can only end in failure, after a probe nobody needs.
|
|
129
157
|
*/
|
|
130
|
-
export declare function settleWarmBeforeSend(workspaceId: string, mode: AssistantMode, onStep: (step: AssistantTurnStage) => void): Promise<WarmSettlement>;
|
|
158
|
+
export declare function settleWarmBeforeSend(workspaceId: string, mode: AssistantMode, onStep: (step: AssistantTurnStage) => void, onBoot?: () => void): Promise<WarmSettlement>;
|
|
131
159
|
/**
|
|
132
160
|
* A send was served by `sandboxId` in this workspace and mode: was that a
|
|
133
161
|
* warm's work? True at most once per warmed sandbox, so "hit" means the warm
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prewarm.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/prewarm.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAE9E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAE1C,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,uCAAuC;IACvC,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,aAAa,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IAChE,YAAY,EAAE,aAAa,CAAC;IAC5B,YAAY,EAAE,aAAa,CAAC;IAC5B,KAAK,EAAE,SAAS,IAAI,CAClB,mBAAmB,EACnB,IAAI,GAAG,cAAc,GAAG,eAAe,CACxC,EAAE,CAAC;IACJ,sBAAsB,EAAE,SAAS,aAAa,EAAE,CAAC;IACjD,4EAA4E;IAC5E,WAAW,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,gBAAgB,EAAE,OAAO,CAAA;KAAE,CAAC;IAC7D,+DAA+D;IAC/D,QAAQ,EAAE,OAAO,CAAC;IAClB,iFAAiF;IACjF,YAAY,EAAE,OAAO,CAAC;IACtB,mDAAmD;IACnD,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,WAAW,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAClD,oEAAoE;IACpE,aAAa,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IAC1C,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,aAAa,CAAC;IACpB;;;;OAIG;IACH,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,WAAW,GAAG,IAAI,CAyBrE;AAED,+EAA+E;AAC/E,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,OAAO,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AAED,uEAAuE;AACvE,qBAAa,aAAc,SAAQ,KAAK;gBAC1B,MAAM,EAAE,WAAW,GAAG,WAAW;CAI9C;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,mEAAmE;IACnE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;IACxB,yEAAyE;IACzE,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAChC,8DAA8D;IAC9D,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IACpD,0FAA0F;IAC1F,WAAW,IAAI,MAAM,IAAI,CAAC;IAC1B,mCAAmC;IACnC,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;CACpC;AAkBD,+DAA+D;AAC/D,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAClD,YAAY,EACZ,SAAS,GAAG,eAAe,GAAG,eAAe,CAC9C,CAeA;AAED,2EAA2E;AAC3E,wBAAgB,SAAS,CACvB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,MAAM,GACV,UAAU,
|
|
1
|
+
{"version":3,"file":"prewarm.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/prewarm.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,7 @@ function u(e) {
|
|
|
33
33
|
function d(e, t, n) {
|
|
34
34
|
let r = new AbortController(), i = () => void 0, u = new Promise((e) => {
|
|
35
35
|
i = e;
|
|
36
|
-
}), d = !1, f = {
|
|
36
|
+
}), d = !1, f = !1, p = {
|
|
37
37
|
workspaceId: e,
|
|
38
38
|
mode: t.mode,
|
|
39
39
|
mayCreate: t.mayCreate,
|
|
@@ -42,46 +42,66 @@ function d(e, t, n) {
|
|
|
42
42
|
controller: r,
|
|
43
43
|
step: null,
|
|
44
44
|
onStep: null,
|
|
45
|
+
get booting() {
|
|
46
|
+
return f;
|
|
47
|
+
},
|
|
48
|
+
onBoot: null,
|
|
45
49
|
createLanded: Promise.resolve(),
|
|
46
50
|
done: u,
|
|
51
|
+
beginBoot() {
|
|
52
|
+
f = !0;
|
|
53
|
+
let e = p.onBoot;
|
|
54
|
+
p.onBoot = null, e?.();
|
|
55
|
+
},
|
|
47
56
|
beginCreate() {
|
|
48
|
-
s.add(l(e, t.mode));
|
|
57
|
+
p.beginBoot(), s.add(l(e, t.mode));
|
|
49
58
|
let n = () => void 0;
|
|
50
|
-
return
|
|
59
|
+
return p.createLanded = new Promise((e) => {
|
|
51
60
|
n = e;
|
|
52
61
|
}), n;
|
|
53
62
|
},
|
|
54
63
|
finish(t) {
|
|
55
|
-
d || (d = !0, t.ok && t.didWork && t.sandboxId && c.add(t.sandboxId), a.get(e) ===
|
|
64
|
+
d || (d = !0, t.ok && t.didWork && t.sandboxId && c.add(t.sandboxId), a.get(e) === p && a.delete(e), i(t));
|
|
56
65
|
}
|
|
57
66
|
};
|
|
58
|
-
return a.set(e,
|
|
67
|
+
return a.set(e, p), o.set(l(e, t.mode), n), p;
|
|
59
68
|
}
|
|
60
|
-
async function f(e, t, n) {
|
|
61
|
-
let
|
|
62
|
-
if (!
|
|
69
|
+
async function f(e, t, n, r = () => void 0) {
|
|
70
|
+
let i = a.get(e);
|
|
71
|
+
if (!i) return {
|
|
63
72
|
joined: null,
|
|
73
|
+
waited: !1,
|
|
64
74
|
dead: []
|
|
65
75
|
};
|
|
66
|
-
if (
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
76
|
+
if (i.mode === t && !i.signal.aborted) {
|
|
77
|
+
if (i.step && n(i.step), i.onStep = n, i.booting) r();
|
|
78
|
+
else {
|
|
79
|
+
let e = i.onBoot;
|
|
80
|
+
i.onBoot = e ? () => {
|
|
81
|
+
e(), r();
|
|
82
|
+
} : r;
|
|
83
|
+
}
|
|
84
|
+
let e = await i.done;
|
|
85
|
+
i.onStep = null, i.onBoot = null;
|
|
70
86
|
let t = e.dead ?? [];
|
|
71
87
|
return e.ok ? {
|
|
72
|
-
joined: e.didWork ? "joined" : null,
|
|
88
|
+
joined: e.didWork && e.booted ? "joined" : null,
|
|
89
|
+
waited: !0,
|
|
73
90
|
...e.didWork && e.sandboxId ? { verified: e.sandboxId } : {},
|
|
74
91
|
dead: t
|
|
75
92
|
} : {
|
|
76
93
|
joined: "joinedFailed",
|
|
94
|
+
waited: !0,
|
|
77
95
|
dead: t
|
|
78
96
|
};
|
|
79
97
|
}
|
|
80
|
-
return
|
|
98
|
+
return i.onStep === null ? (i.controller.abort(), a.get(e) === i && a.delete(e), await i.createLanded, {
|
|
81
99
|
joined: null,
|
|
100
|
+
waited: !1,
|
|
82
101
|
dead: []
|
|
83
|
-
}) : (await
|
|
102
|
+
}) : (await i.createLanded, {
|
|
84
103
|
joined: null,
|
|
104
|
+
waited: !1,
|
|
85
105
|
dead: []
|
|
86
106
|
});
|
|
87
107
|
}
|
|
@@ -108,6 +108,16 @@ export interface AssistantProductCapabilities {
|
|
|
108
108
|
* keeps "<name> mode" and the app's own theme ("change the app theme").
|
|
109
109
|
*/
|
|
110
110
|
localUiCommands?: LocalUiCommandOptions;
|
|
111
|
+
/**
|
|
112
|
+
* Whether this product's finished turns feed the production latency
|
|
113
|
+
* histograms (BOFF-7801). On unless `false`.
|
|
114
|
+
*
|
|
115
|
+
* ★ Irreducible: whether a product's sessions are measured at all is that
|
|
116
|
+
* product's decision, and shared code cannot make it for it. The reports
|
|
117
|
+
* carry timings and coarse dimensions only (`turnTimingReport.ts`), but a
|
|
118
|
+
* product with its own reason not to send even those says so here.
|
|
119
|
+
*/
|
|
120
|
+
reportTurnTimings?: boolean;
|
|
111
121
|
}
|
|
112
122
|
export interface AssistantProductValue extends AssistantProductCapabilities {
|
|
113
123
|
/**
|
|
@@ -125,7 +135,7 @@ export interface AssistantProductProviderProps extends AssistantProductCapabilit
|
|
|
125
135
|
* Mount once, above the assistant. Everything below can ask what product it is
|
|
126
136
|
* running inside and what that product offers.
|
|
127
137
|
*/
|
|
128
|
-
export declare function AssistantProductProvider({ product, modes, describeCurrentPage, gatherPageContext, buildPrompt, reportTokenUsage, storageFolders, localUiCommands, children, }: AssistantProductProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
138
|
+
export declare function AssistantProductProvider({ product, modes, describeCurrentPage, gatherPageContext, buildPrompt, reportTokenUsage, storageFolders, localUiCommands, reportTurnTimings, children, }: AssistantProductProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
129
139
|
/** The product in force, or null when no provider is mounted. */
|
|
130
140
|
export declare function useAssistantProductOrNull(): AssistantProductValue | null;
|
|
131
141
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/product.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAA2D,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEhG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;;;;OAMG;IACH,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACtC;;;;;;;;OAQG;IACH,mBAAmB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAC1C;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,MAAM,WAAW,CAAC;IACtC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,CACZ,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,EACrB,gBAAgB,CAAC,EAAE,OAAO,EAC1B,QAAQ,CAAC,EAAE,OAAO,KACf,MAAM,CAAC;IACZ;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;KAC3C,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CAAC,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"product.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/product.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAA2D,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEhG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;;;;OAMG;IACH,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACtC;;;;;;;;OAQG;IACH,mBAAmB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAC1C;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,MAAM,WAAW,CAAC;IACtC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,CACZ,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,EACrB,gBAAgB,CAAC,EAAE,OAAO,EAC1B,QAAQ,CAAC,EAAE,OAAO,KACf,MAAM,CAAC;IACZ;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;KAC3C,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CAAC,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC;;;;;;;;OAQG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAsB,SAAQ,4BAA4B;IACzE;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAID,MAAM,WAAW,6BAA8B,SAAQ,4BAA4B;IACjF,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,OAAO,EACP,KAAK,EACL,mBAAmB,EACnB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,QAAQ,GACT,EAAE,6BAA6B,2CA4B/B;AAED,iEAAiE;AACjE,wBAAgB,yBAAyB,IAAI,qBAAqB,GAAG,IAAI,CAExE;AAID;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,IAAI,qBAAqB,CAE3D;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,SAAS,mBAAmB,EAAE,EACrC,IAAI,EAAE,MAAM,GAAG,SAAS,GACvB,mBAAmB,GAAG,SAAS,CAEjC;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,IAAI;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB,CAYA;AAWD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,GAAE,OAAc,GAAG,MAAM,GAAG,IAAI,CAqB3E"}
|
|
@@ -2,8 +2,8 @@ import { createContext as e, useContext as t, useEffect as n, useMemo as r, useS
|
|
|
2
2
|
import { jsx as a } from "react/jsx-runtime";
|
|
3
3
|
//#region src/shared/assistant/product.tsx
|
|
4
4
|
var o = e(null);
|
|
5
|
-
function s({ product: e, modes: t, describeCurrentPage: n, gatherPageContext: i, buildPrompt: s, reportTokenUsage: c, storageFolders: l, localUiCommands: u,
|
|
6
|
-
let
|
|
5
|
+
function s({ product: e, modes: t, describeCurrentPage: n, gatherPageContext: i, buildPrompt: s, reportTokenUsage: c, storageFolders: l, localUiCommands: u, reportTurnTimings: d, children: f }) {
|
|
6
|
+
let p = r(() => ({
|
|
7
7
|
product: e,
|
|
8
8
|
modes: t,
|
|
9
9
|
describeCurrentPage: n,
|
|
@@ -11,7 +11,8 @@ function s({ product: e, modes: t, describeCurrentPage: n, gatherPageContext: i,
|
|
|
11
11
|
buildPrompt: s,
|
|
12
12
|
reportTokenUsage: c,
|
|
13
13
|
storageFolders: l,
|
|
14
|
-
localUiCommands: u
|
|
14
|
+
localUiCommands: u,
|
|
15
|
+
reportTurnTimings: d
|
|
15
16
|
}), [
|
|
16
17
|
e,
|
|
17
18
|
t,
|
|
@@ -20,11 +21,12 @@ function s({ product: e, modes: t, describeCurrentPage: n, gatherPageContext: i,
|
|
|
20
21
|
s,
|
|
21
22
|
c,
|
|
22
23
|
l,
|
|
23
|
-
u
|
|
24
|
+
u,
|
|
25
|
+
d
|
|
24
26
|
]);
|
|
25
27
|
return /* @__PURE__ */ a(o.Provider, {
|
|
26
|
-
value:
|
|
27
|
-
children:
|
|
28
|
+
value: p,
|
|
29
|
+
children: f
|
|
28
30
|
});
|
|
29
31
|
}
|
|
30
32
|
function c() {
|
|
@@ -18,6 +18,12 @@
|
|
|
18
18
|
* accepted the panel took the turn: the question is on screen
|
|
19
19
|
* cleared the send-time checks passed (mode access, write consent)
|
|
20
20
|
* attemptStarted this attempt at a runtime began (again, on a retry)
|
|
21
|
+
* prewarmJoined the send is waiting on a first-keystroke pre-warm in its
|
|
22
|
+
* mode that is BOOTING a sandbox — marked as it joins one
|
|
23
|
+
* already booting, or as the warm it joined begins the boot
|
|
24
|
+
* bootAdopted this attempt found a boot under way and is waiting it
|
|
25
|
+
* out: a sandbox listed PROVISIONING/PENDING, or a service
|
|
26
|
+
* that answered "not up yet" (the `adopted` runtime)
|
|
21
27
|
* provisionStarted no reusable sandbox — making room for a new one starts here
|
|
22
28
|
* createRequested the new sandbox was requested (after releasing old ones)
|
|
23
29
|
* sandboxRunning the created sandbox is running (cold)
|
|
@@ -46,6 +52,12 @@
|
|
|
46
52
|
* ★ Filler is never output: the progress `content` is model output only
|
|
47
53
|
* (BOFF-7277) and the waiting copy is drawn by the bubble from the stage.
|
|
48
54
|
*
|
|
55
|
+
* ★ `prewarmJoined` and `bootAdopted` are marked the moment the wait is KNOWN,
|
|
56
|
+
* not once it pays off: the facts (`prewarm`, `runtime`) are only written
|
|
57
|
+
* when the wait ends, so a turn the person gives up on mid-wait would
|
|
58
|
+
* otherwise carry nothing to say it was waiting on a boot (BOFF-7801 review
|
|
59
|
+
* round 3). Once the facts are written, they are the answer.
|
|
60
|
+
*
|
|
49
61
|
* ★ A turn whose first attempt fails recoverably is retried under the SAME id.
|
|
50
62
|
* `restartAttempt` files the first attempt's marks under `attempts` so the
|
|
51
63
|
* second records its own — mixed attempts are not a timeline.
|
|
@@ -55,8 +67,13 @@
|
|
|
55
67
|
* coarse dimensions only: never message text, never tenant, user, workspace or
|
|
56
68
|
* conversation ids. Delivery is asynchronous, so a listener never runs inside
|
|
57
69
|
* the step it measures.
|
|
70
|
+
*
|
|
71
|
+
* ★ Anything that ACTS on a timeline (the production latency reporter,
|
|
72
|
+
* `turnTimingReporter.ts`) subscribes with `subscribeTurnTimelines`, not the
|
|
73
|
+
* window event: any script on the page can dispatch that event, so a listener
|
|
74
|
+
* on it can be fed invented timings. Only this module calls subscribers.
|
|
58
75
|
*/
|
|
59
|
-
export declare const TURN_MILESTONES: readonly ["speechEnded", "graceStarted", "graceEnded", "handedOver", "accepted", "cleared", "attemptStarted", "provisionStarted", "createRequested", "sandboxRunning", "serviceReady", "runtimeReady", "promptSent", "lastQuietPoll", "firstOutput", "firstText", "answerDone", "complete", "ttsStarted", "firstAudio"];
|
|
76
|
+
export declare const TURN_MILESTONES: readonly ["speechEnded", "graceStarted", "graceEnded", "handedOver", "accepted", "cleared", "attemptStarted", "prewarmJoined", "bootAdopted", "provisionStarted", "createRequested", "sandboxRunning", "serviceReady", "runtimeReady", "promptSent", "lastQuietPoll", "firstOutput", "firstText", "answerDone", "complete", "ttsStarted", "firstAudio"];
|
|
60
77
|
export type TurnMilestone = (typeof TURN_MILESTONES)[number];
|
|
61
78
|
/**
|
|
62
79
|
* How the runtime was found:
|
|
@@ -71,6 +88,9 @@ export type TurnMilestone = (typeof TURN_MILESTONES)[number];
|
|
|
71
88
|
* gives no signal at all — so `probed` can still hold a joined boot: read
|
|
72
89
|
* its `runtime` segment, not just the label
|
|
73
90
|
* - `cold`: a sandbox was created
|
|
91
|
+
*
|
|
92
|
+
* Written once the runtime is READY; while an attempt still waits out a boot
|
|
93
|
+
* it found, the `bootAdopted` mark says so.
|
|
74
94
|
*/
|
|
75
95
|
export type TurnRuntime = "warm" | "new-session" | "probed" | "adopted" | "cold";
|
|
76
96
|
/**
|
|
@@ -108,9 +128,13 @@ export interface TurnAttemptFacts {
|
|
|
108
128
|
cacheProofFailed?: boolean;
|
|
109
129
|
/**
|
|
110
130
|
* A first-keystroke pre-warm and this attempt: `hit` — it had finished and
|
|
111
|
-
* served it, `joined` — the send waited for it
|
|
131
|
+
* served it, `joined` — the send waited for it while it BOOTED a sandbox
|
|
132
|
+
* (created one, or waited out a boot it found) and it served it,
|
|
112
133
|
* `joinedFailed` — the send waited for it and it FAILED (the wait is in the
|
|
113
|
-
* attempt's time with nothing else to explain it).
|
|
134
|
+
* attempt's time with nothing else to explain it). A warm the send waited on
|
|
135
|
+
* that only probed a running sandbox is neither: the turn is a warm one.
|
|
136
|
+
* Written when the warm SETTLES; while the send still waits on its boot,
|
|
137
|
+
* the `prewarmJoined` mark says so.
|
|
114
138
|
*/
|
|
115
139
|
prewarm?: "hit" | "joined" | "joinedFailed";
|
|
116
140
|
}
|
|
@@ -131,6 +155,16 @@ export interface TurnTimeline extends TurnDimensions, TurnAttemptFacts {
|
|
|
131
155
|
export type VoiceTurnTiming = Partial<Record<"speechEnded" | "graceStarted" | "graceEnded" | "handedOver", number>>;
|
|
132
156
|
/** Announced on `window` with a copy of the timeline each time it changes. */
|
|
133
157
|
export declare const TURN_TIMELINE_EVENT = "burdenoff:assistant-turn-timeline";
|
|
158
|
+
/** Receives a copy of a timeline each time it changes. */
|
|
159
|
+
export type TurnTimelineListener = (timeline: TurnTimeline) => void;
|
|
160
|
+
/**
|
|
161
|
+
* Be told of every change to every turn, in the same asynchronous delivery as
|
|
162
|
+
* the window event. Each listener gets its own copy, and a listener that
|
|
163
|
+
* throws neither reaches the turn nor stops the other listeners.
|
|
164
|
+
*
|
|
165
|
+
* @returns Unsubscribe.
|
|
166
|
+
*/
|
|
167
|
+
export declare function subscribeTurnTimelines(listener: TurnTimelineListener): () => void;
|
|
134
168
|
export declare function turnClockMs(): number;
|
|
135
169
|
/** Coarse pointer = a finger. The split the latency report needs, not a device model. */
|
|
136
170
|
export declare function detectTurnDevice(): TurnDimensions["device"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turnTimeline.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/turnTimeline.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"turnTimeline.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/turnTimeline.ts"],"names":[],"mappings":"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"}
|