@agenticc/core 1.0.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/LICENSE +21 -0
- package/README.md +370 -0
- package/README.zh-CN.md +372 -0
- package/dist/audit/index.d.ts +9 -0
- package/dist/audit/index.d.ts.map +1 -0
- package/dist/audit/index.js +9 -0
- package/dist/audit/index.js.map +1 -0
- package/dist/audit/logger.d.ts +211 -0
- package/dist/audit/logger.d.ts.map +1 -0
- package/dist/audit/logger.js +268 -0
- package/dist/audit/logger.js.map +1 -0
- package/dist/audit/query.d.ts +164 -0
- package/dist/audit/query.d.ts.map +1 -0
- package/dist/audit/query.js +250 -0
- package/dist/audit/query.js.map +1 -0
- package/dist/conversation/context-builder.d.ts +119 -0
- package/dist/conversation/context-builder.d.ts.map +1 -0
- package/dist/conversation/context-builder.js +252 -0
- package/dist/conversation/context-builder.js.map +1 -0
- package/dist/conversation/index.d.ts +10 -0
- package/dist/conversation/index.d.ts.map +1 -0
- package/dist/conversation/index.js +10 -0
- package/dist/conversation/index.js.map +1 -0
- package/dist/conversation/message-store.d.ts +231 -0
- package/dist/conversation/message-store.d.ts.map +1 -0
- package/dist/conversation/message-store.js +404 -0
- package/dist/conversation/message-store.js.map +1 -0
- package/dist/conversation/session.d.ts +201 -0
- package/dist/conversation/session.d.ts.map +1 -0
- package/dist/conversation/session.js +285 -0
- package/dist/conversation/session.js.map +1 -0
- package/dist/core/agent.d.ts +277 -0
- package/dist/core/agent.d.ts.map +1 -0
- package/dist/core/agent.js +674 -0
- package/dist/core/agent.js.map +1 -0
- package/dist/core/agentic-loop.d.ts +98 -0
- package/dist/core/agentic-loop.d.ts.map +1 -0
- package/dist/core/agentic-loop.js +496 -0
- package/dist/core/agentic-loop.js.map +1 -0
- package/dist/core/index.d.ts +14 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +14 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/intent-parser.d.ts +101 -0
- package/dist/core/intent-parser.d.ts.map +1 -0
- package/dist/core/intent-parser.js +221 -0
- package/dist/core/intent-parser.js.map +1 -0
- package/dist/core/plan-generator.d.ts +133 -0
- package/dist/core/plan-generator.d.ts.map +1 -0
- package/dist/core/plan-generator.js +294 -0
- package/dist/core/plan-generator.js.map +1 -0
- package/dist/core/plugin-manager.d.ts +120 -0
- package/dist/core/plugin-manager.d.ts.map +1 -0
- package/dist/core/plugin-manager.js +369 -0
- package/dist/core/plugin-manager.js.map +1 -0
- package/dist/core/response-handler.d.ts +141 -0
- package/dist/core/response-handler.d.ts.map +1 -0
- package/dist/core/response-handler.js +384 -0
- package/dist/core/response-handler.js.map +1 -0
- package/dist/core/tool-executor.d.ts +143 -0
- package/dist/core/tool-executor.d.ts.map +1 -0
- package/dist/core/tool-executor.js +354 -0
- package/dist/core/tool-executor.js.map +1 -0
- package/dist/core/tool-registry.d.ts +133 -0
- package/dist/core/tool-registry.d.ts.map +1 -0
- package/dist/core/tool-registry.js +252 -0
- package/dist/core/tool-registry.js.map +1 -0
- package/dist/index.d.ts +44 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +47 -0
- package/dist/index.js.map +1 -0
- package/dist/knowledge/chunker.d.ts +78 -0
- package/dist/knowledge/chunker.d.ts.map +1 -0
- package/dist/knowledge/chunker.js +233 -0
- package/dist/knowledge/chunker.js.map +1 -0
- package/dist/knowledge/embedder.d.ts +93 -0
- package/dist/knowledge/embedder.d.ts.map +1 -0
- package/dist/knowledge/embedder.js +205 -0
- package/dist/knowledge/embedder.js.map +1 -0
- package/dist/knowledge/index.d.ts +10 -0
- package/dist/knowledge/index.d.ts.map +1 -0
- package/dist/knowledge/index.js +11 -0
- package/dist/knowledge/index.js.map +1 -0
- package/dist/knowledge/loaders/index.d.ts +10 -0
- package/dist/knowledge/loaders/index.d.ts.map +1 -0
- package/dist/knowledge/loaders/index.js +10 -0
- package/dist/knowledge/loaders/index.js.map +1 -0
- package/dist/knowledge/loaders/markdown.d.ts +88 -0
- package/dist/knowledge/loaders/markdown.d.ts.map +1 -0
- package/dist/knowledge/loaders/markdown.js +205 -0
- package/dist/knowledge/loaders/markdown.js.map +1 -0
- package/dist/knowledge/loaders/yaml.d.ts +112 -0
- package/dist/knowledge/loaders/yaml.d.ts.map +1 -0
- package/dist/knowledge/loaders/yaml.js +368 -0
- package/dist/knowledge/loaders/yaml.js.map +1 -0
- package/dist/knowledge/retriever.d.ts +144 -0
- package/dist/knowledge/retriever.d.ts.map +1 -0
- package/dist/knowledge/retriever.js +399 -0
- package/dist/knowledge/retriever.js.map +1 -0
- package/dist/knowledge/store.d.ts +146 -0
- package/dist/knowledge/store.d.ts.map +1 -0
- package/dist/knowledge/store.js +420 -0
- package/dist/knowledge/store.js.map +1 -0
- package/dist/llm/adapter.d.ts +194 -0
- package/dist/llm/adapter.d.ts.map +1 -0
- package/dist/llm/adapter.js +42 -0
- package/dist/llm/adapter.js.map +1 -0
- package/dist/llm/adapters/anyrouter.d.ts +84 -0
- package/dist/llm/adapters/anyrouter.d.ts.map +1 -0
- package/dist/llm/adapters/anyrouter.js +372 -0
- package/dist/llm/adapters/anyrouter.js.map +1 -0
- package/dist/llm/adapters/claude.d.ts +66 -0
- package/dist/llm/adapters/claude.d.ts.map +1 -0
- package/dist/llm/adapters/claude.js +323 -0
- package/dist/llm/adapters/claude.js.map +1 -0
- package/dist/llm/adapters/index.d.ts +12 -0
- package/dist/llm/adapters/index.d.ts.map +1 -0
- package/dist/llm/adapters/index.js +12 -0
- package/dist/llm/adapters/index.js.map +1 -0
- package/dist/llm/adapters/mimo.d.ts +85 -0
- package/dist/llm/adapters/mimo.d.ts.map +1 -0
- package/dist/llm/adapters/mimo.js +316 -0
- package/dist/llm/adapters/mimo.js.map +1 -0
- package/dist/llm/adapters/openai.d.ts +53 -0
- package/dist/llm/adapters/openai.d.ts.map +1 -0
- package/dist/llm/adapters/openai.js +293 -0
- package/dist/llm/adapters/openai.js.map +1 -0
- package/dist/llm/adapters/qwen.d.ts +53 -0
- package/dist/llm/adapters/qwen.d.ts.map +1 -0
- package/dist/llm/adapters/qwen.js +299 -0
- package/dist/llm/adapters/qwen.js.map +1 -0
- package/dist/llm/adapters/siliconflow.d.ts +69 -0
- package/dist/llm/adapters/siliconflow.d.ts.map +1 -0
- package/dist/llm/adapters/siliconflow.js +331 -0
- package/dist/llm/adapters/siliconflow.js.map +1 -0
- package/dist/llm/index.d.ts +9 -0
- package/dist/llm/index.d.ts.map +1 -0
- package/dist/llm/index.js +12 -0
- package/dist/llm/index.js.map +1 -0
- package/dist/llm/manager.d.ts +97 -0
- package/dist/llm/manager.d.ts.map +1 -0
- package/dist/llm/manager.js +337 -0
- package/dist/llm/manager.js.map +1 -0
- package/dist/test-utils/arbitraries.d.ts +230 -0
- package/dist/test-utils/arbitraries.d.ts.map +1 -0
- package/dist/test-utils/arbitraries.js +280 -0
- package/dist/test-utils/arbitraries.js.map +1 -0
- package/dist/test-utils/cleanup.d.ts +184 -0
- package/dist/test-utils/cleanup.d.ts.map +1 -0
- package/dist/test-utils/cleanup.js +282 -0
- package/dist/test-utils/cleanup.js.map +1 -0
- package/dist/test-utils/config.d.ts +80 -0
- package/dist/test-utils/config.d.ts.map +1 -0
- package/dist/test-utils/config.js +94 -0
- package/dist/test-utils/config.js.map +1 -0
- package/dist/test-utils/index.d.ts +10 -0
- package/dist/test-utils/index.d.ts.map +1 -0
- package/dist/test-utils/index.js +36 -0
- package/dist/test-utils/index.js.map +1 -0
- package/dist/test-utils/mocks.d.ts +170 -0
- package/dist/test-utils/mocks.d.ts.map +1 -0
- package/dist/test-utils/mocks.js +281 -0
- package/dist/test-utils/mocks.js.map +1 -0
- package/dist/types/config.d.ts +170 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +120 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/knowledge.d.ts +95 -0
- package/dist/types/knowledge.d.ts.map +1 -0
- package/dist/types/knowledge.js +7 -0
- package/dist/types/knowledge.js.map +1 -0
- package/dist/types/loop.d.ts +148 -0
- package/dist/types/loop.d.ts.map +1 -0
- package/dist/types/loop.js +16 -0
- package/dist/types/loop.js.map +1 -0
- package/dist/types/plugin.d.ts +137 -0
- package/dist/types/plugin.d.ts.map +1 -0
- package/dist/types/plugin.js +15 -0
- package/dist/types/plugin.js.map +1 -0
- package/dist/types/response.d.ts +186 -0
- package/dist/types/response.d.ts.map +1 -0
- package/dist/types/response.js +99 -0
- package/dist/types/response.js.map +1 -0
- package/dist/types/streaming.d.ts +478 -0
- package/dist/types/streaming.d.ts.map +1 -0
- package/dist/types/streaming.js +483 -0
- package/dist/types/streaming.js.map +1 -0
- package/dist/types/tool.d.ts +118 -0
- package/dist/types/tool.d.ts.map +1 -0
- package/dist/types/tool.js +42 -0
- package/dist/types/tool.js.map +1 -0
- package/dist/utils/error.d.ts +22 -0
- package/dist/utils/error.d.ts.map +1 -0
- package/dist/utils/error.js +36 -0
- package/dist/utils/error.js.map +1 -0
- package/package.json +102 -0
|
@@ -0,0 +1,478 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Streaming Response Type Definitions
|
|
3
|
+
*
|
|
4
|
+
* Defines the interfaces for Server-Sent Events (SSE) streaming responses.
|
|
5
|
+
* Used for real-time feedback during long-running AI assistant operations.
|
|
6
|
+
*
|
|
7
|
+
* Requirements: 1.1, 1.2, 1.3, 1.4, 1.5, 2.3, 2.4, 3.1, 3.2, 3.3, 3.4, 3.5, 8.1, 8.2, 8.4, 10.4
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* All possible SSE event types
|
|
11
|
+
*/
|
|
12
|
+
export declare const SSE_EVENT_TYPES: readonly ["processing_started", "iteration_started", "iteration_completed", "content_chunk", "tool_call_started", "tool_call_completed", "tool_error", "knowledge_retrieved", "confirmation_check", "decision", "completed", "error", "cancelled", "heartbeat", "max_iterations"];
|
|
13
|
+
/**
|
|
14
|
+
* SSE event type literal union
|
|
15
|
+
*/
|
|
16
|
+
export type SSEEventType = (typeof SSE_EVENT_TYPES)[number];
|
|
17
|
+
/**
|
|
18
|
+
* Base event structure for all SSE events
|
|
19
|
+
*/
|
|
20
|
+
export interface SSEEventBase {
|
|
21
|
+
/** Unique event ID for resumption support */
|
|
22
|
+
id: string;
|
|
23
|
+
/** Event type identifier */
|
|
24
|
+
type: SSEEventType;
|
|
25
|
+
/** Unix timestamp in milliseconds */
|
|
26
|
+
timestamp: number;
|
|
27
|
+
/** Session ID this event belongs to */
|
|
28
|
+
sessionId: string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Event sent when processing starts
|
|
32
|
+
* Requirement: 1.1
|
|
33
|
+
*/
|
|
34
|
+
export interface ProcessingStartedEvent extends SSEEventBase {
|
|
35
|
+
type: 'processing_started';
|
|
36
|
+
data: {
|
|
37
|
+
/** ID of the message being processed */
|
|
38
|
+
messageId: string;
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Event sent when an agentic loop iteration begins
|
|
43
|
+
* Requirement: 1.2
|
|
44
|
+
*/
|
|
45
|
+
export interface IterationStartedEvent extends SSEEventBase {
|
|
46
|
+
type: 'iteration_started';
|
|
47
|
+
data: {
|
|
48
|
+
/** Current iteration number (1-indexed) */
|
|
49
|
+
iteration: number;
|
|
50
|
+
/** Maximum allowed iterations */
|
|
51
|
+
maxIterations: number;
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Event sent when an agentic loop iteration completes
|
|
56
|
+
* Requirement: 3.4
|
|
57
|
+
*/
|
|
58
|
+
export interface IterationCompletedEvent extends SSEEventBase {
|
|
59
|
+
type: 'iteration_completed';
|
|
60
|
+
data: {
|
|
61
|
+
/** Completed iteration number */
|
|
62
|
+
iteration: number;
|
|
63
|
+
/** Duration of the iteration in milliseconds */
|
|
64
|
+
duration: number;
|
|
65
|
+
/** Number of tool calls made in this iteration */
|
|
66
|
+
toolCallCount: number;
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Event sent for each content chunk during streaming
|
|
71
|
+
* Requirement: 1.5, 3.3
|
|
72
|
+
*/
|
|
73
|
+
export interface ContentChunkEvent extends SSEEventBase {
|
|
74
|
+
type: 'content_chunk';
|
|
75
|
+
data: {
|
|
76
|
+
/** Partial content chunk */
|
|
77
|
+
content: string;
|
|
78
|
+
/** Whether this is the final chunk */
|
|
79
|
+
isComplete: boolean;
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Event sent when a tool call starts
|
|
84
|
+
* Requirement: 1.3
|
|
85
|
+
*/
|
|
86
|
+
export interface ToolCallStartedEvent extends SSEEventBase {
|
|
87
|
+
type: 'tool_call_started';
|
|
88
|
+
data: {
|
|
89
|
+
/** Unique ID for this tool call */
|
|
90
|
+
toolCallId: string;
|
|
91
|
+
/** Name of the tool being called */
|
|
92
|
+
toolName: string;
|
|
93
|
+
/** Arguments passed to the tool */
|
|
94
|
+
arguments: Record<string, unknown>;
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Event sent when a tool call completes successfully
|
|
99
|
+
* Requirement: 1.4
|
|
100
|
+
*/
|
|
101
|
+
export interface ToolCallCompletedEvent extends SSEEventBase {
|
|
102
|
+
type: 'tool_call_completed';
|
|
103
|
+
data: {
|
|
104
|
+
/** ID of the completed tool call */
|
|
105
|
+
toolCallId: string;
|
|
106
|
+
/** Name of the tool that was called */
|
|
107
|
+
toolName: string;
|
|
108
|
+
/** Whether the tool execution was successful */
|
|
109
|
+
success: boolean;
|
|
110
|
+
/** Duration of the tool call in milliseconds */
|
|
111
|
+
duration: number;
|
|
112
|
+
/** Result of the tool execution (optional, may be omitted for large results) */
|
|
113
|
+
result?: unknown;
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Event sent when a tool call fails
|
|
118
|
+
* Requirement: 8.2
|
|
119
|
+
*/
|
|
120
|
+
export interface ToolErrorEvent extends SSEEventBase {
|
|
121
|
+
type: 'tool_error';
|
|
122
|
+
data: {
|
|
123
|
+
/** ID of the failed tool call */
|
|
124
|
+
toolCallId: string;
|
|
125
|
+
/** Name of the tool that failed */
|
|
126
|
+
toolName: string;
|
|
127
|
+
/** Error message */
|
|
128
|
+
error: string;
|
|
129
|
+
/** Whether processing can continue after this error */
|
|
130
|
+
recoverable: boolean;
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Event sent when knowledge is retrieved
|
|
135
|
+
* Requirement: 3.1
|
|
136
|
+
*/
|
|
137
|
+
export interface KnowledgeRetrievedEvent extends SSEEventBase {
|
|
138
|
+
type: 'knowledge_retrieved';
|
|
139
|
+
data: {
|
|
140
|
+
/** Number of documents retrieved */
|
|
141
|
+
documentCount: number;
|
|
142
|
+
/** Categories of retrieved documents */
|
|
143
|
+
categories: string[];
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Event sent when confirmation is being checked
|
|
148
|
+
* Requirement: 3.2
|
|
149
|
+
*/
|
|
150
|
+
export interface ConfirmationCheckEvent extends SSEEventBase {
|
|
151
|
+
type: 'confirmation_check';
|
|
152
|
+
data: {
|
|
153
|
+
/** Description of what needs confirmation */
|
|
154
|
+
description: string;
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Event sent when the agent decides to stop iterating
|
|
159
|
+
* Requirement: 3.5
|
|
160
|
+
*/
|
|
161
|
+
export interface DecisionEvent extends SSEEventBase {
|
|
162
|
+
type: 'decision';
|
|
163
|
+
data: {
|
|
164
|
+
/** Reason for stopping */
|
|
165
|
+
reason: string;
|
|
166
|
+
/** Whether the task was completed successfully */
|
|
167
|
+
completed: boolean;
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Event sent when processing completes successfully
|
|
172
|
+
* Requirement: 2.3
|
|
173
|
+
*/
|
|
174
|
+
export interface CompletedEvent extends SSEEventBase {
|
|
175
|
+
type: 'completed';
|
|
176
|
+
data: {
|
|
177
|
+
/** ID of the completed message */
|
|
178
|
+
messageId: string;
|
|
179
|
+
/** Total processing duration in milliseconds */
|
|
180
|
+
totalDuration: number;
|
|
181
|
+
/** Number of iterations executed */
|
|
182
|
+
iterations: number;
|
|
183
|
+
/** Total number of tool calls made */
|
|
184
|
+
toolCalls: number;
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Event sent when maximum iterations are reached
|
|
189
|
+
* Requirement: 2.5
|
|
190
|
+
*/
|
|
191
|
+
export interface MaxIterationsEvent extends SSEEventBase {
|
|
192
|
+
type: 'max_iterations';
|
|
193
|
+
data: {
|
|
194
|
+
/** Number of iterations executed */
|
|
195
|
+
iterations: number;
|
|
196
|
+
/** Partial content generated so far */
|
|
197
|
+
partialContent?: string;
|
|
198
|
+
};
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Event sent when an error occurs
|
|
202
|
+
* Requirement: 2.4, 8.1, 8.4
|
|
203
|
+
*/
|
|
204
|
+
export interface ErrorEvent extends SSEEventBase {
|
|
205
|
+
type: 'error';
|
|
206
|
+
data: {
|
|
207
|
+
/** Error code for programmatic handling */
|
|
208
|
+
code: StreamingErrorCode;
|
|
209
|
+
/** Human-readable error message */
|
|
210
|
+
message: string;
|
|
211
|
+
/** Whether the error is recoverable */
|
|
212
|
+
recoverable: boolean;
|
|
213
|
+
/** Additional error details */
|
|
214
|
+
details?: Record<string, unknown>;
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Event sent when processing is cancelled
|
|
219
|
+
* Requirement: 10.4
|
|
220
|
+
*/
|
|
221
|
+
export interface CancelledEvent extends SSEEventBase {
|
|
222
|
+
type: 'cancelled';
|
|
223
|
+
data: {
|
|
224
|
+
/** Reason for cancellation */
|
|
225
|
+
reason: CancellationReason;
|
|
226
|
+
/** Partial content generated before cancellation */
|
|
227
|
+
partialContent?: string;
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Event sent periodically to keep the connection alive
|
|
232
|
+
* Requirement: 2.2
|
|
233
|
+
*/
|
|
234
|
+
export interface HeartbeatEvent extends SSEEventBase {
|
|
235
|
+
type: 'heartbeat';
|
|
236
|
+
data: {
|
|
237
|
+
/** Server timestamp */
|
|
238
|
+
serverTime: number;
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Union type of all possible SSE events
|
|
243
|
+
*/
|
|
244
|
+
export type StreamEvent = ProcessingStartedEvent | IterationStartedEvent | IterationCompletedEvent | ContentChunkEvent | ToolCallStartedEvent | ToolCallCompletedEvent | ToolErrorEvent | KnowledgeRetrievedEvent | ConfirmationCheckEvent | DecisionEvent | CompletedEvent | MaxIterationsEvent | ErrorEvent | CancelledEvent | HeartbeatEvent;
|
|
245
|
+
/**
|
|
246
|
+
* Configuration for streaming behavior
|
|
247
|
+
*/
|
|
248
|
+
export interface StreamingConfig {
|
|
249
|
+
/** Whether streaming is enabled globally */
|
|
250
|
+
enabled: boolean;
|
|
251
|
+
/** Maximum streaming duration in milliseconds (default: 5 minutes) */
|
|
252
|
+
maxDuration: number;
|
|
253
|
+
/** Heartbeat interval in milliseconds (default: 15 seconds) */
|
|
254
|
+
heartbeatInterval: number;
|
|
255
|
+
/** Maximum number of concurrent streaming connections */
|
|
256
|
+
maxConcurrent: number;
|
|
257
|
+
/** Whether to enable event batching for performance */
|
|
258
|
+
enableBatching: boolean;
|
|
259
|
+
/** Batch interval in milliseconds (only used if enableBatching is true) */
|
|
260
|
+
batchInterval: number;
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* Default streaming configuration
|
|
264
|
+
*/
|
|
265
|
+
export declare const DEFAULT_STREAMING_CONFIG: StreamingConfig;
|
|
266
|
+
/**
|
|
267
|
+
* Status of a streaming session
|
|
268
|
+
*/
|
|
269
|
+
export type StreamStatus = 'active' | 'completed' | 'failed' | 'cancelled';
|
|
270
|
+
/**
|
|
271
|
+
* Context for tracking an active stream
|
|
272
|
+
*/
|
|
273
|
+
export interface StreamContext {
|
|
274
|
+
/** Unique stream identifier */
|
|
275
|
+
id: string;
|
|
276
|
+
/** Associated session ID */
|
|
277
|
+
sessionId: string;
|
|
278
|
+
/** User ID who initiated the stream */
|
|
279
|
+
userId: string;
|
|
280
|
+
/** Current stream status */
|
|
281
|
+
status: StreamStatus;
|
|
282
|
+
/** Stream start timestamp */
|
|
283
|
+
startTime: number;
|
|
284
|
+
/** Last event ID sent (for resumption) */
|
|
285
|
+
lastEventId: number;
|
|
286
|
+
/** Heartbeat timer reference */
|
|
287
|
+
heartbeatTimer?: ReturnType<typeof setInterval>;
|
|
288
|
+
/** Abort controller for cancellation */
|
|
289
|
+
abortController: AbortController;
|
|
290
|
+
/** Message ID being processed */
|
|
291
|
+
messageId?: string;
|
|
292
|
+
/** Accumulated content chunks */
|
|
293
|
+
accumulatedContent: string;
|
|
294
|
+
/** Event count for this stream */
|
|
295
|
+
eventCount: number;
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Error codes for streaming errors
|
|
299
|
+
*/
|
|
300
|
+
export declare const STREAMING_ERROR_CODES: readonly ["LLM_API_ERROR", "TOOL_EXECUTION_FAILED", "KNOWLEDGE_RETRIEVAL_FAILED", "RATE_LIMIT_EXCEEDED", "CONTEXT_LENGTH_EXCEEDED", "AGENT_CRASH", "DATABASE_ERROR", "NETWORK_ERROR", "TIMEOUT", "INVALID_REQUEST", "STREAM_CLOSED", "MAX_CONCURRENT_EXCEEDED", "UNKNOWN_ERROR"];
|
|
301
|
+
export type StreamingErrorCode = (typeof STREAMING_ERROR_CODES)[number];
|
|
302
|
+
/**
|
|
303
|
+
* Cancellation reasons
|
|
304
|
+
*/
|
|
305
|
+
export declare const CANCELLATION_REASONS: readonly ["user_cancelled", "client_disconnected", "timeout", "server_shutdown"];
|
|
306
|
+
export type CancellationReason = (typeof CANCELLATION_REASONS)[number];
|
|
307
|
+
/**
|
|
308
|
+
* Error recovery strategy
|
|
309
|
+
*/
|
|
310
|
+
export type ErrorRecoveryStrategy = 'retry' | 'continue' | 'abort';
|
|
311
|
+
/**
|
|
312
|
+
* Error handling configuration for different error types
|
|
313
|
+
*/
|
|
314
|
+
export interface ErrorHandlingConfig {
|
|
315
|
+
/** Error code */
|
|
316
|
+
code: StreamingErrorCode;
|
|
317
|
+
/** Whether this error is recoverable */
|
|
318
|
+
recoverable: boolean;
|
|
319
|
+
/** Recovery strategy to use */
|
|
320
|
+
strategy: ErrorRecoveryStrategy;
|
|
321
|
+
/** Maximum retry attempts (only for 'retry' strategy) */
|
|
322
|
+
maxRetries?: number;
|
|
323
|
+
/** Retry delay in milliseconds (only for 'retry' strategy) */
|
|
324
|
+
retryDelay?: number;
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Default error handling strategies
|
|
328
|
+
*/
|
|
329
|
+
export declare const DEFAULT_ERROR_HANDLING: Record<StreamingErrorCode, ErrorHandlingConfig>;
|
|
330
|
+
/**
|
|
331
|
+
* Type guard to check if a value is a valid SSE event type
|
|
332
|
+
*/
|
|
333
|
+
export declare function isValidSSEEventType(type: unknown): type is SSEEventType;
|
|
334
|
+
/**
|
|
335
|
+
* Type guard to check if a value is a valid streaming error code
|
|
336
|
+
*/
|
|
337
|
+
export declare function isValidStreamingErrorCode(code: unknown): code is StreamingErrorCode;
|
|
338
|
+
/**
|
|
339
|
+
* Type guard to check if a value is a valid cancellation reason
|
|
340
|
+
*/
|
|
341
|
+
export declare function isValidCancellationReason(reason: unknown): reason is CancellationReason;
|
|
342
|
+
/**
|
|
343
|
+
* Type guard for ProcessingStartedEvent
|
|
344
|
+
*/
|
|
345
|
+
export declare function isProcessingStartedEvent(event: StreamEvent): event is ProcessingStartedEvent;
|
|
346
|
+
/**
|
|
347
|
+
* Type guard for IterationStartedEvent
|
|
348
|
+
*/
|
|
349
|
+
export declare function isIterationStartedEvent(event: StreamEvent): event is IterationStartedEvent;
|
|
350
|
+
/**
|
|
351
|
+
* Type guard for IterationCompletedEvent
|
|
352
|
+
*/
|
|
353
|
+
export declare function isIterationCompletedEvent(event: StreamEvent): event is IterationCompletedEvent;
|
|
354
|
+
/**
|
|
355
|
+
* Type guard for ContentChunkEvent
|
|
356
|
+
*/
|
|
357
|
+
export declare function isContentChunkEvent(event: StreamEvent): event is ContentChunkEvent;
|
|
358
|
+
/**
|
|
359
|
+
* Type guard for ToolCallStartedEvent
|
|
360
|
+
*/
|
|
361
|
+
export declare function isToolCallStartedEvent(event: StreamEvent): event is ToolCallStartedEvent;
|
|
362
|
+
/**
|
|
363
|
+
* Type guard for ToolCallCompletedEvent
|
|
364
|
+
*/
|
|
365
|
+
export declare function isToolCallCompletedEvent(event: StreamEvent): event is ToolCallCompletedEvent;
|
|
366
|
+
/**
|
|
367
|
+
* Type guard for ToolErrorEvent
|
|
368
|
+
*/
|
|
369
|
+
export declare function isToolErrorEvent(event: StreamEvent): event is ToolErrorEvent;
|
|
370
|
+
/**
|
|
371
|
+
* Type guard for ErrorEvent
|
|
372
|
+
*/
|
|
373
|
+
export declare function isErrorEvent(event: StreamEvent): event is ErrorEvent;
|
|
374
|
+
/**
|
|
375
|
+
* Type guard for CancelledEvent
|
|
376
|
+
*/
|
|
377
|
+
export declare function isCancelledEvent(event: StreamEvent): event is CancelledEvent;
|
|
378
|
+
/**
|
|
379
|
+
* Type guard for CompletedEvent
|
|
380
|
+
*/
|
|
381
|
+
export declare function isCompletedEvent(event: StreamEvent): event is CompletedEvent;
|
|
382
|
+
/**
|
|
383
|
+
* Type guard for HeartbeatEvent
|
|
384
|
+
*/
|
|
385
|
+
export declare function isHeartbeatEvent(event: StreamEvent): event is HeartbeatEvent;
|
|
386
|
+
/**
|
|
387
|
+
* Generates a unique event ID
|
|
388
|
+
*/
|
|
389
|
+
export declare function generateEventId(): string;
|
|
390
|
+
/**
|
|
391
|
+
* Creates a ProcessingStartedEvent
|
|
392
|
+
*/
|
|
393
|
+
export declare function createProcessingStartedEvent(sessionId: string, messageId: string): ProcessingStartedEvent;
|
|
394
|
+
/**
|
|
395
|
+
* Creates an IterationStartedEvent
|
|
396
|
+
*/
|
|
397
|
+
export declare function createIterationStartedEvent(sessionId: string, iteration: number, maxIterations: number): IterationStartedEvent;
|
|
398
|
+
/**
|
|
399
|
+
* Creates an IterationCompletedEvent
|
|
400
|
+
*/
|
|
401
|
+
export declare function createIterationCompletedEvent(sessionId: string, iteration: number, duration: number, toolCallCount: number): IterationCompletedEvent;
|
|
402
|
+
/**
|
|
403
|
+
* Creates a ContentChunkEvent
|
|
404
|
+
*/
|
|
405
|
+
export declare function createContentChunkEvent(sessionId: string, content: string, isComplete: boolean): ContentChunkEvent;
|
|
406
|
+
/**
|
|
407
|
+
* Creates a ToolCallStartedEvent
|
|
408
|
+
*/
|
|
409
|
+
export declare function createToolCallStartedEvent(sessionId: string, toolCallId: string, toolName: string, args: Record<string, unknown>): ToolCallStartedEvent;
|
|
410
|
+
/**
|
|
411
|
+
* Creates a ToolCallCompletedEvent
|
|
412
|
+
*/
|
|
413
|
+
export declare function createToolCallCompletedEvent(sessionId: string, toolCallId: string, toolName: string, success: boolean, duration: number, result?: unknown): ToolCallCompletedEvent;
|
|
414
|
+
/**
|
|
415
|
+
* Creates a ToolErrorEvent
|
|
416
|
+
*/
|
|
417
|
+
export declare function createToolErrorEvent(sessionId: string, toolCallId: string, toolName: string, error: string, recoverable: boolean): ToolErrorEvent;
|
|
418
|
+
/**
|
|
419
|
+
* Creates a KnowledgeRetrievedEvent
|
|
420
|
+
*/
|
|
421
|
+
export declare function createKnowledgeRetrievedEvent(sessionId: string, documentCount: number, categories: string[]): KnowledgeRetrievedEvent;
|
|
422
|
+
/**
|
|
423
|
+
* Creates a ConfirmationCheckEvent
|
|
424
|
+
*/
|
|
425
|
+
export declare function createConfirmationCheckEvent(sessionId: string, description: string): ConfirmationCheckEvent;
|
|
426
|
+
/**
|
|
427
|
+
* Creates a DecisionEvent
|
|
428
|
+
*/
|
|
429
|
+
export declare function createDecisionEvent(sessionId: string, reason: string, completed: boolean): DecisionEvent;
|
|
430
|
+
/**
|
|
431
|
+
* Creates a CompletedEvent
|
|
432
|
+
*/
|
|
433
|
+
export declare function createCompletedEvent(sessionId: string, messageId: string, totalDuration: number, iterations: number, toolCalls: number): CompletedEvent;
|
|
434
|
+
/**
|
|
435
|
+
* Creates a MaxIterationsEvent
|
|
436
|
+
*/
|
|
437
|
+
export declare function createMaxIterationsEvent(sessionId: string, iterations: number, partialContent?: string): MaxIterationsEvent;
|
|
438
|
+
/**
|
|
439
|
+
* Creates an ErrorEvent
|
|
440
|
+
*/
|
|
441
|
+
export declare function createErrorEvent(sessionId: string, code: StreamingErrorCode, message: string, recoverable: boolean, details?: Record<string, unknown>): ErrorEvent;
|
|
442
|
+
/**
|
|
443
|
+
* Creates a CancelledEvent
|
|
444
|
+
*/
|
|
445
|
+
export declare function createCancelledEvent(sessionId: string, reason: CancellationReason, partialContent?: string): CancelledEvent;
|
|
446
|
+
/**
|
|
447
|
+
* Creates a HeartbeatEvent
|
|
448
|
+
*/
|
|
449
|
+
export declare function createHeartbeatEvent(sessionId: string): HeartbeatEvent;
|
|
450
|
+
/**
|
|
451
|
+
* Formats an SSE event for transmission
|
|
452
|
+
*/
|
|
453
|
+
export declare function formatSSEEvent(event: StreamEvent): string;
|
|
454
|
+
/**
|
|
455
|
+
* Parses an SSE event from a string
|
|
456
|
+
*/
|
|
457
|
+
export declare function parseSSEEvent(eventString: string): StreamEvent | null;
|
|
458
|
+
/**
|
|
459
|
+
* Gets the error handling configuration for an error code
|
|
460
|
+
*/
|
|
461
|
+
export declare function getErrorHandling(code: StreamingErrorCode): ErrorHandlingConfig;
|
|
462
|
+
/**
|
|
463
|
+
* Checks if an error is recoverable
|
|
464
|
+
*/
|
|
465
|
+
export declare function isRecoverableError(code: StreamingErrorCode): boolean;
|
|
466
|
+
/**
|
|
467
|
+
* Creates a new StreamContext
|
|
468
|
+
*/
|
|
469
|
+
export declare function createStreamContext(id: string, sessionId: string, userId: string): StreamContext;
|
|
470
|
+
/**
|
|
471
|
+
* Validates streaming configuration
|
|
472
|
+
*/
|
|
473
|
+
export declare function validateStreamingConfig(config: Partial<StreamingConfig>): string[];
|
|
474
|
+
/**
|
|
475
|
+
* Merges partial config with defaults
|
|
476
|
+
*/
|
|
477
|
+
export declare function mergeStreamingConfig(partial: Partial<StreamingConfig>): StreamingConfig;
|
|
478
|
+
//# sourceMappingURL=streaming.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["../../src/types/streaming.ts"],"names":[],"mappings":"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"}
|