@burdenoff/fe-libs 2026.1004.7 → 2026.1005.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/shared/assistant/api.d.ts +18 -0
- package/dist/shared/assistant/api.d.ts.map +1 -1
- package/dist/shared/assistant/api.js +169 -147
- package/dist/shared/assistant/capabilities.d.ts +21 -0
- package/dist/shared/assistant/capabilities.d.ts.map +1 -1
- package/dist/shared/assistant/capabilities.js +11 -1
- package/dist/shared/assistant/index.d.ts +5 -0
- package/dist/shared/assistant/index.d.ts.map +1 -1
- package/dist/shared/assistant/liveDeltas.d.ts +76 -0
- package/dist/shared/assistant/liveDeltas.d.ts.map +1 -0
- package/dist/shared/assistant/liveDeltas.js +196 -0
- package/dist/shared/assistant/liveOverlay.d.ts +62 -0
- package/dist/shared/assistant/liveOverlay.d.ts.map +1 -0
- package/dist/shared/assistant/liveOverlay.js +64 -0
- package/dist/shared/assistant/snapshotPoller.d.ts +48 -0
- package/dist/shared/assistant/snapshotPoller.d.ts.map +1 -0
- package/dist/shared/assistant/snapshotPoller.js +58 -0
- package/dist/shared/assistant/turnStream.d.ts +71 -0
- package/dist/shared/assistant/turnStream.d.ts.map +1 -0
- package/dist/shared/assistant/turnStream.js +266 -0
- package/dist/shared/assistant/turnTimeline.d.ts +27 -2
- package/dist/shared/assistant/turnTimeline.d.ts.map +1 -1
- package/dist/shared/assistant/turnTimeline.js +17 -28
- package/dist/shared/assistant/types.d.ts +10 -0
- package/dist/shared/assistant/types.d.ts.map +1 -1
- package/dist/shared/assistant/ui/AssistantChatArea.d.ts.map +1 -1
- package/dist/shared/assistant/ui/AssistantChatArea.js +1049 -1008
- package/dist/shared/assistant/ui/AssistantMessageList.d.ts +2 -0
- package/dist/shared/assistant/ui/AssistantMessageList.d.ts.map +1 -1
- package/dist/shared/assistant/ui/AssistantMessageList.js +48 -32
- package/dist/shared/assistant/ui/useVoiceSession.d.ts.map +1 -1
- package/dist/shared/assistant/ui/useVoiceSession.js +96 -93
- package/dist/shared/assistant/voice/affirmations.d.ts +44 -0
- package/dist/shared/assistant/voice/affirmations.d.ts.map +1 -0
- package/dist/shared/assistant/voice/affirmations.js +238 -0
- package/dist/shared/assistant/voice/handsFree.d.ts +16 -3
- package/dist/shared/assistant/voice/handsFree.d.ts.map +1 -1
- package/dist/shared/assistant/voice/handsFree.js +43 -37
- package/dist/shared/assistant/voice/voiceSession.d.ts +2 -0
- package/dist/shared/assistant/voice/voiceSession.d.ts.map +1 -1
- package/dist/shared/assistant/voice/voiceSession.js +3 -1
- package/dist/shared-assistant.js +208 -203
- package/package.json +1 -1
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { LiveDeltaState } from './liveDeltas';
|
|
2
|
+
import { StreamAccess } from './types';
|
|
3
|
+
export type TurnStreamStatus = "minting" | "connecting" | "open" | "closed" | "unavailable";
|
|
4
|
+
export type WakeResult = "wake" | "idle" | "timeout" | "abort";
|
|
5
|
+
/** The slice of the browser `EventSource` this client uses. */
|
|
6
|
+
export interface EventSourceLike {
|
|
7
|
+
readonly readyState: number;
|
|
8
|
+
addEventListener(type: string, listener: (event: {
|
|
9
|
+
readonly data?: unknown;
|
|
10
|
+
}) => void): void;
|
|
11
|
+
close(): void;
|
|
12
|
+
}
|
|
13
|
+
/** The timeline marks the stream makes (`turnTimeline.ts`). */
|
|
14
|
+
export type TurnStreamMark = "streamOpen" | "streamIdle" | "streamRemint";
|
|
15
|
+
export interface TurnStreamOptions {
|
|
16
|
+
/** Mint a stream URL, or null when there is none. Never throws into here. */
|
|
17
|
+
mint: () => Promise<StreamAccess | null>;
|
|
18
|
+
/** Open a connection; null when the browser has no EventSource. */
|
|
19
|
+
createEventSource?: (url: string) => EventSourceLike | null;
|
|
20
|
+
mark?: (mark: TurnStreamMark, reason?: string) => void;
|
|
21
|
+
now?: () => number;
|
|
22
|
+
setTimer?: (run: () => void, ms: number) => unknown;
|
|
23
|
+
clearTimer?: (timer: unknown) => void;
|
|
24
|
+
/** Delays before each re-mint; its length is the cap (2 per turn). */
|
|
25
|
+
remintDelaysMs?: readonly number[];
|
|
26
|
+
/** Wake-triggered polls are at least this far apart. */
|
|
27
|
+
minWakeGapMs?: number;
|
|
28
|
+
}
|
|
29
|
+
export interface TurnStream {
|
|
30
|
+
readonly status: TurnStreamStatus;
|
|
31
|
+
/** An `open` with `subscribed: true` arrived during this turn. */
|
|
32
|
+
readonly reachedOpen: boolean;
|
|
33
|
+
/** The current connection's `open` carried `projection: 1`. */
|
|
34
|
+
readonly projection: boolean;
|
|
35
|
+
/** +1 per re-mint. */
|
|
36
|
+
readonly generation: number;
|
|
37
|
+
/** The reason of each re-mint, in order. */
|
|
38
|
+
readonly remintReasons: readonly string[];
|
|
39
|
+
/**
|
|
40
|
+
* Resolve when the stream says something worth polling for, or after `maxMs`.
|
|
41
|
+
* `idle` is the bridge's own end-of-turn: poll NOW. A wake that arrives with
|
|
42
|
+
* nobody waiting is remembered, so the next wait resolves at once.
|
|
43
|
+
*/
|
|
44
|
+
waitWake(maxMs: number, signal?: AbortSignal): Promise<WakeResult>;
|
|
45
|
+
readonly live: LiveDeltaState;
|
|
46
|
+
onLive(listener: () => void): () => void;
|
|
47
|
+
/**
|
|
48
|
+
* Called synchronously when the bridge's idle arrives. A listener that
|
|
49
|
+
* returns true has acted on it (the completion fast path started a poll), so
|
|
50
|
+
* the idle is not also remembered for the next `waitWake`.
|
|
51
|
+
*/
|
|
52
|
+
onIdle(listener: () => boolean): () => void;
|
|
53
|
+
/** Synchronous. Detach live listeners and stop reducing text. Idempotent. */
|
|
54
|
+
endLive(): void;
|
|
55
|
+
readonly liveEnded: boolean;
|
|
56
|
+
/** Tear everything down. Idempotent. */
|
|
57
|
+
close(): void;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* The debug override: `localStorage["burdenoff.assistant.transport"] = "poll"`
|
|
61
|
+
* forces polling for this browser — no mint, no stream — for a zero-cost A/B of
|
|
62
|
+
* the two transports. Absent by default; a storage that throws reads as absent.
|
|
63
|
+
*/
|
|
64
|
+
export declare const TRANSPORT_OVERRIDE_KEY = "burdenoff.assistant.transport";
|
|
65
|
+
export declare function transportForcedToPoll(): boolean;
|
|
66
|
+
/** Can this page open a turn stream at all, and has nobody switched it off? */
|
|
67
|
+
export declare function turnStreamAvailable(): boolean;
|
|
68
|
+
export declare const DEFAULT_REMINT_DELAYS_MS: readonly number[];
|
|
69
|
+
export declare const MIN_WAKE_GAP_MS = 250;
|
|
70
|
+
export declare function openTurnStream(options: TurnStreamOptions): TurnStream;
|
|
71
|
+
//# sourceMappingURL=turnStream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turnStream.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/turnStream.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
import { STREAM_MINT_BACKOFF_ERROR_MS as e, backOffStreamMint as t } from "./capabilities.js";
|
|
2
|
+
import { beginLiveGeneration as n, createLiveState as r, freezeLiveParts as i, reduceLiveFrame as a } from "./liveDeltas.js";
|
|
3
|
+
//#region src/shared/assistant/turnStream.ts
|
|
4
|
+
var o = 2, s = "burdenoff.assistant.transport";
|
|
5
|
+
function c() {
|
|
6
|
+
try {
|
|
7
|
+
return globalThis.localStorage?.getItem(s) === "poll";
|
|
8
|
+
} catch {
|
|
9
|
+
return !1;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
function l() {
|
|
13
|
+
return typeof EventSource < "u" && !c();
|
|
14
|
+
}
|
|
15
|
+
var u = [1e3, 5e3], d = 250, f = [
|
|
16
|
+
"open",
|
|
17
|
+
"message.updated",
|
|
18
|
+
"message.part.updated",
|
|
19
|
+
"message.part.delta",
|
|
20
|
+
"session.error",
|
|
21
|
+
"session.idle",
|
|
22
|
+
"stream.end",
|
|
23
|
+
"relay.closed"
|
|
24
|
+
];
|
|
25
|
+
function p(e) {
|
|
26
|
+
return typeof e == "object" && e && !Array.isArray(e) ? e : void 0;
|
|
27
|
+
}
|
|
28
|
+
function m(e) {
|
|
29
|
+
if (typeof e == "string") try {
|
|
30
|
+
return JSON.parse(e);
|
|
31
|
+
} catch {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
function h(e) {
|
|
36
|
+
return typeof EventSource > "u" ? null : new EventSource(e, { withCredentials: !0 });
|
|
37
|
+
}
|
|
38
|
+
function g(s) {
|
|
39
|
+
let c = s.now ?? Date.now, l = s.setTimer ?? ((e, t) => setTimeout(e, t)), d = s.clearTimer ?? ((e) => {
|
|
40
|
+
clearTimeout(e);
|
|
41
|
+
}), g = s.createEventSource ?? h, _ = s.remintDelaysMs ?? u, v = s.minWakeGapMs ?? 250, y = "minting", b = !1, x = !1, S = 0, C = [], w = !1, T = !1, E = r(), D = /* @__PURE__ */ new Set(), O = /* @__PURE__ */ new Set(), k = null, A = 0, j = -1, M = !1, N = null, P = null, F = null, I = -Infinity, L = (e, t) => {
|
|
42
|
+
try {
|
|
43
|
+
s.mark?.(e, t);
|
|
44
|
+
} catch {}
|
|
45
|
+
}, R = (e, t) => {
|
|
46
|
+
e.settled || (e.settled = !0, d(e.maxTimer), e.gapTimer !== null && d(e.gapTimer), e.signal && e.onAbort && e.signal.removeEventListener("abort", e.onAbort), F === e && (F = null), (t === "wake" || t === "idle") && (I = c()), e.resolve(t));
|
|
47
|
+
}, z = (e) => {
|
|
48
|
+
let t = F;
|
|
49
|
+
if (!t) {
|
|
50
|
+
P = e === "idle" || P === "idle" ? "idle" : "wake";
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
if (e === "idle") {
|
|
54
|
+
R(t, "idle");
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
let n = I + v - c();
|
|
58
|
+
if (n <= 0) {
|
|
59
|
+
R(t, "wake");
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
t.gapTimer === null && (t.gapTimer = l(() => {
|
|
63
|
+
t.gapTimer = null, R(t, "wake");
|
|
64
|
+
}, n));
|
|
65
|
+
}, B = () => {
|
|
66
|
+
if (!T) for (let e of [...D]) try {
|
|
67
|
+
e();
|
|
68
|
+
} catch {}
|
|
69
|
+
}, V = () => {
|
|
70
|
+
A += 1;
|
|
71
|
+
let e = k;
|
|
72
|
+
k = null;
|
|
73
|
+
try {
|
|
74
|
+
e?.close();
|
|
75
|
+
} catch {}
|
|
76
|
+
}, H = () => {
|
|
77
|
+
y = "unavailable", t(e, c());
|
|
78
|
+
}, U = () => {
|
|
79
|
+
y = "closed";
|
|
80
|
+
}, W = (e) => {
|
|
81
|
+
if (w) return;
|
|
82
|
+
if (C.length >= _.length) {
|
|
83
|
+
U();
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
let t = _[C.length] ?? 0;
|
|
87
|
+
C.push(e), y = "minting", N !== null && d(N), N = l(() => {
|
|
88
|
+
N = null, !w && (L("streamRemint", e), S += 1, E = n(E), J());
|
|
89
|
+
}, t);
|
|
90
|
+
}, G = (e) => {
|
|
91
|
+
let t = F !== null;
|
|
92
|
+
switch (V(), E = i(E), z("wake"), e) {
|
|
93
|
+
case "client-closed":
|
|
94
|
+
U();
|
|
95
|
+
return;
|
|
96
|
+
case "session-idle":
|
|
97
|
+
t ? W("session-idle") : (y = "closed", M = !0);
|
|
98
|
+
return;
|
|
99
|
+
default: W(e);
|
|
100
|
+
}
|
|
101
|
+
}, K = (e, t, n) => {
|
|
102
|
+
if (w || e !== A) return;
|
|
103
|
+
let r = m(n);
|
|
104
|
+
if (t === "open") {
|
|
105
|
+
let t = p(r);
|
|
106
|
+
if (!t) return;
|
|
107
|
+
if (t.subscribed === !0) {
|
|
108
|
+
y = "open", j = e, b = !0, x = typeof t.projection == "number" && t.projection >= 1, L("streamOpen");
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
G("not-subscribed");
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
if (y === "open") {
|
|
115
|
+
if (t === "relay.closed") {
|
|
116
|
+
G(String(p(r)?.reason ?? "relay-closed"));
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
if (t === "stream.end") {
|
|
120
|
+
G(`stream-end:${String(p(r)?.reason ?? "unknown")}`);
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
if (x && !T && (t === "message.updated" || t === "message.part.updated" || t === "message.part.delta")) {
|
|
124
|
+
let e = a(E, {
|
|
125
|
+
event: t,
|
|
126
|
+
data: r
|
|
127
|
+
});
|
|
128
|
+
e !== E && (E = e, B());
|
|
129
|
+
}
|
|
130
|
+
switch (t) {
|
|
131
|
+
case "message.updated":
|
|
132
|
+
z("wake");
|
|
133
|
+
return;
|
|
134
|
+
case "message.part.updated": {
|
|
135
|
+
let e = p(r);
|
|
136
|
+
if (!x) {
|
|
137
|
+
z("wake");
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
let t = p(e?.time)?.end !== void 0;
|
|
141
|
+
(e?.type === "tool" || e?.type === "text" && t) && z("wake");
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
case "session.error":
|
|
145
|
+
z("wake");
|
|
146
|
+
return;
|
|
147
|
+
case "session.idle": {
|
|
148
|
+
if (!x) {
|
|
149
|
+
z("wake");
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
L("streamIdle");
|
|
153
|
+
let e = !1;
|
|
154
|
+
for (let t of [...O]) try {
|
|
155
|
+
t() && (e = !0);
|
|
156
|
+
} catch {}
|
|
157
|
+
if (e) {
|
|
158
|
+
I = c();
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
z("idle");
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
default: return;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}, q = (e) => {
|
|
168
|
+
let t;
|
|
169
|
+
try {
|
|
170
|
+
t = g(e.url);
|
|
171
|
+
} catch {
|
|
172
|
+
t = null;
|
|
173
|
+
}
|
|
174
|
+
if (!t) {
|
|
175
|
+
H();
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
let n = t, r = A += 1;
|
|
179
|
+
k = n, y = "connecting";
|
|
180
|
+
for (let e of f) n.addEventListener(e, (t) => {
|
|
181
|
+
e === "open" && typeof t.data != "string" || K(r, e, t.data);
|
|
182
|
+
});
|
|
183
|
+
n.addEventListener("error", () => {
|
|
184
|
+
if (!(w || r !== A)) {
|
|
185
|
+
if (n.readyState === o && j !== r) {
|
|
186
|
+
V(), z("wake"), H();
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
G("error");
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
}, J = () => {
|
|
193
|
+
y = "minting";
|
|
194
|
+
let e = A;
|
|
195
|
+
s.mint().then((e) => e, () => null).then((t) => {
|
|
196
|
+
if (!(w || e !== A)) {
|
|
197
|
+
if (!t) {
|
|
198
|
+
H();
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
q(t);
|
|
202
|
+
}
|
|
203
|
+
});
|
|
204
|
+
};
|
|
205
|
+
return J(), {
|
|
206
|
+
get status() {
|
|
207
|
+
return y;
|
|
208
|
+
},
|
|
209
|
+
get reachedOpen() {
|
|
210
|
+
return b;
|
|
211
|
+
},
|
|
212
|
+
get projection() {
|
|
213
|
+
return x;
|
|
214
|
+
},
|
|
215
|
+
get generation() {
|
|
216
|
+
return S;
|
|
217
|
+
},
|
|
218
|
+
get remintReasons() {
|
|
219
|
+
return C;
|
|
220
|
+
},
|
|
221
|
+
get live() {
|
|
222
|
+
return E;
|
|
223
|
+
},
|
|
224
|
+
get liveEnded() {
|
|
225
|
+
return T;
|
|
226
|
+
},
|
|
227
|
+
waitWake(e, t) {
|
|
228
|
+
return new Promise((n) => {
|
|
229
|
+
if (t?.aborted) {
|
|
230
|
+
n("abort");
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
M && (M = !1, W("session-idle"));
|
|
234
|
+
let r = {
|
|
235
|
+
resolve: n,
|
|
236
|
+
maxTimer: null,
|
|
237
|
+
gapTimer: null,
|
|
238
|
+
signal: t,
|
|
239
|
+
onAbort: void 0,
|
|
240
|
+
settled: !1
|
|
241
|
+
};
|
|
242
|
+
r.maxTimer = l(() => R(r, "timeout"), e), t && (r.onAbort = () => R(r, "abort"), t.addEventListener("abort", r.onAbort)), F = r;
|
|
243
|
+
let i = P;
|
|
244
|
+
P = null, i && z(i);
|
|
245
|
+
});
|
|
246
|
+
},
|
|
247
|
+
onLive(e) {
|
|
248
|
+
return T ? () => void 0 : (D.add(e), () => {
|
|
249
|
+
D.delete(e);
|
|
250
|
+
});
|
|
251
|
+
},
|
|
252
|
+
onIdle(e) {
|
|
253
|
+
return O.add(e), () => {
|
|
254
|
+
O.delete(e);
|
|
255
|
+
};
|
|
256
|
+
},
|
|
257
|
+
endLive() {
|
|
258
|
+
T || (T = !0, D.clear());
|
|
259
|
+
},
|
|
260
|
+
close() {
|
|
261
|
+
w || (w = !0, T = !0, D.clear(), O.clear(), N !== null && (d(N), N = null), V(), F && R(F, "abort"), y !== "unavailable" && (y = "closed"));
|
|
262
|
+
}
|
|
263
|
+
};
|
|
264
|
+
}
|
|
265
|
+
//#endregion
|
|
266
|
+
export { u as DEFAULT_REMINT_DELAYS_MS, d as MIN_WAKE_GAP_MS, s as TRANSPORT_OVERRIDE_KEY, g as openTurnStream, c as transportForcedToPoll, l as turnStreamAvailable };
|
|
@@ -32,12 +32,19 @@
|
|
|
32
32
|
* promptSent the sandbox accepted the prompt
|
|
33
33
|
* lastQuietPoll the last poll that saw nothing — with firstOutput, the
|
|
34
34
|
* UPPER bound of how late polling noticed the output
|
|
35
|
-
*
|
|
35
|
+
* streamOpen the turn stream said `open` (BOFF-7914 S3); it can precede
|
|
36
|
+
* `promptSent`, because the mint runs beside the prompt
|
|
37
|
+
* streamRemint the stream was minted again after it ended; the FIRST
|
|
38
|
+
* re-mint (the reasons are the `remintReasons` of the stream)
|
|
39
|
+
* firstDelta the first live text of this turn that could be shown
|
|
40
|
+
* firstOutput the first poll — or live render — that had anything to
|
|
41
|
+
* show (a tool line too)
|
|
36
42
|
* firstText the first poll that saw answer TEXT — prose not followed
|
|
37
43
|
* by a tool call, confirmed when the turn completes, so
|
|
38
44
|
* pre-tool narration does not count. In modes whose
|
|
39
45
|
* narration IS the answer (BigConsole's build log), the
|
|
40
46
|
* first narration: group reports by `mode`
|
|
47
|
+
* streamIdle the bridge said the turn is idle (stream turns only)
|
|
41
48
|
* answerDone the poll that saw the answer complete
|
|
42
49
|
* complete the turn ended (after artifacts and the credit report)
|
|
43
50
|
* speechQueued the answer was handed to the speech feed (BOFF-8062 C1):
|
|
@@ -78,7 +85,7 @@
|
|
|
78
85
|
* window event: any script on the page can dispatch that event, so a listener
|
|
79
86
|
* on it can be fed invented timings. Only this module calls subscribers.
|
|
80
87
|
*/
|
|
81
|
-
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", "speechQueued", "ttsStarted", "firstAudio", "audioEnded"];
|
|
88
|
+
export declare const TURN_MILESTONES: readonly ["speechEnded", "graceStarted", "graceEnded", "handedOver", "accepted", "cleared", "attemptStarted", "prewarmJoined", "bootAdopted", "provisionStarted", "createRequested", "sandboxRunning", "serviceReady", "runtimeReady", "promptSent", "lastQuietPoll", "streamOpen", "streamRemint", "firstDelta", "firstOutput", "firstText", "streamIdle", "answerDone", "complete", "speechQueued", "ttsStarted", "firstAudio", "audioEnded"];
|
|
82
89
|
export type TurnMilestone = (typeof TURN_MILESTONES)[number];
|
|
83
90
|
/**
|
|
84
91
|
* How the runtime was found:
|
|
@@ -145,6 +152,16 @@ export interface TurnAttemptFacts {
|
|
|
145
152
|
* the `prewarmJoined` mark says so.
|
|
146
153
|
*/
|
|
147
154
|
prewarm?: "hit" | "joined" | "joinedFailed";
|
|
155
|
+
/**
|
|
156
|
+
* BOFF-7914 S3: how this attempt learnt about the reply — `sse` when the turn
|
|
157
|
+
* stream reached `open`, else `poll`. Timeline-only; the production latency
|
|
158
|
+
* report builds from an allowlist and does not carry it (until S0b).
|
|
159
|
+
*/
|
|
160
|
+
transport?: "sse" | "poll";
|
|
161
|
+
/** How much of the text the stream carried: all of it, some, or none. */
|
|
162
|
+
live?: "full" | "partial" | "none";
|
|
163
|
+
/** The session: `reused`, `created` (new) or `preopened` (BOFF-8015). */
|
|
164
|
+
session?: "reused" | "created" | "preopened";
|
|
148
165
|
}
|
|
149
166
|
export interface TurnAttempt extends TurnAttemptFacts {
|
|
150
167
|
at: Partial<Record<TurnMilestone, number>>;
|
|
@@ -265,6 +282,14 @@ export declare const TURN_SEGMENTS: readonly [{
|
|
|
265
282
|
readonly name: "finish";
|
|
266
283
|
readonly from: "firstOutput";
|
|
267
284
|
readonly to: "answerDone";
|
|
285
|
+
}, {
|
|
286
|
+
readonly name: "deltaToVisible";
|
|
287
|
+
readonly from: "firstDelta";
|
|
288
|
+
readonly to: "firstOutput";
|
|
289
|
+
}, {
|
|
290
|
+
readonly name: "wakeLag";
|
|
291
|
+
readonly from: "streamIdle";
|
|
292
|
+
readonly to: "answerDone";
|
|
268
293
|
}, {
|
|
269
294
|
readonly name: "post";
|
|
270
295
|
readonly from: "answerDone";
|
|
@@ -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":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsFG;AAEH,eAAO,MAAM,eAAe,ibA6BlB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAuB7D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,WAAW,GACnB,MAAM,GACN,WAAW,GACX,aAAa,GACb,QAAQ,GACR,SAAS,GACT,MAAM,CAAC;AAEX;;;;;;;;;GASG;AACH,MAAM,MAAM,mBAAmB,GAC3B,UAAU,GACV,UAAU,GACV,SAAS,GACT,QAAQ,GACR,SAAS,CAAC;AAEd,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;IACxC,sEAAsE;IACtE,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,kCAAkC;AAClC,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,mEAAmE;IACnE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,cAAc,CAAC;IAC5C;;;;OAIG;IACH,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAC3B,yEAAyE;IACzE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;IACnC,yEAAyE;IACzE,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;CAC9C;AAED,MAAM,WAAW,WAAY,SAAQ,gBAAgB;IACnD,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;IAC3C,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAa,SAAQ,cAAc,EAAE,gBAAgB;IACpE,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;IAC3C,wDAAwD;IACxD,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;AAED,kFAAkF;AAClF,MAAM,MAAM,eAAe,GAAG,OAAO,CACnC,MAAM,CAAC,aAAa,GAAG,cAAc,GAAG,YAAY,GAAG,YAAY,EAAE,MAAM,CAAC,CAC7E,CAAC;AAEF,8EAA8E;AAC9E,eAAO,MAAM,mBAAmB,sCAAsC,CAAC;AAUvE,0DAA0D;AAC1D,MAAM,MAAM,oBAAoB,GAAG,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;AAIpE;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,IAAI,CAKjF;AAED,wBAAgB,WAAW,IAAI,MAAM,CAQpC;AAED,yFAAyF;AACzF,wBAAgB,gBAAgB,IAAI,cAAc,CAAC,QAAQ,CAAC,CAQ3D;AA6CD;;;;;;GAMG;AACH,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,cAAc,EAC1B,OAAO,CAAC,EAAE,eAAe,GACxB,IAAI,CAgBN;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CACtB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,aAAa,EACxB,EAAE,GAAE,MAAsB,GACzB,IAAI,CAKN;AAED,kFAAkF;AAClF,wBAAgB,YAAY,CAC1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,GACtD,IAAI,CA+CN;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,EAAE,GAAE,MAAsB,GACzB,IAAI,CA+BN;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAGrE;AAED,uDAAuD;AACvD,wBAAgB,mBAAmB,IAAI,YAAY,EAAE,CAEpD;AAED,kBAAkB;AAClB,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyCvB,CAAC;AAEJ,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;AAErE;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,GACjC,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAS1C;AAED,MAAM,WAAW,YAAY;IAC3B,CAAC,EAAE,MAAM,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf,sFAAsF;IACtF,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAOD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,GAAG,SAAS,CAYvE;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAEhE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,SAAS,YAAY,EAAE,EAClC,OAAO,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,MAAM,EAC3C,OAAO,GAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,OAA0B,GAC9D,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC,CA6BhE"}
|
|
@@ -1,30 +1,5 @@
|
|
|
1
1
|
//#region src/shared/assistant/turnTimeline.ts
|
|
2
|
-
var e = [
|
|
3
|
-
"speechEnded",
|
|
4
|
-
"graceStarted",
|
|
5
|
-
"graceEnded",
|
|
6
|
-
"handedOver",
|
|
7
|
-
"accepted",
|
|
8
|
-
"cleared",
|
|
9
|
-
"attemptStarted",
|
|
10
|
-
"prewarmJoined",
|
|
11
|
-
"bootAdopted",
|
|
12
|
-
"provisionStarted",
|
|
13
|
-
"createRequested",
|
|
14
|
-
"sandboxRunning",
|
|
15
|
-
"serviceReady",
|
|
16
|
-
"runtimeReady",
|
|
17
|
-
"promptSent",
|
|
18
|
-
"lastQuietPoll",
|
|
19
|
-
"firstOutput",
|
|
20
|
-
"firstText",
|
|
21
|
-
"answerDone",
|
|
22
|
-
"complete",
|
|
23
|
-
"speechQueued",
|
|
24
|
-
"ttsStarted",
|
|
25
|
-
"firstAudio",
|
|
26
|
-
"audioEnded"
|
|
27
|
-
], t = [
|
|
2
|
+
var e = /* @__PURE__ */ "speechEnded.graceStarted.graceEnded.handedOver.accepted.cleared.attemptStarted.prewarmJoined.bootAdopted.provisionStarted.createRequested.sandboxRunning.serviceReady.runtimeReady.promptSent.lastQuietPoll.streamOpen.streamRemint.firstDelta.firstOutput.firstText.streamIdle.answerDone.complete.speechQueued.ttsStarted.firstAudio.audioEnded".split("."), t = [
|
|
28
3
|
"attemptStarted",
|
|
29
4
|
"prewarmJoined",
|
|
30
5
|
"bootAdopted",
|
|
@@ -35,8 +10,12 @@ var e = [
|
|
|
35
10
|
"runtimeReady",
|
|
36
11
|
"promptSent",
|
|
37
12
|
"lastQuietPoll",
|
|
13
|
+
"streamOpen",
|
|
14
|
+
"streamRemint",
|
|
15
|
+
"firstDelta",
|
|
38
16
|
"firstOutput",
|
|
39
17
|
"firstText",
|
|
18
|
+
"streamIdle",
|
|
40
19
|
"answerDone"
|
|
41
20
|
], n = "burdenoff:assistant-turn-timeline", r = 50, i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Set();
|
|
42
21
|
function o(e) {
|
|
@@ -105,7 +84,7 @@ function p(e, t) {
|
|
|
105
84
|
let n = i.get(e);
|
|
106
85
|
if (!n) return;
|
|
107
86
|
let r = !1;
|
|
108
|
-
t.runtime !== void 0 && n.runtime === void 0 && (n.runtime = t.runtime, r = !0), t.usedTools !== void 0 && n.usedTools === void 0 && (n.usedTools = t.usedTools, r = !0), t.deadSandboxProbe !== void 0 && n.deadSandboxProbe === void 0 && (n.deadSandboxProbe = t.deadSandboxProbe, r = !0), t.cacheProofFailed !== void 0 && n.cacheProofFailed === void 0 && (n.cacheProofFailed = t.cacheProofFailed, r = !0), t.prewarm !== void 0 && n.prewarm === void 0 && (n.prewarm = t.prewarm, r = !0), t.outcome !== void 0 && n.outcome === void 0 && (n.outcome = t.outcome, r = !0), r && u(n);
|
|
87
|
+
t.runtime !== void 0 && n.runtime === void 0 && (n.runtime = t.runtime, r = !0), t.usedTools !== void 0 && n.usedTools === void 0 && (n.usedTools = t.usedTools, r = !0), t.deadSandboxProbe !== void 0 && n.deadSandboxProbe === void 0 && (n.deadSandboxProbe = t.deadSandboxProbe, r = !0), t.cacheProofFailed !== void 0 && n.cacheProofFailed === void 0 && (n.cacheProofFailed = t.cacheProofFailed, r = !0), t.prewarm !== void 0 && n.prewarm === void 0 && (n.prewarm = t.prewarm, r = !0), t.transport !== void 0 && n.transport === void 0 && (n.transport = t.transport, r = !0), t.live !== void 0 && n.live === void 0 && (n.live = t.live, r = !0), t.session !== void 0 && n.session === void 0 && (n.session = t.session, r = !0), t.outcome !== void 0 && n.outcome === void 0 && (n.outcome = t.outcome, r = !0), r && u(n);
|
|
109
88
|
}
|
|
110
89
|
function m(e, n = s()) {
|
|
111
90
|
let r = i.get(e);
|
|
@@ -118,7 +97,7 @@ function m(e, n = s()) {
|
|
|
118
97
|
let t = r.at[e];
|
|
119
98
|
t !== void 0 && (a.at[e] = t, delete r.at[e]);
|
|
120
99
|
}
|
|
121
|
-
r.runtime !== void 0 && (a.runtime = r.runtime), r.usedTools !== void 0 && (a.usedTools = r.usedTools), r.deadSandboxProbe !== void 0 && (a.deadSandboxProbe = r.deadSandboxProbe), r.cacheProofFailed !== void 0 && (a.cacheProofFailed = r.cacheProofFailed), r.prewarm !== void 0 && (a.prewarm = r.prewarm), delete r.runtime, delete r.usedTools, delete r.deadSandboxProbe, delete r.cacheProofFailed, delete r.prewarm, r.attempts = [...r.attempts ?? [], a], r.retried = !0, u(r);
|
|
100
|
+
r.runtime !== void 0 && (a.runtime = r.runtime), r.usedTools !== void 0 && (a.usedTools = r.usedTools), r.deadSandboxProbe !== void 0 && (a.deadSandboxProbe = r.deadSandboxProbe), r.cacheProofFailed !== void 0 && (a.cacheProofFailed = r.cacheProofFailed), r.prewarm !== void 0 && (a.prewarm = r.prewarm), r.transport !== void 0 && (a.transport = r.transport), r.live !== void 0 && (a.live = r.live), r.session !== void 0 && (a.session = r.session), delete r.transport, delete r.live, delete r.session, delete r.runtime, delete r.usedTools, delete r.deadSandboxProbe, delete r.cacheProofFailed, delete r.prewarm, r.attempts = [...r.attempts ?? [], a], r.retried = !0, u(r);
|
|
122
101
|
}
|
|
123
102
|
function h(e) {
|
|
124
103
|
let t = i.get(e);
|
|
@@ -201,6 +180,16 @@ var v = [
|
|
|
201
180
|
from: "firstOutput",
|
|
202
181
|
to: "answerDone"
|
|
203
182
|
},
|
|
183
|
+
{
|
|
184
|
+
name: "deltaToVisible",
|
|
185
|
+
from: "firstDelta",
|
|
186
|
+
to: "firstOutput"
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
name: "wakeLag",
|
|
190
|
+
from: "streamIdle",
|
|
191
|
+
to: "answerDone"
|
|
192
|
+
},
|
|
204
193
|
{
|
|
205
194
|
name: "post",
|
|
206
195
|
from: "answerDone",
|
|
@@ -55,6 +55,16 @@ export interface AssistantSandboxAuthContext {
|
|
|
55
55
|
}
|
|
56
56
|
export interface AssistantRawMessagePart {
|
|
57
57
|
type?: string;
|
|
58
|
+
/**
|
|
59
|
+
* opencode's part id and time, passed through by the bridge. Optional: the
|
|
60
|
+
* stream merge (`applyLiveDeltas`) matches a live text part to the poll's copy
|
|
61
|
+
* by `id`, and a poll that carries none simply has no match.
|
|
62
|
+
*/
|
|
63
|
+
id?: string;
|
|
64
|
+
time?: {
|
|
65
|
+
start?: number;
|
|
66
|
+
end?: number;
|
|
67
|
+
};
|
|
58
68
|
text?: string;
|
|
59
69
|
tool?: string;
|
|
60
70
|
state?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantChatArea.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantChatArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,EAAE,EACR,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"AssistantChatArea.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantChatArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,EAAE,EACR,MAAM,OAAO,CAAC;AAkQf,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AA6KvE;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;;;;;;OAYG;IACH,WAAW,CAAC,EAAE,oBAAoB,CAAC;CACpC;AAED,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CAu3LxD,CAAC"}
|