solver-sdk 5.1.0 → 5.1.3

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 (46) hide show
  1. package/README.md +264 -4
  2. package/dist/cjs/api/delta-chunking-api.js +142 -0
  3. package/dist/cjs/api/delta-chunking-api.js.map +1 -0
  4. package/dist/cjs/api/projects-api.js +94 -27
  5. package/dist/cjs/api/projects-api.js.map +1 -1
  6. package/dist/cjs/code-solver-sdk.js +96 -4
  7. package/dist/cjs/code-solver-sdk.js.map +1 -1
  8. package/dist/cjs/delta-chunking/delta-chunking-manager.js +202 -0
  9. package/dist/cjs/delta-chunking/delta-chunking-manager.js.map +1 -0
  10. package/dist/cjs/delta-chunking/delta-chunking-utils.js +315 -0
  11. package/dist/cjs/delta-chunking/delta-chunking-utils.js.map +1 -0
  12. package/dist/cjs/index.js +10 -1
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/types/delta-chunking.js +7 -0
  15. package/dist/cjs/types/delta-chunking.js.map +1 -0
  16. package/dist/esm/api/delta-chunking-api.js +138 -0
  17. package/dist/esm/api/delta-chunking-api.js.map +1 -0
  18. package/dist/esm/api/projects-api.js +94 -27
  19. package/dist/esm/api/projects-api.js.map +1 -1
  20. package/dist/esm/code-solver-sdk.js +96 -4
  21. package/dist/esm/code-solver-sdk.js.map +1 -1
  22. package/dist/esm/delta-chunking/delta-chunking-manager.js +198 -0
  23. package/dist/esm/delta-chunking/delta-chunking-manager.js.map +1 -0
  24. package/dist/esm/delta-chunking/delta-chunking-utils.js +278 -0
  25. package/dist/esm/delta-chunking/delta-chunking-utils.js.map +1 -0
  26. package/dist/esm/index.js +6 -0
  27. package/dist/esm/index.js.map +1 -1
  28. package/dist/esm/types/delta-chunking.js +6 -0
  29. package/dist/esm/types/delta-chunking.js.map +1 -0
  30. package/dist/types/api/delta-chunking-api.d.ts +51 -0
  31. package/dist/types/api/delta-chunking-api.d.ts.map +1 -0
  32. package/dist/types/api/projects-api.d.ts +42 -0
  33. package/dist/types/api/projects-api.d.ts.map +1 -1
  34. package/dist/types/code-solver-sdk.d.ts +50 -1
  35. package/dist/types/code-solver-sdk.d.ts.map +1 -1
  36. package/dist/types/delta-chunking/delta-chunking-manager.d.ts +60 -0
  37. package/dist/types/delta-chunking/delta-chunking-manager.d.ts.map +1 -0
  38. package/dist/types/delta-chunking/delta-chunking-utils.d.ts +62 -0
  39. package/dist/types/delta-chunking/delta-chunking-utils.d.ts.map +1 -0
  40. package/dist/types/index.d.ts +4 -0
  41. package/dist/types/index.d.ts.map +1 -1
  42. package/dist/types/interfaces/sdk-options.d.ts +35 -0
  43. package/dist/types/interfaces/sdk-options.d.ts.map +1 -1
  44. package/dist/types/types/delta-chunking.d.ts +210 -0
  45. package/dist/types/types/delta-chunking.d.ts.map +1 -0
  46. package/package.json +1 -1
@@ -0,0 +1,278 @@
1
+ /**
2
+ * 🔧 Delta-Chunking Utilities
3
+ * Утилиты для обработки файлов, чанков и шифрования
4
+ */
5
+ /**
6
+ * Утилиты для Delta-Chunking операций
7
+ */
8
+ export class DeltaChunkingUtils {
9
+ constructor(projects, options, environment, logger) {
10
+ this.projects = projects;
11
+ this.options = options;
12
+ this.environment = environment;
13
+ this.logger = logger;
14
+ }
15
+ /**
16
+ * Валидация проекта через Projects API
17
+ */
18
+ async validateProject(projectId) {
19
+ try {
20
+ // Используем существующий projects API для проверки
21
+ await this.projects.getProject(projectId);
22
+ }
23
+ catch (error) {
24
+ const errorMessage = error instanceof Error ? error.message : String(error);
25
+ throw new Error(`Проект ${projectId} не найден или недоступен: ${errorMessage}`);
26
+ }
27
+ }
28
+ /**
29
+ * Сканирование файлов проекта (Node.js only)
30
+ */
31
+ async scanProjectFiles(projectPath, options) {
32
+ // Проверяем среду выполнения
33
+ if (this.environment === 'browser') {
34
+ throw new Error('scanProjectFiles недоступен в браузере. Используйте syncFiles() с подготовленными файлами.');
35
+ }
36
+ const files = [];
37
+ // Динамический импорт fs для Node.js
38
+ const fs = await import('fs/promises');
39
+ const path = await import('path');
40
+ const scanDir = async (dirPath) => {
41
+ const entries = await fs.readdir(dirPath, { withFileTypes: true });
42
+ for (const entry of entries) {
43
+ const fullPath = path.join(dirPath, entry.name);
44
+ const relativePath = path.relative(projectPath, fullPath);
45
+ // Проверяем игнорируемые паттерны
46
+ const shouldIgnore = options.ignorePatterns?.some(pattern => relativePath.includes(pattern.replace('/**', '')) ||
47
+ entry.name.match(new RegExp(pattern.replace('*', '.*'))));
48
+ if (shouldIgnore)
49
+ continue;
50
+ if (entry.isDirectory()) {
51
+ await scanDir(fullPath);
52
+ }
53
+ else if (entry.isFile()) {
54
+ // Проверяем расширения файлов
55
+ const ext = path.extname(entry.name);
56
+ if (options.includeExtensions && !options.includeExtensions.includes(ext)) {
57
+ continue;
58
+ }
59
+ // Проверяем размер файла
60
+ const stats = await fs.stat(fullPath);
61
+ const fileSizeKB = stats.size / 1024;
62
+ if (options.maxFileSizeKB && fileSizeKB > options.maxFileSizeKB) {
63
+ this.logger.warn(`⚠️ Пропускаю большой файл: ${relativePath} (${fileSizeKB.toFixed(1)}KB)`);
64
+ continue;
65
+ }
66
+ try {
67
+ const content = await fs.readFile(fullPath, 'utf-8');
68
+ files.push({
69
+ path: relativePath,
70
+ content,
71
+ size: stats.size,
72
+ lastModified: stats.mtime.getTime()
73
+ });
74
+ }
75
+ catch (error) {
76
+ const errorMessage = error instanceof Error ? error.message : String(error);
77
+ this.logger.warn(`⚠️ Не удалось прочитать файл ${relativePath}: ${errorMessage}`);
78
+ }
79
+ }
80
+ }
81
+ };
82
+ try {
83
+ await scanDir(projectPath);
84
+ }
85
+ catch (error) {
86
+ const errorMessage = error instanceof Error ? error.message : String(error);
87
+ throw new Error(`Ошибка сканирования директории ${projectPath}: ${errorMessage}`);
88
+ }
89
+ return files;
90
+ }
91
+ /**
92
+ * Создание чанков из файлов
93
+ */
94
+ async createChunksFromFiles(files) {
95
+ const chunks = [];
96
+ for (const file of files) {
97
+ const fileChunks = await this.chunkFile(file);
98
+ chunks.push(...fileChunks);
99
+ }
100
+ return chunks;
101
+ }
102
+ /**
103
+ * Разбиение файла на чанки
104
+ */
105
+ async chunkFile(file) {
106
+ // Простое разбиение на чанки по строкам (без tree-sitter пока)
107
+ const lines = file.content.split('\n');
108
+ const chunks = [];
109
+ const config = this.options.deltaChunking?.chunking || {};
110
+ const maxTokens = config.maxTokens || 400;
111
+ const minTokens = config.minTokens || 100;
112
+ let currentChunk = '';
113
+ let startLine = 1;
114
+ for (let i = 0; i < lines.length; i++) {
115
+ const line = lines[i];
116
+ const newChunkContent = currentChunk + (currentChunk ? '\n' : '') + line;
117
+ // Простая оценка токенов (примерно 4 символа = 1 токен)
118
+ const estimatedTokens = newChunkContent.length / 4;
119
+ if (estimatedTokens >= maxTokens && currentChunk.length > 0) {
120
+ // Создаем чанк если достигли лимита
121
+ if (currentChunk.trim()) {
122
+ chunks.push({
123
+ id: `${file.path}-${chunks.length}`,
124
+ obfuscatedPath: this.obfuscatePath(file.path),
125
+ content: currentChunk,
126
+ metadata: {
127
+ chunkType: this.detectChunkType(currentChunk),
128
+ startLine,
129
+ endLine: i,
130
+ language: this.detectLanguage(file.path),
131
+ originalSize: currentChunk.length,
132
+ }
133
+ });
134
+ }
135
+ currentChunk = line;
136
+ startLine = i + 1;
137
+ }
138
+ else {
139
+ currentChunk = newChunkContent;
140
+ }
141
+ }
142
+ // Добавляем последний чанк
143
+ if (currentChunk.trim()) {
144
+ chunks.push({
145
+ id: `${file.path}-${chunks.length}`,
146
+ obfuscatedPath: this.obfuscatePath(file.path),
147
+ content: currentChunk,
148
+ metadata: {
149
+ chunkType: this.detectChunkType(currentChunk),
150
+ startLine,
151
+ endLine: lines.length,
152
+ language: this.detectLanguage(file.path),
153
+ originalSize: currentChunk.length,
154
+ }
155
+ });
156
+ }
157
+ return chunks;
158
+ }
159
+ /**
160
+ * Шифрование чанков
161
+ */
162
+ async encryptChunks(chunks) {
163
+ if (!this.options.deltaChunking?.encryption?.enabled) {
164
+ // Если шифрование отключено, просто конвертируем
165
+ return chunks.map(chunk => ({
166
+ ...chunk,
167
+ encryptedContent: Buffer.from(chunk.content, 'utf-8'),
168
+ iv: Buffer.alloc(12, 0), // Пустой IV
169
+ authTag: Buffer.alloc(16, 0), // Пустой authTag
170
+ hash: this.calculateHash(chunk.content),
171
+ }));
172
+ }
173
+ const encryptionKey = this.options.deltaChunking?.encryption?.key;
174
+ if (!encryptionKey || encryptionKey.length !== 32) {
175
+ throw new Error('Ключ шифрования должен содержать ровно 32 символа для AES-256');
176
+ }
177
+ // Динамический импорт crypto для Node.js/браузера
178
+ const crypto = this.environment === 'node'
179
+ ? await import('crypto')
180
+ : null; // В браузере нужна другая реализация
181
+ if (!crypto && this.environment === 'node') {
182
+ throw new Error('Модуль crypto недоступен');
183
+ }
184
+ return chunks.map(chunk => {
185
+ if (this.environment === 'browser') {
186
+ // TODO: Реализовать Web Crypto API для браузера
187
+ this.logger.warn('⚠️ Шифрование в браузере пока не реализовано');
188
+ return {
189
+ ...chunk,
190
+ encryptedContent: Buffer.from(chunk.content, 'utf-8'),
191
+ iv: Buffer.alloc(12, 0),
192
+ authTag: Buffer.alloc(16, 0),
193
+ hash: this.calculateHash(chunk.content),
194
+ };
195
+ }
196
+ // AES-256-GCM шифрование для Node.js
197
+ const iv = crypto.randomBytes(12);
198
+ const cipher = crypto.createCipheriv('aes-256-gcm', Buffer.from(encryptionKey), iv);
199
+ cipher.setAAD(Buffer.from(chunk.id, 'utf-8'));
200
+ let encrypted = cipher.update(chunk.content, 'utf-8');
201
+ encrypted = Buffer.concat([encrypted, cipher.final()]);
202
+ const authTag = cipher.getAuthTag();
203
+ return {
204
+ ...chunk,
205
+ encryptedContent: encrypted,
206
+ iv,
207
+ authTag,
208
+ hash: this.calculateHash(chunk.content),
209
+ };
210
+ });
211
+ }
212
+ /**
213
+ * Расчет root hash для Merkle tree
214
+ */
215
+ calculateRootHash(files) {
216
+ // Простой хеш от всех путей файлов и их размеров
217
+ const hashInput = files
218
+ .map(f => `${f.path}:${f.size}`)
219
+ .sort()
220
+ .join('|');
221
+ return this.calculateHash(hashInput);
222
+ }
223
+ /**
224
+ * Простая хеш-функция
225
+ */
226
+ calculateHash(content) {
227
+ // Простой хеш-функция (в продакшене лучше использовать crypto)
228
+ let hash = 0;
229
+ for (let i = 0; i < content.length; i++) {
230
+ const char = content.charCodeAt(i);
231
+ hash = ((hash << 5) - hash) + char;
232
+ hash = hash & hash; // 32bit integer
233
+ }
234
+ return Math.abs(hash).toString(16).padStart(16, '0');
235
+ }
236
+ /**
237
+ * Обфускация пути файла
238
+ */
239
+ obfuscatePath(filePath) {
240
+ // Простая обфускация пути (в продакшене - более сложная)
241
+ return Buffer.from(filePath).toString('base64').slice(0, 12);
242
+ }
243
+ /**
244
+ * Определение типа чанка по содержимому
245
+ */
246
+ detectChunkType(content) {
247
+ if (content.includes('function ') || content.includes('async ') || content.includes('=>')) {
248
+ return 'function';
249
+ }
250
+ if (content.includes('class ') || content.includes('interface ') || content.includes('type ')) {
251
+ return 'class';
252
+ }
253
+ if (content.trim().startsWith('/*') || content.trim().startsWith('//')) {
254
+ return 'comment';
255
+ }
256
+ return 'block';
257
+ }
258
+ /**
259
+ * Определение языка программирования по расширению файла
260
+ */
261
+ detectLanguage(filePath) {
262
+ const ext = filePath.split('.').pop()?.toLowerCase();
263
+ const langMap = {
264
+ 'ts': 'typescript',
265
+ 'js': 'javascript',
266
+ 'py': 'python',
267
+ 'java': 'java',
268
+ 'cpp': 'cpp',
269
+ 'c': 'c',
270
+ 'go': 'go',
271
+ 'rs': 'rust',
272
+ 'php': 'php',
273
+ 'rb': 'ruby',
274
+ };
275
+ return langMap[ext || ''] || 'plaintext';
276
+ }
277
+ }
278
+ //# sourceMappingURL=delta-chunking-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delta-chunking-utils.js","sourceRoot":"","sources":["../../../src/delta-chunking/delta-chunking-utils.ts"],"names":[],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -18,6 +18,12 @@ export * from './api/updates-api.js';
18
18
  export * from './utils/message-helpers.js';
19
19
  // Экспортируем helper функции для complex content и tool calling
20
20
  export { createThinkingBlock, createToolResultMessage, createToolUseBlock, extractThinkingBlocks, extractToolUseBlocks, extractToolResultBlocks, createStandardDevelopmentTools, createComplexAssistantMessage, createTextBlock, createUserMessage, createSystemMessage } from './utils/message-helpers.js';
21
+ // 🔄 Delta-Chunking API и компоненты (интегрированы в основной SDK)
22
+ export { DeltaChunkingApi } from './api/delta-chunking-api.js';
23
+ export { DeltaChunkingManager } from './delta-chunking/delta-chunking-manager.js';
24
+ export { DeltaChunkingUtils } from './delta-chunking/delta-chunking-utils.js';
25
+ // Экспорт типов Delta-Chunking
26
+ export * from './types/delta-chunking.js';
21
27
  // Экспорт по умолчанию
22
28
  export default CodeSolverSDK;
23
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,2DAA2D;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,4CAA4C;AAC5C,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,0CAA0C;AAC1C,cAAc,6BAA6B,CAAC;AAE5C,gCAAgC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AAErC,kDAAkD;AAClD,cAAc,4BAA4B,CAAC;AAE3C,iEAAiE;AACjE,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,8BAA8B,EAC9B,6BAA6B,EAC7B,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,uBAAuB;AACvB,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,2DAA2D;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,4CAA4C;AAC5C,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,0CAA0C;AAC1C,cAAc,6BAA6B,CAAC;AAE5C,gCAAgC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AAErC,kDAAkD;AAClD,cAAc,4BAA4B,CAAC;AAE3C,iEAAiE;AACjE,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,8BAA8B,EAC9B,6BAA6B,EAC7B,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,oEAAoE;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAE9E,+BAA+B;AAC/B,cAAc,2BAA2B,CAAC;AAE1C,uBAAuB;AACvB,eAAe,aAAa,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * 🚀 Delta-Chunking Types для SDK
3
+ * Синхронизировано с backend API и документацией
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=delta-chunking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delta-chunking.js","sourceRoot":"","sources":["../../../src/types/delta-chunking.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * 🚀 Delta-Chunking API клиент
3
+ * Интеграция с backend endpoints
4
+ */
5
+ import { HttpClient } from '../utils/http-client.js';
6
+ import { SyncInitRequest, DeltaChunksBatchRequest, SyncStatus, EncryptedChunk, SyncResult } from '../types/delta-chunking.js';
7
+ /**
8
+ * API клиент для delta-chunking операций
9
+ */
10
+ export declare class DeltaChunkingApi {
11
+ private readonly httpClient;
12
+ constructor(httpClient: HttpClient);
13
+ /**
14
+ * Инициализация синхронизации проекта
15
+ */
16
+ initSync(projectId: string, request: SyncInitRequest): Promise<{
17
+ sessionId: string;
18
+ }>;
19
+ /**
20
+ * Отправка батча зашифрованных чанков
21
+ */
22
+ uploadChunkBatch(projectId: string, batchRequest: DeltaChunksBatchRequest): Promise<{
23
+ processed: number;
24
+ failed: number;
25
+ errors?: string[];
26
+ }>;
27
+ /**
28
+ * Получение статуса синхронизации
29
+ */
30
+ getSyncStatus(projectId: string): Promise<SyncStatus>;
31
+ /**
32
+ * Завершение синхронизации
33
+ */
34
+ finalizeSync(projectId: string): Promise<SyncResult>;
35
+ /**
36
+ * Отмена синхронизации
37
+ */
38
+ cancelSync(projectId: string): Promise<{
39
+ success: boolean;
40
+ message?: string;
41
+ }>;
42
+ /**
43
+ * Batch upload с retry логикой
44
+ */
45
+ uploadChunksWithRetry(projectId: string, chunks: EncryptedChunk[], options?: {
46
+ batchSize?: number;
47
+ maxRetries?: number;
48
+ onProgress?: (current: number, total: number) => void;
49
+ }): Promise<SyncResult>;
50
+ }
51
+ //# sourceMappingURL=delta-chunking-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delta-chunking-api.d.ts","sourceRoot":"","sources":["../../../src/api/delta-chunking-api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,UAAU,EACV,cAAc,EACd,UAAU,EACX,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;gBAE5B,UAAU,EAAE,UAAU;IAIlC;;OAEG;IACG,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAa3F;;OAEG;IACG,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,uBAAuB,GACpC,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IASpE;;OAEG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAoB3D;;OAEG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAkB1D;;OAEG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAWpF;;OAEG;IACG,qBAAqB,CACzB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,cAAc,EAAE,EACxB,OAAO,GAAE;QACP,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;KAClD,GACL,OAAO,CAAC,UAAU,CAAC;CAwEvB"}
@@ -1,5 +1,6 @@
1
1
  import { HttpClient } from '../utils/http-client.js';
2
2
  import { Project, FileIndexResponse } from '../types/index.js';
3
+ import { SyncInitRequest, DeltaChunksBatchRequest, SyncStatus, SyncResult } from '../types/delta-chunking.js';
3
4
  declare global {
4
5
  var solverSdkProjectCache: Record<string, string> | undefined;
5
6
  }
@@ -272,5 +273,46 @@ export declare class ProjectsApi {
272
273
  indexingTimeout?: number;
273
274
  maxFileSize?: number;
274
275
  }): Promise<Project>;
276
+ /**
277
+ * Инициализация синхронизации проекта для Delta Chunking
278
+ * @param projectId ID проекта
279
+ * @param request Данные для инициализации синхронизации
280
+ * @returns Результат инициализации с sessionId
281
+ */
282
+ sendInitialSync(projectId: string, request: SyncInitRequest): Promise<{
283
+ sessionId: string;
284
+ }>;
285
+ /**
286
+ * Отправка батча зашифрованных чанков для Delta Chunking
287
+ * @param projectId ID проекта
288
+ * @param batchRequest Батч зашифрованных чанков
289
+ * @returns Результат обработки батча
290
+ */
291
+ sendDeltaSync(projectId: string, batchRequest: DeltaChunksBatchRequest): Promise<{
292
+ processed: number;
293
+ failed: number;
294
+ errors?: string[];
295
+ }>;
296
+ /**
297
+ * Получение статуса синхронизации Delta Chunking
298
+ * @param projectId ID проекта
299
+ * @returns Текущий статус синхронизации
300
+ */
301
+ getDeltaSyncStatus(projectId: string): Promise<SyncStatus>;
302
+ /**
303
+ * Завершение синхронизации Delta Chunking
304
+ * @param projectId ID проекта
305
+ * @returns Результат завершения синхронизации
306
+ */
307
+ finalizeDeltaSync(projectId: string): Promise<SyncResult>;
308
+ /**
309
+ * Отмена синхронизации Delta Chunking
310
+ * @param projectId ID проекта
311
+ * @returns Результат отмены
312
+ */
313
+ cancelDeltaSync(projectId: string): Promise<{
314
+ success: boolean;
315
+ message?: string;
316
+ }>;
275
317
  }
276
318
  //# sourceMappingURL=projects-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"projects-api.d.ts","sourceRoot":"","sources":["../../../src/api/projects-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projects-api.d.ts","sourceRoot":"","sources":["../../../src/api/projects-api.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,8 @@ import { ToolsApi } from './api/tools-api.js';
5
5
  import { UpdatesApi } from './api/updates-api.js';
6
6
  import { CodeSolverSDKOptions } from './interfaces/sdk-options.js';
7
7
  import { ModelsApi } from './api/models-api.js';
8
+ import { DeltaChunkingManager } from './delta-chunking/delta-chunking-manager.js';
9
+ import { SyncOptions, SyncResult, SyncStatus, FileWatcher, FileContent } from './types/delta-chunking.js';
8
10
  /**
9
11
  * Основной класс SDK для работы с Code Solver API
10
12
  * Версия 3.0 - чистый HTTP, без WebSocket
@@ -26,6 +28,7 @@ export declare class CodeSolverSDK {
26
28
  private readonly _models;
27
29
  /** API для работы с обновлениями */
28
30
  private readonly _updates;
31
+ private _deltaManager?;
29
32
  /** Среда выполнения */
30
33
  private readonly environment;
31
34
  /** Глобальный обработчик ошибок */
@@ -97,6 +100,46 @@ export declare class CodeSolverSDK {
97
100
  * @returns {UpdatesApi} API для работы с обновлениями
98
101
  */
99
102
  get updates(): UpdatesApi;
103
+ /**
104
+ * Проверяет активность delta-chunking функциональности
105
+ * @returns {boolean} true если delta-chunking включен и инициализирован
106
+ */
107
+ get isDeltaChunkingEnabled(): boolean;
108
+ /**
109
+ * 🚀 Синхронизация проекта по пути к директории
110
+ * @param {string} projectId ID проекта
111
+ * @param {string} projectPath Путь к директории проекта
112
+ * @param {SyncOptions} options Опции синхронизации
113
+ * @returns {Promise<SyncResult>} Результат синхронизации
114
+ */
115
+ syncProject(projectId: string, projectPath: string, options?: SyncOptions): Promise<SyncResult>;
116
+ /**
117
+ * 📤 Синхронизация массива файлов (для web/браузера)
118
+ * @param {string} projectId ID проекта
119
+ * @param {FileContent[]} files Массив файлов для синхронизации
120
+ * @param {SyncOptions} options Опции синхронизации
121
+ * @returns {Promise<SyncResult>} Результат синхронизации
122
+ */
123
+ syncFiles(projectId: string, files: FileContent[], options?: SyncOptions): Promise<SyncResult>;
124
+ /**
125
+ * 👀 Запуск автоматического наблюдения за изменениями
126
+ * @param {string} projectId ID проекта
127
+ * @param {string} watchPath Путь для наблюдения
128
+ * @returns {Promise<FileWatcher>} File watcher
129
+ */
130
+ startAutoSync(projectId: string, watchPath: string): Promise<FileWatcher>;
131
+ /**
132
+ * 📊 Получение статуса синхронизации
133
+ * @param {string} projectId ID проекта
134
+ * @returns {Promise<SyncStatus>} Статус синхронизации
135
+ */
136
+ getSyncStatus(projectId: string): Promise<SyncStatus>;
137
+ /**
138
+ * ❌ Отмена активной синхронизации
139
+ * @param {string} projectId ID проекта
140
+ * @returns {Promise<boolean>} true если синхронизация отменена
141
+ */
142
+ cancelSync(projectId: string): Promise<boolean>;
100
143
  /**
101
144
  * Обрабатывает ошибки SDK
102
145
  * @param {Error} error Ошибка
@@ -110,7 +153,7 @@ export declare class CodeSolverSDK {
110
153
  /**
111
154
  * Освобождает ресурсы SDK
112
155
  */
113
- dispose(): void;
156
+ dispose(): Promise<void>;
114
157
  /**
115
158
  * Устанавливает новый API ключ
116
159
  * @param {string} apiKey Новый API ключ
@@ -125,6 +168,12 @@ export declare class CodeSolverSDK {
125
168
  environment: string;
126
169
  baseURL: string;
127
170
  hasApiKey: boolean;
171
+ deltaChunkingEnabled: boolean;
128
172
  };
173
+ /**
174
+ * 🔄 Получение менеджера Delta-Chunking для расширенного API
175
+ * @returns {DeltaChunkingManager | undefined} Менеджер delta-chunking или undefined если отключен
176
+ */
177
+ get deltaManager(): DeltaChunkingManager | undefined;
129
178
  }
130
179
  //# sourceMappingURL=code-solver-sdk.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"code-solver-sdk.d.ts","sourceRoot":"","sources":["../../src/code-solver-sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAehD;;;GAGG;AACH,qBAAa,aAAa;IACxB,gBAAgB;IAChB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAEhD,qCAAqC;IACrC,OAAO,CAAC,UAAU,CAAa;IAI/B,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;IAExC,0BAA0B;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAY;IAIpC,6BAA6B;IAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAEhC,qCAAqC;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAW;IAElC,gCAAgC;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAY;IAEpC,oCAAoC;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAa;IAEtC,uBAAuB;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiC;IAE7D,mCAAmC;IACnC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAyC;IAEpE,2CAA2C;IAC3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAwDrB;IAEF;;;;OAIG;WACiB,MAAM,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC;IAYjF;;;OAGG;gBACS,OAAO,EAAE,oBAAoB;IAoCzC;;;OAGG;WACa,UAAU,IAAI,MAAM;IAIpC;;;OAGG;IACI,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,IAAI;IAgBrE;;;OAGG;IACU,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAU5C;;;OAGG;IACU,WAAW,IAAI,OAAO,CAAC;QAClC,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC;IA+BF;;;OAGG;IACH,IAAW,QAAQ,IAAI,WAAW,CAEjC;IAED;;;OAGG;IACH,IAAW,MAAM,IAAI,SAAS,CAE7B;IAID;;;OAGG;IACH,IAAW,IAAI,IAAI,OAAO,CAEzB;IAED;;;OAGG;IACH,IAAW,KAAK,IAAI,QAAQ,CAE3B;IAED;;;OAGG;IACH,IAAW,MAAM,IAAI,SAAS,CAE7B;IAED;;;OAGG;IACH,IAAW,OAAO,IAAI,UAAU,CAE/B;IAED;;;OAGG;WACW,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAQ7C;;;OAGG;WACW,eAAe,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAIpE;;OAEG;IACI,OAAO,IAAI,IAAI;IAKtB;;;OAGG;IACI,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAKtC;;;OAGG;IACI,OAAO,IAAI;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,OAAO,CAAC;KACpB;CAQF"}
1
+ {"version":3,"file":"code-solver-sdk.d.ts","sourceRoot":"","sources":["../../src/code-solver-sdk.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * 🔄 Delta-Chunking Manager
3
+ * Менеджер для координации delta-chunking операций
4
+ */
5
+ import { DeltaChunkingApi } from '../api/delta-chunking-api.js';
6
+ import { DeltaChunkingUtils } from './delta-chunking-utils.js';
7
+ import { CodeSolverSDKOptions } from '../interfaces/sdk-options.js';
8
+ import { SyncOptions, SyncResult, SyncStatus, FileWatcher, FileContent } from '../types/delta-chunking.js';
9
+ /**
10
+ * Менеджер для координации всех delta-chunking операций
11
+ */
12
+ export declare class DeltaChunkingManager {
13
+ private readonly deltaApi;
14
+ private readonly utils;
15
+ private readonly options;
16
+ private readonly logger;
17
+ private activeWatchers;
18
+ constructor(deltaApi: DeltaChunkingApi, utils: DeltaChunkingUtils, options: CodeSolverSDKOptions, logger: {
19
+ log: (message: string) => void;
20
+ warn: (message: string) => void;
21
+ error: (message: string) => void;
22
+ });
23
+ /**
24
+ * Проверка активности delta-chunking
25
+ */
26
+ get isEnabled(): boolean;
27
+ /**
28
+ * 🚀 Синхронизация проекта по пути к директории
29
+ */
30
+ syncProject(projectId: string, projectPath: string, options?: SyncOptions): Promise<SyncResult>;
31
+ /**
32
+ * 📤 Синхронизация массива файлов (для web/браузера)
33
+ */
34
+ syncFiles(projectId: string, files: FileContent[], options?: SyncOptions): Promise<SyncResult>;
35
+ /**
36
+ * 👀 Запуск автоматического наблюдения за изменениями
37
+ */
38
+ startAutoSync(projectId: string, watchPath: string): Promise<FileWatcher>;
39
+ /**
40
+ * 📊 Получение статуса синхронизации
41
+ */
42
+ getSyncStatus(projectId: string): Promise<SyncStatus>;
43
+ /**
44
+ * ❌ Отмена активной синхронизации
45
+ */
46
+ cancelSync(projectId: string): Promise<boolean>;
47
+ /**
48
+ * Получение активных file watchers
49
+ */
50
+ getActiveWatchers(): Map<string, FileWatcher>;
51
+ /**
52
+ * Остановка всех file watchers
53
+ */
54
+ stopAllWatchers(): Promise<void>;
55
+ /**
56
+ * Проверка что delta-chunking включен
57
+ */
58
+ private ensureEnabled;
59
+ }
60
+ //# sourceMappingURL=delta-chunking-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delta-chunking-manager.d.ts","sourceRoot":"","sources":["../../../src/delta-chunking/delta-chunking-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EACL,WAAW,EACX,UAAU,EACV,UAAU,EACV,WAAW,EACX,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,qBAAa,oBAAoB;IAI7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IANzB,OAAO,CAAC,cAAc,CAAuC;gBAG1C,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,kBAAkB,EACzB,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE;QACvB,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;QAC/B,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;QAChC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;KAClC;IAGH;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACG,WAAW,CACf,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,UAAU,CAAC;IAgCtB;;OAEG;IACG,SAAS,CACb,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,WAAW,EAAE,EACpB,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,UAAU,CAAC;IAoFtB;;OAEG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAoC/E;;OAEG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAK3D;;OAEG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMrD;;OAEG;IACH,iBAAiB,IAAI,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC;IAI7C;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IActC;;OAEG;IACH,OAAO,CAAC,aAAa;CAKtB"}