@stigmer/react 3.0.8-dev.20260613041848 → 3.0.8-dev.20260613051837
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/execution/ExecutionProgress.d.ts.map +1 -1
- package/execution/ExecutionProgress.js +5 -1
- package/execution/ExecutionProgress.js.map +1 -1
- package/execution/MessageThread.d.ts +32 -3
- package/execution/MessageThread.d.ts.map +1 -1
- package/execution/MessageThread.js +59 -10
- package/execution/MessageThread.js.map +1 -1
- package/execution/useExecutionStream.d.ts +27 -0
- package/execution/useExecutionStream.d.ts.map +1 -1
- package/execution/useExecutionStream.js +48 -5
- package/execution/useExecutionStream.js.map +1 -1
- package/internal/VirtualizedThread.d.ts +3 -1
- package/internal/VirtualizedThread.d.ts.map +1 -1
- package/internal/VirtualizedThread.js +4 -2
- package/internal/VirtualizedThread.js.map +1 -1
- package/internal/store/conversation-store.d.ts +22 -0
- package/internal/store/conversation-store.d.ts.map +1 -1
- package/internal/store/conversation-store.js +43 -2
- package/internal/store/conversation-store.js.map +1 -1
- package/internal/stream-controller.d.ts +46 -2
- package/internal/stream-controller.d.ts.map +1 -1
- package/internal/stream-controller.js +95 -4
- package/internal/stream-controller.js.map +1 -1
- package/internal/useFetch.d.ts +7 -0
- package/internal/useFetch.d.ts.map +1 -1
- package/internal/useFetch.js +21 -0
- package/internal/useFetch.js.map +1 -1
- package/package.json +4 -4
- package/session/SessionViewer.js +23 -1
- package/session/SessionViewer.js.map +1 -1
- package/session/useSessionConversation.d.ts +34 -3
- package/session/useSessionConversation.d.ts.map +1 -1
- package/session/useSessionConversation.js +73 -10
- package/session/useSessionConversation.js.map +1 -1
- package/session/useSessionExecutions.d.ts +17 -1
- package/session/useSessionExecutions.d.ts.map +1 -1
- package/session/useSessionExecutions.js +6 -2
- package/session/useSessionExecutions.js.map +1 -1
- package/src/execution/ExecutionProgress.tsx +12 -0
- package/src/execution/MessageThread.tsx +174 -5
- package/src/execution/__tests__/MessageThread.test.tsx +64 -0
- package/src/execution/__tests__/useExecutionStream.test.tsx +95 -0
- package/src/execution/useExecutionStream.ts +80 -4
- package/src/internal/VirtualizedThread.tsx +7 -1
- package/src/internal/__tests__/stream-controller.test.ts +165 -10
- package/src/internal/__tests__/useFetch.test.tsx +59 -0
- package/src/internal/store/__tests__/conversation-store.test.ts +61 -0
- package/src/internal/store/conversation-store.ts +46 -3
- package/src/internal/stream-controller.ts +123 -3
- package/src/internal/useFetch.ts +26 -0
- package/src/session/SessionViewer.tsx +62 -0
- package/src/session/__tests__/useSessionConversation.test.tsx +53 -0
- package/src/session/useSessionConversation.ts +113 -14
- package/src/session/useSessionExecutions.ts +23 -1
- package/styles.css +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionProgress.d.ts","sourceRoot":"","sources":["../../src/execution/ExecutionProgress.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6DAA6D,CAAC;AAKlG,2CAA2C;AAC3C,MAAM,WAAW,sBAAsB;IACrC,wEAAwE;IACxE,QAAQ,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IAC1C,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,SAAS,EACT,SAAS,GACV,EAAE,sBAAsB,
|
|
1
|
+
{"version":3,"file":"ExecutionProgress.d.ts","sourceRoot":"","sources":["../../src/execution/ExecutionProgress.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6DAA6D,CAAC;AAKlG,2CAA2C;AAC3C,MAAM,WAAW,sBAAsB;IACrC,wEAAwE;IACxE,QAAQ,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IAC1C,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,SAAS,EACT,SAAS,GACV,EAAE,sBAAsB,kDA8BxB"}
|
|
@@ -34,6 +34,10 @@ export function ExecutionProgress({ execution, className, }) {
|
|
|
34
34
|
if (phase === undefined)
|
|
35
35
|
return null;
|
|
36
36
|
const todos = execution.status?.todos;
|
|
37
|
-
|
|
37
|
+
// Populated by the server only on EXECUTION_FAILED — surface it next to the
|
|
38
|
+
// badge so this widget explains a failure rather than showing a bare phase
|
|
39
|
+
// (consistent with the failure reason in the message thread).
|
|
40
|
+
const error = execution.status?.error;
|
|
41
|
+
return (_jsxs("div", { className: cn("flex flex-col gap-2", className), role: "region", "aria-label": "Execution progress", children: [_jsx(ExecutionPhaseBadge, { phase: phase }), error && (_jsx("p", { role: "alert", className: "text-xs whitespace-pre-wrap break-words text-destructive", children: error })), todos && _jsx(TodoList, { todos: todos })] }));
|
|
38
42
|
}
|
|
39
43
|
//# sourceMappingURL=ExecutionProgress.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionProgress.js","sourceRoot":"","sources":["../../src/execution/ExecutionProgress.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAUtC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,SAAS,EACT,SAAS,GACc;IACvB,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;IACtC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAErC,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;IAEtC,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC,EAC/C,IAAI,EAAC,QAAQ,gBACF,oBAAoB,aAE/B,KAAC,mBAAmB,IAAC,KAAK,EAAE,KAAK,GAAI,EACpC,KAAK,IAAI,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI,IAChC,CACP,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"ExecutionProgress.js","sourceRoot":"","sources":["../../src/execution/ExecutionProgress.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAUtC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,SAAS,EACT,SAAS,GACc;IACvB,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;IACtC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAErC,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;IACtC,4EAA4E;IAC5E,2EAA2E;IAC3E,8DAA8D;IAC9D,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;IAEtC,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC,EAC/C,IAAI,EAAC,QAAQ,gBACF,oBAAoB,aAE/B,KAAC,mBAAmB,IAAC,KAAK,EAAE,KAAK,GAAI,EACpC,KAAK,IAAI,CACR,YACE,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,0DAA0D,YAEnE,KAAK,GACJ,CACL,EACA,KAAK,IAAI,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI,IAChC,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -24,6 +24,27 @@ export interface MessageThreadProps {
|
|
|
24
24
|
* first snapshot.
|
|
25
25
|
*/
|
|
26
26
|
readonly pendingUserMessage?: string | null;
|
|
27
|
+
/**
|
|
28
|
+
* Marks the pending user message as failed-to-send. The optimistic
|
|
29
|
+
* bubble renders an inline "Couldn't send — Retry" affordance instead
|
|
30
|
+
* of the sending indicator, so a failed follow-up never silently
|
|
31
|
+
* vanishes. Pair with {@link onRetrySend}.
|
|
32
|
+
*
|
|
33
|
+
* @default false
|
|
34
|
+
*/
|
|
35
|
+
readonly pendingMessageFailed?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Retry handler for a failed pending message. Wired to the inline
|
|
38
|
+
* "Retry" control when {@link pendingMessageFailed} is `true`.
|
|
39
|
+
*/
|
|
40
|
+
readonly onRetrySend?: () => void;
|
|
41
|
+
/**
|
|
42
|
+
* Retry handler for a terminal-failed execution that exposed a server
|
|
43
|
+
* error reason. Receives the originating message; the consumer typically
|
|
44
|
+
* resends it as a new execution. When omitted, no Retry control is shown
|
|
45
|
+
* beside the surfaced failure reason.
|
|
46
|
+
*/
|
|
47
|
+
readonly onRetryExecution?: (message: string) => void;
|
|
27
48
|
/** Additional CSS class names for the root container. */
|
|
28
49
|
readonly className?: string;
|
|
29
50
|
/**
|
|
@@ -138,6 +159,7 @@ export type ThreadItem = {
|
|
|
138
159
|
readonly message: AgentMessage;
|
|
139
160
|
readonly key: string;
|
|
140
161
|
readonly isPending?: boolean;
|
|
162
|
+
readonly isFailed?: boolean;
|
|
141
163
|
} | {
|
|
142
164
|
readonly kind: "tool-group";
|
|
143
165
|
readonly toolCalls: readonly ToolCall[];
|
|
@@ -151,6 +173,11 @@ export type ThreadItem = {
|
|
|
151
173
|
readonly kind: "phase-badge";
|
|
152
174
|
readonly phase: ExecutionPhase;
|
|
153
175
|
readonly key: string;
|
|
176
|
+
} | {
|
|
177
|
+
readonly kind: "execution-error";
|
|
178
|
+
readonly error: string;
|
|
179
|
+
readonly retryMessage?: string;
|
|
180
|
+
readonly key: string;
|
|
154
181
|
} | {
|
|
155
182
|
readonly kind: "approval-request";
|
|
156
183
|
readonly pendingApproval: PendingApproval;
|
|
@@ -179,7 +206,7 @@ export type ThreadItem = {
|
|
|
179
206
|
*
|
|
180
207
|
* @internal Exported for testing — not part of the public API.
|
|
181
208
|
*/
|
|
182
|
-
export declare function buildThreadItems(executions: readonly AgentExecution[], activeStreamExecution: AgentExecution | null | undefined, pendingUserMessage: string | null | undefined, includeApprovals: boolean, workspaceEntries: readonly WorkspaceEntry[] | undefined, summarizationEvents?: readonly SummarizationEventView[]): ThreadItem[];
|
|
209
|
+
export declare function buildThreadItems(executions: readonly AgentExecution[], activeStreamExecution: AgentExecution | null | undefined, pendingUserMessage: string | null | undefined, includeApprovals: boolean, workspaceEntries: readonly WorkspaceEntry[] | undefined, summarizationEvents?: readonly SummarizationEventView[], pendingMessageFailed?: boolean): ThreadItem[];
|
|
183
210
|
/**
|
|
184
211
|
* Renders a continuous conversation thread from one or more
|
|
185
212
|
* {@link AgentExecution} snapshots.
|
|
@@ -203,7 +230,7 @@ export declare function buildThreadItems(executions: readonly AgentExecution[],
|
|
|
203
230
|
* />
|
|
204
231
|
* ```
|
|
205
232
|
*/
|
|
206
|
-
export declare function MessageThread({ executions, activeStreamExecution, pendingUserMessage, className, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, workspaceEntries, onFilePathClick, sandboxWorkspaceRoot, summarizationEvents, virtualized, onBuildFromPlan, org, planActionsDisabled, centerContent, }: MessageThreadProps): import("react/jsx-runtime").JSX.Element;
|
|
233
|
+
export declare function MessageThread({ executions, activeStreamExecution, pendingUserMessage, pendingMessageFailed, onRetrySend, onRetryExecution, className, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, workspaceEntries, onFilePathClick, sandboxWorkspaceRoot, summarizationEvents, virtualized, onBuildFromPlan, org, planActionsDisabled, centerContent, }: MessageThreadProps): import("react/jsx-runtime").JSX.Element;
|
|
207
234
|
/**
|
|
208
235
|
* Props for {@link ThreadItemRenderer}.
|
|
209
236
|
*
|
|
@@ -218,6 +245,8 @@ export interface ThreadItemRendererProps {
|
|
|
218
245
|
readonly onBuildFromPlan?: () => void;
|
|
219
246
|
readonly org?: string;
|
|
220
247
|
readonly planActionsDisabled?: boolean;
|
|
248
|
+
readonly onRetrySend?: () => void;
|
|
249
|
+
readonly onRetryExecution?: (message: string) => void;
|
|
221
250
|
}
|
|
222
251
|
/**
|
|
223
252
|
* Renders a single thread item by discriminated `kind`. Used by both
|
|
@@ -230,5 +259,5 @@ export interface ThreadItemRendererProps {
|
|
|
230
259
|
* @internal Exported for internal use by `VirtualizedThread` — not
|
|
231
260
|
* part of the public API.
|
|
232
261
|
*/
|
|
233
|
-
export declare function ThreadItemRenderer({ item, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, onBuildFromPlan, org, planActionsDisabled, }: ThreadItemRendererProps): import("react/jsx-runtime").JSX.Element;
|
|
262
|
+
export declare function ThreadItemRenderer({ item, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, onBuildFromPlan, org, planActionsDisabled, onRetrySend, onRetryExecution, }: ThreadItemRendererProps): import("react/jsx-runtime").JSX.Element;
|
|
234
263
|
//# sourceMappingURL=MessageThread.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageThread.d.ts","sourceRoot":"","sources":["../../src/execution/MessageThread.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6DAA6D,CAAC;AAClG,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,iEAAiE,CAAC;AAE9G,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kEAAkE,CAAC;AAC1G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kEAAkE,CAAC;AACxG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kEAAkE,CAAC;AAC1G,OAAO,EACL,cAAc,EACd,cAAc,EAGf,MAAM,8DAA8D,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4DAA4D,CAAC;AAajG,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAGjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAa/D,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,mDAAmD;IACnD,QAAQ,CAAC,UAAU,EAAE,SAAS,cAAc,EAAE,CAAC;IAC/C;;;;OAIG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACvD;;;;;OAKG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,KAAK,MAAM,CAAC;IAC5E;;;;;OAKG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAC1B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE,MAAM,KACb,IAAI,CAAC;IACV;;;;OAIG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrD;;;;;;;OAOG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IACtD;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,CACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,kBAAkB,KACzB,IAAI,CAAC;IACV;;;;;;;OAOG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACvC;;;;;;OAMG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACjE;;;;;;;OAOG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IACtC;;;;OAIG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"MessageThread.d.ts","sourceRoot":"","sources":["../../src/execution/MessageThread.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { lazy, memo, Suspense, useCallback, useMemo } from "react";
|
|
3
|
+
import { lazy, memo, Suspense, useCallback, useMemo, useState } from "react";
|
|
4
4
|
import { create } from "@bufbuild/protobuf";
|
|
5
5
|
import { AgentMessageSchema } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/message_pb";
|
|
6
6
|
import { ExecutionPhase, InteractionMode, MessageType, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
|
|
@@ -40,7 +40,7 @@ function hasAiMessages(execution) {
|
|
|
40
40
|
*
|
|
41
41
|
* @internal Exported for testing — not part of the public API.
|
|
42
42
|
*/
|
|
43
|
-
export function buildThreadItems(executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents) {
|
|
43
|
+
export function buildThreadItems(executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents, pendingMessageFailed = false) {
|
|
44
44
|
const items = [];
|
|
45
45
|
const allExecutions = activeStreamExecution
|
|
46
46
|
? [...executions, activeStreamExecution]
|
|
@@ -191,6 +191,20 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
|
|
|
191
191
|
phase: lastPhase,
|
|
192
192
|
key: `phase-${lastPhase}`,
|
|
193
193
|
});
|
|
194
|
+
// The server populates `status.error` only on EXECUTION_FAILED. Surface it
|
|
195
|
+
// beside the badge so a failure that produced no messages still explains
|
|
196
|
+
// itself (the CLI shows this reason; the chat previously showed nothing).
|
|
197
|
+
// Kept as its own item so the badge component stays presentational.
|
|
198
|
+
const reason = lastExec?.status?.error;
|
|
199
|
+
if (reason) {
|
|
200
|
+
const specMessage = lastExec?.spec?.message;
|
|
201
|
+
items.push({
|
|
202
|
+
kind: "execution-error",
|
|
203
|
+
error: reason,
|
|
204
|
+
retryMessage: specMessage && specMessage !== "execute" ? specMessage : undefined,
|
|
205
|
+
key: `execution-error-${lastExec?.metadata?.id ?? lastPhase}`,
|
|
206
|
+
});
|
|
207
|
+
}
|
|
194
208
|
}
|
|
195
209
|
if (lastPhase === ExecutionPhase.EXECUTION_COMPLETED &&
|
|
196
210
|
lastExec?.spec?.executionConfig?.interactionMode === InteractionMode.PLAN) {
|
|
@@ -222,7 +236,10 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
|
|
|
222
236
|
kind: "message",
|
|
223
237
|
message: syntheticPending,
|
|
224
238
|
key: "pending-user-turn",
|
|
225
|
-
|
|
239
|
+
// A failed turn shows the inline error instead of the dimmed
|
|
240
|
+
// sending state — the two are mutually exclusive.
|
|
241
|
+
isPending: !pendingMessageFailed,
|
|
242
|
+
isFailed: pendingMessageFailed,
|
|
226
243
|
});
|
|
227
244
|
}
|
|
228
245
|
}
|
|
@@ -251,10 +268,10 @@ export function buildThreadItems(executions, activeStreamExecution, pendingUserM
|
|
|
251
268
|
* />
|
|
252
269
|
* ```
|
|
253
270
|
*/
|
|
254
|
-
export function MessageThread({ executions, activeStreamExecution, pendingUserMessage, className, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, workspaceEntries, onFilePathClick, sandboxWorkspaceRoot, summarizationEvents, virtualized = false, onBuildFromPlan, org, planActionsDisabled, centerContent = false, }) {
|
|
271
|
+
export function MessageThread({ executions, activeStreamExecution, pendingUserMessage, pendingMessageFailed = false, onRetrySend, onRetryExecution, className, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, workspaceEntries, onFilePathClick, sandboxWorkspaceRoot, summarizationEvents, virtualized = false, onBuildFromPlan, org, planActionsDisabled, centerContent = false, }) {
|
|
255
272
|
useRenderTracer("MessageThread", { executions, activeStreamExecution });
|
|
256
273
|
const includeApprovals = onApprovalSubmit != null;
|
|
257
|
-
const items = useMemo(() => buildThreadItems(executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents), [executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents]);
|
|
274
|
+
const items = useMemo(() => buildThreadItems(executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents, pendingMessageFailed), [executions, activeStreamExecution, pendingUserMessage, includeApprovals, workspaceEntries, summarizationEvents, pendingMessageFailed]);
|
|
258
275
|
useKeyStability(items);
|
|
259
276
|
const filePathCtx = useMemo(() => ({
|
|
260
277
|
workspaceEntries: workspaceEntries ?? [],
|
|
@@ -262,14 +279,14 @@ export function MessageThread({ executions, activeStreamExecution, pendingUserMe
|
|
|
262
279
|
}), [workspaceEntries, onFilePathClick]);
|
|
263
280
|
const sandboxCtx = useMemo(() => ({ sandboxWorkspaceRoot: sandboxWorkspaceRoot ?? "" }), [sandboxWorkspaceRoot]);
|
|
264
281
|
if (virtualized) {
|
|
265
|
-
return (_jsx("div", { className: cn("relative min-h-0", className), children: _jsx(Suspense, { fallback: null, children: _jsx(LazyVirtualizedThread, { items: items, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, filePathCtx: filePathCtx, sandboxCtx: sandboxCtx, onBuildFromPlan: onBuildFromPlan, org: org, planActionsDisabled: planActionsDisabled, centerContent: centerContent }) }) }));
|
|
282
|
+
return (_jsx("div", { className: cn("relative min-h-0", className), children: _jsx(Suspense, { fallback: null, children: _jsx(LazyVirtualizedThread, { items: items, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, filePathCtx: filePathCtx, sandboxCtx: sandboxCtx, onBuildFromPlan: onBuildFromPlan, org: org, planActionsDisabled: planActionsDisabled, centerContent: centerContent, onRetrySend: onRetrySend, onRetryExecution: onRetryExecution }) }) }));
|
|
266
283
|
}
|
|
267
|
-
return (_jsx(NonVirtualizedThread, { items: items, className: className, centerContent: centerContent, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, filePathCtx: filePathCtx, sandboxCtx: sandboxCtx, onBuildFromPlan: onBuildFromPlan, org: org, planActionsDisabled: planActionsDisabled }));
|
|
284
|
+
return (_jsx(NonVirtualizedThread, { items: items, className: className, centerContent: centerContent, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, filePathCtx: filePathCtx, sandboxCtx: sandboxCtx, onBuildFromPlan: onBuildFromPlan, org: org, planActionsDisabled: planActionsDisabled, onRetrySend: onRetrySend, onRetryExecution: onRetryExecution }));
|
|
268
285
|
}
|
|
269
|
-
function NonVirtualizedThread({ items, className, centerContent, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, filePathCtx, sandboxCtx, onBuildFromPlan, org, planActionsDisabled, }) {
|
|
286
|
+
function NonVirtualizedThread({ items, className, centerContent, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, filePathCtx, sandboxCtx, onBuildFromPlan, org, planActionsDisabled, onRetrySend, onRetryExecution, }) {
|
|
270
287
|
const { scrollRef, sentinelRef, contentRef, isFollowing, jumpToLatest } = useAutoScroll();
|
|
271
288
|
useDomNodeCount(scrollRef, "MessageThread");
|
|
272
|
-
return (_jsxs("div", { className: cn("relative min-h-0", className), children: [_jsxs("div", { ref: scrollRef, role: "log", "aria-live": "polite", "aria-relevant": "additions", className: cn("h-full overflow-y-auto pt-6 pb-4 [overflow-anchor:none]", "[scrollbar-width:thin] [scrollbar-color:var(--color-border)_transparent]", "[&::-webkit-scrollbar]:w-1.5", "[&::-webkit-scrollbar-track]:bg-transparent", "[&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-border/40"), children: [_jsx(SandboxContext.Provider, { value: sandboxCtx, children: _jsx(FilePathContext.Provider, { value: filePathCtx, children: _jsx(DevProfiler, { id: "MessageThread", children: _jsx("div", { ref: contentRef, className: cn("flex flex-col gap-4", centerContent && "mx-auto w-full max-w-3xl px-4"), children: items.map((item) => (_jsx(ThreadItemWrapper, { animate: true, children: _jsx(ThreadItemRenderer, { item: item, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, onBuildFromPlan: onBuildFromPlan, org: org, planActionsDisabled: planActionsDisabled }) }, item.key))) }) }) }) }), _jsx("div", { ref: sentinelRef, "aria-hidden": "true" })] }), _jsx(JumpToLatestButton, { onClick: jumpToLatest, visible: !isFollowing })] }));
|
|
289
|
+
return (_jsxs("div", { className: cn("relative min-h-0", className), children: [_jsxs("div", { ref: scrollRef, role: "log", "aria-live": "polite", "aria-relevant": "additions", className: cn("h-full overflow-y-auto pt-6 pb-4 [overflow-anchor:none]", "[scrollbar-width:thin] [scrollbar-color:var(--color-border)_transparent]", "[&::-webkit-scrollbar]:w-1.5", "[&::-webkit-scrollbar-track]:bg-transparent", "[&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-border/40"), children: [_jsx(SandboxContext.Provider, { value: sandboxCtx, children: _jsx(FilePathContext.Provider, { value: filePathCtx, children: _jsx(DevProfiler, { id: "MessageThread", children: _jsx("div", { ref: contentRef, className: cn("flex flex-col gap-4", centerContent && "mx-auto w-full max-w-3xl px-4"), children: items.map((item) => (_jsx(ThreadItemWrapper, { animate: true, children: _jsx(ThreadItemRenderer, { item: item, formatToolCallSummary: formatToolCallSummary, onApprovalSubmit: onApprovalSubmit, submittingApprovalIds: submittingApprovalIds, onBuildFromPlan: onBuildFromPlan, org: org, planActionsDisabled: planActionsDisabled, onRetrySend: onRetrySend, onRetryExecution: onRetryExecution }) }, item.key))) }) }) }) }), _jsx("div", { ref: sentinelRef, "aria-hidden": "true" })] }), _jsx(JumpToLatestButton, { onClick: jumpToLatest, visible: !isFollowing })] }));
|
|
273
290
|
}
|
|
274
291
|
/**
|
|
275
292
|
* Renders a single thread item by discriminated `kind`. Used by both
|
|
@@ -282,9 +299,12 @@ function NonVirtualizedThread({ items, className, centerContent, formatToolCallS
|
|
|
282
299
|
* @internal Exported for internal use by `VirtualizedThread` — not
|
|
283
300
|
* part of the public API.
|
|
284
301
|
*/
|
|
285
|
-
export function ThreadItemRenderer({ item, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, onBuildFromPlan, org, planActionsDisabled, }) {
|
|
302
|
+
export function ThreadItemRenderer({ item, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, onBuildFromPlan, org, planActionsDisabled, onRetrySend, onRetryExecution, }) {
|
|
286
303
|
switch (item.kind) {
|
|
287
304
|
case "message":
|
|
305
|
+
if (item.isFailed) {
|
|
306
|
+
return (_jsx(FailedUserMessage, { message: item.message, onRetry: onRetrySend }));
|
|
307
|
+
}
|
|
288
308
|
return (_jsx(MessageEntry, { message: item.message, className: item.isPending ? "opacity-70" : undefined }));
|
|
289
309
|
case "tool-group":
|
|
290
310
|
return (_jsx(ToolCallGroup, { toolCalls: item.toolCalls, subAgentExecutions: item.subAgentExecutions, formatSummary: formatToolCallSummary, className: "mx-4" }));
|
|
@@ -292,6 +312,8 @@ export function ThreadItemRenderer({ item, formatToolCallSummary, onApprovalSubm
|
|
|
292
312
|
return (_jsx(SubAgentSection, { subAgentExecution: item.subAgentExecution, className: "mx-4" }));
|
|
293
313
|
case "phase-badge":
|
|
294
314
|
return (_jsx("div", { className: "flex justify-center py-3", children: _jsx(ExecutionPhaseBadge, { phase: item.phase }) }));
|
|
315
|
+
case "execution-error":
|
|
316
|
+
return (_jsx(ExecutionErrorNotice, { error: item.error, retryMessage: item.retryMessage, onRetry: onRetryExecution }));
|
|
295
317
|
case "approval-request":
|
|
296
318
|
return (_jsx(ApprovalCardRow, { pendingApproval: item.pendingApproval, onApprovalSubmit: onApprovalSubmit, isSubmitting: submittingApprovalIds?.has(item.pendingApproval.toolCallId) ?? false }));
|
|
297
319
|
case "setup-progress":
|
|
@@ -305,6 +327,33 @@ export function ThreadItemRenderer({ item, formatToolCallSummary, onApprovalSubm
|
|
|
305
327
|
return item.planArtifact && item.executionId ? (_jsx(PlanArtifactCard, { executionId: item.executionId, artifact: item.planArtifact, org: org, onImplement: onBuildFromPlan, disabled: planActionsDisabled })) : (_jsx(PlanCompletionCard, { onImplement: onBuildFromPlan, disabled: planActionsDisabled }));
|
|
306
328
|
}
|
|
307
329
|
}
|
|
330
|
+
// ---------------------------------------------------------------------------
|
|
331
|
+
// FailedUserMessage — optimistic turn whose send failed
|
|
332
|
+
// ---------------------------------------------------------------------------
|
|
333
|
+
/**
|
|
334
|
+
* Renders a user message whose send failed: the message itself stays visible
|
|
335
|
+
* (so the typed text is never lost) with an inline, actionable error beneath
|
|
336
|
+
* it. The error copy is intentionally short — the full reason is surfaced by
|
|
337
|
+
* the consumer's send-error banner; this is the in-thread "Retry" affordance.
|
|
338
|
+
*/
|
|
339
|
+
function FailedUserMessage({ message, onRetry, }) {
|
|
340
|
+
return (_jsxs("div", { className: "flex flex-col gap-1", children: [_jsx(MessageEntry, { message: message }), _jsxs("div", { role: "alert", className: "mx-4 flex items-center gap-2 text-xs text-destructive", children: [_jsx("span", { className: "min-w-0 flex-1 truncate", children: "Couldn\u2019t send." }), onRetry && (_jsx("button", { type: "button", onClick: onRetry, className: "shrink-0 rounded font-medium underline-offset-2 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", children: "Retry" }))] })] }));
|
|
341
|
+
}
|
|
342
|
+
// ---------------------------------------------------------------------------
|
|
343
|
+
// ExecutionErrorNotice — server failure reason for a terminal-failed execution
|
|
344
|
+
// ---------------------------------------------------------------------------
|
|
345
|
+
/**
|
|
346
|
+
* Renders the server-reported failure reason (`AgentExecutionStatus.error`)
|
|
347
|
+
* for an execution that died — typically before producing any messages. The
|
|
348
|
+
* reason can be a long Temporal error, so it is clamped by default with a
|
|
349
|
+
* Show more / Show less toggle. An optional Retry resends the originating
|
|
350
|
+
* message as a fresh execution.
|
|
351
|
+
*/
|
|
352
|
+
function ExecutionErrorNotice({ error, retryMessage, onRetry, }) {
|
|
353
|
+
const [expanded, setExpanded] = useState(false);
|
|
354
|
+
const canRetry = !!onRetry && !!retryMessage;
|
|
355
|
+
return (_jsxs("div", { role: "alert", className: "mx-4 flex flex-col gap-1.5 rounded-md bg-destructive-subtle px-3 py-2", children: [_jsx("p", { className: cn("text-xs whitespace-pre-wrap break-words text-destructive", !expanded && "line-clamp-3"), children: error }), _jsxs("div", { className: "flex items-center gap-3 text-xs", children: [_jsx("button", { type: "button", onClick: () => setExpanded((v) => !v), className: "font-medium text-muted-foreground underline-offset-2 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", children: expanded ? "Show less" : "Show more" }), canRetry && (_jsx("button", { type: "button", onClick: () => onRetry(retryMessage), className: "font-medium text-foreground underline-offset-2 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", children: "Retry" }))] })] }));
|
|
356
|
+
}
|
|
308
357
|
const ApprovalCardRow = memo(function ApprovalCardRow({ pendingApproval, onApprovalSubmit, isSubmitting, }) {
|
|
309
358
|
const handleSubmit = useCallback((action, comment) => {
|
|
310
359
|
onApprovalSubmit(pendingApproval.toolCallId, action, comment);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageThread.js","sourceRoot":"","sources":["../../src/execution/MessageThread.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MessageThread.js","sourceRoot":"","sources":["../../src/execution/MessageThread.tsx"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,21 @@ export interface UseExecutionStreamReturn {
|
|
|
36
36
|
* background reconnection so a recoverable hiccup never shows as an error.
|
|
37
37
|
*/
|
|
38
38
|
readonly error: Error | null;
|
|
39
|
+
/**
|
|
40
|
+
* `true` when the stream opened but no first snapshot arrived within the
|
|
41
|
+
* connect-timeout window, even after one silent self-heal. Distinct from
|
|
42
|
+
* `error` (a thrown/closed stream that auto-reconnect retries): this is the
|
|
43
|
+
* *silent* hang the retry loop can never observe. Surface an actionable
|
|
44
|
+
* "the agent hasn't started — Retry" affordance wired to `reconnect()`.
|
|
45
|
+
* Cleared by the next snapshot or a manual `reconnect()`. Never auto-aborts.
|
|
46
|
+
*/
|
|
47
|
+
readonly connectTimedOut: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* `true` when a non-terminal stream has produced no new snapshot for the
|
|
50
|
+
* slow-stall window. Purely informational ("still working — taking longer
|
|
51
|
+
* than usual"); cleared by the next snapshot. Never an error, never aborts.
|
|
52
|
+
*/
|
|
53
|
+
readonly isSlow: boolean;
|
|
39
54
|
/**
|
|
40
55
|
* Reset error state and re-establish the stream subscription.
|
|
41
56
|
*
|
|
@@ -77,6 +92,18 @@ export interface UseExecutionStreamOptions {
|
|
|
77
92
|
/** Max attempts before surfacing a terminal `error`. */
|
|
78
93
|
readonly maxAttempts?: number;
|
|
79
94
|
};
|
|
95
|
+
/**
|
|
96
|
+
* Hard connect-timeout in ms: how long the stream may stay `connecting`
|
|
97
|
+
* (no first snapshot) before the watchdog self-heals once and then surfaces
|
|
98
|
+
* `connectTimedOut`. Defaults to {@link DEFAULT_CONNECT_TIMEOUT_MS} (10s).
|
|
99
|
+
*/
|
|
100
|
+
readonly connectTimeoutMs?: number;
|
|
101
|
+
/**
|
|
102
|
+
* Soft slow-stall threshold in ms: how long a non-terminal stream may go
|
|
103
|
+
* without a new snapshot before `isSlow` flips on. Defaults to
|
|
104
|
+
* {@link DEFAULT_SLOW_THRESHOLD_MS} (60s).
|
|
105
|
+
*/
|
|
106
|
+
readonly slowThresholdMs?: number;
|
|
80
107
|
}
|
|
81
108
|
/**
|
|
82
109
|
* Behavior hook that subscribes to real-time {@link AgentExecution}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useExecutionStream.d.ts","sourceRoot":"","sources":["../../src/execution/useExecutionStream.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6DAA6D,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,MAAM,8DAA8D,CAAC;
|
|
1
|
+
{"version":3,"file":"useExecutionStream.d.ts","sourceRoot":"","sources":["../../src/execution/useExecutionStream.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6DAA6D,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,MAAM,8DAA8D,CAAC;AAW9F,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,kDAAkD;AAClD,MAAM,WAAW,wBAAwB;IACvC,iGAAiG;IACjG,QAAQ,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IAC1C;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,0EAA0E;IAC1E,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,8EAA8E;IAC9E,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,mFAAmF;IACnF,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7B;;;;;;;OAOG;IACH,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB;;;;;;;OAOG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IACnC;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,cAAc,GAAG;QAC3C,wDAAwD;QACxD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;KAC/B,CAAC;IACF;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,OAAO,CAAC,EAAE,yBAAyB,GAClC,wBAAwB,CA8P1B"}
|
|
@@ -5,7 +5,7 @@ import { isTransientStreamError } from "@stigmer/sdk";
|
|
|
5
5
|
import { useStigmer } from "../hooks";
|
|
6
6
|
import { toError } from "../internal/toError";
|
|
7
7
|
import { useStreamRate } from "../internal/dev";
|
|
8
|
-
import { StreamController, } from "../internal/stream-controller";
|
|
8
|
+
import { StreamController, DEFAULT_CONNECT_TIMEOUT_MS, DEFAULT_SLOW_THRESHOLD_MS, } from "../internal/stream-controller";
|
|
9
9
|
import { computeBackoffDelay, sleep, DEFAULT_RECONNECT_MAX_ATTEMPTS, } from "../internal/backoff";
|
|
10
10
|
import { ConversationStore } from "../internal/store";
|
|
11
11
|
import { isTerminalPhase } from "./execution-phases";
|
|
@@ -70,6 +70,15 @@ export function useExecutionStream(executionId, options) {
|
|
|
70
70
|
internalStoreRef.current = new ConversationStore();
|
|
71
71
|
}
|
|
72
72
|
const store = options?.store ?? internalStoreRef.current;
|
|
73
|
+
// -- Reconnect ------------------------------------------------------------
|
|
74
|
+
const [connectKey, setConnectKey] = useState(0);
|
|
75
|
+
// Self-heal-once guard for the connect-timeout watchdog. A ref so it survives
|
|
76
|
+
// the reconnect that the watchdog itself triggers (the controller is reset on
|
|
77
|
+
// every teardown and therefore cannot hold it). Reset only on a genuinely
|
|
78
|
+
// fresh start — a new execution, a healthy snapshot, or a manual reconnect —
|
|
79
|
+
// never on the watchdog's own self-heal hop, so the policy is exactly:
|
|
80
|
+
// first silent timeout → reconnect once; second → surface.
|
|
81
|
+
const connectAutoRetriedRef = useRef(false);
|
|
73
82
|
// -- Controller setup -----------------------------------------------------
|
|
74
83
|
const controllerRef = useRef(null);
|
|
75
84
|
if (!controllerRef.current) {
|
|
@@ -84,15 +93,36 @@ export function useExecutionStream(executionId, options) {
|
|
|
84
93
|
store.setStreamState(state);
|
|
85
94
|
});
|
|
86
95
|
},
|
|
96
|
+
onConnectTimeout() {
|
|
97
|
+
if (connectAutoRetriedRef.current) {
|
|
98
|
+
// Already self-healed once and still silent — surface an actionable
|
|
99
|
+
// signal. The store dedupes, so this never causes a render storm.
|
|
100
|
+
store.setConnectTimedOut(true);
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
// First silent timeout: re-establish the subscription once. Most
|
|
104
|
+
// transient hangs (buffering proxy, cold start) clear on the retry.
|
|
105
|
+
connectAutoRetriedRef.current = true;
|
|
106
|
+
setConnectKey((k) => k + 1);
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
setSlow(value) {
|
|
110
|
+
store.setSlow(value);
|
|
111
|
+
},
|
|
87
112
|
};
|
|
88
|
-
controllerRef.current = new StreamController(sink
|
|
113
|
+
controllerRef.current = new StreamController(sink, undefined, undefined, {
|
|
114
|
+
connectTimeoutMs: options?.connectTimeoutMs ?? DEFAULT_CONNECT_TIMEOUT_MS,
|
|
115
|
+
slowThresholdMs: options?.slowThresholdMs ?? DEFAULT_SLOW_THRESHOLD_MS,
|
|
116
|
+
});
|
|
89
117
|
}
|
|
90
118
|
const controller = controllerRef.current;
|
|
91
|
-
// -- Reconnect ------------------------------------------------------------
|
|
92
|
-
const [connectKey, setConnectKey] = useState(0);
|
|
93
119
|
const reconnect = useCallback(() => {
|
|
120
|
+
// A manual retry gives a fresh self-heal budget and clears the surfaced
|
|
121
|
+
// timeout so the affordance disappears the instant the user acts.
|
|
122
|
+
connectAutoRetriedRef.current = false;
|
|
123
|
+
store.setConnectTimedOut(false);
|
|
94
124
|
setConnectKey((k) => k + 1);
|
|
95
|
-
}, []);
|
|
125
|
+
}, [store]);
|
|
96
126
|
// -- Stream rate instrumentation ------------------------------------------
|
|
97
127
|
const streamRate = useStreamRate();
|
|
98
128
|
const streamRateRef = useRef(streamRate);
|
|
@@ -115,6 +145,7 @@ export function useExecutionStream(executionId, options) {
|
|
|
115
145
|
controller.reset();
|
|
116
146
|
store.reset();
|
|
117
147
|
prevExecutionIdRef.current = null;
|
|
148
|
+
connectAutoRetriedRef.current = false;
|
|
118
149
|
return;
|
|
119
150
|
}
|
|
120
151
|
// Reset only when switching to a different execution. Crucially we do NOT
|
|
@@ -125,6 +156,9 @@ export function useExecutionStream(executionId, options) {
|
|
|
125
156
|
if (prevExecutionIdRef.current !== null &&
|
|
126
157
|
prevExecutionIdRef.current !== executionId) {
|
|
127
158
|
store.reset();
|
|
159
|
+
// A genuinely different execution earns a fresh self-heal budget; the
|
|
160
|
+
// bump that re-runs this effect on reconnect must NOT reset the guard.
|
|
161
|
+
connectAutoRetriedRef.current = false;
|
|
128
162
|
}
|
|
129
163
|
prevExecutionIdRef.current = executionId;
|
|
130
164
|
const abortController = new AbortController();
|
|
@@ -163,6 +197,11 @@ export function useExecutionStream(executionId, options) {
|
|
|
163
197
|
if (signal.aborted)
|
|
164
198
|
return;
|
|
165
199
|
attempt = 0; // a snapshot proves the connection is healthy
|
|
200
|
+
// The first snapshot also resolves the connect watchdog: clear any
|
|
201
|
+
// surfaced timeout and refresh the self-heal budget for any future
|
|
202
|
+
// silent stretch on this same execution.
|
|
203
|
+
connectAutoRetriedRef.current = false;
|
|
204
|
+
store.setConnectTimedOut(false);
|
|
166
205
|
controller.handleSnapshot(snapshot);
|
|
167
206
|
streamRateRef.current.tick(snapshot.status?.messages?.length ?? 0);
|
|
168
207
|
const phase = snapshot.status?.phase ??
|
|
@@ -217,6 +256,8 @@ export function useExecutionStream(executionId, options) {
|
|
|
217
256
|
// -- Read from store via useSyncExternalStore ------------------------------
|
|
218
257
|
const execution = useSyncExternalStore(store.subscribe, store.getExecution);
|
|
219
258
|
const streamState = useSyncExternalStore(store.subscribe, store.getStreamState);
|
|
259
|
+
const connectTimedOut = useSyncExternalStore(store.subscribe, store.getConnectTimedOut);
|
|
260
|
+
const isSlow = useSyncExternalStore(store.subscribe, store.getSlow);
|
|
220
261
|
// -- Derive public return values ------------------------------------------
|
|
221
262
|
const phase = useMemo(() => execution?.status?.phase ?? ExecutionPhase.EXECUTION_PHASE_UNSPECIFIED, [execution]);
|
|
222
263
|
const isStreaming = streamState.stage === "streaming";
|
|
@@ -232,6 +273,8 @@ export function useExecutionStream(executionId, options) {
|
|
|
232
273
|
isReconnecting,
|
|
233
274
|
reconnectAttempt,
|
|
234
275
|
error,
|
|
276
|
+
connectTimedOut,
|
|
277
|
+
isSlow,
|
|
235
278
|
reconnect,
|
|
236
279
|
};
|
|
237
280
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useExecutionStream.js","sourceRoot":"","sources":["../../src/execution/useExecutionStream.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EACL,eAAe,EACf,WAAW,EACX,SAAS,EACT,OAAO,EACP,MAAM,EACN,QAAQ,EACR,oBAAoB,GACrB,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,cAAc,EAAE,MAAM,8DAA8D,CAAC;AAC9F,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EACL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"useExecutionStream.js","sourceRoot":"","sources":["../../src/execution/useExecutionStream.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EACL,eAAe,EACf,WAAW,EACX,SAAS,EACT,OAAO,EACP,MAAM,EACN,QAAQ,EACR,oBAAoB,GACrB,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,cAAc,EAAE,MAAM,8DAA8D,CAAC;AAC9F,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EACL,gBAAgB,EAChB,0BAA0B,EAC1B,yBAAyB,GAE1B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,mBAAmB,EACnB,KAAK,EACL,8BAA8B,GAE/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AA2GrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAA0B,EAC1B,OAAmC;IAEnC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,4EAA4E;IAC5E,iEAAiE;IACjE,iEAAiE;IACjE,qBAAqB;IACrB,MAAM,gBAAgB,GAAG,MAAM,CAA2B,IAAI,CAAC,CAAC;IAChE,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;QACjD,gBAAgB,CAAC,OAAO,GAAG,IAAI,iBAAiB,EAAE,CAAC;IACrD,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,gBAAgB,CAAC,OAAQ,CAAC;IAE1D,4EAA4E;IAC5E,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEhD,8EAA8E;IAC9E,8EAA8E;IAC9E,0EAA0E;IAC1E,6EAA6E;IAC7E,uEAAuE;IACvE,2DAA2D;IAC3D,MAAM,qBAAqB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5C,4EAA4E;IAC5E,MAAM,aAAa,GAAG,MAAM,CAA0B,IAAI,CAAC,CAAC;IAC5D,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAyB;YACjC,cAAc,CAAC,QAAQ;gBACrB,eAAe,CAAC,GAAG,EAAE;oBACnB,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBACjC,CAAC,CAAC,CAAC;YACL,CAAC;YACD,cAAc,CAAC,KAAK;gBAClB,eAAe,CAAC,GAAG,EAAE;oBACnB,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBAC9B,CAAC,CAAC,CAAC;YACL,CAAC;YACD,gBAAgB;gBACd,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;oBAClC,oEAAoE;oBACpE,kEAAkE;oBAClE,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBACjC,CAAC;qBAAM,CAAC;oBACN,iEAAiE;oBACjE,oEAAoE;oBACpE,qBAAqB,CAAC,OAAO,GAAG,IAAI,CAAC;oBACrC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;YACD,OAAO,CAAC,KAAK;gBACX,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;SACF,CAAC;QACF,aAAa,CAAC,OAAO,GAAG,IAAI,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE;YACvE,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,IAAI,0BAA0B;YACzE,eAAe,EAAE,OAAO,EAAE,eAAe,IAAI,yBAAyB;SACvE,CAAC,CAAC;IACL,CAAC;IACD,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC;IAEzC,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;QACjC,wEAAwE;QACxE,kEAAkE;QAClE,qBAAqB,CAAC,OAAO,GAAG,KAAK,CAAC;QACtC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAChC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,4EAA4E;IAC5E,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACzC,aAAa,CAAC,OAAO,GAAG,UAAU,CAAC;IAEnC,+EAA+E;IAC/E,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,IAAI,CAAC;IACrD,MAAM,gBAAgB,GAAG,OAAO,EAAE,gBAAgB,CAAC;IACnD,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC9D,SAAS,CAAC,OAAO,GAAG,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAExD,2EAA2E;IAC3E,6EAA6E;IAC7E,sEAAsE;IACtE,MAAM,kBAAkB,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAEvD,4EAA4E;IAC5E,0EAA0E;IAC1E,qEAAqE;IACrE,6EAA6E;IAC7E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,kBAAkB,CAAC,OAAO,GAAG,IAAI,CAAC;YAClC,qBAAqB,CAAC,OAAO,GAAG,KAAK,CAAC;YACtC,OAAO;QACT,CAAC;QAED,0EAA0E;QAC1E,sEAAsE;QACtE,wEAAwE;QACxE,yEAAyE;QACzE,wEAAwE;QACxE,IACE,kBAAkB,CAAC,OAAO,KAAK,IAAI;YACnC,kBAAkB,CAAC,OAAO,KAAK,WAAW,EAC1C,CAAC;YACD,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,sEAAsE;YACtE,uEAAuE;YACvE,qBAAqB,CAAC,OAAO,GAAG,KAAK,CAAC;QACxC,CAAC;QACD,kBAAkB,CAAC,OAAO,GAAG,WAAW,CAAC;QAEzC,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC;QACtC,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAE9B,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,GACtD,SAAS,CAAC,OAAO,CAAC;YACpB,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,8BAA8B,CAAC;YAE3E,kEAAkE;YAClE,oEAAoE;YACpE,qEAAqE;YACrE,IAAI,OAAO,GAAG,CAAC,CAAC;YAEhB,sEAAsE;YACtE,oEAAoE;YACpE,gEAAgE;YAChE,uEAAuE;YACvE,MAAM,aAAa,GAAG,KAAK,EAAE,KAAY,EAAoB,EAAE;gBAC7D,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;oBACpC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;oBAC9B,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,OAAO,IAAI,CAAC,CAAC;gBACb,UAAU,CAAC,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC9C,IAAI,CAAC;oBACH,MAAM,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;gBAC7D,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,KAAK,CAAC,CAAC,sBAAsB;gBACtC,CAAC;gBACD,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;YACzB,CAAC,CAAC;YAEF,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACvB,IAAI,WAAW,GAAG,KAAK,CAAC;gBACxB,IAAI,CAAC;oBACH,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,OAAO,CAAC,cAAc,CAAC,SAAS,CAC3D,WAAW,EACX,MAAM,CACP,EAAE,CAAC;wBACF,IAAI,MAAM,CAAC,OAAO;4BAAE,OAAO;wBAE3B,OAAO,GAAG,CAAC,CAAC,CAAC,8CAA8C;wBAC3D,mEAAmE;wBACnE,mEAAmE;wBACnE,yCAAyC;wBACzC,qBAAqB,CAAC,OAAO,GAAG,KAAK,CAAC;wBACtC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;wBAChC,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;wBACpC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC;wBAEnE,MAAM,KAAK,GACT,QAAQ,CAAC,MAAM,EAAE,KAAK;4BACtB,cAAc,CAAC,2BAA2B,CAAC;wBAC7C,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;4BAC3B,WAAW,GAAG,IAAI,CAAC;4BACnB,MAAM;wBACR,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,MAAM,CAAC,OAAO;wBAAE,OAAO;oBAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;oBAC3B,mEAAmE;oBACnE,gEAAgE;oBAChE,kEAAkE;oBAClE,IAAI,CAAC,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC5C,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;wBAC9B,OAAO;oBACT,CAAC;oBACD,IAAI,MAAM,aAAa,CAAC,KAAK,CAAC;wBAAE,SAAS;oBACzC,OAAO;gBACT,CAAC;gBAED,IAAI,MAAM,CAAC,OAAO;oBAAE,OAAO;gBAE3B,IAAI,WAAW,EAAE,CAAC;oBAChB,+DAA+D;oBAC/D,mEAAmE;oBACnE,4CAA4C;oBAC5C,UAAU,CAAC,eAAe,EAAE,CAAC;oBAC7B,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;oBAChC,OAAO;gBACT,CAAC;gBAED,sEAAsE;gBACtE,iEAAiE;gBACjE,qEAAqE;gBACrE,oEAAoE;gBACpE,4CAA4C;gBAC5C,IAAI,MAAM,aAAa,CAAC,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC,EAAE,CAAC;oBACtE,SAAS;gBACX,CAAC;gBACD,OAAO;YACT,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO,GAAG,EAAE;YACV,eAAe,CAAC,KAAK,EAAE,CAAC;YACxB,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAEvC,6EAA6E;IAC7E,MAAM,SAAS,GAAG,oBAAoB,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC5E,MAAM,WAAW,GAAG,oBAAoB,CACtC,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,cAAc,CACrB,CAAC;IACF,MAAM,eAAe,GAAG,oBAAoB,CAC1C,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,kBAAkB,CACzB,CAAC;IACF,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAEpE,4EAA4E;IAC5E,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CACH,SAAS,EAAE,MAAM,EAAE,KAAK,IAAI,cAAc,CAAC,2BAA2B,EACxE,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,KAAK,WAAW,CAAC;IACtD,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,KAAK,YAAY,CAAC;IACxD,MAAM,cAAc,GAAG,WAAW,CAAC,KAAK,KAAK,cAAc,CAAC;IAC5D,MAAM,gBAAgB,GACpB,WAAW,CAAC,KAAK,KAAK,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAEvE,OAAO;QACL,SAAS;QACT,KAAK;QACL,WAAW;QACX,YAAY;QACZ,cAAc;QACd,gBAAgB;QAChB,KAAK;QACL,eAAe;QACf,MAAM;QACN,SAAS;KACV,CAAC;AACJ,CAAC"}
|
|
@@ -14,6 +14,8 @@ export interface VirtualizedThreadProps {
|
|
|
14
14
|
readonly org?: string;
|
|
15
15
|
readonly planActionsDisabled?: boolean;
|
|
16
16
|
readonly centerContent?: boolean;
|
|
17
|
+
readonly onRetrySend?: () => void;
|
|
18
|
+
readonly onRetryExecution?: (message: string) => void;
|
|
17
19
|
}
|
|
18
20
|
/**
|
|
19
21
|
* Internal component that renders a `MessageThread` item list via
|
|
@@ -25,5 +27,5 @@ export interface VirtualizedThreadProps {
|
|
|
25
27
|
*
|
|
26
28
|
* @internal
|
|
27
29
|
*/
|
|
28
|
-
export declare function VirtualizedThread({ items, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, filePathCtx, sandboxCtx, onBuildFromPlan, org, planActionsDisabled, centerContent, }: VirtualizedThreadProps): import("react/jsx-runtime").JSX.Element;
|
|
30
|
+
export declare function VirtualizedThread({ items, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, filePathCtx, sandboxCtx, onBuildFromPlan, org, planActionsDisabled, centerContent, onRetrySend, onRetryExecution, }: VirtualizedThreadProps): import("react/jsx-runtime").JSX.Element;
|
|
29
31
|
//# sourceMappingURL=VirtualizedThread.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualizedThread.d.ts","sourceRoot":"","sources":["../../src/internal/VirtualizedThread.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iEAAiE,CAAC;AAChG,OAAO,EAAE,cAAc,EAAE,MAAM,8DAA8D,CAAC;AAC9F,OAAO,EAEL,KAAK,UAAU,EAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAmB,KAAK,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAkB,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AASvF,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;IACtC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,KAAK,MAAM,CAAC;IAC5E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAC1B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE,MAAM,KACb,IAAI,CAAC;IACV,QAAQ,CAAC,qBAAqB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrD,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IACtC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"VirtualizedThread.d.ts","sourceRoot":"","sources":["../../src/internal/VirtualizedThread.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iEAAiE,CAAC;AAChG,OAAO,EAAE,cAAc,EAAE,MAAM,8DAA8D,CAAC;AAC9F,OAAO,EAEL,KAAK,UAAU,EAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAmB,KAAK,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAkB,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AASvF,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;IACtC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,KAAK,MAAM,CAAC;IAC5E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAC1B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,cAAc,EACtB,OAAO,CAAC,EAAE,MAAM,KACb,IAAI,CAAC;IACV,QAAQ,CAAC,qBAAqB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrD,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IACtC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACvD;AAuCD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,eAAe,EACf,GAAG,EACH,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,gBAAgB,GACjB,EAAE,sBAAsB,2CAuExB"}
|
|
@@ -33,7 +33,7 @@ const NEAR_BOTTOM_THRESHOLD_PX = 80;
|
|
|
33
33
|
*
|
|
34
34
|
* @internal
|
|
35
35
|
*/
|
|
36
|
-
export function VirtualizedThread({ items, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, filePathCtx, sandboxCtx, onBuildFromPlan, org, planActionsDisabled, centerContent, }) {
|
|
36
|
+
export function VirtualizedThread({ items, formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, filePathCtx, sandboxCtx, onBuildFromPlan, org, planActionsDisabled, centerContent, onRetrySend, onRetryExecution, }) {
|
|
37
37
|
const virtuosoRef = useRef(null);
|
|
38
38
|
const scrollerRef = useRef(null);
|
|
39
39
|
const [isAtBottom, setIsAtBottom] = useState(true);
|
|
@@ -55,7 +55,9 @@ export function VirtualizedThread({ items, formatToolCallSummary, onApprovalSubm
|
|
|
55
55
|
onBuildFromPlan,
|
|
56
56
|
org,
|
|
57
57
|
planActionsDisabled,
|
|
58
|
-
|
|
58
|
+
onRetrySend,
|
|
59
|
+
onRetryExecution,
|
|
60
|
+
}), [formatToolCallSummary, onApprovalSubmit, submittingApprovalIds, onBuildFromPlan, org, planActionsDisabled, onRetrySend, onRetryExecution]);
|
|
59
61
|
return (_jsxs(_Fragment, { children: [_jsx(SandboxContext.Provider, { value: sandboxCtx, children: _jsx(FilePathContext.Provider, { value: filePathCtx, children: _jsx(DevProfiler, { id: "MessageThread:virtualized", children: _jsx(Virtuoso, { ref: virtuosoRef, data: items, alignToBottom: true, followOutput: handleFollowOutput, atBottomStateChange: setIsAtBottom, atBottomThreshold: NEAR_BOTTOM_THRESHOLD_PX, computeItemKey: (_index, item) => item.key, increaseViewportBy: { top: 200, bottom: 200 }, scrollerRef: handleScrollerRef, className: "h-full", components: { Scroller: ScrollerWithA11y }, itemContent: (index, item) => (_jsx("div", { className: cn("pb-4 pt-0 first:pt-6", centerContent && "mx-auto w-full max-w-3xl px-4"), children: _jsx(ThreadItemWrapper, { animate: index >= items.length - 2, children: _jsx(ThreadItemRenderer, { item: item, ...renderProps }) }) })) }) }) }) }), _jsx(JumpToLatestButton, { onClick: jumpToLatest, visible: !isAtBottom })] }));
|
|
60
62
|
}
|
|
61
63
|
//# sourceMappingURL=VirtualizedThread.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualizedThread.js","sourceRoot":"","sources":["../../src/internal/VirtualizedThread.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EACL,UAAU,EACV,WAAW,EACX,OAAO,EACP,MAAM,EACN,QAAQ,GAET,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,QAAQ,EAAuB,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AAGpC,OAAO,EACL,kBAAkB,GAEnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,eAAe,EAA6B,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAE,cAAc,EAA4B,MAAM,6BAA6B,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"VirtualizedThread.js","sourceRoot":"","sources":["../../src/internal/VirtualizedThread.tsx"],"names":[],"mappings":"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"}
|