ultraclaude-agent 0.0.21 → 0.0.23

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 (61) hide show
  1. package/__tests__/daemon-reconcile.test.ts +1 -0
  2. package/__tests__/daemon.test.ts +1 -0
  3. package/__tests__/hide-branches.test.ts +129 -0
  4. package/__tests__/logger-multistream.test.ts +151 -0
  5. package/__tests__/repl-reset.test.ts +3 -0
  6. package/__tests__/repl-status-account.test.ts +3 -0
  7. package/__tests__/repl.test.ts +7 -2
  8. package/__tests__/snapshot-sync.test.ts +6 -6
  9. package/__tests__/status-command.test.ts +479 -0
  10. package/__tests__/status-service-type.test.ts +177 -0
  11. package/__tests__/sync-bugs.test.ts +8 -7
  12. package/__tests__/sync-queue-credentials.test.ts +4 -4
  13. package/__tests__/sync-reorder.test.ts +8 -8
  14. package/__tests__/sync.test.ts +4 -3
  15. package/__tests__/version-check.test.ts +1 -1
  16. package/__tests__/version-watcher.test.ts +8 -2
  17. package/__tests__/watcher-branch.test.ts +68 -0
  18. package/dist/cli.js +6 -96
  19. package/dist/cli.js.map +1 -1
  20. package/dist/daemon.d.ts.map +1 -1
  21. package/dist/daemon.js +3 -70
  22. package/dist/daemon.js.map +1 -1
  23. package/dist/repl.d.ts.map +1 -1
  24. package/dist/repl.js +6 -143
  25. package/dist/repl.js.map +1 -1
  26. package/dist/sync.d.ts +13 -8
  27. package/dist/sync.d.ts.map +1 -1
  28. package/dist/sync.js +45 -21
  29. package/dist/sync.js.map +1 -1
  30. package/dist/watcher.d.ts +6 -0
  31. package/dist/watcher.d.ts.map +1 -1
  32. package/dist/watcher.js +92 -7
  33. package/dist/watcher.js.map +1 -1
  34. package/node_modules/@ultra-claude/shared/dist/api/schemas/projects.d.ts +11 -0
  35. package/node_modules/@ultra-claude/shared/dist/api/schemas/projects.d.ts.map +1 -1
  36. package/node_modules/@ultra-claude/shared/dist/api/schemas/projects.js +8 -0
  37. package/node_modules/@ultra-claude/shared/dist/api/schemas/projects.js.map +1 -1
  38. package/node_modules/@ultra-claude/shared/dist/api/schemas/sync.d.ts +11 -0
  39. package/node_modules/@ultra-claude/shared/dist/api/schemas/sync.d.ts.map +1 -1
  40. package/node_modules/@ultra-claude/shared/dist/api/schemas/sync.js +11 -0
  41. package/node_modules/@ultra-claude/shared/dist/api/schemas/sync.js.map +1 -1
  42. package/node_modules/@ultra-claude/shared/dist/index.d.ts +3 -3
  43. package/node_modules/@ultra-claude/shared/dist/index.d.ts.map +1 -1
  44. package/node_modules/@ultra-claude/shared/dist/index.js +2 -2
  45. package/node_modules/@ultra-claude/shared/dist/index.js.map +1 -1
  46. package/node_modules/@ultra-claude/shared/dist/types.d.ts +0 -32
  47. package/node_modules/@ultra-claude/shared/dist/types.d.ts.map +1 -1
  48. package/package.json +1 -1
  49. package/src/cli.ts +6 -120
  50. package/src/daemon.ts +3 -82
  51. package/src/repl.ts +6 -166
  52. package/src/sync.ts +56 -14
  53. package/src/watcher.ts +101 -7
  54. package/__tests__/claude-profiles-ops.test.ts +0 -441
  55. package/__tests__/claude-profiles.test.ts +0 -407
  56. package/__tests__/credential-watcher.test.ts +0 -229
  57. package/dist/claude-profiles.d.ts +0 -83
  58. package/dist/claude-profiles.d.ts.map +0 -1
  59. package/dist/claude-profiles.js +0 -499
  60. package/dist/claude-profiles.js.map +0 -1
  61. package/src/claude-profiles.ts +0 -597
package/dist/sync.js CHANGED
@@ -50,9 +50,10 @@ export async function apiRequestWithDiskCredentials(method, path, body, extraHea
50
50
  return err('NOT_LOGGED_IN', 'Not logged in — run `ultraclaude-dashboard-agent login` first');
51
51
  return apiRequest(method, path, body, creds, extraHeaders);
52
52
  }
53
- export async function fetchManifest(projectId, credentials) {
53
+ export async function fetchManifest(projectId, credentials, branch) {
54
54
  const log = logger.child({ projectId, op: 'fetchManifest' });
55
- const result = await apiRequest('GET', `/api/sync/manifest?projectId=${projectId}`, undefined, credentials);
55
+ const branchParam = branch ? `&branch=${encodeURIComponent(branch)}` : '';
56
+ const result = await apiRequest('GET', `/api/sync/manifest?projectId=${projectId}${branchParam}`, undefined, credentials);
56
57
  if (!result.success)
57
58
  return result;
58
59
  if (result.data.status === 404) {
@@ -78,9 +79,9 @@ export async function fetchManifest(projectId, credentials) {
78
79
  /**
79
80
  * Load manifest from server and populate local section hash cache.
80
81
  */
81
- export async function loadManifestIntoCache(projectId, credentials) {
82
+ export async function loadManifestIntoCache(projectId, credentials, branch) {
82
83
  const state = getOrCreateState(projectId);
83
- const result = await fetchManifest(projectId, credentials);
84
+ const result = await fetchManifest(projectId, credentials, branch);
84
85
  if (!result.success) {
85
86
  logger.warn({ projectId, error: result.error, message: result.message }, 'Could not load manifest — will push all sections');
86
87
  state.needsManifestResync = true;
@@ -99,7 +100,7 @@ export async function loadManifestIntoCache(projectId, credentials) {
99
100
  * Parse a markdown file and push only changed sections to the server.
100
101
  * Returns the number of sections pushed.
101
102
  */
102
- export async function syncMarkdownFile(projectId, projectPath, absoluteFilePath, credentials) {
103
+ export async function syncMarkdownFile(projectId, projectPath, absoluteFilePath, credentials, branch) {
103
104
  const log = logger.child({ projectId, file: absoluteFilePath });
104
105
  const fileStat = await stat(absoluteFilePath);
105
106
  if (fileStat.size > MAX_FILE_SIZE) {
@@ -150,6 +151,7 @@ export async function syncMarkdownFile(projectId, projectPath, absoluteFilePath,
150
151
  }
151
152
  const payload = {
152
153
  projectId,
154
+ branch,
153
155
  file: relativePath,
154
156
  file_hash: fileHash,
155
157
  sections: sectionsToSend.map((s) => ({
@@ -184,7 +186,7 @@ export async function syncMarkdownFile(projectId, projectPath, absoluteFilePath,
184
186
  return changedSections.length;
185
187
  }
186
188
  // --- Push JSON files ---
187
- export async function syncJsonFile(projectId, projectPath, absoluteFilePath, credentials) {
189
+ export async function syncJsonFile(projectId, projectPath, absoluteFilePath, credentials, branch) {
188
190
  const log = logger.child({ projectId, file: absoluteFilePath });
189
191
  const fileStat = await stat(absoluteFilePath);
190
192
  if (fileStat.size > MAX_FILE_SIZE) {
@@ -202,6 +204,7 @@ export async function syncJsonFile(projectId, projectPath, absoluteFilePath, cre
202
204
  }
203
205
  const payload = {
204
206
  projectId,
207
+ branch,
205
208
  files: [
206
209
  {
207
210
  path: relativePath,
@@ -226,12 +229,12 @@ export async function syncJsonFile(projectId, projectPath, absoluteFilePath, cre
226
229
  return true;
227
230
  }
228
231
  // --- Sync a single file (auto-detect type) ---
229
- export async function syncFile(projectId, projectPath, absoluteFilePath, credentials) {
232
+ export async function syncFile(projectId, projectPath, absoluteFilePath, credentials, branch) {
230
233
  if (absoluteFilePath.endsWith('.md')) {
231
- await syncMarkdownFile(projectId, projectPath, absoluteFilePath, credentials);
234
+ await syncMarkdownFile(projectId, projectPath, absoluteFilePath, credentials, branch);
232
235
  }
233
236
  else if (absoluteFilePath.endsWith('.json')) {
234
- await syncJsonFile(projectId, projectPath, absoluteFilePath, credentials);
237
+ await syncJsonFile(projectId, projectPath, absoluteFilePath, credentials, branch);
235
238
  }
236
239
  }
237
240
  // --- Version metadata ---
@@ -293,14 +296,15 @@ export async function createProjectOnServer(name, slug, credentials, versionData
293
296
  return data.data;
294
297
  }
295
298
  // --- Snapshots ---
296
- export async function createSnapshot(projectId, name, commitHash, trigger = 'manual', credentials) {
299
+ export async function createSnapshot(projectId, name, branch, commitHash, trigger = 'manual', credentials) {
297
300
  const log = logger.child({ projectId, op: 'snapshot' });
298
301
  const idempotencyKey = crypto.randomUUID();
302
+ const body = { projectId, name, branch, commitHash, trigger };
299
303
  const requestFn = credentials
300
- ? apiRequest('POST', '/api/sync/snapshot', { projectId, name, commitHash, trigger }, credentials, {
304
+ ? apiRequest('POST', '/api/sync/snapshot', body, credentials, {
301
305
  'Idempotency-Key': idempotencyKey,
302
306
  })
303
- : apiRequestWithDiskCredentials('POST', '/api/sync/snapshot', { projectId, name, commitHash, trigger }, {
307
+ : apiRequestWithDiskCredentials('POST', '/api/sync/snapshot', body, {
304
308
  'Idempotency-Key': idempotencyKey,
305
309
  });
306
310
  const result = await requestFn;
@@ -320,11 +324,11 @@ export async function createSnapshot(projectId, name, commitHash, trigger = 'man
320
324
  * Notify the server that specific files have been deleted from disk.
321
325
  * Cleans up synced_files, document_sections, plans, and backlog entries.
322
326
  */
323
- export async function deleteFiles(projectId, projectPath, absoluteFilePaths, credentials) {
327
+ export async function deleteFiles(projectId, projectPath, absoluteFilePaths, credentials, branch) {
324
328
  const log = logger.child({ projectId, op: 'deleteFiles' });
325
329
  const docDir = join(projectPath, 'documentation');
326
330
  const relativePaths = absoluteFilePaths.map((p) => relative(docDir, p));
327
- const payload = { projectId, files: relativePaths };
331
+ const payload = { projectId, branch, files: relativePaths };
328
332
  const idempotencyKey = crypto.randomUUID();
329
333
  const result = await apiRequest('POST', '/api/sync/delete-files', payload, credentials, {
330
334
  'Idempotency-Key': idempotencyKey,
@@ -354,9 +358,9 @@ export async function deleteFiles(projectId, projectPath, absoluteFilePaths, cre
354
358
  * Tell the server the full set of files currently on disk.
355
359
  * Server prunes synced_files, plans, and backlog items not in this set.
356
360
  */
357
- async function reconcile(projectId, activePaths, credentials) {
361
+ async function reconcile(projectId, activePaths, credentials, branch) {
358
362
  const log = logger.child({ projectId, op: 'reconcile' });
359
- const payload = { projectId, filePaths: activePaths };
363
+ const payload = { projectId, branch, filePaths: activePaths };
360
364
  const idempotencyKey = crypto.randomUUID();
361
365
  const result = await apiRequest('POST', '/api/sync/reconcile', payload, credentials, {
362
366
  'Idempotency-Key': idempotencyKey,
@@ -375,11 +379,31 @@ async function reconcile(projectId, activePaths, credentials) {
375
379
  log.debug('Reconciliation complete — no orphans found');
376
380
  }
377
381
  }
382
+ // --- Branch hide ---
383
+ /**
384
+ * Notify the server that branches have been deleted locally.
385
+ * Server marks them as hidden (not deleted — they can be revealed in the dashboard).
386
+ */
387
+ export async function hideBranches(projectId, branches, credentials) {
388
+ const log = logger.child({ projectId, op: 'hideBranches' });
389
+ const payload = { projectId, branches };
390
+ const idempotencyKey = crypto.randomUUID();
391
+ const result = await apiRequest('POST', '/api/sync/branch-hide', payload, credentials, {
392
+ 'Idempotency-Key': idempotencyKey,
393
+ });
394
+ if (!result.success || !result.data.ok) {
395
+ const reason = !result.success ? result.message : `HTTP ${result.data.status}`;
396
+ log.warn({ error: reason, branches }, 'Branch hide request failed');
397
+ return false;
398
+ }
399
+ log.info({ branches }, 'Branches hidden on server');
400
+ return true;
401
+ }
378
402
  // --- Initial sync for a project ---
379
- export async function initialSync(projectId, projectPath, credentials) {
403
+ export async function initialSync(projectId, projectPath, credentials, branch) {
380
404
  const log = logger.child({ projectId, op: 'initialSync' });
381
- log.info('Starting initial sync');
382
- await loadManifestIntoCache(projectId, credentials);
405
+ log.info({ branch }, 'Starting initial sync');
406
+ await loadManifestIntoCache(projectId, credentials, branch);
383
407
  // Walk documentation/ and sync all files, collecting relative paths
384
408
  const { glob } = await import('node:fs/promises');
385
409
  const docDir = join(projectPath, 'documentation');
@@ -393,10 +417,10 @@ export async function initialSync(projectId, projectPath, credentials) {
393
417
  continue;
394
418
  const relPath = relative(docDir, entry);
395
419
  activePaths.push(relPath);
396
- await syncFile(projectId, projectPath, entry, credentials);
420
+ await syncFile(projectId, projectPath, entry, credentials, branch);
397
421
  }
398
422
  // Reconcile: prune server-side data for files that no longer exist on disk
399
- await reconcile(projectId, activePaths, credentials);
423
+ await reconcile(projectId, activePaths, credentials, branch);
400
424
  log.info('Initial sync complete');
401
425
  }
402
426
  catch (err) {
package/dist/sync.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"AAAA,wFAAwF;AAExF,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,EAAE,EACF,GAAG,GAKJ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,SAAS,GAAG,IAAI,CAAC;AACvB,MAAM,iBAAiB,GAAG,KAAK,CAAC;AAChC,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,MAAM;AAuBvC,uBAAuB;AAEvB,MAAM,KAAK,GAAgB,EAAE,CAAC;AAC9B,MAAM,aAAa,GAAG,IAAI,GAAG,EAA4B,CAAC;AAC1D,IAAI,UAAU,GAA0C,IAAI,CAAC;AAE7D,SAAS,gBAAgB,CAAC,SAAiB;IACzC,IAAI,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACzC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,GAAG,EAAE,aAAa,EAAE,IAAI,GAAG,EAAE,EAAE,gBAAgB,EAAE,IAAI,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,GAAG,EAAE,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC;QACrH,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAMD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAc,EACd,IAAY,EACZ,IAAyB,EACzB,WAA6B,EAC7B,YAAqC;IAErC,MAAM,GAAG,GAAG,GAAG,YAAY,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,CAAC;IAClD,MAAM,OAAO,GAA2B;QACtC,aAAa,EAAE,UAAU,WAAW,CAAC,MAAM,EAAE;QAC7C,cAAc,EAAE,kBAAkB;QAClC,GAAG,YAAY;KAChB,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM;QACN,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;KAC9C,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAErB,IAAI,CAAC,QAAQ;QAAE,OAAO,GAAG,CAAC,eAAe,EAAE,mBAAmB,GAAG,EAAE,CAAC,CAAC;IACrE,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,MAAc,EACd,IAAY,EACZ,IAAc,EACd,YAAqC;IAErC,MAAM,KAAK,GAAG,MAAM,eAAe,EAAE,CAAC;IACtC,IAAI,CAAC,KAAK;QAAE,OAAO,GAAG,CAAC,eAAe,EAAE,+DAA+D,CAAC,CAAC;IACzG,OAAO,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;AAC7D,CAAC;AAMD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,SAAiB,EAAE,WAA6B,EAAE,MAAe;IACnG,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC;IAE7D,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,gCAAgC,SAAS,GAAG,WAAW,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC1H,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC;IAEnC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC/B,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,EAAE,mCAAmC,CAAC,CAAC;QAC7D,OAAO,GAAG,CAAC,mBAAmB,EAAE,WAAW,SAAS,sBAAsB,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACpB,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,0BAA0B,CAAC,CAAC;QACtE,OAAO,GAAG,CAAC,uBAAuB,EAAE,0BAA0B,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAErC,CAAC;IAEF,mDAAmD;IACnD,MAAM,OAAO,GAAoB,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/D,KAAK,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvE,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,SAAiB,EAAE,WAA6B,EAAE,MAAe;IAC3G,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IAEnE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,kDAAkD,CAAC,CAAC;QAC7H,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC;QACjC,OAAO;IACT,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC5B,KAAK,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACvF,CAAC;IACD,KAAK,CAAC,mBAAmB,GAAG,KAAK,CAAC;IAClC,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,iBAAiB,CAAC,CAAC;AAC7E,CAAC;AAED,wBAAwB;AAExB;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,SAAiB,EACjB,WAAmB,EACnB,gBAAwB,EACxB,WAA6B,EAC7B,MAAc;IAEd,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC9C,IAAI,QAAQ,CAAC,IAAI,GAAG,aAAa,EAAE,CAAC;QAClC,GAAG,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAChC,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAE7C,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE1C,6BAA6B;IAC7B,MAAM,eAAe,GAAkB,EAAE,CAAC;IAC1C,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IAEvC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,GAAG,YAAY,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QAC9C,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACtB,MAAM,UAAU,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,OAAO,CAAC,QAAQ,CAAC;QAC7E,IAAI,UAAU,KAAK,OAAO,CAAC,WAAW,IAAI,UAAU,EAAE,CAAC;YACrD,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7C,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACjE,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,kEAAkE;IAClE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,YAAY,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACzC,OAAO,CAAC,CAAC;IACX,CAAC;IAED,+EAA+E;IAC/E,sEAAsE;IACtE,+EAA+E;IAC/E,IAAI,cAAc,GAAG,eAAe,CAAC;IACrC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClF,cAAc,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,OAAO,GAAG;QACd,SAAS;QACT,MAAM;QACN,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,QAAQ;QACnB,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACnC,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI;YAC1B,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI;YACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,YAAY,EAAE,CAAC,CAAC,WAAW;SAC5B,CAAC,CAAC;QACH,YAAY,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;KACjE,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,oBAAoB,EAAE,OAAO,EAAE,WAAW,EAAE;QAClF,iBAAiB,EAAE,cAAc;KAClC,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/E,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,kCAAkC,CAAC,CAAC;QAChE,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;QAChI,OAAO,CAAC,CAAC;IACX,CAAC;IAED,0EAA0E;IAC1E,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;QACtC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,YAAY,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAClF,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC;QACtD,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAC/F,OAAO,eAAe,CAAC,MAAM,CAAC;AAChC,CAAC;AAED,0BAA0B;AAE1B,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,SAAiB,EACjB,WAAmB,EACnB,gBAAwB,EACxB,WAA6B,EAC7B,MAAc;IAEd,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC9C,IAAI,QAAQ,CAAC,IAAI,GAAG,aAAa,EAAE,CAAC;QAClC,GAAG,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAEzC,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC1C,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;QAChD,GAAG,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,OAAO,GAAG;QACd,SAAS;QACT,MAAM;QACN,KAAK,EAAE;YACL;gBACE,IAAI,EAAE,YAAY;gBAClB,OAAO;gBACP,IAAI;gBACJ,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB;SACF;KACF,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,EAAE;QAC/E,iBAAiB,EAAE,cAAc;KAClC,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/E,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,uCAAuC,CAAC,CAAC;QACrE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;QAC5H,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACzC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACxB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,gDAAgD;AAEhD,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,SAAiB,EACjB,WAAmB,EACnB,gBAAwB,EACxB,WAA6B,EAC7B,MAAc;IAEd,IAAI,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,gBAAgB,CAAC,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IACxF,CAAC;SAAM,IAAI,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9C,MAAM,YAAY,CAAC,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IACpF,CAAC;AACH,CAAC;AAED,2BAA2B;AAE3B;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,SAAiB,EACjB,WAAmB,EACnB,WAA6B;IAE7B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;QAC1E,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B,CAAC;QAE5D,MAAM,YAAY,GAAG,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3F,MAAM,eAAe,GAAG,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;QAEpG,IAAI,CAAC,YAAY,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YACnD,GAAG,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAA4B,EAAE,CAAC;QACzC,IAAI,YAAY;YAAE,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACnD,IAAI,eAAe,KAAK,SAAS;YAAE,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAE1E,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,iBAAiB,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QAC1F,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAC/E,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,iCAAiC,CAAC,CAAC;YAC/D,OAAO;QACT,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,eAAe,EAAE,EAAE,yBAAyB,CAAC,CAAC;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,GAAG,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAC;IAC5F,CAAC;AACH,CAAC;AAED,2BAA2B;AAE3B,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAAY,EACZ,IAAY,EACZ,WAA6B,EAC7B,WAAiE;IAEjE,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE3C,MAAM,IAAI,GAA4B,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACrD,IAAI,WAAW,EAAE,YAAY;QAAE,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;IAC5E,IAAI,WAAW,EAAE,eAAe,KAAK,SAAS;QAAE,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC,eAAe,CAAC;IAEnG,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,EAAE;QAC1E,iBAAiB,EAAE,cAAc;KAClC,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,0BAA0B,CAAC,CAAC;QACxF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACpB,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,0BAA0B,CAAC,CAAC;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAA6B,CAAC;IACpE,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,2BAA2B,CAAC,CAAC;IACnE,OAAO,IAAI,CAAC,IAAI,CAAC;AACnB,CAAC;AAED,oBAAoB;AAEpB,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,SAAiB,EACjB,IAAY,EACZ,MAAc,EACd,UAAmB,EACnB,UAAkB,QAAQ,EAC1B,WAA8B;IAE9B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE3C,MAAM,IAAI,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IAE9D,MAAM,SAAS,GAAG,WAAW;QAC3B,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,WAAW,EAAE;YAC1D,iBAAiB,EAAE,cAAc;SAClC,CAAC;QACJ,CAAC,CAAC,6BAA6B,CAAC,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE;YAChE,iBAAiB,EAAE,cAAc;SAClC,CAAC,CAAC;IACP,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;IAE/B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,2BAA2B,CAAC,CAAC;QACzF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACpB,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,2BAA2B,CAAC,CAAC;QACvE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,uBAAuB;AAEvB;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,SAAiB,EACjB,WAAmB,EACnB,iBAA2B,EAC3B,WAA6B,EAC7B,MAAc;IAEd,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAElD,MAAM,aAAa,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IAExE,MAAM,OAAO,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAC5D,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,wBAAwB,EAAE,OAAO,EAAE,WAAW,EAAE;QACtF,iBAAiB,EAAE,cAAc;KAClC,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/E,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,6BAA6B,CAAC,CAAC;QACjF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8CAA8C;IAC9C,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC1C,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACpC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,mDAAmD;QACnD,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;YAC7C,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC;gBAClC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;IACH,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,MAAM,EAAE,EAAE,yBAAyB,CAAC,CAAC;IACrE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,oBAAoB;AAEpB;;;GAGG;AACH,KAAK,UAAU,SAAS,CACtB,SAAiB,EACjB,WAAqB,EACrB,WAA6B,EAC7B,MAAc;IAEd,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IAEzD,MAAM,OAAO,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;IAC9D,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,WAAW,EAAE;QACnF,iBAAiB,EAAE,cAAc;KAClC,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/E,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,sEAAsE,CAAC,CAAC;QACpG,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAErC,CAAC;IACF,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC;IAEnE,IAAI,WAAW,GAAG,CAAC,IAAI,WAAW,GAAG,CAAC,IAAI,kBAAkB,GAAG,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,qCAAqC,CAAC,CAAC;IACpG,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC;AAED,sBAAsB;AAEtB;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,SAAiB,EACjB,QAAkB,EAClB,WAA6B;IAE7B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IAE5D,MAAM,OAAO,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;IACxC,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,uBAAuB,EAAE,OAAO,EAAE,WAAW,EAAE;QACrF,iBAAiB,EAAE,cAAc;KAClC,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/E,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,4BAA4B,CAAC,CAAC;QACpE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,2BAA2B,CAAC,CAAC;IACpD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,qCAAqC;AAErC,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,SAAiB,EACjB,WAAmB,EACnB,WAA6B,EAC7B,MAAc;IAEd,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;IAC3D,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAAC;IAE9C,MAAM,qBAAqB,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IAE5D,oEAAoE;IACpE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAClD,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,IAAI,CAAC;QACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YACzD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YACrD,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE;gBAAE,SAAS;YAClC,IAAI,QAAQ,CAAC,IAAI,GAAG,aAAa;gBAAE,SAAS;YAE5C,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACxC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE1B,MAAM,QAAQ,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QACrE,CAAC;QAED,2EAA2E;QAC3E,MAAM,SAAS,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAE7D,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,qDAAqD,CAAC,CAAC;IAC3E,CAAC;AACH,CAAC;AAED,uBAAuB;AAEvB,SAAS,OAAO,CAAC,IAAe;IAC9B,IAAI,KAAK,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC,CAAC,cAAc;QAC9C,iFAAiF;QACjF,MAAM,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1D,IAAI,YAAY;YAAE,YAAY,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,8DAA8D,CAAC,CAAC;IACrH,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,gBAAgB,EAAE,CAAC;AACrB,CAAC;AAED,KAAK,UAAU,UAAU;IACvB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAE/B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACxE,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAEnC,6CAA6C;IAC7C,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,aAAa,EAAE,CAAC;QAC/C,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAC9B,uDAAuD;YACvD,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;YAClE,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,qBAAqB,CAAC,SAAS,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,MAAM,SAAS,GAAgB,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,iBAAiB,CAAC;YACrF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE;gBAC5F,iBAAiB,EAAE,IAAI,CAAC,cAAc;aACvC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAI,MAAM,CAAC,KAAK,KAAK,eAAe;oBAAE,MAAM;gBAC5C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrB,MAAM,CAAC,iDAAiD;YAC1D,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;gBACjD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC;YACD,8CAA8C;QAChD,CAAC;QAAC,OAAO,OAAO,EAAE,CAAC;YACjB,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,2CAA2C,CAAC,CAAC;QAC/I,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACjB,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;IAEzB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,cAAc,EAAE,CAAC;QACjB,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC5B,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB;IACvB,IAAI,UAAU;QAAE,OAAO;IACvB,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAC5B,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC1E,CAAC,EAAE,iBAAiB,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,cAAc;IACrB,IAAI,UAAU,EAAE,CAAC;QACf,aAAa,CAAC,UAAU,CAAC,CAAC;QAC1B,UAAU,GAAG,IAAI,CAAC;IACpB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,KAAK,CAAC,MAAM,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,cAAc,EAAE,CAAC;IACjB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACjB,aAAa,CAAC,KAAK,EAAE,CAAC;AACxB,CAAC"}
package/dist/watcher.d.ts CHANGED
@@ -12,6 +12,12 @@ export interface ProjectWatcher {
12
12
  credentials: AgentCredentials;
13
13
  close(): Promise<void>;
14
14
  }
15
+ /**
16
+ * Read the current branch name from .git/HEAD.
17
+ * Returns branch name for normal refs, "HEAD-{short-sha}" for detached HEAD,
18
+ * or "unknown" if .git/HEAD cannot be read.
19
+ */
20
+ export declare function getCurrentBranch(projectPath: string): string;
15
21
  /**
16
22
  * Start watching a project's documentation/ directory for changes.
17
23
  * Also watches .git/HEAD for branch switches (triggers full resync).
@@ -1 +1 @@
1
- {"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../src/watcher.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,UAAU,qBAAqB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7C;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CA8HlF"}
1
+ {"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../src/watcher.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,UAAU,qBAAqB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7C;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAe5D;AAuBD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CA+KlF"}
package/dist/watcher.js CHANGED
@@ -1,9 +1,48 @@
1
1
  // Per-project file watcher using chokidar
2
2
  // Watches documentation/ for changes, triggers section-level sync
3
3
  import chokidar from 'chokidar';
4
+ import { execFile } from 'node:child_process';
5
+ import { readFileSync } from 'node:fs';
4
6
  import { join, basename } from 'node:path';
5
- import { syncFile, deleteFiles, initialSync, createSnapshot, pushVersionMetadata } from './sync.js';
7
+ import { syncFile, deleteFiles, initialSync, createSnapshot, pushVersionMetadata, hideBranches } from './sync.js';
6
8
  import { logger } from './logger.js';
9
+ /**
10
+ * Read the current branch name from .git/HEAD.
11
+ * Returns branch name for normal refs, "HEAD-{short-sha}" for detached HEAD,
12
+ * or "unknown" if .git/HEAD cannot be read.
13
+ */
14
+ export function getCurrentBranch(projectPath) {
15
+ const headPath = join(projectPath, '.git', 'HEAD');
16
+ try {
17
+ const content = readFileSync(headPath, 'utf8').trim();
18
+ if (content.startsWith('ref: refs/heads/')) {
19
+ return content.slice('ref: refs/heads/'.length);
20
+ }
21
+ // Detached HEAD — use short SHA
22
+ if (/^[0-9a-f]{40}$/.test(content)) {
23
+ return `HEAD-${content.slice(0, 8)}`;
24
+ }
25
+ return 'unknown';
26
+ }
27
+ catch {
28
+ return 'unknown';
29
+ }
30
+ }
31
+ /**
32
+ * List local branches using git for-each-ref (handles packed-refs).
33
+ * Returns a promise resolving to an array of branch names.
34
+ */
35
+ function getLocalBranches(projectPath) {
36
+ return new Promise((resolve) => {
37
+ execFile('git', ['for-each-ref', '--format=%(refname:short)', 'refs/heads/'], { cwd: projectPath, encoding: 'utf8' }, (error, stdout) => {
38
+ if (error) {
39
+ resolve([]);
40
+ return;
41
+ }
42
+ resolve(stdout.trim().split('\n').filter(Boolean));
43
+ });
44
+ });
45
+ }
7
46
  /**
8
47
  * Start watching a project's documentation/ directory for changes.
9
48
  * Also watches .git/HEAD for branch switches (triggers full resync).
@@ -16,6 +55,17 @@ export function startProjectWatcher(options) {
16
55
  const docDir = join(projectPath, 'documentation');
17
56
  // Credentials are always provided by the daemon — no disk fallback needed
18
57
  const credentialsPromise = Promise.resolve(credentials);
58
+ // Branch state — read on startup, updated on .git/HEAD change
59
+ let currentBranch = getCurrentBranch(projectPath);
60
+ log.info({ branch: currentBranch }, 'Initial branch detected');
61
+ // Track known branches for deletion detection
62
+ const knownBranches = new Set();
63
+ knownBranches.add(currentBranch);
64
+ // Populate known branches from git on startup
65
+ getLocalBranches(projectPath).then((branches) => {
66
+ for (const b of branches)
67
+ knownBranches.add(b);
68
+ }).catch(() => { });
19
69
  // Documentation watcher
20
70
  const docWatcher = chokidar.watch(docDir, {
21
71
  ignored: (filePath, stats) => {
@@ -44,7 +94,7 @@ export function startProjectWatcher(options) {
44
94
  const handleChange = (filePath) => {
45
95
  log.debug({ file: filePath }, 'File changed');
46
96
  credentialsPromise
47
- .then(creds => syncFile(projectId, projectPath, filePath, creds))
97
+ .then(creds => syncFile(projectId, projectPath, filePath, creds, currentBranch))
48
98
  .then(() => {
49
99
  onPushSuccess?.(projectPath);
50
100
  })
@@ -59,7 +109,7 @@ export function startProjectWatcher(options) {
59
109
  .on('unlink', (filePath) => {
60
110
  log.info({ file: filePath }, 'File deleted — notifying server');
61
111
  credentialsPromise
62
- .then(creds => deleteFiles(projectId, projectPath, [filePath], creds))
112
+ .then(creds => deleteFiles(projectId, projectPath, [filePath], creds, currentBranch))
63
113
  .catch((deleteErr) => {
64
114
  log.error({ err: deleteErr, file: filePath }, 'Delete notification failed for file');
65
115
  });
@@ -73,9 +123,12 @@ export function startProjectWatcher(options) {
73
123
  ignoreInitial: true,
74
124
  });
75
125
  gitWatcher.on('change', () => {
76
- log.info('Git HEAD changed — triggering full resync');
126
+ const newBranch = getCurrentBranch(projectPath);
127
+ log.info({ oldBranch: currentBranch, newBranch }, 'Git HEAD changed — triggering full resync');
128
+ currentBranch = newBranch;
129
+ knownBranches.add(newBranch);
77
130
  credentialsPromise
78
- .then(creds => initialSync(projectId, projectPath, creds))
131
+ .then(creds => initialSync(projectId, projectPath, creds, currentBranch))
79
132
  .catch((err) => {
80
133
  log.error({ err }, 'Full resync after git HEAD change failed');
81
134
  });
@@ -108,11 +161,11 @@ export function startProjectWatcher(options) {
108
161
  log.info('Git commit detected — creating auto-snapshot');
109
162
  credentialsPromise
110
163
  .then(async (creds) => {
111
- const success = await createSnapshot(projectId, `auto: commit`, undefined, 'git_commit', creds);
164
+ const success = await createSnapshot(projectId, `auto: commit`, currentBranch, undefined, 'git_commit', creds);
112
165
  if (!success) {
113
166
  log.warn('Auto-snapshot failed — retrying in 2s');
114
167
  await new Promise(resolve => setTimeout(resolve, 2000));
115
- await createSnapshot(projectId, `auto: commit`, undefined, 'git_commit', creds);
168
+ await createSnapshot(projectId, `auto: commit`, currentBranch, undefined, 'git_commit', creds);
116
169
  }
117
170
  })
118
171
  .catch((err) => {
@@ -120,11 +173,43 @@ export function startProjectWatcher(options) {
120
173
  });
121
174
  }
122
175
  });
176
+ // Periodic branch deletion detection (every 5 minutes)
177
+ const branchCheckInterval = setInterval(() => {
178
+ credentialsPromise
179
+ .then(async (creds) => {
180
+ const localBranches = await getLocalBranches(projectPath);
181
+ const localSet = new Set(localBranches);
182
+ const deletedBranches = [];
183
+ for (const branch of knownBranches) {
184
+ // Skip detached HEAD entries and "unknown" — they aren't real branches
185
+ if (branch.startsWith('HEAD-') || branch === 'unknown')
186
+ continue;
187
+ if (!localSet.has(branch)) {
188
+ deletedBranches.push(branch);
189
+ }
190
+ }
191
+ if (deletedBranches.length > 0) {
192
+ log.info({ deletedBranches }, 'Detected deleted branches — notifying server');
193
+ const success = await hideBranches(projectId, deletedBranches, creds);
194
+ if (success) {
195
+ for (const b of deletedBranches)
196
+ knownBranches.delete(b);
197
+ }
198
+ }
199
+ // Update known branches from current local state
200
+ for (const b of localBranches)
201
+ knownBranches.add(b);
202
+ })
203
+ .catch((checkErr) => {
204
+ log.error({ err: checkErr }, 'Branch deletion check failed');
205
+ });
206
+ }, 5 * 60 * 1000);
123
207
  return {
124
208
  projectId,
125
209
  projectPath,
126
210
  credentials,
127
211
  async close() {
212
+ clearInterval(branchCheckInterval);
128
213
  await Promise.all([docWatcher.close(), gitWatcher.close(), gitRefsWatcher.close(), versionWatcher.close()]);
129
214
  log.info('Watchers closed');
130
215
  },
@@ -1 +1 @@
1
- {"version":3,"file":"watcher.js","sourceRoot":"","sources":["../src/watcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"watcher.js","sourceRoot":"","sources":["../src/watcher.ts"],"names":[],"mappings":"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"}
@@ -17,4 +17,15 @@ export declare const moveProjectSchema: z.ZodObject<{
17
17
  targetOrgId: z.ZodString;
18
18
  }, z.core.$strip>;
19
19
  export type MoveProjectInput = z.infer<typeof moveProjectSchema>;
20
+ export declare const branchListItemSchema: z.ZodObject<{
21
+ name: z.ZodString;
22
+ hiddenAt: z.ZodNullable<z.ZodString>;
23
+ }, z.core.$strip>;
24
+ export declare const branchListResponseSchema: z.ZodObject<{
25
+ branches: z.ZodArray<z.ZodObject<{
26
+ name: z.ZodString;
27
+ hiddenAt: z.ZodNullable<z.ZodString>;
28
+ }, z.core.$strip>>;
29
+ }, z.core.$strip>;
30
+ export type BranchListResponse = z.infer<typeof branchListResponseSchema>;
20
31
  //# sourceMappingURL=projects.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../../src/api/schemas/projects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB;;;;;iBAU9B,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAErE,eAAO,MAAM,mBAAmB;;;;;iBAU9B,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAErE,eAAO,MAAM,iBAAiB;;iBAE5B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../../src/api/schemas/projects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB;;;;;iBAU9B,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAErE,eAAO,MAAM,mBAAmB;;;;;iBAU9B,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAErE,eAAO,MAAM,iBAAiB;;iBAE5B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAIjE,eAAO,MAAM,oBAAoB;;;iBAG/B,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;iBAEnC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -24,4 +24,12 @@ export const updateProjectSchema = z.object({
24
24
  export const moveProjectSchema = z.object({
25
25
  targetOrgId: z.string().min(1, 'Target organization ID is required'),
26
26
  });
27
+ // --- Branch management ---
28
+ export const branchListItemSchema = z.object({
29
+ name: z.string(),
30
+ hiddenAt: z.string().nullable(),
31
+ });
32
+ export const branchListResponseSchema = z.object({
33
+ branches: z.array(branchListItemSchema),
34
+ });
27
35
  //# sourceMappingURL=projects.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../src/api/schemas/projects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAC5D,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,KAAK,CAAC,8BAA8B,EAAE,kDAAkD,CAAC;SACzF,QAAQ,EAAE;IACb,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC3C,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,KAAK,CAAC,8BAA8B,EAAE,kDAAkD,CAAC;SACzF,QAAQ,EAAE;IACb,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oCAAoC,CAAC;CACrE,CAAC,CAAC"}
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../src/api/schemas/projects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAC5D,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,KAAK,CAAC,8BAA8B,EAAE,kDAAkD,CAAC;SACzF,QAAQ,EAAE;IACb,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC3C,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,KAAK,CAAC,8BAA8B,EAAE,kDAAkD,CAAC;SACzF,QAAQ,EAAE;IACb,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,oCAAoC,CAAC;CACrE,CAAC,CAAC;AAIH,4BAA4B;AAE5B,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;CACxC,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { z } from 'zod';
2
+ export declare const branchName: z.ZodString;
2
3
  export declare const sectionItemSchema: z.ZodObject<{
3
4
  slug: z.ZodString;
4
5
  heading: z.ZodNullable<z.ZodString>;
@@ -9,6 +10,7 @@ export declare const sectionItemSchema: z.ZodObject<{
9
10
  }, z.core.$strip>;
10
11
  export declare const syncSectionsSchema: z.ZodObject<{
11
12
  projectId: z.ZodString;
13
+ branch: z.ZodString;
12
14
  file: z.ZodString;
13
15
  file_hash: z.ZodString;
14
16
  sections: z.ZodArray<z.ZodObject<{
@@ -31,6 +33,7 @@ export declare const syncFileItemSchema: z.ZodObject<{
31
33
  }, z.core.$strip>;
32
34
  export declare const syncFilesSchema: z.ZodObject<{
33
35
  projectId: z.ZodString;
36
+ branch: z.ZodString;
34
37
  files: z.ZodArray<z.ZodObject<{
35
38
  path: z.ZodString;
36
39
  content: z.ZodString;
@@ -41,6 +44,7 @@ export declare const syncFilesSchema: z.ZodObject<{
41
44
  export type SyncFilesInput = z.infer<typeof syncFilesSchema>;
42
45
  export declare const createSnapshotSchema: z.ZodObject<{
43
46
  projectId: z.ZodString;
47
+ branch: z.ZodString;
44
48
  name: z.ZodOptional<z.ZodString>;
45
49
  commitHash: z.ZodOptional<z.ZodString>;
46
50
  trigger: z.ZodOptional<z.ZodEnum<{
@@ -52,12 +56,19 @@ export declare const createSnapshotSchema: z.ZodObject<{
52
56
  export type CreateSnapshotInput = z.infer<typeof createSnapshotSchema>;
53
57
  export declare const deleteFilesSchema: z.ZodObject<{
54
58
  projectId: z.ZodString;
59
+ branch: z.ZodString;
55
60
  files: z.ZodArray<z.ZodString>;
56
61
  }, z.core.$strip>;
57
62
  export type DeleteFilesInput = z.infer<typeof deleteFilesSchema>;
58
63
  export declare const reconcileSchema: z.ZodObject<{
59
64
  projectId: z.ZodString;
65
+ branch: z.ZodString;
60
66
  filePaths: z.ZodArray<z.ZodString>;
61
67
  }, z.core.$strip>;
62
68
  export type ReconcileInput = z.infer<typeof reconcileSchema>;
69
+ export declare const branchHideRequestSchema: z.ZodObject<{
70
+ projectId: z.ZodString;
71
+ branches: z.ZodArray<z.ZodString>;
72
+ }, z.core.$strip>;
73
+ export type BranchHideRequestInput = z.infer<typeof branchHideRequestSchema>;
63
74
  //# sourceMappingURL=sync.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../../src/api/schemas/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,eAAO,MAAM,iBAAiB;;;;;;;iBAO5B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;iBAM7B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACnE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAI5D,eAAO,MAAM,kBAAkB;;;;;iBAK7B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;iBAG1B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAI7D,eAAO,MAAM,oBAAoB;;;;;;;;;iBAK/B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAIvE,eAAO,MAAM,iBAAiB;;;iBAG5B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAIjE,eAAO,MAAM,eAAe;;;iBAG1B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../../src/api/schemas/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,eAAO,MAAM,UAAU,aAAwD,CAAC;AAIhF,eAAO,MAAM,iBAAiB;;;;;;;iBAO5B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;iBAO7B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACnE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAI5D,eAAO,MAAM,kBAAkB;;;;;iBAK7B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;iBAI1B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAI7D,eAAO,MAAM,oBAAoB;;;;;;;;;;iBAM/B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAIvE,eAAO,MAAM,iBAAiB;;;;iBAI5B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAIjE,eAAO,MAAM,eAAe;;;;iBAI1B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAI7D,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
@@ -6,6 +6,7 @@ const safePath = z
6
6
  .max(500)
7
7
  .refine((p) => !p.includes('..'), 'Path traversal not allowed')
8
8
  .refine((p) => !p.startsWith('/'), 'Absolute paths not allowed');
9
+ export const branchName = z.string().min(1, 'Branch name is required').max(200);
9
10
  // --- POST /api/sync/sections ---
10
11
  export const sectionItemSchema = z.object({
11
12
  slug: z.string().min(1).max(500),
@@ -17,6 +18,7 @@ export const sectionItemSchema = z.object({
17
18
  });
18
19
  export const syncSectionsSchema = z.object({
19
20
  projectId: z.string().uuid(),
21
+ branch: branchName,
20
22
  file: safePath,
21
23
  file_hash: z.string().regex(SHA256_PATTERN, 'Invalid SHA256 hash format'),
22
24
  sections: z.array(sectionItemSchema).min(1).max(500),
@@ -31,11 +33,13 @@ export const syncFileItemSchema = z.object({
31
33
  });
32
34
  export const syncFilesSchema = z.object({
33
35
  projectId: z.string().uuid(),
36
+ branch: branchName,
34
37
  files: z.array(syncFileItemSchema).min(1).max(100),
35
38
  });
36
39
  // --- POST /api/sync/snapshot ---
37
40
  export const createSnapshotSchema = z.object({
38
41
  projectId: z.string().uuid(),
42
+ branch: branchName,
39
43
  name: z.string().min(1).max(200).optional(),
40
44
  commitHash: z.string().max(64).optional(),
41
45
  trigger: z.enum(['manual', 'git_commit', 'plan_completion']).optional(),
@@ -43,11 +47,18 @@ export const createSnapshotSchema = z.object({
43
47
  // --- POST /api/sync/delete-files ---
44
48
  export const deleteFilesSchema = z.object({
45
49
  projectId: z.string().uuid(),
50
+ branch: branchName,
46
51
  files: z.array(safePath).min(1).max(500),
47
52
  });
48
53
  // --- POST /api/sync/reconcile ---
49
54
  export const reconcileSchema = z.object({
50
55
  projectId: z.string().uuid(),
56
+ branch: branchName,
51
57
  filePaths: z.array(safePath).max(10_000),
52
58
  });
59
+ // --- POST /api/sync/branch-hide ---
60
+ export const branchHideRequestSchema = z.object({
61
+ projectId: z.string().uuid(),
62
+ branches: z.array(z.string().min(1).max(200)).min(1).max(100),
63
+ });
53
64
  //# sourceMappingURL=sync.js.map