solver-sdk 1.6.2 → 1.6.4

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.
Files changed (38) hide show
  1. package/README.md +136 -1
  2. package/dist/cjs/api/dependencies-api.js +38 -0
  3. package/dist/cjs/api/dependencies-api.js.map +1 -1
  4. package/dist/cjs/api/projects-api.js +61 -16
  5. package/dist/cjs/api/projects-api.js.map +1 -1
  6. package/dist/cjs/constants/websocket-events.constants.js +87 -0
  7. package/dist/cjs/constants/websocket-events.constants.js.map +1 -0
  8. package/dist/cjs/index.js +46 -102
  9. package/dist/cjs/index.js.map +1 -1
  10. package/dist/cjs/utils/code-solver-websocket-client.js +148 -67
  11. package/dist/cjs/utils/code-solver-websocket-client.js.map +1 -1
  12. package/dist/cjs/utils/websocket-client.js +259 -539
  13. package/dist/cjs/utils/websocket-client.js.map +1 -1
  14. package/dist/esm/api/dependencies-api.js +38 -0
  15. package/dist/esm/api/dependencies-api.js.map +1 -1
  16. package/dist/esm/api/projects-api.js +60 -15
  17. package/dist/esm/api/projects-api.js.map +1 -1
  18. package/dist/esm/constants/websocket-events.constants.js +84 -0
  19. package/dist/esm/constants/websocket-events.constants.js.map +1 -0
  20. package/dist/esm/index.js +31 -21
  21. package/dist/esm/index.js.map +1 -1
  22. package/dist/esm/utils/code-solver-websocket-client.js +148 -67
  23. package/dist/esm/utils/code-solver-websocket-client.js.map +1 -1
  24. package/dist/esm/utils/websocket-client.js +259 -539
  25. package/dist/esm/utils/websocket-client.js.map +1 -1
  26. package/dist/types/api/dependencies-api.d.ts +11 -0
  27. package/dist/types/api/dependencies-api.d.ts.map +1 -1
  28. package/dist/types/api/projects-api.d.ts +25 -9
  29. package/dist/types/api/projects-api.d.ts.map +1 -1
  30. package/dist/types/constants/websocket-events.constants.d.ts +68 -0
  31. package/dist/types/constants/websocket-events.constants.d.ts.map +1 -0
  32. package/dist/types/index.d.ts +27 -23
  33. package/dist/types/index.d.ts.map +1 -1
  34. package/dist/types/utils/code-solver-websocket-client.d.ts +11 -11
  35. package/dist/types/utils/code-solver-websocket-client.d.ts.map +1 -1
  36. package/dist/types/utils/websocket-client.d.ts +54 -42
  37. package/dist/types/utils/websocket-client.d.ts.map +1 -1
  38. package/package.json +3 -2
@@ -1,4 +1,5 @@
1
1
  import { WebSocketClient } from './websocket-client.js';
2
+ import { WebSocketEvents as WsEvents } from '../constants/websocket-events.constants.js';
2
3
  /**
3
4
  * Пространства имен для WebSocket
4
5
  */
@@ -176,63 +177,98 @@ export class CodeSolverWebSocketClient {
176
177
  return client;
177
178
  }
178
179
  /**
179
- * Подключается к сессии рассуждения
180
- * @param {string} [reasoningId] Идентификатор рассуждения
181
- * @returns {Promise<boolean>} Результат подключения
180
+ * Подключается к пространству имен рассуждений
181
+ * @param reasoningId ID рассуждения (опционально)
182
+ * @returns Promise с результатом подключения
182
183
  */
183
184
  async connectToReasoning(reasoningId) {
184
- // Если reasoningId не указан, используем активный
185
- const id = reasoningId || this.activeReasoningId;
186
- if (!id) {
187
- throw new Error('Необходимо указать идентификатор рассуждения');
188
- }
189
- // Сохраняем активный идентификатор рассуждения
190
- this.activeReasoningId = id;
191
185
  try {
192
- // Подключаемся к пространству имен
193
- await this.connect(WebSocketNamespace.REASONING);
194
- // Получаем клиент
195
- const client = this.clients.get(WebSocketNamespace.REASONING);
196
- if (!client) {
197
- throw new Error(`Не удалось получить WebSocket клиент для ${WebSocketNamespace.REASONING}`);
186
+ this.logger('info', 'Подключение к пространству имен рассуждений', { reasoningId });
187
+ // Если указан ID рассуждения, сохраняем его
188
+ if (reasoningId) {
189
+ this.activeReasoningId = reasoningId;
198
190
  }
199
- // Отправляем запрос на присоединение к сессии рассуждения с callback
200
- return new Promise((resolve, reject) => {
201
- client.sendSocketIOEvent('join_reasoning', { reasoningId: id }, (response) => {
202
- if (response.success === false) {
203
- this.logger('error', `Ошибка при присоединении к сессии рассуждения: ${response.error || 'Неизвестная ошибка'}`);
204
- reject(new Error(response.error || 'Не удалось присоединиться к сессии рассуждения'));
205
- return;
206
- }
207
- this.logger('info', `Успешно присоединился к сессии рассуждения ${id}`);
208
- resolve(true);
209
- }, this.namespace);
210
- });
191
+ // Подключаемся к пространству имен рассуждений
192
+ const client = await this.connect(WebSocketNamespace.REASONING);
193
+ // Аутентифицируемся с увеличенным таймаутом
194
+ try {
195
+ const authResult = await client.emitWithAck(WsEvents.AUTHENTICATE, {
196
+ token: this.options.apiKey,
197
+ reasoningId: this.activeReasoningId
198
+ }, 10000);
199
+ this.logger('debug', 'Результат аутентификации в namespace рассуждений', authResult);
200
+ }
201
+ catch (error) {
202
+ this.logger('error', 'Ошибка аутентификации в namespace рассуждений', error);
203
+ return false;
204
+ }
205
+ // Если у нас есть ID рассуждения, присоединяемся к нему
206
+ if (this.activeReasoningId) {
207
+ try {
208
+ const joinResult = await client.emitWithAck(WsEvents.JOIN_REASONING, {
209
+ reasoningId: this.activeReasoningId,
210
+ token: this.options.apiKey
211
+ }, 10000);
212
+ this.logger('debug', 'Результат присоединения к рассуждению', joinResult);
213
+ return true;
214
+ }
215
+ catch (error) {
216
+ this.logger('error', 'Ошибка присоединения к рассуждению', error);
217
+ return false;
218
+ }
219
+ }
220
+ return true;
211
221
  }
212
222
  catch (error) {
213
- this.logger('error', `Ошибка при подключении к сессии рассуждения: ${error instanceof Error ? error.message : String(error)}`);
223
+ this.logger('error', 'Ошибка подключения к пространству имен рассуждений', error);
214
224
  return false;
215
225
  }
216
226
  }
217
227
  /**
218
- * Подключается к сессии индексации проекта
219
- * @param {string} [projectId] Идентификатор проекта
220
- * @returns {Promise<boolean>} Результат подключения
228
+ * Подключается к пространству имен индексации
229
+ * @param projectId ID проекта (опционально)
230
+ * @returns Promise с результатом подключения
221
231
  */
222
232
  async connectToIndexing(projectId) {
223
- // Если projectId не указан, используем активный
224
- const id = projectId || this.activeProjectId;
225
- if (!id) {
226
- throw new Error('Необходимо указать идентификатор проекта');
227
- }
228
- // Сохраняем активный идентификатор проекта
229
- this.activeProjectId = id;
230
- // Подключаемся к пространству имен
231
233
  try {
232
- await this.connect(WebSocketNamespace.INDEXING, { projectId: id });
234
+ this.logger('info', 'Подключение к пространству имен индексации', { projectId });
235
+ // Если указан ID проекта, сохраняем его
236
+ if (projectId) {
237
+ this.activeProjectId = projectId;
238
+ }
239
+ // Подключаемся к пространству имен индексации
240
+ const client = await this.connect(WebSocketNamespace.INDEXING);
241
+ // Аутентифицируемся с увеличенным таймаутом
242
+ try {
243
+ const authResult = await client.emitWithAck(WsEvents.AUTHENTICATE, {
244
+ token: this.options.apiKey,
245
+ projectId: this.activeProjectId
246
+ }, 10000);
247
+ this.logger('debug', 'Результат аутентификации в namespace индексации', authResult);
248
+ }
249
+ catch (error) {
250
+ this.logger('error', 'Ошибка аутентификации в namespace индексации', error);
251
+ return false;
252
+ }
253
+ // Если у нас есть ID проекта, присоединяемся к нему
254
+ if (this.activeProjectId) {
255
+ try {
256
+ const joinResult = await client.emitWithAck(WsEvents.JOIN_PROJECT, {
257
+ projectId: this.activeProjectId,
258
+ token: this.options.apiKey
259
+ }, 10000);
260
+ this.logger('debug', 'Результат присоединения к проекту', joinResult);
261
+ return true;
262
+ }
263
+ catch (error) {
264
+ this.logger('error', 'Ошибка присоединения к проекту', error);
265
+ return false;
266
+ }
267
+ }
233
268
  return true;
234
269
  }
235
270
  catch (error) {
271
+ this.logger('error', 'Ошибка подключения к пространству имен индексации', error);
236
272
  return false;
237
273
  }
238
274
  }
@@ -251,16 +287,50 @@ export class CodeSolverWebSocketClient {
251
287
  }
252
288
  }
253
289
  /**
254
- * Подключается к пространству имен зависимостей
255
- * @param projectId Идентификатор проекта
256
- * @returns {Promise<boolean>} Результат подключения
290
+ * Подключается к пространству имен dependencies
291
+ * @param projectId ID проекта (опционально)
292
+ * @returns Promise с результатом подключения
257
293
  */
258
294
  async connectToDependencies(projectId) {
259
295
  try {
260
- await this.connect(WebSocketNamespace.DEPENDENCIES, { projectId });
296
+ this.logger('info', 'Подключение к пространству имен dependencies', { projectId });
297
+ // Если указан ID проекта, сохраняем его
298
+ if (projectId) {
299
+ this.activeProjectId = projectId;
300
+ }
301
+ // Подключаемся к пространству имен dependencies
302
+ const client = await this.connect(WebSocketNamespace.DEPENDENCIES);
303
+ // Аутентифицируемся с увеличенным таймаутом
304
+ try {
305
+ const authResult = await client.emitWithAck(WsEvents.AUTHENTICATE, {
306
+ token: this.options.apiKey,
307
+ projectId: this.activeProjectId
308
+ }, 10000);
309
+ this.logger('debug', 'Результат аутентификации в namespace dependencies', authResult);
310
+ }
311
+ catch (error) {
312
+ this.logger('error', 'Ошибка аутентификации в namespace dependencies', error);
313
+ return false;
314
+ }
315
+ // Если у нас есть ID проекта, присоединяемся к нему
316
+ if (this.activeProjectId) {
317
+ try {
318
+ const joinResult = await client.emitWithAck(WsEvents.JOIN_DEPENDENCIES, {
319
+ projectId: this.activeProjectId,
320
+ token: this.options.apiKey
321
+ }, 10000);
322
+ this.logger('debug', 'Результат присоединения к проекту', joinResult);
323
+ return true;
324
+ }
325
+ catch (error) {
326
+ this.logger('error', 'Ошибка присоединения к проекту', error);
327
+ return false;
328
+ }
329
+ }
261
330
  return true;
262
331
  }
263
332
  catch (error) {
333
+ this.logger('error', 'Ошибка подключения к пространству имен dependencies', error);
264
334
  return false;
265
335
  }
266
336
  }
@@ -496,7 +566,7 @@ export class CodeSolverWebSocketClient {
496
566
  reject(new Error('Таймаут ожидания ответа о создании рассуждения'));
497
567
  }, 10000);
498
568
  // Подписываемся на событие создания рассуждения
499
- client.once('create_reasoning_response', (data) => {
569
+ client.once(`${WsEvents.CREATE_REASONING}_response`, (data) => {
500
570
  clearTimeout(timeout);
501
571
  if (data.error) {
502
572
  reject(new Error(`Ошибка создания рассуждения: ${data.error}`));
@@ -505,13 +575,13 @@ export class CodeSolverWebSocketClient {
505
575
  const newReasoningId = data.reasoningId;
506
576
  this.activeReasoningId = newReasoningId;
507
577
  // Отправляем запрос на присоединение к сессии рассуждения
508
- client.sendSocketIOEvent('join_reasoning', { reasoningId: newReasoningId }, (joinResponse) => {
578
+ client.sendSocketIOEvent(WsEvents.JOIN_REASONING, { reasoningId: newReasoningId }, (joinResponse) => {
509
579
  if (joinResponse.success === false) {
510
580
  reject(new Error(`Ошибка при присоединении к сессии рассуждения: ${joinResponse.error || 'Неизвестная ошибка'}`));
511
581
  return;
512
582
  }
513
583
  // Отправляем запрос на запуск рассуждения
514
- client.sendSocketIOEvent('start_reasoning', { reasoningId: newReasoningId }, (startResponse) => {
584
+ client.sendSocketIOEvent(WsEvents.START_REASONING, { reasoningId: newReasoningId }, (startResponse) => {
515
585
  if (startResponse.success === false) {
516
586
  reject(new Error(`Ошибка при запуске рассуждения: ${startResponse.error || 'Неизвестная ошибка'}`));
517
587
  return;
@@ -530,13 +600,13 @@ export class CodeSolverWebSocketClient {
530
600
  this.activeReasoningId = reasoningId;
531
601
  // Отправляем запрос на присоединение к сессии рассуждения
532
602
  return new Promise((resolve, reject) => {
533
- client.sendSocketIOEvent('join_reasoning', { reasoningId }, (joinResponse) => {
603
+ client.sendSocketIOEvent(WsEvents.JOIN_REASONING, { reasoningId }, (joinResponse) => {
534
604
  if (joinResponse.success === false) {
535
605
  reject(new Error(`Ошибка при присоединении к сессии рассуждения: ${joinResponse.error || 'Неизвестная ошибка'}`));
536
606
  return;
537
607
  }
538
608
  // Отправляем запрос на запуск рассуждения
539
- client.sendSocketIOEvent('start_reasoning', { reasoningId }, (startResponse) => {
609
+ client.sendSocketIOEvent(WsEvents.START_REASONING, { reasoningId }, (startResponse) => {
540
610
  if (startResponse.success === false) {
541
611
  reject(new Error(`Ошибка при запуске рассуждения: ${startResponse.error || 'Неизвестная ошибка'}`));
542
612
  return;
@@ -556,33 +626,44 @@ export class CodeSolverWebSocketClient {
556
626
  }
557
627
  }
558
628
  /**
559
- * Регистрирует логирование всех событий для отладки
560
- * @private
629
+ * Настраивает отладочное логирование для WebSocket клиента
630
+ * @param namespace Пространство имен
561
631
  */
562
632
  setupDebugLogging(namespace) {
563
633
  const client = this.clients.get(namespace);
564
634
  if (!client)
565
635
  return;
566
- // Регистрируем конкретные обработчики вместо wildcard '*'
567
- client.on('message', (data) => {
568
- this.logger('debug', `[DEBUG] Получено сообщение от ${namespace}`, data);
636
+ // Добавляем детальное логирование всех событий
637
+ client.on('socket.io_event', (data) => {
638
+ this.logger('debug', `[WS:${namespace}] Получено Socket.IO событие: ${data.event}`, data.data);
569
639
  });
570
- // Специальное логирование для ошибок
571
- client.on('error', (error) => {
572
- this.logger('error', `[ERROR] Ошибка от ${namespace}`, error);
640
+ // Добавляем обработчик для всех событий (onAny)
641
+ client.on('message', (data) => {
642
+ if (typeof data === 'string') {
643
+ try {
644
+ this.logger('debug', `[WS:${namespace}] Получено сырое сообщение`, data);
645
+ }
646
+ catch (e) {
647
+ this.logger('error', `[WS:${namespace}] Ошибка при обработке сырого сообщения`, data);
648
+ }
649
+ }
573
650
  });
574
- // Логирование успешных и неуспешных ответов для типичных событий
575
- client.on('join_reasoning_success', (data) => {
576
- this.logger('debug', `[SUCCESS] Успешное присоединение к рассуждению от ${namespace}`, data);
651
+ // Отслеживаем состояние соединения
652
+ client.on('connect', () => {
653
+ this.logger('info', `[WS:${namespace}] Соединение установлено`);
577
654
  });
578
- client.on('join_reasoning_error', (error) => {
579
- this.logger('error', `[ERROR] Ошибка присоединения к рассуждению от ${namespace}`, error);
655
+ client.on('close', (data) => {
656
+ this.logger('info', `[WS:${namespace}] Соединение закрыто: ${data.code}, Причина: ${data.reason}`);
580
657
  });
581
- client.on('start_reasoning_success', (data) => {
582
- this.logger('debug', `[SUCCESS] Успешный запуск рассуждения от ${namespace}`, data);
658
+ client.on('error', (error) => {
659
+ this.logger('error', `[WS:${namespace}] Ошибка соединения`, error);
583
660
  });
584
- client.on('start_reasoning_error', (error) => {
585
- this.logger('error', `[ERROR] Ошибка запуска рассуждения от ${namespace}`, error);
661
+ // Отслеживаем ping/pong для проверки состояния соединения
662
+ client.on('ping', () => this.logger('debug', `[WS:${namespace}] Отправлен ping`));
663
+ client.on('pong', () => this.logger('debug', `[WS:${namespace}] Получен pong`));
664
+ // Добавляем обработчик для отслеживания ответов на события
665
+ client.on('socket.io_raw', (data) => {
666
+ this.logger('debug', `[WS:${namespace}] Socket.IO raw пакет`, { type: data.type, data: data.data });
586
667
  });
587
668
  }
588
669
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"code-solver-websocket-client.js","sourceRoot":"","sources":["../../../src/utils/code-solver-websocket-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-solver-websocket-client.js","sourceRoot":"","sources":["../../../src/utils/code-solver-websocket-client.ts"],"names":[],"mappings":"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"}