@optima-chat/agentic-sdk 0.16.1 → 0.17.0
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/client/event-parser.d.ts +22 -1
- package/dist/client/event-parser.d.ts.map +1 -1
- package/dist/client/event-parser.js +30 -0
- package/dist/client/event-parser.js.map +1 -1
- package/dist/client/gateway-client.d.ts +4 -4
- package/dist/client/gateway-client.d.ts.map +1 -1
- package/dist/client/gateway-client.js +12 -6
- package/dist/client/gateway-client.js.map +1 -1
- package/dist/client/index.d.ts +8 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +18 -0
- package/dist/client/index.js.map +1 -0
- package/dist/hooks/use-tasks.d.ts +33 -0
- package/dist/hooks/use-tasks.d.ts.map +1 -0
- package/dist/hooks/use-tasks.js +91 -0
- package/dist/hooks/use-tasks.js.map +1 -0
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/provider/chat-context.d.ts +2 -0
- package/dist/provider/chat-context.d.ts.map +1 -1
- package/dist/provider/chat-context.js.map +1 -1
- package/dist/provider/chat-provider.d.ts +8 -1
- package/dist/provider/chat-provider.d.ts.map +1 -1
- package/dist/provider/chat-provider.js +67 -2
- package/dist/provider/chat-provider.js.map +1 -1
- package/dist/store/chat-store.d.ts +28 -0
- package/dist/store/chat-store.d.ts.map +1 -1
- package/dist/store/chat-store.js +168 -3
- package/dist/store/chat-store.js.map +1 -1
- package/dist/tasks/default-provider.d.ts +13 -0
- package/dist/tasks/default-provider.d.ts.map +1 -0
- package/dist/tasks/default-provider.js +28 -0
- package/dist/tasks/default-provider.js.map +1 -0
- package/dist/tasks/types.d.ts +25 -0
- package/dist/tasks/types.d.ts.map +1 -0
- package/dist/tasks/types.js +2 -0
- package/dist/tasks/types.js.map +1 -0
- package/dist/types.d.ts +11 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +6 -2
|
@@ -5,6 +5,30 @@ import { createChatStore } from '../store/chat-store.js';
|
|
|
5
5
|
import { GatewayClient } from '../client/gateway-client.js';
|
|
6
6
|
import { ConversationAPI } from '../client/conversation-api.js';
|
|
7
7
|
import { parseServerEvent } from '../client/event-parser.js';
|
|
8
|
+
// Anti-loop guard for Layer A: after a recovery attempt, subsequent
|
|
9
|
+
// AUTH_TOKEN_INVALID signals within this window only fire onAuthError but
|
|
10
|
+
// do NOT re-trigger reconnect. Keyed by store identity so multiple
|
|
11
|
+
// providers don't interfere; WeakMap so unmounted providers GC cleanly.
|
|
12
|
+
// See docs/superpowers/plans/2026-06-02-token-recovery-54.md #54.
|
|
13
|
+
const AUTH_RECOVERY_COOLDOWN_MS = 5000;
|
|
14
|
+
const lastAuthRecoveryAt = new WeakMap();
|
|
15
|
+
/**
|
|
16
|
+
* Detect server `error` events meaning "the access token the SDK presented
|
|
17
|
+
* has been rejected" — canonical `AUTH_TOKEN_INVALID` code, casing variants,
|
|
18
|
+
* or a legacy server with no code but a recognizable message. Used by the
|
|
19
|
+
* ChatProvider event handler to trigger Layer A token recovery (#54).
|
|
20
|
+
*/
|
|
21
|
+
export function isAuthExpiredSignal(error) {
|
|
22
|
+
const code = (error.code ?? '').toUpperCase();
|
|
23
|
+
if (code === 'AUTH_TOKEN_INVALID')
|
|
24
|
+
return true;
|
|
25
|
+
// Defensive fallback for non-canonical servers — message must mention
|
|
26
|
+
// "token" AND one of expired/invalid/rejected, in either order.
|
|
27
|
+
const msg = (error.message ?? '').toLowerCase();
|
|
28
|
+
if (!msg.includes('token'))
|
|
29
|
+
return false;
|
|
30
|
+
return /(expired|invalid|rejected)/.test(msg);
|
|
31
|
+
}
|
|
8
32
|
/**
|
|
9
33
|
* <ChatProvider> — wires GatewayClient + ConversationAPI + Store together,
|
|
10
34
|
* parses incoming ServerEvents into store mutations, and forwards selected
|
|
@@ -43,7 +67,37 @@ export function ChatProvider(props) {
|
|
|
43
67
|
const c = new GatewayClient({
|
|
44
68
|
gatewayUrl,
|
|
45
69
|
tokenProvider,
|
|
46
|
-
onEvent: (event) =>
|
|
70
|
+
onEvent: (event) => {
|
|
71
|
+
// Layer A: AUTH_TOKEN_INVALID auto-recovery (#54). Fire consumer's
|
|
72
|
+
// onAuthError so their refresh / re-login flow runs, then trigger
|
|
73
|
+
// SDK-side reconnect with forceRefresh so the new socket presents
|
|
74
|
+
// a fresh token. The error event is suppressed from the chat UI
|
|
75
|
+
// (we return before parseServerEvent). Anti-loop guard: a repeat
|
|
76
|
+
// signal within AUTH_RECOVERY_COOLDOWN_MS still fires onAuthError
|
|
77
|
+
// but does NOT re-trigger reconnect.
|
|
78
|
+
//
|
|
79
|
+
// Intentional divergence from gateway-client's openSocket auth-fail
|
|
80
|
+
// path (gateway-client.ts:227-231): that one calls
|
|
81
|
+
// setConnectionError + transitions to 'auth_failed', surfacing a UI
|
|
82
|
+
// banner. Layer A intentionally does NOT, because the whole point
|
|
83
|
+
// is silent transparent recovery.
|
|
84
|
+
if (event.type === 'error' && isAuthExpiredSignal(event.error)) {
|
|
85
|
+
const err = {
|
|
86
|
+
code: 'auth_expired',
|
|
87
|
+
message: event.error.message || 'Authentication token expired',
|
|
88
|
+
};
|
|
89
|
+
propsRef.current.onAuthError?.(err);
|
|
90
|
+
const now = Date.now();
|
|
91
|
+
const last = lastAuthRecoveryAt.get(store) ?? 0;
|
|
92
|
+
if (now - last < AUTH_RECOVERY_COOLDOWN_MS) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
lastAuthRecoveryAt.set(store, now);
|
|
96
|
+
void clientRef.current?.reconnect({ forceRefresh: true });
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
handleServerEvent(event, store, propsRef.current);
|
|
100
|
+
},
|
|
47
101
|
onConnectionStateChange: (state) => {
|
|
48
102
|
store.getState().setConnectionState(state);
|
|
49
103
|
if (state === 'connected') {
|
|
@@ -95,7 +149,8 @@ export function ChatProvider(props) {
|
|
|
95
149
|
return unsubscribe;
|
|
96
150
|
}, [props.onTokenChange]);
|
|
97
151
|
const workspaceProvider = props.workspaceProvider ?? null;
|
|
98
|
-
|
|
152
|
+
const tasksProvider = props.tasksProvider ?? null;
|
|
153
|
+
return (_jsx(ChatContext.Provider, { value: { store, client, api, workspaceProvider, tasksProvider }, children: children }));
|
|
99
154
|
}
|
|
100
155
|
/**
|
|
101
156
|
* Events whose arrival means "this conversation has active streaming".
|
|
@@ -303,6 +358,16 @@ function applyAction(action, store, props) {
|
|
|
303
358
|
// #29: session-level recovery flag — orthogonal to WS connectionState.
|
|
304
359
|
s.setRecovering(action.value);
|
|
305
360
|
return;
|
|
361
|
+
// ── B3: task_* inbound WS events ────────────────────────────────────────
|
|
362
|
+
case 'upsertTask':
|
|
363
|
+
s.upsertTask(action.task);
|
|
364
|
+
return;
|
|
365
|
+
case 'completeTask':
|
|
366
|
+
s.completeTask(action.id, action.patch);
|
|
367
|
+
return;
|
|
368
|
+
case 'failTask':
|
|
369
|
+
s.failTask(action.id, action.patch);
|
|
370
|
+
return;
|
|
306
371
|
}
|
|
307
372
|
}
|
|
308
373
|
//# sourceMappingURL=chat-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-provider.js","sourceRoot":"","sources":["../../src/provider/chat-provider.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat-provider.js","sourceRoot":"","sources":["../../src/provider/chat-provider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { StoreApi } from 'zustand/vanilla';
|
|
2
2
|
import type { ChatError, ConnectionState, Conversation, ConversationLastMessageKind, Message, QuestionRequest, ApprovalRequestWithId, ToolCall } from '../types.js';
|
|
3
|
+
import type { NormalizedTask } from '../tasks/types.js';
|
|
3
4
|
export interface ChatStoreState {
|
|
4
5
|
connectionState: ConnectionState;
|
|
5
6
|
connectionError: ChatError | null;
|
|
@@ -39,6 +40,7 @@ export interface ChatStoreState {
|
|
|
39
40
|
pendingQuestion: QuestionRequest | null;
|
|
40
41
|
pendingApprovals: ApprovalRequestWithId[];
|
|
41
42
|
processingConversationIds: Set<string>;
|
|
43
|
+
tasks: NormalizedTask[];
|
|
42
44
|
}
|
|
43
45
|
export interface ChatStoreActions {
|
|
44
46
|
setConnectionState: (state: ConnectionState) => void;
|
|
@@ -82,6 +84,32 @@ export interface ChatStoreActions {
|
|
|
82
84
|
addProcessingConversation: (conversationId: string) => void;
|
|
83
85
|
removeProcessingConversation: (conversationId: string) => void;
|
|
84
86
|
clearProcessingConversations: () => void;
|
|
87
|
+
/** Replace all tasks (used by B4 REST hydration). */
|
|
88
|
+
setTasks: (tasks: NormalizedTask[]) => void;
|
|
89
|
+
/** Add-or-replace a task row with status 'running'. */
|
|
90
|
+
upsertTask: (task: {
|
|
91
|
+
id: string;
|
|
92
|
+
name: string;
|
|
93
|
+
startedAt: string;
|
|
94
|
+
}) => void;
|
|
95
|
+
/**
|
|
96
|
+
* Set task to 'completed'. Upserts if id absent (a completion may arrive
|
|
97
|
+
* before the corresponding task_started event).
|
|
98
|
+
*/
|
|
99
|
+
completeTask: (id: string, patch: {
|
|
100
|
+
completedAt: string;
|
|
101
|
+
result: NormalizedTask['result'];
|
|
102
|
+
}) => void;
|
|
103
|
+
/**
|
|
104
|
+
* Set task to 'failed'. Upserts if id absent.
|
|
105
|
+
* Design choice: `failedAt` (WS delta field) is stored as `completedAt` so
|
|
106
|
+
* the row always has a terminal timestamp for display ordering. The REST
|
|
107
|
+
* WorkerTaskState type has no `failedAt` field.
|
|
108
|
+
*/
|
|
109
|
+
failTask: (id: string, patch: {
|
|
110
|
+
failedAt: string;
|
|
111
|
+
error: string;
|
|
112
|
+
}) => void;
|
|
85
113
|
}
|
|
86
114
|
export type ChatStore = ChatStoreState & ChatStoreActions;
|
|
87
115
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-store.d.ts","sourceRoot":"","sources":["../../src/store/chat-store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,YAAY,EACZ,2BAA2B,EAC3B,OAAO,EACP,eAAe,EACf,qBAAqB,EACrB,QAAQ,EACT,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-store.d.ts","sourceRoot":"","sources":["../../src/store/chat-store.ts"],"names":[],"mappings":"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"}
|
package/dist/store/chat-store.js
CHANGED
|
@@ -1,5 +1,67 @@
|
|
|
1
1
|
import { createStore } from 'zustand/vanilla';
|
|
2
2
|
const sortByLastMessageDesc = (a, b) => b.lastMessageAt - a.lastMessageAt;
|
|
3
|
+
/**
|
|
4
|
+
* #404 backstop for prependMessages: drop optimistic (not-yet-persisted)
|
|
5
|
+
* messages that the incoming persisted page supersedes, so the same message
|
|
6
|
+
* doesn't render twice.
|
|
7
|
+
*
|
|
8
|
+
* An optimistic message has no `sequenceNumber`; a persisted one does. We pair
|
|
9
|
+
* them strictly 1:1 by (role, content): each incoming persisted message retires
|
|
10
|
+
* at most one optimistic copy, and each optimistic copy is retired at most once,
|
|
11
|
+
* so a user genuinely sending the same text twice is never collapsed below the
|
|
12
|
+
* number of persisted copies.
|
|
13
|
+
*
|
|
14
|
+
* Attachment carry-over: `mapMessage` (conversation-api.ts) does NOT map
|
|
15
|
+
* attachments onto persisted messages, so naively dropping the optimistic copy
|
|
16
|
+
* would erase an image/audio preview. When the retired optimistic copy carries
|
|
17
|
+
* attachments the persisted one lacks, we graft them onto the persisted copy.
|
|
18
|
+
*
|
|
19
|
+
* Returns the (possibly enriched) incoming list and the filtered existing list;
|
|
20
|
+
* neither input array is mutated.
|
|
21
|
+
*/
|
|
22
|
+
function reconcileOptimistic(existing, incoming) {
|
|
23
|
+
// Per (role, content): the queue of persisted incoming messages, paired in
|
|
24
|
+
// order with the optimistic copies they supersede.
|
|
25
|
+
const persistedByKey = new Map();
|
|
26
|
+
for (const m of incoming) {
|
|
27
|
+
if (typeof m.sequenceNumber !== 'number')
|
|
28
|
+
continue;
|
|
29
|
+
const key = `${m.role}:${m.content}`;
|
|
30
|
+
const q = persistedByKey.get(key);
|
|
31
|
+
if (q)
|
|
32
|
+
q.push(m);
|
|
33
|
+
else
|
|
34
|
+
persistedByKey.set(key, [m]);
|
|
35
|
+
}
|
|
36
|
+
if (persistedByKey.size === 0)
|
|
37
|
+
return { incoming, existing };
|
|
38
|
+
const consumed = new Map();
|
|
39
|
+
const grafts = new Map();
|
|
40
|
+
const filteredExisting = existing.filter((m) => {
|
|
41
|
+
if (typeof m.sequenceNumber === 'number')
|
|
42
|
+
return true; // already persisted
|
|
43
|
+
const key = `${m.role}:${m.content}`;
|
|
44
|
+
const queue = persistedByKey.get(key);
|
|
45
|
+
const used = consumed.get(key) ?? 0;
|
|
46
|
+
if (!queue || used >= queue.length)
|
|
47
|
+
return true; // no persisted copy to supersede it
|
|
48
|
+
const persisted = queue[used];
|
|
49
|
+
consumed.set(key, used + 1);
|
|
50
|
+
if (m.attachments &&
|
|
51
|
+
m.attachments.length > 0 &&
|
|
52
|
+
!(persisted.attachments && persisted.attachments.length > 0)) {
|
|
53
|
+
grafts.set(persisted, m.attachments);
|
|
54
|
+
}
|
|
55
|
+
return false; // optimistic copy superseded by the persisted one
|
|
56
|
+
});
|
|
57
|
+
if (grafts.size === 0)
|
|
58
|
+
return { incoming, existing: filteredExisting };
|
|
59
|
+
const enrichedIncoming = incoming.map((m) => {
|
|
60
|
+
const att = grafts.get(m);
|
|
61
|
+
return att ? { ...m, attachments: att } : m;
|
|
62
|
+
});
|
|
63
|
+
return { incoming: enrichedIncoming, existing: filteredExisting };
|
|
64
|
+
}
|
|
3
65
|
/** Find the index of the last assistant message with status='streaming'. */
|
|
4
66
|
function findStreamingAssistantIndex(list) {
|
|
5
67
|
for (let i = list.length - 1; i >= 0; i -= 1) {
|
|
@@ -51,6 +113,7 @@ export function createChatStore(opts) {
|
|
|
51
113
|
pendingQuestion: null,
|
|
52
114
|
pendingApprovals: [],
|
|
53
115
|
processingConversationIds: new Set(),
|
|
116
|
+
tasks: [],
|
|
54
117
|
// === actions ===
|
|
55
118
|
setConnectionState: (state) => {
|
|
56
119
|
// Edge-trigger guard: fire restore replay only on transitions INTO 'connected'
|
|
@@ -85,6 +148,21 @@ export function createChatStore(opts) {
|
|
|
85
148
|
}),
|
|
86
149
|
addConversation: (conversation) => set((s) => ({
|
|
87
150
|
conversations: [conversation, ...s.conversations].sort(sortByLastMessageDesc),
|
|
151
|
+
// #404: seed the auto-load gate from the conversation's own
|
|
152
|
+
// messageCount. A freshly created conversation (messageCount 0) has no
|
|
153
|
+
// server-side history to paginate, so we close the gate — otherwise
|
|
154
|
+
// `loadHistory` and the consuming app's auto-load effect fetch and
|
|
155
|
+
// re-inject the just-sent message, whose persisted copy races the
|
|
156
|
+
// optimistic echo into a duplicate bubble. A conversation added with
|
|
157
|
+
// existing messages (e.g. a server-seeded/onboarding conversation,
|
|
158
|
+
// messageCount > 0) keeps the gate open so its real history still loads.
|
|
159
|
+
// (After a refresh conversations re-enter via
|
|
160
|
+
// session_ready/mergeConversations, which leave hasMoreHistory unset →
|
|
161
|
+
// selector default `true`.)
|
|
162
|
+
hasMoreHistory: {
|
|
163
|
+
...s.hasMoreHistory,
|
|
164
|
+
[conversation.id]: conversation.messageCount > 0,
|
|
165
|
+
},
|
|
88
166
|
})),
|
|
89
167
|
removeConversation: (conversationId) => set((s) => {
|
|
90
168
|
const { [conversationId]: _m, ...restMsgs } = s.messages;
|
|
@@ -155,10 +233,35 @@ export function createChatStore(opts) {
|
|
|
155
233
|
}),
|
|
156
234
|
setCurrentConversationId: (id) => {
|
|
157
235
|
if (id === null) {
|
|
158
|
-
|
|
236
|
+
// No active conversation → no global thinking/streaming surface to show.
|
|
237
|
+
set({
|
|
238
|
+
currentConversationId: null,
|
|
239
|
+
latestRestoreRequestId: null,
|
|
240
|
+
isStreaming: false,
|
|
241
|
+
isThinking: false,
|
|
242
|
+
});
|
|
159
243
|
return;
|
|
160
244
|
}
|
|
161
|
-
|
|
245
|
+
// #90: global isStreaming/isThinking only behave as "active-conversation
|
|
246
|
+
// scoped" because every WRITE is gated on currentConversationId (Spec 六).
|
|
247
|
+
// That gating handles the background→foreground direction, but switching
|
|
248
|
+
// the active conversation must RE-DERIVE these flags for the new
|
|
249
|
+
// conversation — otherwise the previously-active conversation's in-flight
|
|
250
|
+
// thinking/streaming state bleeds into the newly-focused window (and a
|
|
251
|
+
// later background finish, also gated, never clears it). Re-derive from
|
|
252
|
+
// the authoritative per-conversation `processingConversationIds` set plus
|
|
253
|
+
// whether visible streamed text already exists.
|
|
254
|
+
set((s) => {
|
|
255
|
+
const processing = s.processingConversationIds.has(id);
|
|
256
|
+
const list = s.messages[id] ?? [];
|
|
257
|
+
const idx = findStreamingAssistantIndex(list);
|
|
258
|
+
const hasStreamedText = idx !== -1 && (list[idx]?.content.length ?? 0) > 0;
|
|
259
|
+
return {
|
|
260
|
+
currentConversationId: id,
|
|
261
|
+
isStreaming: processing && hasStreamedText,
|
|
262
|
+
isThinking: processing && !hasStreamedText,
|
|
263
|
+
};
|
|
264
|
+
});
|
|
162
265
|
if (gatewayClient?.isConnected()) {
|
|
163
266
|
const requestId = `${Date.now()}-${++restoreRequestSeq}`;
|
|
164
267
|
set({ latestRestoreRequestId: requestId });
|
|
@@ -268,10 +371,22 @@ export function createChatStore(opts) {
|
|
|
268
371
|
setCurrentChatError: (error) => set({ currentChatError: error }),
|
|
269
372
|
prependMessages: (conversationId, messages) => set((s) => {
|
|
270
373
|
const list = s.messages[conversationId] ?? [];
|
|
374
|
+
// #404 backstop: an incoming persisted page can re-introduce a message
|
|
375
|
+
// we already hold as an optimistic echo (different id, no
|
|
376
|
+
// sequenceNumber yet) — e.g. paginating a conversation we've also sent
|
|
377
|
+
// into this session. Drop the optimistic copies the persisted page
|
|
378
|
+
// supersedes so the same message doesn't render twice.
|
|
379
|
+
//
|
|
380
|
+
// Strict 1:1 by (role, content): each persisted message consumes at
|
|
381
|
+
// most one optimistic match, and each optimistic message is matched at
|
|
382
|
+
// most once. A user genuinely sending the same text twice (two
|
|
383
|
+
// optimistic copies) against a single persisted echo keeps one
|
|
384
|
+
// optimistic copy — we never over-merge.
|
|
385
|
+
const { incoming, existing } = reconcileOptimistic(list, messages);
|
|
271
386
|
return {
|
|
272
387
|
messages: {
|
|
273
388
|
...s.messages,
|
|
274
|
-
[conversationId]: [...
|
|
389
|
+
[conversationId]: [...incoming, ...existing],
|
|
275
390
|
},
|
|
276
391
|
};
|
|
277
392
|
}),
|
|
@@ -303,6 +418,56 @@ export function createChatStore(opts) {
|
|
|
303
418
|
return {};
|
|
304
419
|
return { processingConversationIds: new Set() };
|
|
305
420
|
}),
|
|
421
|
+
// === COO tasks ===
|
|
422
|
+
setTasks: (tasks) => set({ tasks }),
|
|
423
|
+
upsertTask: ({ id, name, startedAt }) => set((s) => {
|
|
424
|
+
const row = { id, name, status: 'running', startedAt };
|
|
425
|
+
const idx = s.tasks.findIndex((t) => t.id === id);
|
|
426
|
+
if (idx === -1) {
|
|
427
|
+
return { tasks: [...s.tasks, row] };
|
|
428
|
+
}
|
|
429
|
+
const next = [...s.tasks];
|
|
430
|
+
next[idx] = row;
|
|
431
|
+
return { tasks: next };
|
|
432
|
+
}),
|
|
433
|
+
completeTask: (id, patch) => set((s) => {
|
|
434
|
+
const idx = s.tasks.findIndex((t) => t.id === id);
|
|
435
|
+
const base = idx !== -1
|
|
436
|
+
? { ...s.tasks[idx] }
|
|
437
|
+
: { id, name: '', status: 'running', startedAt: '' };
|
|
438
|
+
const completed = {
|
|
439
|
+
...base,
|
|
440
|
+
status: 'completed',
|
|
441
|
+
completedAt: patch.completedAt,
|
|
442
|
+
result: patch.result,
|
|
443
|
+
};
|
|
444
|
+
if (idx === -1) {
|
|
445
|
+
return { tasks: [...s.tasks, completed] };
|
|
446
|
+
}
|
|
447
|
+
const next = [...s.tasks];
|
|
448
|
+
next[idx] = completed;
|
|
449
|
+
return { tasks: next };
|
|
450
|
+
}),
|
|
451
|
+
failTask: (id, patch) => set((s) => {
|
|
452
|
+
const idx = s.tasks.findIndex((t) => t.id === id);
|
|
453
|
+
const base = idx !== -1
|
|
454
|
+
? { ...s.tasks[idx] }
|
|
455
|
+
: { id, name: '', status: 'running', startedAt: '' };
|
|
456
|
+
const failed = {
|
|
457
|
+
...base,
|
|
458
|
+
status: 'failed',
|
|
459
|
+
// failedAt (WS delta) → stored as completedAt for terminal timestamp ordering.
|
|
460
|
+
// WorkerTaskState has no failedAt field; this preserves the timestamp.
|
|
461
|
+
completedAt: patch.failedAt,
|
|
462
|
+
error: patch.error,
|
|
463
|
+
};
|
|
464
|
+
if (idx === -1) {
|
|
465
|
+
return { tasks: [...s.tasks, failed] };
|
|
466
|
+
}
|
|
467
|
+
const next = [...s.tasks];
|
|
468
|
+
next[idx] = failed;
|
|
469
|
+
return { tasks: next };
|
|
470
|
+
}),
|
|
306
471
|
}));
|
|
307
472
|
}
|
|
308
473
|
//# sourceMappingURL=chat-store.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-store.js","sourceRoot":"","sources":["../../src/store/chat-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat-store.js","sourceRoot":"","sources":["../../src/store/chat-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { AuthFetch, TasksProvider } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Default TasksProvider backed by the gateway's
|
|
4
|
+
* `GET /api/sessions/{sessionId}/tasks` endpoint.
|
|
5
|
+
*
|
|
6
|
+
* @param gatewayBaseUrl Gateway origin (e.g. `https://gateway.example.com`).
|
|
7
|
+
* Trailing slash tolerated.
|
|
8
|
+
* @param authenticatedFetch Bearer-token-attaching fetch (typically from
|
|
9
|
+
* `@optima-chat/agentic-auth`'s
|
|
10
|
+
* `createAuthenticatedFetch`).
|
|
11
|
+
*/
|
|
12
|
+
export declare function createDefaultTasksProvider(gatewayBaseUrl: string, authenticatedFetch: AuthFetch): TasksProvider;
|
|
13
|
+
//# sourceMappingURL=default-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-provider.d.ts","sourceRoot":"","sources":["../../src/tasks/default-provider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3D;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACxC,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,SAAS,GAC5B,aAAa,CAmBf"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default TasksProvider backed by the gateway's
|
|
3
|
+
* `GET /api/sessions/{sessionId}/tasks` endpoint.
|
|
4
|
+
*
|
|
5
|
+
* @param gatewayBaseUrl Gateway origin (e.g. `https://gateway.example.com`).
|
|
6
|
+
* Trailing slash tolerated.
|
|
7
|
+
* @param authenticatedFetch Bearer-token-attaching fetch (typically from
|
|
8
|
+
* `@optima-chat/agentic-auth`'s
|
|
9
|
+
* `createAuthenticatedFetch`).
|
|
10
|
+
*/
|
|
11
|
+
export function createDefaultTasksProvider(gatewayBaseUrl, authenticatedFetch) {
|
|
12
|
+
const base = gatewayBaseUrl.endsWith('/') ? gatewayBaseUrl.slice(0, -1) : gatewayBaseUrl;
|
|
13
|
+
return {
|
|
14
|
+
async listTasks(sessionId, opts) {
|
|
15
|
+
const path = `/api/sessions/${sessionId}/tasks`;
|
|
16
|
+
const url = opts?.kind !== undefined
|
|
17
|
+
? `${base}${path}?kind=${encodeURIComponent(opts.kind)}`
|
|
18
|
+
: `${base}${path}`;
|
|
19
|
+
const res = await authenticatedFetch(url, { method: 'GET' });
|
|
20
|
+
if (!res.ok) {
|
|
21
|
+
throw new Error(`listTasks failed: ${res.status}`);
|
|
22
|
+
}
|
|
23
|
+
const body = (await res.json());
|
|
24
|
+
return body.tasks;
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=default-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default-provider.js","sourceRoot":"","sources":["../../src/tasks/default-provider.ts"],"names":[],"mappings":"AAGA;;;;;;;;;GASG;AACH,MAAM,UAAU,0BAA0B,CACxC,cAAsB,EACtB,kBAA6B;IAE7B,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;IAEzF,OAAO;QACL,KAAK,CAAC,SAAS,CAAC,SAAiB,EAAE,IAAgC;YACjE,MAAM,IAAI,GAAG,iBAAiB,SAAS,QAAQ,CAAC;YAChD,MAAM,GAAG,GACP,IAAI,EAAE,IAAI,KAAK,SAAS;gBACtB,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,SAAS,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACxD,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;YAEvB,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAC7D,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;YACrD,CAAC;YACD,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAiC,CAAC;YAChE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { WorkerTaskState, WorkerTaskKind } from '@optima-chat/gateway-protocol';
|
|
2
|
+
/**
|
|
3
|
+
* Authenticated fetch — structural alias matching the workspace-provider pattern.
|
|
4
|
+
* NOT `typeof fetch`; the consumer-supplied function must attach Bearer tokens.
|
|
5
|
+
*/
|
|
6
|
+
export type AuthFetch = (url: string, init?: RequestInit) => Promise<Response>;
|
|
7
|
+
/**
|
|
8
|
+
* Consumer-supplied abstraction for session task operations. The default
|
|
9
|
+
* implementation (`createDefaultTasksProvider`) targets the gateway's
|
|
10
|
+
* `/api/sessions/{sessionId}/tasks` endpoint.
|
|
11
|
+
*/
|
|
12
|
+
export interface TasksProvider {
|
|
13
|
+
listTasks(sessionId: string, opts?: {
|
|
14
|
+
kind?: WorkerTaskKind;
|
|
15
|
+
}): Promise<WorkerTaskState[]>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* NormalizedTask — REST WorkerTaskState + optional `stale` flag.
|
|
19
|
+
* The `stale` flag is set by B4 (useTasks) when the REST snapshot may be
|
|
20
|
+
* out-of-date relative to live WS events.
|
|
21
|
+
*/
|
|
22
|
+
export type NormalizedTask = WorkerTaskState & {
|
|
23
|
+
stale?: boolean;
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tasks/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAErF;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE/E;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,cAAc,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;CAC5F;AAED;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tasks/types.ts"],"names":[],"mappings":""}
|
package/dist/types.d.ts
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import type { ServerEvent, ClientEvent, FinishInfo, Question, ApprovalRequest, ApprovalResponse, TokenProgress, BillingError, ToolResultContentBlock } from '@optima-chat/gateway-protocol';
|
|
10
10
|
import type { WorkspaceProvider } from './workspace/types.js';
|
|
11
|
+
import type { TasksProvider } from './tasks/types.js';
|
|
11
12
|
/** WebSocket connection lifecycle state. */
|
|
12
13
|
export type ConnectionState = 'connecting' | 'connected' | 'reconnecting' | 'disconnected' | 'auth_failed';
|
|
13
14
|
/** Message lifecycle status. */
|
|
@@ -122,11 +123,19 @@ export interface UploadResult {
|
|
|
122
123
|
url: string;
|
|
123
124
|
mediaType: string;
|
|
124
125
|
}
|
|
126
|
+
/**
|
|
127
|
+
* Optional argument shape passed to `tokenProvider`. Reserved for future
|
|
128
|
+
* growth; currently only `forceRefresh` is honored. When set, the consumer's
|
|
129
|
+
* token provider should bypass any cached/short-circuit token and refresh.
|
|
130
|
+
*/
|
|
131
|
+
export interface TokenProviderOpts {
|
|
132
|
+
forceRefresh?: boolean;
|
|
133
|
+
}
|
|
125
134
|
/** Props for <ChatProvider>. */
|
|
126
135
|
export interface ChatProviderProps {
|
|
127
136
|
children: React.ReactNode;
|
|
128
137
|
gatewayUrl: string;
|
|
129
|
-
tokenProvider: () => Promise<string> | string;
|
|
138
|
+
tokenProvider: (opts?: TokenProviderOpts) => Promise<string> | string;
|
|
130
139
|
authenticatedFetch: (url: string, init?: RequestInit) => Promise<Response>;
|
|
131
140
|
/**
|
|
132
141
|
* Optional. If provided, the SDK subscribes to access-token changes and
|
|
@@ -184,6 +193,7 @@ export interface ChatProviderProps {
|
|
|
184
193
|
*/
|
|
185
194
|
onBeforeSend?: (event: ClientEvent) => ClientEvent | null | undefined | void;
|
|
186
195
|
workspaceProvider?: WorkspaceProvider;
|
|
196
|
+
tasksProvider?: TasksProvider;
|
|
187
197
|
reconnectOptions?: {
|
|
188
198
|
/** Default 5. */
|
|
189
199
|
maxRetries?: number;
|