solver-sdk 9.0.5 → 9.0.6

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/README.md CHANGED
@@ -1,11 +1,13 @@
1
- # Code Solver SDK v8.3.1
1
+ # Code Solver SDK
2
2
 
3
3
  AI-powered code analysis SDK with WorkCoins billing system. 100% typed, production ready.
4
4
 
5
5
  ## Install
6
6
 
7
7
  ```bash
8
- npm install solver-sdk@8.3.1
8
+ npm install solver-sdk@9.0.6
9
+ # или
10
+ npm install solver-sdk@latest
9
11
  ```
10
12
 
11
13
  ## Quick Start
@@ -44,7 +46,7 @@ const update = await sdk.updates.checkForUpdates({...});
44
46
  |---------|---------|--------|
45
47
  | **Projects** | 19 | ✅ Full CRUD + state |
46
48
  | **Delta Chunking** | 7 | ✅ Encrypted sync |
47
- | **Chat** | 12 | ✅ Streaming + Extended Thinking |
49
+ | **Chat** | 13 | ✅ Streaming + Extended Thinking |
48
50
  | **Search** | 4 | ✅ Vector-based |
49
51
  | **Tools** | 5 | ✅ AI tool schemas |
50
52
  | **Models** | 5 | ✅ Provider info |
@@ -53,6 +55,108 @@ const update = await sdk.updates.checkForUpdates({...});
53
55
  | **Credits** | 3 | ✅ Balance + Status + Estimates |
54
56
  | **Auth** | 2 | ✅ Token revocation + logout |
55
57
 
58
+ **Total: 66 methods** | [Full API Reference](#api-reference)
59
+
60
+ ## Quick Reference
61
+
62
+ <details>
63
+ <summary><b>Projects (19)</b> - управление проектами и индексация</summary>
64
+
65
+ ```typescript
66
+ getAllProjects() | getProject(id) | createProject(name) | deleteProject(id)
67
+ findOrCreateProject(name) | getReadyProjects() | getProjectState(id)
68
+ getProjectStatus(id) | getIndexingStatus(id) | cancelIndexing(id)
69
+ clearIndexingError(id) | getRecoveryStatus(id) | resumeSync(id)
70
+ cancelRecovery(id) | initializeDeltaSync(id) | resetIndexing(id)
71
+ restartIndexing(id) | getFilePathMapping(id)
72
+ ```
73
+ </details>
74
+
75
+ <details>
76
+ <summary><b>Chat (13)</b> - AI диалоги и streaming</summary>
77
+
78
+ ```typescript
79
+ chat(messages, options?) | chatCompletion(messages, options?)
80
+ chatWithRegionFailover(messages, options?) | streamChat(messages, options?)
81
+ streamPrompt(prompt, options?) | sendContinuation(requestId, messages)
82
+ resumeChat(requestId, messages, partialText, options?)
83
+ sendPromptWithRegionFailover(prompt, options?) | checkAvailability()
84
+ cancelRequest(requestId) | getStreamsStats() | cleanupStaleStreams()
85
+ cancelUserStreams(reason?)
86
+ ```
87
+ </details>
88
+
89
+ <details>
90
+ <summary><b>Delta Chunking (7)</b> - синхронизация файлов</summary>
91
+
92
+ ```typescript
93
+ initSync(projectId, request) | uploadChunkBatch(projectId, chunks)
94
+ uploadChunksWithRetry(projectId, chunks, options?)
95
+ finalizeSync(projectId) | getSyncStatus(projectId)
96
+ cancelSync(projectId) | cleanupFiles(projectId, activeFiles)
97
+ ```
98
+ </details>
99
+
100
+ <details>
101
+ <summary><b>Search (4)</b> - поиск кода</summary>
102
+
103
+ ```typescript
104
+ searchCode(projectId, params) | searchFunctions(projectId, params)
105
+ semanticSearch(projectId, params) | getFunctionStats(projectId)
106
+ ```
107
+ </details>
108
+
109
+ <details>
110
+ <summary><b>Tools (5)</b> - AI инструменты</summary>
111
+
112
+ ```typescript
113
+ getSchemas() | findToolByName(name) | getToolsStats()
114
+ validateToolSchema(tool) | createToolSchema(name, desc, props, required?)
115
+ ```
116
+ </details>
117
+
118
+ <details>
119
+ <summary><b>Models (5)</b> - AI модели</summary>
120
+
121
+ ```typescript
122
+ getAllModels() | getModels() | getAvailableModels()
123
+ getProviderModels(providerId) | getModelInfo(modelId)
124
+ ```
125
+ </details>
126
+
127
+ <details>
128
+ <summary><b>Updates (5)</b> - обновления SDK</summary>
129
+
130
+ ```typescript
131
+ checkForUpdates(options) | getChangelog(version, locale)
132
+ sendStats(event) | getLatestVersion(channel?) | checkAvailability()
133
+ ```
134
+ </details>
135
+
136
+ <details>
137
+ <summary><b>Credits (3)</b> - WorkCoins баланс</summary>
138
+
139
+ ```typescript
140
+ getBalance() | getStatus() | estimate(tokens, model?, operationType?)
141
+ ```
142
+ </details>
143
+
144
+ <details>
145
+ <summary><b>User (3)</b> - профиль и лимиты</summary>
146
+
147
+ ```typescript
148
+ getProfile() | getLimitStatus() | checkAvailability()
149
+ ```
150
+ </details>
151
+
152
+ <details>
153
+ <summary><b>Auth (2)</b> - аутентификация</summary>
154
+
155
+ ```typescript
156
+ revokeToken(token) | logout()
157
+ ```
158
+ </details>
159
+
56
160
  ## Auth
57
161
 
58
162
  ```typescript
@@ -107,270 +211,217 @@ sdk.projectSync.on('sync-completed', (data) => {
107
211
 
108
212
  ## Error Handling
109
213
 
110
- All SDK methods throw typed exceptions instead of returning `null`. This enables better error handling with TypeScript autocomplete and proper error recovery.
214
+ All SDK methods throw typed exceptions. All errors have: `statusCode`, `errorType`, `message`, `requestId`, `timestamp`.
111
215
 
112
216
  ### Available Error Types
113
217
 
114
218
  ```typescript
115
219
  import {
116
- // Auth errors
117
- AuthenticationError, // 401 - token expired/invalid
118
- ForbiddenError, // 403 - access denied
119
-
120
- // Client errors
121
- ValidationError, // 422 - invalid data
122
- NotFoundError, // 404 - resource not found
123
- ConflictError, // 409 - data conflict
124
- BadRequestError, // 400 - bad request
125
-
126
- // Server errors
127
- InternalServerError, // 500 - server error
128
- ServiceUnavailableError, // 503 - service down
129
- GatewayTimeoutError, // 504 - timeout
130
-
131
- // Special errors
132
- LimitExceededError, // 403 - credits limit exceeded
133
- RateLimitError, // 429 - too many requests
134
- NetworkError, // 0 - network failure
135
- TimeoutError, // 408 - request timeout
136
- DatabaseError // 400 - database error
220
+ AuthenticationError, // 401 - token expired/invalid
221
+ ForbiddenError, // 403 - access denied
222
+ ValidationError, // 422 - invalid data
223
+ NotFoundError, // 404 - resource not found
224
+ ConflictError, // 409 - data conflict
225
+ BadRequestError, // 400 - bad request
226
+ InternalServerError, // 500 - server error
227
+ ServiceUnavailableError,// 503 - service down
228
+ GatewayTimeoutError, // 504 - timeout
229
+ LimitExceededError, // 403 - WorkCoins limit exceeded
230
+ RateLimitError, // 429 - too many requests
231
+ NetworkError, // 0 - network failure
232
+ TimeoutError, // 408 - request timeout
233
+ DatabaseError // 400 - database error
137
234
  } from 'solver-sdk';
138
235
  ```
139
236
 
140
- ### Basic Error Handling
141
-
142
- ```typescript
143
- try {
144
- const status = await sdk.credits.getStatus();
145
- console.log(status.balance);
146
-
147
- } catch (error) {
148
- // All errors have common properties:
149
- console.log(error.statusCode); // HTTP status code
150
- console.log(error.errorType); // Error type string
151
- console.log(error.requestId); // For correlation with backend logs
152
- console.log(error.timestamp); // When error occurred
153
- console.log(error.rawResponse); // Full backend response
154
- }
155
- ```
156
-
157
- ### Auth Error Handling
237
+ ### Common Patterns
158
238
 
159
239
  ```typescript
160
- import { AuthenticationError } from 'solver-sdk';
240
+ import { AuthenticationError, LimitExceededError, RateLimitError } from 'solver-sdk';
161
241
 
162
242
  try {
163
- const balance = await sdk.credits.getBalance();
243
+ await sdk.chat.streamChat([{ role: 'user', content: 'Hello' }]);
164
244
  } catch (error) {
245
+ // Auth errors - refresh token and retry
165
246
  if (error instanceof AuthenticationError) {
166
- // Token expired or invalid
167
- console.log('Token expired, refreshing...');
168
247
  await refreshToken();
169
- // Retry the request
170
248
  return retry();
171
249
  }
172
- }
173
- ```
174
-
175
- ### Usage Limits & Rate Limiting
176
-
177
- SDK provides specialized error classes for limits:
178
-
179
- #### Checking Limit Status
180
-
181
- ```typescript
182
- import { CodeSolverSDK } from 'solver-sdk';
183
-
184
- const sdk = await CodeSolverSDK.create({ /* ... */ });
185
-
186
- // Get detailed limit status
187
- const status = await sdk.user.getLimitStatus();
188
-
189
- console.log(`Status: ${status.status}`); // 'ok' | 'warning' | 'critical' | 'blocked' | 'on_demand'
190
- console.log(`Can make requests: ${status.canMakeRequest}`);
191
-
192
- if (status.status === 'warning' || status.status === 'critical') {
193
- console.warn(`Warning: ${status.message}`);
194
- }
195
-
196
- if (status.action) {
197
- console.log(`Recommendation: ${status.action.suggestion}`);
198
- }
199
- ```
200
-
201
- #### Handling Limit Exceeded (403)
202
-
203
- ```typescript
204
- import { CodeSolverSDK, LimitExceededError } from 'solver-sdk';
205
-
206
- try {
207
- await sdk.chat.streamChat([
208
- { role: 'user', content: 'Hello' }
209
- ]);
210
- } catch (error) {
250
+
251
+ // WorkCoins limit - show upgrade prompt
211
252
  if (error instanceof LimitExceededError) {
212
- console.log('WorkCoins exceeded!');
213
- console.log(`Message: ${error.message}`); // 'WorkCoins исчерпаны. Купите тариф...'
214
- console.log(`Blocked: ${error.isBlocked()}`); // true/false
215
-
216
- // Action recommendation
253
+ console.log(`WorkCoins exhausted: ${error.message}`);
217
254
  if (error.action) {
218
- console.log(`Action: ${error.action.type}`); // 'upgrade' | 'enable_auto_purchase' | 'buy_credits'
219
- console.log(`Suggestion: ${error.action.suggestion}`);
220
- console.log(`URL: ${error.action.url}`);
221
- }
222
-
223
- // Balance details
224
- if (error.balance) {
225
- console.log(`Used: ${error.balance.percentUsed}%`);
226
- console.log(`Credits: ${error.balance.creditsUsed}/${error.balance.creditsLimit}`);
255
+ console.log(`Recommendation: ${error.action.suggestion}`);
256
+ console.log(`Action URL: ${error.action.url}`);
227
257
  }
228
258
  }
229
- }
230
- ```
231
-
232
- #### Handling Rate Limit (429)
233
-
234
- ```typescript
235
- import { CodeSolverSDK, RateLimitError } from 'solver-sdk';
236
-
237
- try {
238
- // Making multiple requests rapidly
239
- for (let i = 0; i < 100; i++) {
240
- await sdk.user.getProfile();
241
- }
242
- } catch (error) {
259
+
260
+ // Rate limit - wait and retry
243
261
  if (error instanceof RateLimitError) {
244
- console.log('Rate limit exceeded!');
245
- console.log(`Wait ${error.retryAfter} seconds`);
246
- console.log(`Retry at: ${error.retryAt}`);
247
- console.log(`Time remaining: ${error.getRetryDelayMs()}ms`);
248
-
249
- // Wait and retry
250
- await new Promise(resolve => setTimeout(resolve, error.getRetryDelayMs()));
251
- // ... retry request
262
+ await new Promise(r => setTimeout(r, error.getRetryDelayMs()));
263
+ return retry();
252
264
  }
253
265
  }
254
266
  ```
255
267
 
256
- #### Proactive Limit Checking
268
+ ### Proactive Limit Checking
257
269
 
258
270
  ```typescript
259
- // Check before making expensive operations
260
- async function sendChatMessage(message: string) {
261
- // 1. Check limit status first
262
- const status = await sdk.user.getLimitStatus();
263
-
264
- if (!status.canMakeRequest) {
265
- console.error('Cannot make request:', status.message);
266
- return;
267
- }
268
-
269
- if (status.status === 'warning') {
270
- console.warn('Low on tokens:', status.message);
271
- }
272
-
273
- // 2. Make the request
274
- try {
275
- await sdk.chat.streamChat([
276
- { role: 'user', content: message }
277
- ]);
278
- } catch (error) {
279
- if (error instanceof LimitExceededError) {
280
- // Handle limit error
281
- } else if (error instanceof RateLimitError) {
282
- // Handle rate limit
283
- }
284
- }
285
- }
286
- ```
271
+ // Check WorkCoins before expensive operations
272
+ const status = await sdk.credits.getStatus();
287
273
 
288
- ### Credits System (WorkCoins)
274
+ if (!status.canMakeRequest) {
275
+ console.error('No WorkCoins available');
276
+ return;
277
+ }
289
278
 
290
- > **Note**: In the WorkAI UI, this system is referred to as **"WorkCoins"** for user clarity. The API and SDK continue to use `credits` in method names and responses for backward compatibility.
279
+ if (status.status === 'warning') {
280
+ console.warn(`Low on WorkCoins: ${status.message}`);
281
+ }
291
282
 
292
- SDK provides full support for WorkCoins-based pricing model:
283
+ // Make request
284
+ await sdk.chat.streamChat([...]);
285
+ ```
293
286
 
294
- #### Check WorkCoins Balance
287
+ ### WorkCoins (Credits) API
295
288
 
296
289
  ```typescript
290
+ // Get balance
297
291
  const balance = await sdk.credits.getBalance();
292
+ console.log(`${balance.creditsRemaining} / ${balance.creditsLimit} WorkCoins`);
298
293
 
299
- console.log(`WorkCoins limit: ${balance.creditsLimit}`);
300
- console.log(`WorkCoins used: ${balance.creditsUsed}`);
301
- console.log(`WorkCoins remaining: ${balance.creditsRemaining}`);
302
- console.log(`Usage: ${balance.percentUsed}%`);
303
-
304
- if (balance.bonusCredits) {
305
- console.log(`Bonus WorkCoins: ${balance.bonusCredits}`);
306
- }
294
+ // Get status with recommendations
295
+ const status = await sdk.credits.getStatus();
296
+ console.log(`Status: ${status.status}`); // 'ok' | 'warning' | 'critical' | 'depleted'
307
297
 
308
- if (balance.autoPurchaseEnabled) {
309
- console.log(`Auto-purchase enabled. Purchased credits: ${balance.purchasedCredits || 0}`);
310
- }
298
+ // Estimate cost
299
+ const estimate = await sdk.credits.estimate(50000, 'haiku', 'code_generation');
300
+ console.log(`Estimated: ${estimate.estimatedCredits} WorkCoins`);
311
301
  ```
312
302
 
313
- #### Check WorkCoins Status (with recommendations)
303
+ ## Streaming Tool Use (Создание/Редактирование файлов)
314
304
 
315
- ```typescript
316
- const status = await sdk.credits.getStatus();
317
-
318
- console.log(`Status: ${status.status}`); // 'ok' | 'warning' | 'critical' | 'depleted'
319
- console.log(`Can make request: ${status.canMakeRequest}`);
320
- console.log(`Message: ${status.message}`);
305
+ SDK передаёт **только официальные события Anthropic API** через callback `onEvent`. Когда AI создаёт или редактирует файлы, параметры инструментов стримятся **посимвольно** через официальное событие `input_json_delta`.
321
306
 
322
- if (status.action) {
323
- console.log(`Action: ${status.action.type}`); // 'info' | 'upgrade' | 'enable_auto_purchase' | 'buy_credits'
324
- console.log(`Suggestion: ${status.action.suggestion}`);
325
- console.log(`URL: ${status.action.url}`);
326
- }
327
- ```
307
+ > **Рекомендация Anthropic:** Используйте стандартное событие `content_block_delta` с типом `input_json_delta` для real-time визуализации прогресса. Это обеспечивает совместимость с обновлениями API и гарантирует стабильность работы.
328
308
 
329
- #### Estimate Operation Cost (WorkCoins)
309
+ ### Real-time отображение прогресса через официальный API
330
310
 
331
311
  ```typescript
332
- // Estimate before making a request
333
- const estimate = await sdk.credits.estimate(
334
- 50000, // tokens (technical parameter for estimation)
335
- 'haiku', // model: 'haiku' | 'sonnet' | 'auto'
336
- 'code_generation' // operation type
337
- );
312
+ // Накапливаем partial JSON для каждого инструмента
313
+ const toolInputs = new Map<number, string>();
338
314
 
339
- console.log(`Estimated WorkCoins: ${estimate.estimatedCredits}`);
340
- console.log(`Confidence: ${estimate.confidence}`); // 'low' | 'medium' | 'high'
341
- console.log(`Breakdown:`, estimate.breakdown);
315
+ for await (const chunk of sdk.chat.streamChat(messages, {
316
+ projectId: 'project-id',
317
+ tools: ['read_file', 'search_replace'],
318
+
319
+ onEvent: (type, data) => {
320
+ // 🎯 Стриминг параметров инструмента
321
+ if (type === 'content_block_delta' && data.delta?.type === 'input_json_delta') {
322
+ const index = data.index;
323
+ const partialJson = data.delta.partial_json;
324
+
325
+ // Накапливаем JSON по индексу блока
326
+ const accumulated = (toolInputs.get(index) || '') + partialJson;
327
+ toolInputs.set(index, accumulated);
328
+
329
+ // Пытаемся извлечь читаемые поля из неполного JSON (безопасно)
330
+ try {
331
+ const filePathMatch = accumulated.match(/"file_path"\s*:\s*"([^"]*)"/);
332
+ const operationMatch = accumulated.match(/"operation"\s*:\s*"([^"]*)"/);
333
+
334
+ if (filePathMatch) {
335
+ // 💡 Показываем пользователю: "Редактирование: src/app.ts"
336
+ console.log(`📝 ${operationMatch?.[1] || 'Обработка'}: ${filePathMatch[1]}`);
337
+ }
338
+
339
+ // Обновляем UI с прогрессом
340
+ updateProgress({
341
+ file: filePathMatch?.[1],
342
+ operation: operationMatch?.[1],
343
+ bytesReceived: accumulated.length
344
+ });
345
+ } catch {
346
+ // JSON ещё неполный - ждём следующий чанк
347
+ }
348
+ }
349
+
350
+ // ✅ Инструмент готов к выполнению (полный JSON получен)
351
+ if (type === 'content_block_stop') {
352
+ const index = data.index;
353
+ const fullJson = toolInputs.get(index);
354
+
355
+ if (fullJson) {
356
+ try {
357
+ const toolInput = JSON.parse(fullJson);
358
+ console.log('🔧 Инструмент готов:', toolInput);
359
+ toolInputs.delete(index); // Очищаем
360
+ } catch (e) {
361
+ console.error('❌ Некорректный JSON инструмента');
362
+ }
363
+ }
364
+ }
365
+ }
366
+ })) {
367
+ // Обрабатываем остальные события...
368
+ }
342
369
  ```
343
370
 
344
- #### Auto-Purchase Configuration
371
+ ### Официальные события Anthropic API
372
+
373
+ | Событие | Данные | Описание |
374
+ |---------|--------|----------|
375
+ | `message_start` | `{ message: {...} }` | Начало ответа AI |
376
+ | `content_block_start` | `{ index, content_block }` | Начало блока (text/thinking/tool_use) |
377
+ | **`content_block_delta`** | `{ index, delta }` | **Стриминг содержимого** |
378
+ | `content_block_stop` | `{ index }` | Завершение блока |
379
+ | `message_delta` | `{ delta }` | Метаданные ответа |
380
+ | `message_stop` | `{}` | Конец ответа |
381
+
382
+ ### Типы delta для `content_block_delta`
345
383
 
346
384
  ```typescript
347
- // REMOVED: Overage methods (legacy)
348
- // Current system uses auto-purchase instead
385
+ // Текст ответа AI
386
+ delta: { type: 'text_delta', text: 'Создаю функцию...' }
349
387
 
350
- // Auto-purchase is configured through backend settings
351
- // When credits run out, system automatically purchases more
352
- // See CreditsBalance.autoPurchaseEnabled and CreditsBalance.purchasedCredits
388
+ // Мышление AI (Extended Thinking)
389
+ delta: { type: 'thinking_delta', thinking: 'Анализирую требования...' }
390
+
391
+ // 🎯 Параметры инструмента (посимвольно!)
392
+ delta: { type: 'input_json_delta', partial_json: '{"file_path": "src/app' }
353
393
  ```
354
394
 
355
- #### Handle WorkCoins Errors
395
+ ### Пример UI компонента
356
396
 
357
397
  ```typescript
358
- import { CodeSolverSDK, CreditsStatus } from 'solver-sdk';
359
-
360
- try {
361
- // Check before making request
362
- const status = await sdk.credits.getStatus();
363
- if (!status.canMakeRequest) {
364
- console.error('No WorkCoins available');
365
- return;
366
- }
398
+ function ToolProgressIndicator() {
399
+ const [currentTool, setCurrentTool] = useState<{
400
+ file?: string;
401
+ operation?: string;
402
+ progress: number;
403
+ } | null>(null);
367
404
 
368
- // Make AI request
369
- await sdk.chat.chat([...]);
370
- } catch (error) {
371
- if (error.response?.data?.error === 'credits_limit_exceeded') {
372
- console.error('WorkCoins exhausted. Please upgrade or enable auto-purchase.');
405
+ // В onEvent callback
406
+ if (type === 'content_block_delta' && data.delta?.type === 'input_json_delta') {
407
+ // Извлекаем инфо из partial JSON
408
+ const fileMatch = accumulated.match(/"file_path"\s*:\s*"([^"]*)"/);
409
+ const opMatch = accumulated.match(/"operation"\s*:\s*"([^"]*)"/);
410
+
411
+ setCurrentTool({
412
+ file: fileMatch?.[1],
413
+ operation: opMatch?.[1] || 'processing',
414
+ progress: accumulated.length
415
+ });
373
416
  }
417
+
418
+ return currentTool && (
419
+ <div className="tool-progress">
420
+ <span className="operation">{currentTool.operation}</span>
421
+ <span className="file">{currentTool.file}</span>
422
+ <div className="progress-bar" style={{ width: `${currentTool.progress / 10}%` }} />
423
+ </div>
424
+ );
374
425
  }
375
426
  ```
376
427
 
@@ -611,6 +662,7 @@ chatWithRegionFailover(messages: ChatMessage[], options?: ChatOptions): Promise<
611
662
  streamChat(messages: ChatMessage[], options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>
612
663
  streamPrompt(prompt: string, options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>
613
664
  sendContinuation(requestId: string, messages: ChatMessage[]): AsyncGenerator<ChatStreamChunk>
665
+ resumeChat(requestId: string, messages: ChatMessage[], partialText: string, options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>
614
666
  sendPromptWithRegionFailover(prompt: string, options?: ChatOptions): Promise<string>
615
667
  checkAvailability(): Promise<boolean>
616
668
  cancelRequest(requestId: string): Promise<void>
@@ -646,6 +698,14 @@ getLimitStatus(): Promise<LimitStatus>
646
698
  checkAvailability(): Promise<boolean>
647
699
  ```
648
700
 
701
+ ### Credits (`sdk.credits`)
702
+
703
+ ```typescript
704
+ getBalance(): Promise<CreditsBalance>
705
+ getStatus(): Promise<CreditsStatus>
706
+ estimate(tokens: number, model?: ModelType, operationType?: OperationType): Promise<CreditsEstimate>
707
+ ```
708
+
649
709
  ### Auth (`sdk.auth`)
650
710
 
651
711
  ```typescript
@@ -696,14 +756,10 @@ version: string
696
756
  baseURL: string
697
757
  ```
698
758
 
699
- ## Docs
759
+ ## Documentation
700
760
 
701
- - **Full verification:** [SDK_v7.2.0_FINAL_REPORT.md](../docs/sdk/SDK_v7.2.0_FINAL_REPORT.md)
702
- - **Migration guide:** [SDK_v7.2.0_MIGRATION.md](../docs/sdk/SDK_v7.2.0_MIGRATION.md)
703
- - **Architecture:** [ARCHITECTURE_NOTES.md](../docs/sdk/ARCHITECTURE_NOTES.md)
761
+ All methods have full JSDoc comments with examples. Check your IDE autocomplete for detailed reference.
704
762
 
705
- All methods have JSDoc comments - check IDE autocomplete for full reference.
763
+ **For full API documentation:** See [API Reference](#api-reference) section above.
706
764
 
707
765
  ---
708
-
709
- **Status:** ✅ Production Ready | **v8.1.0** | **License:** MIT
@@ -88,7 +88,6 @@ function processStreamChunk(line, logger, options) {
88
88
  'message_start', 'content_block_start', 'content_block_delta',
89
89
  'content_block_stop', 'message_delta', 'message_stop', 'ping', 'error',
90
90
  'tool_use_ready', // 🔧 Кастомное событие сервера для уведомления о готовности инструмента
91
- 'tool_input_delta', // ⚡ НОВОЕ: Throttled streaming partial JSON для tool_use
92
91
  'partial_content_complete', // 🆘 НОВОЕ: Accumulated partial content при max_tokens
93
92
  'incomplete_tool_retry', // 🔄 НОВОЕ: Retry при incomplete tool из-за max_tokens
94
93
  'heartbeat', // 💓 Heartbeat для длинных операций
@@ -1 +1 @@
1
- {"version":3,"file":"stream-utils.js","sourceRoot":"","sources":["../../../../src/api/chat-api/stream-utils.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAeH,0CAqCC;AAKD,4CAEC;AAWD,gDA0IC;AAOD,8CAeC;AA1ND;;GAEG;AACH,SAAgB,eAAe,CAAC,IAAY;IAC1C,yCAAyC;IACzC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,oCAAoC;IAClC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,CAAC;IACV,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAEpC,2BAA2B;IAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAElC,8CAA8C;QAC9C,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,wDAAwD;QACtD,MAAM,KAAK,GAAoB;YAC/B,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,GAAG,QAAQ;SACZ,CAAC;QAEF,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QACvD,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,KAAsB;IACrD,OAAO,KAAK,CAAC,IAAI,KAAK,cAAc,CAAC;AACvC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,kBAAkB,CAChC,IAAY,EACZ,MAAY,EACZ,OAGC;IAED,IAAI,CAAC;QACH,yCAAyC;QACzC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,uBAAuB;QACvB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAElC,2BAA2B;QAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,qBAAqB;QACrB,IAAI,QAAa,CAAC;QAClB,IAAI,CAAC;YACH,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5F,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,mFAAmF;QACnF,MAAM,WAAW,GAAG;YAClB,eAAe,EAAE,qBAAqB,EAAE,qBAAqB;YAC7D,oBAAoB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO;YACtE,gBAAgB,EAAE,wEAAwE;YAC1F,kBAAkB,EAAE,yDAAyD;YAC7E,0BAA0B,EAAE,uDAAuD;YACnF,uBAAuB,EAAE,uDAAuD;YAChF,WAAW,EAAE,oCAAoC;YACjD,oBAAoB,EAAE,6BAA6B;YACnD,gBAAgB,EAAE,oBAAoB;SACvC,CAAC;QAEF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,IAAI,CAAC,2BAA2B,QAAQ,CAAC,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;YACpE,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,2DAA2D;QACzD,MAAM,KAAK,GAAoB;YAC/B,IAAI,EAAE,QAAQ,CAAC,IAAI;SACpB,CAAC;QAEF,+CAA+C;QAC/C,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,eAAe;gBAClB,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACrB,KAAK,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;gBACnC,CAAC;gBACD,MAAM;YAER,KAAK,qBAAqB;gBACxB,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACjC,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAC/B,CAAC;gBACD,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;oBAC3B,KAAK,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;gBAC/C,CAAC;gBACD,MAAM;YAER,KAAK,qBAAqB;gBACxB,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACjC,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAC/B,CAAC;gBACD,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACnB,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAC/B,CAAC;gBACD,MAAM;YAER,KAAK,oBAAoB;gBACvB,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACjC,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAC/B,CAAC;gBACD,MAAM;YAER,KAAK,eAAe;gBAClB,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACnB,KAAK,CAAC,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC;gBACvC,CAAC;gBACD,MAAM;YAER,KAAK,OAAO;gBACV,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACnB,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAC/B,CAAC;gBACD,MAAM;YAER,KAAK,cAAc;gBACjB,iEAAiE;gBACjE,IAAI,QAAQ,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;oBACvC,KAAK,CAAC,OAAO,GAAG;wBACd,EAAE,EAAE,EAAE;wBACN,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,WAAW;wBACjB,KAAK,EAAE,EAAE;wBACT,OAAO,EAAE,EAAE;wBACX,WAAW,EAAE,QAAQ,CAAC,WAAW;qBAClC,CAAC;gBACJ,CAAC;gBACD,MAAM;YAER,KAAK,gBAAgB;gBACnB,mDAAmD;gBACnD,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBACrB,KAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;gBAC9C,CAAC;gBACD,MAAM;YAER,+CAA+C;QACjD,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,CAAC;IAEnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,KAAU;IAC1C,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACtE,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"stream-utils.js","sourceRoot":"","sources":["../../../../src/api/chat-api/stream-utils.ts"],"names":[],"mappings":"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"}
@@ -82,7 +82,6 @@ export function processStreamChunk(line, logger, options) {
82
82
  'message_start', 'content_block_start', 'content_block_delta',
83
83
  'content_block_stop', 'message_delta', 'message_stop', 'ping', 'error',
84
84
  'tool_use_ready', // 🔧 Кастомное событие сервера для уведомления о готовности инструмента
85
- 'tool_input_delta', // ⚡ НОВОЕ: Throttled streaming partial JSON для tool_use
86
85
  'partial_content_complete', // 🆘 НОВОЕ: Accumulated partial content при max_tokens
87
86
  'incomplete_tool_retry', // 🔄 НОВОЕ: Retry при incomplete tool из-за max_tokens
88
87
  'heartbeat', // 💓 Heartbeat для длинных операций
@@ -1 +1 @@
1
- {"version":3,"file":"stream-utils.js","sourceRoot":"","sources":["../../../../src/api/chat-api/stream-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-utils.js","sourceRoot":"","sources":["../../../../src/api/chat-api/stream-utils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stream-utils.d.ts","sourceRoot":"","sources":["../../../../src/api/chat-api/stream-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,eAAe,CAAC;CAEzB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAqCzD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAEhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,GAAG,EACZ,OAAO,CAAC,EAAE;IACR,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;IACvD,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,GACA,WAAW,CAmIb;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAenD"}
1
+ {"version":3,"file":"stream-utils.d.ts","sourceRoot":"","sources":["../../../../src/api/chat-api/stream-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,eAAe,CAAC;CAEzB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAqCzD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAEhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,GAAG,EACZ,OAAO,CAAC,EAAE;IACR,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;IACvD,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,GACA,WAAW,CAkIb;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAenD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "solver-sdk",
3
- "version": "9.0.5",
3
+ "version": "9.0.6",
4
4
  "description": "SDK for WorkAI API - AI-powered code analysis with WorkCoins billing system",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",