agent-switchboard 0.4.17 → 0.4.18

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.
@@ -15,8 +15,8 @@ import os from 'node:os';
15
15
  import path from 'node:path';
16
16
  import { parse as parseToml } from '@iarna/toml';
17
17
  import { getCodexConfigPath, getCodexDir, getCodexHooksJsonPath, getProjectCodexDir, getProjectCodexHooksJsonPath, } from '../config/paths.js';
18
- import { distributeBundle } from '../library/distribute-bundle.js';
19
- import { ensureParentDir, rmDirRecursive } from '../library/fs.js';
18
+ import { assertNoSymlinkAncestor, assertUsableBundleRoot, distributeBundle, } from '../library/distribute-bundle.js';
19
+ import { ensureParentDir } from '../library/fs.js';
20
20
  import { listHookBundleFiles } from './library.js';
21
21
  import { HOOK_DIR_PLACEHOLDER } from './schema.js';
22
22
  const CODEX_SUPPORTED_EVENTS = new Set([
@@ -53,6 +53,13 @@ function resolveHooksBundleParentDir(scope) {
53
53
  }
54
54
  return path.join(getCodexDir(), 'hooks', ASB_HOOKS_SUBDIR);
55
55
  }
56
+ function resolveHooksBundleSafetyRoot(scope) {
57
+ const projectRoot = scope?.project?.trim();
58
+ if (projectRoot && projectRoot.length > 0) {
59
+ return getProjectCodexDir(projectRoot);
60
+ }
61
+ return getCodexDir();
62
+ }
56
63
  function resolveHookBundleTargetDir(entry, scope) {
57
64
  return path.join(resolveHooksBundleParentDir(scope), entry.id);
58
65
  }
@@ -223,19 +230,24 @@ function mergeHooksIntoFile(fileData, filteredEntries, scope, bundleHashes) {
223
230
  function cleanOrphanBundleDirs(activeIds, scope, dryRun) {
224
231
  const parentDir = resolveHooksBundleParentDir(scope);
225
232
  const results = [];
226
- if (!fs.existsSync(parentDir))
233
+ const parentError = getOrphanBundleParentError(scope);
234
+ if (parentError) {
235
+ results.push(parentError);
236
+ return results;
237
+ }
238
+ if (!lstatIfExists(parentDir))
227
239
  return results;
228
240
  try {
229
241
  const entries = fs.readdirSync(parentDir, { withFileTypes: true });
230
242
  for (const entry of entries) {
231
- if (!entry.isDirectory())
243
+ if (!entry.isDirectory() && !entry.isSymbolicLink())
232
244
  continue;
233
245
  if (activeIds.has(entry.name))
234
246
  continue;
235
247
  const dirPath = path.join(parentDir, entry.name);
236
248
  try {
237
249
  if (!dryRun)
238
- rmDirRecursive(dirPath);
250
+ removeHookBundlePath(dirPath);
239
251
  results.push({
240
252
  platform: 'codex',
241
253
  targetDir: dirPath,
@@ -256,11 +268,71 @@ function cleanOrphanBundleDirs(activeIds, scope, dryRun) {
256
268
  }
257
269
  }
258
270
  }
259
- catch {
260
- // Ignore directory read errors
271
+ catch (error) {
272
+ const msg = error instanceof Error ? error.message : String(error);
273
+ results.push({
274
+ platform: 'codex',
275
+ targetDir: parentDir,
276
+ status: 'error',
277
+ error: `Failed to scan orphan parent: ${msg}`,
278
+ });
261
279
  }
262
280
  return results;
263
281
  }
282
+ function getOrphanBundleParentError(scope) {
283
+ const parentDir = resolveHooksBundleParentDir(scope);
284
+ try {
285
+ const safetyRoot = resolveHooksBundleSafetyRoot(scope);
286
+ assertUsableBundleRoot(safetyRoot);
287
+ assertNoSymlinkAncestor(safetyRoot, parentDir);
288
+ }
289
+ catch (error) {
290
+ const msg = error instanceof Error ? error.message : String(error);
291
+ return {
292
+ platform: 'codex',
293
+ targetDir: parentDir,
294
+ status: 'error',
295
+ error: `Failed to scan orphan parent: ${msg}`,
296
+ };
297
+ }
298
+ const stat = lstatIfExists(parentDir);
299
+ if (!stat)
300
+ return undefined;
301
+ if (!stat.isDirectory()) {
302
+ return {
303
+ platform: 'codex',
304
+ targetDir: parentDir,
305
+ status: 'error',
306
+ error: `Failed to scan orphan parent: bundle root exists and is not a directory: ${parentDir}`,
307
+ };
308
+ }
309
+ return undefined;
310
+ }
311
+ function lstatIfExists(filePath) {
312
+ try {
313
+ return fs.lstatSync(filePath);
314
+ }
315
+ catch (error) {
316
+ if (typeof error === 'object' && error !== null && 'code' in error && error.code === 'ENOENT') {
317
+ return undefined;
318
+ }
319
+ throw error;
320
+ }
321
+ }
322
+ function removeHookBundlePath(targetPath) {
323
+ const stat = lstatIfExists(targetPath);
324
+ if (!stat)
325
+ return;
326
+ if (stat.isDirectory() && !stat.isSymbolicLink()) {
327
+ const entries = fs.readdirSync(targetPath, { withFileTypes: true });
328
+ for (const entry of entries) {
329
+ removeHookBundlePath(path.join(targetPath, entry.name));
330
+ }
331
+ fs.rmdirSync(targetPath);
332
+ return;
333
+ }
334
+ fs.unlinkSync(targetPath);
335
+ }
264
336
  function readCodexConfigToml() {
265
337
  const configPath = getCodexConfigPath();
266
338
  if (!fs.existsSync(configPath))
@@ -410,6 +482,7 @@ export function distributeCodexHooks(options) {
410
482
  selected: bundleEntries,
411
483
  platforms: ['codex'],
412
484
  resolveTargetDir: (_p, entry) => resolveHookBundleTargetDir(entry, scope),
485
+ resolveBundleRootDir: () => resolveHooksBundleSafetyRoot(scope),
413
486
  listFiles: listHookBundleFiles,
414
487
  getId: (entry) => entry.id,
415
488
  scope,
@@ -436,38 +509,94 @@ export function distributeCodexHooks(options) {
436
509
  }
437
510
  }
438
511
  }
512
+ const cleanupParentError = getOrphanBundleParentError(scope);
513
+ if (cleanupParentError) {
514
+ results.push(cleanupParentError);
515
+ return { results };
516
+ }
517
+ const appendCleanupResults = () => {
518
+ const cleanupResults = cleanOrphanBundleDirs(activeBundleIds, scope, dryRun);
519
+ results.push(...cleanupResults);
520
+ return cleanupResults.some((result) => result.status === 'error');
521
+ };
439
522
  // Phase 2: Merge hook configs into hooks.json
440
523
  const previouslyManaged = (fileData[ASB_MANAGED_KEY] ?? []);
441
524
  // Check for existing ASB groups
442
525
  const existingHooks = (fileData.hooks ?? {});
443
526
  const hasAsbGroups = Object.values(existingHooks).some((groups) => groups.some((g) => g._asb_source === true));
444
527
  if (filteredEntries.length === 0 && previouslyManaged.length === 0 && !hasAsbGroups) {
528
+ appendCleanupResults();
445
529
  return { results };
446
530
  }
447
531
  const before = JSON.stringify(fileData);
448
532
  mergeHooksIntoFile(fileData, filteredEntries, scope, bundleHashes);
533
+ const preserveCleanupMarker = filteredEntries.length === 0 && previouslyManaged.length > 0;
534
+ if (preserveCleanupMarker) {
535
+ fileData[ASB_MANAGED_KEY] = previouslyManaged;
536
+ }
449
537
  // Clean up empty state: if no hooks remain, remove the file entirely
450
538
  const mergedHooks = fileData.hooks;
451
539
  const totalGroups = Object.values(mergedHooks).reduce((sum, groups) => sum + groups.length, 0);
452
540
  const hasNoHooks = totalGroups === 0;
453
541
  if (hasNoHooks && filteredEntries.length === 0) {
454
- // Remove ASB tracking keys
455
- delete fileData[ASB_MANAGED_KEY];
542
+ if (!preserveCleanupMarker) {
543
+ delete fileData[ASB_MANAGED_KEY];
544
+ }
456
545
  // If file has only hooks (now empty) and ASB keys, consider deleting
457
546
  const remainingKeys = Object.keys(fileData).filter((k) => k !== 'hooks');
458
547
  if (remainingKeys.length === 0 && fs.existsSync(hooksJsonPath) && !dryRun) {
459
- fs.unlinkSync(hooksJsonPath);
460
- results.push({
461
- platform: 'codex',
462
- filePath: hooksJsonPath,
463
- status: 'deleted',
464
- reason: 'no hooks remain',
465
- });
466
- results.push(...cleanOrphanBundleDirs(activeBundleIds, scope, dryRun));
548
+ try {
549
+ fs.unlinkSync(hooksJsonPath);
550
+ results.push({
551
+ platform: 'codex',
552
+ filePath: hooksJsonPath,
553
+ status: 'deleted',
554
+ reason: 'no hooks remain',
555
+ });
556
+ appendCleanupResults();
557
+ }
558
+ catch (error) {
559
+ const msg = error instanceof Error ? error.message : String(error);
560
+ results.push({ platform: 'codex', filePath: hooksJsonPath, status: 'error', error: msg });
561
+ }
467
562
  return { results };
468
563
  }
469
564
  }
470
565
  const after = JSON.stringify(fileData);
566
+ const finalizeCleanupMarker = () => {
567
+ if (!preserveCleanupMarker || dryRun)
568
+ return;
569
+ delete fileData[ASB_MANAGED_KEY];
570
+ const finalHooks = fileData.hooks;
571
+ const finalTotalGroups = Object.values(finalHooks).reduce((sum, groups) => sum + groups.length, 0);
572
+ const finalRemainingKeys = Object.keys(fileData).filter((k) => k !== 'hooks');
573
+ try {
574
+ if (finalTotalGroups === 0 &&
575
+ finalRemainingKeys.length === 0 &&
576
+ fs.existsSync(hooksJsonPath)) {
577
+ fs.unlinkSync(hooksJsonPath);
578
+ results.push({
579
+ platform: 'codex',
580
+ filePath: hooksJsonPath,
581
+ status: 'deleted',
582
+ reason: 'no hooks remain',
583
+ });
584
+ }
585
+ else {
586
+ writeHooksJson(hooksJsonPath, fileData);
587
+ results.push({
588
+ platform: 'codex',
589
+ filePath: hooksJsonPath,
590
+ status: 'written',
591
+ reason: 'cleanup finalized',
592
+ });
593
+ }
594
+ }
595
+ catch (error) {
596
+ const msg = error instanceof Error ? error.message : String(error);
597
+ results.push({ platform: 'codex', filePath: hooksJsonPath, status: 'error', error: msg });
598
+ }
599
+ };
471
600
  if (before === after) {
472
601
  results.push({
473
602
  platform: 'codex',
@@ -475,14 +604,15 @@ export function distributeCodexHooks(options) {
475
604
  status: 'skipped',
476
605
  reason: 'up-to-date',
477
606
  });
478
- results.push(...cleanOrphanBundleDirs(activeBundleIds, scope, dryRun));
607
+ if (!appendCleanupResults())
608
+ finalizeCleanupMarker();
479
609
  }
480
610
  else if (dryRun) {
481
611
  const reason = filteredEntries.length === 0 ? 'hooks cleared' : `${filteredEntries.length} hook(s) merged`;
482
612
  results.push({ platform: 'codex', filePath: hooksJsonPath, status: 'written', reason });
483
613
  if (filteredEntries.length > 0)
484
614
  addReviewResult(hooksJsonPath, results);
485
- results.push(...cleanOrphanBundleDirs(activeBundleIds, scope, dryRun));
615
+ appendCleanupResults();
486
616
  }
487
617
  else {
488
618
  try {
@@ -491,7 +621,8 @@ export function distributeCodexHooks(options) {
491
621
  results.push({ platform: 'codex', filePath: hooksJsonPath, status: 'written', reason });
492
622
  if (filteredEntries.length > 0)
493
623
  addReviewResult(hooksJsonPath, results);
494
- results.push(...cleanOrphanBundleDirs(activeBundleIds, scope, dryRun));
624
+ if (!appendCleanupResults())
625
+ finalizeCleanupMarker();
495
626
  }
496
627
  catch (error) {
497
628
  const msg = error instanceof Error ? error.message : String(error);
@@ -1 +1 @@
1
- {"version":3,"file":"codex-distribute.js","sourceRoot":"","sources":["../../src/hooks/codex-distribute.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAInD,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IACrC,YAAY;IACZ,mBAAmB;IACnB,aAAa;IACb,YAAY;IACZ,aAAa;IACb,cAAc;IACd,kBAAkB;IAClB,MAAM;CACP,CAAC,CAAC;AAEH,MAAM,6BAA6B,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAE3D,wFAAwF;AACxF,MAAM,+BAA+B,GAAG,6BAA6B,CAAC;AACtE,wFAAwF;AACxF,MAAM,uCAAuC,GAAG,8BAA8B,CAAC;AAE/E,MAAM,eAAe,GAAG,oBAAoB,CAAC;AAC7C,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAE/B,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,SAAS,oBAAoB,CAAC,KAAmB;IAC/C,MAAM,WAAW,GAAG,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3C,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,OAAO,4BAA4B,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,qBAAqB,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAmB;IACtD,MAAM,WAAW,GAAG,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3C,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAgB,EAAE,KAAmB;IACvE,OAAO,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,SAAS,aAAa,CAAC,OAAe;IACpC,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,OAAO,CAAC;IAC5C,OAAO,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC;AAkBD,SAAS,uBAAuB,CAAC,UAA4B;IAC3D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,UAAU,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,uBAAuB,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,UAAU,CAAC,uBAAuB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,8BAA8B,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,MAAM,MAAM,GAAG,UAAU,CAAC,aAAa;QACrC,CAAC,CAAC,+DAA+D;QACjE,CAAC,CAAC,qDAAqD,CAAC;IAC1D,OAAO,GAAG,MAAM,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAC3C,CAAC;AAED,SAAS,cAAc,CAAC,OAA6B;IAInD,MAAM,MAAM,GAAwB,EAAE,CAAC;IACvC,MAAM,WAAW,GAAuB,EAAE,CAAC;IAE3C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,aAAa,GAA8B,EAAE,CAAC;QACpD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC5C,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAU,CAAC;QAElD,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC7B,SAAS;YACX,CAAC;YAED,MAAM,cAAc,GAAc,EAAE,CAAC;YACrC,KAAK,MAAM,KAAK,IAAI,MAAqD,EAAE,CAAC;gBAC1E,MAAM,gBAAgB,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;oBACxD,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC;oBACjC,MAAM,SAAS,GAAG,6BAA6B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC1D,IAAI,CAAC,SAAS;wBAAE,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAClD,OAAO,SAAS,CAAC;gBACnB,CAAC,CAAC,CAAC;gBACH,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,cAAc,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;YAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,aAAa,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC;YACxC,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,iBAAiB,CAAC,IAAI,GAAG,CAAC,IAAI,uBAAuB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACnE,WAAW,CAAC,IAAI,CAAC;gBACf,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,iBAAiB,EAAE,CAAC,GAAG,iBAAiB,CAAC,CAAC,IAAI,EAAE;gBAChD,uBAAuB,EAAE,CAAC,GAAG,uBAAuB,CAAC,CAAC,IAAI,EAAE;gBAC5D,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,KAAK,CAAC;aACvD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;AAC1C,CAAC;AAED,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,SAAS,aAAa,CACpB,QAAgB;IAEhB,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IAChF,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AAChC,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,KAAgC,CAAC;AAC1C,CAAC;AAED,SAAS,cAAc,CAAC,QAAgB,EAAE,IAA6B;IACrE,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC1B,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC5E,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,SAAS,cAAc,CACrB,KAAgC,EAChC,cAAsB,EACtB,UAAmB;IAEnB,MAAM,MAAM,GAA8B,EAAE,CAAC;IAE7C,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,GAAI,MAAyD,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACzF,GAAG,KAAK;YACR,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBACzC,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;oBAAE,OAAO,OAAO,CAAC;gBACxD,OAAO;oBACL,GAAG,OAAO;oBACV,OAAO,EAAE,aAAa,CACpB,qBAAqB,CACnB,OAAO,CAAC,OAAO;yBACZ,UAAU,CAAC,oBAAoB,EAAE,cAAc,CAAC;yBAChD,UAAU,CAAC,+BAA+B,EAAE,cAAc,CAAC;yBAC3D,UAAU,CAAC,uCAAuC,EAAE,cAAc,CAAC,EACtE,UAAU,CACX,CACF;iBACF,CAAC;YACJ,CAAC,CAAC;SACH,CAAC,CAAC,CAAC;IACN,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAe,EAAE,UAAmB;IACjE,IAAI,CAAC,UAAU;QAAE,OAAO,OAAO,CAAC;IAChC,OAAO,GAAG,OAAO,yBAAyB,UAAU,EAAE,CAAC;AACzD,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAgB;IACzC,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACrD,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAC7C,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,kBAAkB,CACzB,QAAiC,EACjC,eAAoC,EACpC,KAAmB,EACnB,YAA0C;IAE1C,MAAM,aAAa,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAA8B,CAAC;IAE1E,+CAA+C;IAC/C,MAAM,YAAY,GAA8B,EAAE,CAAC;IACnD,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QAC5D,MAAM,IAAI,GAAI,MAAyC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC;QAC9F,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,YAAY,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAClD,CAAC;IAED,yBAAyB;IACzB,KAAK,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,eAAe,EAAE,CAAC;QAC/C,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ;YAClC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,0BAA0B,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC9F,CAAC,CAAC,KAAK,CAAC;QAEV,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YAC5D,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;gBAAE,YAAY,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACnD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,YAAY,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,GAAI,KAAiC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,KAAK,GAAG,YAAY,CAAC;IAC9B,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,QAAQ,CAAC,eAAe,CAAC,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC;SAAM,CAAC;QACN,OAAO,QAAQ,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,6BAA6B;AAC7B,8EAA8E;AAE9E,SAAS,qBAAqB,CAC5B,SAAsB,EACtB,KAAmB,EACnB,MAAgB;IAEhB,MAAM,SAAS,GAAG,2BAA2B,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,OAAO,GAAmD,EAAE,CAAC;IAEnE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,OAAO,CAAC;IAE9C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;gBAAE,SAAS;YACnC,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;gBAAE,SAAS;YAExC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC;gBACH,IAAI,CAAC,MAAM;oBAAE,cAAc,CAAC,OAAO,CAAC,CAAC;gBACrC,OAAO,CAAC,IAAI,CAAC;oBACX,QAAQ,EAAE,OAAO;oBACjB,SAAS,EAAE,OAAO;oBAClB,MAAM,EAAE,SAAS;oBACjB,MAAM,EAAE,QAAQ;oBAChB,OAAO,EAAE,KAAK,CAAC,IAAI;iBACpB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,OAAO,CAAC,IAAI,CAAC;oBACX,QAAQ,EAAE,OAAO;oBACjB,SAAS,EAAE,OAAO;oBAClB,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,4BAA4B,GAAG,EAAE;oBACxC,OAAO,EAAE,KAAK,CAAC,IAAI;iBACpB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,+BAA+B;IACjC,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAUD,SAAS,mBAAmB;IAG1B,MAAM,UAAU,GAAG,kBAAkB,EAAE,CAAC;IACxC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAEpF,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAA4B,CAAC;QACxF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACxD,CAAC;AAED,SAAS,oBAAoB,CAAC,QAA6C;IACzE,OAAO,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1F,OAAO,KAAgC,CAAC;AAC1C,CAAC;AAED,SAAS,wBAAwB,CAAC,MAA+B;IAC/D,MAAM,SAAS,GAAG,oBAAoB,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnE,MAAM,WAAW,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACnF,MAAM,YAAY,GAAG,oBAAoB,CAAC,SAAS,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC9E,OAAO,YAAY,IAAI,SAAS,IAAI,IAAI,CAAC;AAC3C,CAAC;AAED,SAAS,0BAA0B,CACjC,MAA2D,EAC3D,OAAkC;IAElC,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEpE,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC;YACX,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,kEAAkE;SAC3E,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAA2D,EAC3D,WAAmB,EACnB,OAAkC;IAElC,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,UAAU,GAAG,OAAO,EAAE,WAAW,CAAC;IACxC,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO;IAErC,MAAM,MAAM,GACV,OAAO,UAAU,KAAK,QAAQ;QAC5B,CAAC,CAAC,wCAAwC,UAAU,qCAAqC;QACzF,CAAC,CAAC,qGAAqG,CAAC;IAC5G,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AAC7F,CAAC;AAED,SAAS,eAAe,CAAC,aAAqB,EAAE,OAAkC;IAChF,OAAO,CAAC,IAAI,CAAC;QACX,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,aAAa;QACvB,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE,0EAA0E;KACnF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAC3B,MAAsD,EACtD,OAAkC;IAElC,OAAO,CAAC,IAAI,CAAC;QACX,QAAQ,EAAE,OAAO;QACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE,gEAAgE,MAAM,CAAC,KAAK,EAAE;KACvF,CAAC,CAAC;AACL,CAAC;AAaD,MAAM,UAAU,oBAAoB,CAAC,OAAmC;IAGtE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAEjE,IAAI,KAAK,EAAE,OAAO,IAAI,WAAW,KAAK,MAAM,EAAE,CAAC;QAC7C,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACzB,CAAC;IAED,MAAM,OAAO,GAET,EAAE,CAAC;IAEP,+DAA+D;IAC/D,MAAM,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,CAAC;IAC7C,KAAK,MAAM,UAAU,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC;YACX,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,aAAa;YACvB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,uBAAuB,CAAC,UAAU,CAAC;YAC3C,OAAO,EAAE,UAAU,CAAC,OAAO;SAC5B,CAAC,CAAC;IACL,CAAC;IAED,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;IAEhD,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC;YACX,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,aAAa;YACvB,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,2CAA2C,UAAU,CAAC,KAAK,EAAE;SACrE,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,CAAC;IACrB,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC;IAEjC,wEAAwE;IACxE,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACjC,IACE,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ;YAClC,QAAQ,CAAC,KAAK,KAAK,IAAI;YACvB,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC7B,CAAC;YACD,OAAO,CAAC,IAAI,CAAC;gBACX,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,aAAa;gBACvB,MAAM,EAAE,OAAO;gBACf,KAAK,EAAE,yDAAyD;aACjE,CAAC,CAAC;YACH,OAAO,EAAE,OAAO,EAAE,CAAC;QACrB,CAAC;QACD,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAgC,CAAC,EAAE,CAAC;YACxF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC;oBACX,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,aAAa;oBACvB,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,wCAAwC,KAAK,oBAAoB;iBACzE,CAAC,CAAC;gBACH,OAAO,EAAE,OAAO,EAAE,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,0BAA0B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,KAAK,EAAE,OAAO;gBAAE,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,4DAA4D;IAC5D,MAAM,aAAa,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC1F,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAChE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC/C,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,aAAa,GAAG,gBAAgB,CAA2B;YAC/D,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,CAAC,OAAO,CAAC;YACpB,gBAAgB,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,0BAA0B,CAAC,KAAK,EAAE,KAAK,CAAC;YACzE,SAAS,EAAE,mBAAmB;YAC9B,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE;YAC1B,KAAK;YACL,MAAM;SACP,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QACvC,IACE,aAAa,CAAC,OAAO,CAAC,IAAI,CACxB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,OAAO,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,CACtE,EACD,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,CAAC;QACrB,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;YACvD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,OAAO,CAAC,IAAI,CAAC;oBACX,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,aAAa;oBACvB,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,yBAAyB,KAAK,CAAC,EAAE,KAAK,GAAG,EAAE;oBAClD,OAAO,EAAE,KAAK,CAAC,EAAE;iBAClB,CAAC,CAAC;gBACH,OAAO,EAAE,OAAO,EAAE,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,MAAM,iBAAiB,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,CAAa,CAAC;IAExE,gCAAgC;IAChC,MAAM,aAAa,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAA8B,CAAC;IAC1E,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAC/D,MAAyC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,CAC/E,CAAC;IAEF,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QACpF,OAAO,EAAE,OAAO,EAAE,CAAC;IACrB,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACxC,kBAAkB,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IAEnE,qEAAqE;IACrE,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAkC,CAAC;IAChE,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/F,MAAM,UAAU,GAAG,WAAW,KAAK,CAAC,CAAC;IAErC,IAAI,UAAU,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,2BAA2B;QAC3B,OAAO,QAAQ,CAAC,eAAe,CAAC,CAAC;QACjC,qEAAqE;QACrE,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC;QACzE,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1E,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC;gBACX,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,aAAa;gBACvB,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,iBAAiB;aAC1B,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,eAAe,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;YACvE,OAAO,EAAE,OAAO,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAEvC,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC;YACX,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,aAAa;YACvB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,YAAY;SACrB,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,eAAe,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,CAAC;SAAM,IAAI,MAAM,EAAE,CAAC;QAClB,MAAM,MAAM,GACV,eAAe,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM,iBAAiB,CAAC;QAC9F,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QACxF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC;YAAE,eAAe,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,eAAe,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,CAAC;SAAM,CAAC;QACN,IAAI,CAAC;YACH,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YACxC,MAAM,MAAM,GACV,eAAe,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM,iBAAiB,CAAC;YAC9F,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;YACxF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC;gBAAE,eAAe,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,eAAe,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QACzE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"codex-distribute.js","sourceRoot":"","sources":["../../src/hooks/codex-distribute.ts"],"names":[],"mappings":"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"}
@@ -17,8 +17,8 @@ import fs from 'node:fs';
17
17
  import os from 'node:os';
18
18
  import path from 'node:path';
19
19
  import { getClaudeDir, getProjectClaudeDir } from '../config/paths.js';
20
- import { distributeBundle } from '../library/distribute-bundle.js';
21
- import { ensureParentDir, rmDirRecursive } from '../library/fs.js';
20
+ import { assertNoSymlinkAncestor, assertUsableBundleRoot, distributeBundle, } from '../library/distribute-bundle.js';
21
+ import { ensureParentDir } from '../library/fs.js';
22
22
  import { loadLibraryStateSectionForApplication } from '../library/state.js';
23
23
  import { getTargetById } from '../targets/registry.js';
24
24
  import { distributeCodexHooks } from './codex-distribute.js';
@@ -47,6 +47,13 @@ function resolveHooksBundleParentDir(scope) {
47
47
  }
48
48
  return path.join(getClaudeDir(), 'hooks', ASB_HOOKS_SUBDIR);
49
49
  }
50
+ function resolveHooksBundleSafetyRoot(scope) {
51
+ const projectRoot = scope?.project?.trim();
52
+ if (projectRoot && projectRoot.length > 0) {
53
+ return getProjectClaudeDir(projectRoot);
54
+ }
55
+ return getClaudeDir();
56
+ }
50
57
  function resolveHookBundleTargetDir(_platform, entry, scope) {
51
58
  return path.join(resolveHooksBundleParentDir(scope), entry.id);
52
59
  }
@@ -153,19 +160,24 @@ function mergeHooksIntoSettings(settings, selected, scope) {
153
160
  function cleanOrphanBundleDirs(activeIds, scope, dryRun) {
154
161
  const parentDir = resolveHooksBundleParentDir(scope);
155
162
  const results = [];
156
- if (!fs.existsSync(parentDir))
163
+ const parentError = getOrphanBundleParentError(scope);
164
+ if (parentError) {
165
+ results.push(parentError);
166
+ return results;
167
+ }
168
+ if (!lstatIfExists(parentDir))
157
169
  return results;
158
170
  try {
159
171
  const entries = fs.readdirSync(parentDir, { withFileTypes: true });
160
172
  for (const entry of entries) {
161
- if (!entry.isDirectory())
173
+ if (!entry.isDirectory() && !entry.isSymbolicLink())
162
174
  continue;
163
175
  if (activeIds.has(entry.name))
164
176
  continue;
165
177
  const dirPath = path.join(parentDir, entry.name);
166
178
  try {
167
179
  if (!dryRun)
168
- rmDirRecursive(dirPath);
180
+ removeHookBundlePath(dirPath);
169
181
  results.push({
170
182
  platform: 'claude-code',
171
183
  targetDir: dirPath,
@@ -186,11 +198,71 @@ function cleanOrphanBundleDirs(activeIds, scope, dryRun) {
186
198
  }
187
199
  }
188
200
  }
189
- catch {
190
- // Ignore directory read errors
201
+ catch (error) {
202
+ const msg = error instanceof Error ? error.message : String(error);
203
+ results.push({
204
+ platform: 'claude-code',
205
+ targetDir: parentDir,
206
+ status: 'error',
207
+ error: `Failed to scan orphan parent: ${msg}`,
208
+ });
191
209
  }
192
210
  return results;
193
211
  }
212
+ function getOrphanBundleParentError(scope) {
213
+ const parentDir = resolveHooksBundleParentDir(scope);
214
+ try {
215
+ const safetyRoot = resolveHooksBundleSafetyRoot(scope);
216
+ assertUsableBundleRoot(safetyRoot);
217
+ assertNoSymlinkAncestor(safetyRoot, parentDir);
218
+ }
219
+ catch (error) {
220
+ const msg = error instanceof Error ? error.message : String(error);
221
+ return {
222
+ platform: 'claude-code',
223
+ targetDir: parentDir,
224
+ status: 'error',
225
+ error: `Failed to scan orphan parent: ${msg}`,
226
+ };
227
+ }
228
+ const parentStat = lstatIfExists(parentDir);
229
+ if (!parentStat)
230
+ return undefined;
231
+ if (!parentStat.isDirectory()) {
232
+ return {
233
+ platform: 'claude-code',
234
+ targetDir: parentDir,
235
+ status: 'error',
236
+ error: `Failed to scan orphan parent: bundle root exists and is not a directory: ${parentDir}`,
237
+ };
238
+ }
239
+ return undefined;
240
+ }
241
+ function lstatIfExists(filePath) {
242
+ try {
243
+ return fs.lstatSync(filePath);
244
+ }
245
+ catch (error) {
246
+ if (typeof error === 'object' && error !== null && 'code' in error && error.code === 'ENOENT') {
247
+ return undefined;
248
+ }
249
+ throw error;
250
+ }
251
+ }
252
+ function removeHookBundlePath(targetPath) {
253
+ const stat = lstatIfExists(targetPath);
254
+ if (!stat)
255
+ return;
256
+ if (stat.isDirectory() && !stat.isSymbolicLink()) {
257
+ const entries = fs.readdirSync(targetPath, { withFileTypes: true });
258
+ for (const entry of entries) {
259
+ removeHookBundlePath(path.join(targetPath, entry.name));
260
+ }
261
+ fs.rmdirSync(targetPath);
262
+ return;
263
+ }
264
+ fs.unlinkSync(targetPath);
265
+ }
194
266
  // ---------------------------------------------------------------------------
195
267
  // Main distribution entry point
196
268
  // ---------------------------------------------------------------------------
@@ -276,16 +348,23 @@ function distributeClaude(ctx) {
276
348
  selected: bundleEntries,
277
349
  platforms: [platform],
278
350
  resolveTargetDir: (_p, entry) => resolveHookBundleTargetDir(_p, entry, ctx.scope),
351
+ resolveBundleRootDir: (_p) => resolveHooksBundleSafetyRoot(ctx.scope),
279
352
  listFiles: listHookBundleFiles,
280
353
  getId: (entry) => entry.id,
281
354
  scope: ctx.scope,
282
355
  dryRun: ctx.dryRun,
283
356
  });
284
357
  results.push(...bundleOutcome.results);
358
+ if (bundleOutcome.results.some((result) => result.status === 'error' || result.status === 'conflict')) {
359
+ return results;
360
+ }
285
361
  }
286
- // Clean up orphan bundle directories
287
362
  const activeBundleIds = new Set(bundleEntries.map((e) => e.id));
288
- results.push(...cleanOrphanBundleDirs(activeBundleIds, ctx.scope, ctx.dryRun));
363
+ const cleanupParentError = getOrphanBundleParentError(ctx.scope);
364
+ if (cleanupParentError) {
365
+ results.push(cleanupParentError);
366
+ return results;
367
+ }
289
368
  // Phase 2: Merge hook configs into settings.json
290
369
  const settingsPath = resolveSettingsPath(ctx.scope);
291
370
  const settingsResult = readSettingsJson(settingsPath);
@@ -302,7 +381,11 @@ function distributeClaude(ctx) {
302
381
  const previouslyManaged = (settings[ASB_MANAGED_KEY] ?? []);
303
382
  const existingHooks = (settings.hooks ?? {});
304
383
  const hasLegacyAsb = Object.values(existingHooks).some((groups) => groups.some((g) => isLegacyAsbGroup(g, ctx.scope)));
384
+ const appendCleanupResults = () => {
385
+ results.push(...cleanOrphanBundleDirs(activeBundleIds, ctx.scope, ctx.dryRun));
386
+ };
305
387
  if (selected.length === 0 && previouslyManaged.length === 0 && !hasLegacyAsb) {
388
+ appendCleanupResults();
306
389
  return results;
307
390
  }
308
391
  const before = JSON.stringify(settings);
@@ -310,16 +393,19 @@ function distributeClaude(ctx) {
310
393
  const after = JSON.stringify(settings);
311
394
  if (before === after) {
312
395
  results.push({ platform, filePath: settingsPath, status: 'skipped', reason: 'up-to-date' });
396
+ appendCleanupResults();
313
397
  }
314
398
  else if (ctx.dryRun) {
315
399
  const reason = selected.length === 0 ? 'hooks cleared' : `${selected.length} hook(s) merged`;
316
400
  results.push({ platform, filePath: settingsPath, status: 'written', reason });
401
+ appendCleanupResults();
317
402
  }
318
403
  else {
319
404
  try {
320
405
  writeSettingsJson(settingsPath, settings);
321
406
  const reason = selected.length === 0 ? 'hooks cleared' : `${selected.length} hook(s) merged`;
322
407
  results.push({ platform, filePath: settingsPath, status: 'written', reason });
408
+ appendCleanupResults();
323
409
  }
324
410
  catch (error) {
325
411
  const msg = error instanceof Error ? error.message : String(error);
@@ -1 +1 @@
1
- {"version":3,"file":"distribution.js","sourceRoot":"","sources":["../../src/hooks/distribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"distribution.js","sourceRoot":"","sources":["../../src/hooks/distribution.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,8 @@ export interface DistributeBundleOptions<TEntry, Platform extends string> {
36
36
  platforms: Platform[];
37
37
  /** Resolve target directory for a platform and entry */
38
38
  resolveTargetDir: (platform: Platform, entry: TEntry) => string;
39
+ /** Resolve the parent directory that owns bundle entry directories */
40
+ resolveBundleRootDir?: (platform: Platform) => string;
39
41
  /** List all files in an entry bundle */
40
42
  listFiles: (entry: TEntry) => BundleFile[];
41
43
  /** Get entry ID for logging */
@@ -60,6 +62,10 @@ export interface DistributeBundleOptions<TEntry, Platform extends string> {
60
62
  export interface DistributeBundleOutcome<Platform extends string> {
61
63
  results: BundleDistributionResult<Platform>[];
62
64
  }
65
+ export declare function assertNoSymlinkAncestor(rootPath: string, targetPath: string, options?: {
66
+ allowFinalSymlink?: boolean;
67
+ }): void;
68
+ export declare function assertUsableBundleRoot(rootPath: string): void;
63
69
  /**
64
70
  * Distribute skill bundles (directories) to target platforms.
65
71
  * Copies all files in each skill directory, preserving structure.
@@ -2,7 +2,6 @@ import { createHash } from 'node:crypto';
2
2
  import fs from 'node:fs';
3
3
  import path from 'node:path';
4
4
  import { computeLibraryCleanupSet, getLibraryEntry, hasOtherLibraryEntryAtPath, recordLibraryEntry, removeLibraryEntry, } from '../manifest/store.js';
5
- import { ensureParentDir, rmDirRecursive } from './fs.js';
6
5
  import { loadLibraryAgentSync, updateLibraryAgentSync } from './state.js';
7
6
  function listRelativeFiles(dir, prefix = '') {
8
7
  const files = [];
@@ -18,8 +17,63 @@ function listRelativeFiles(dir, prefix = '') {
18
17
  }
19
18
  return files;
20
19
  }
20
+ function lstatIfExists(filePath) {
21
+ try {
22
+ return fs.lstatSync(filePath);
23
+ }
24
+ catch (error) {
25
+ if (typeof error === 'object' && error !== null && 'code' in error && error.code === 'ENOENT') {
26
+ return undefined;
27
+ }
28
+ throw error;
29
+ }
30
+ }
31
+ export function assertNoSymlinkAncestor(rootPath, targetPath, options) {
32
+ const root = path.resolve(rootPath);
33
+ const target = path.resolve(targetPath);
34
+ const relativePath = path.relative(root, target);
35
+ if (relativePath === '')
36
+ return;
37
+ if (relativePath.startsWith('..') || path.isAbsolute(relativePath)) {
38
+ throw new Error(`target path escapes root: ${targetPath}`);
39
+ }
40
+ let current = root;
41
+ const parts = relativePath.split(path.sep).filter(Boolean);
42
+ for (let i = 0; i < parts.length; i++) {
43
+ current = path.join(current, parts[i]);
44
+ const stat = lstatIfExists(current);
45
+ if (!stat)
46
+ return;
47
+ if (stat.isSymbolicLink() && !(options?.allowFinalSymlink === true && i === parts.length - 1)) {
48
+ throw new Error(`refusing to follow symlinked path: ${current}`);
49
+ }
50
+ }
51
+ }
52
+ export function assertUsableBundleRoot(rootPath) {
53
+ const stat = lstatIfExists(rootPath);
54
+ if (!stat)
55
+ return;
56
+ if (stat.isSymbolicLink()) {
57
+ throw new Error(`refusing to use symlinked bundle root: ${rootPath}`);
58
+ }
59
+ if (!stat.isDirectory()) {
60
+ throw new Error(`bundle root exists and is not a directory: ${rootPath}`);
61
+ }
62
+ }
63
+ function assertSafeBundleTarget(rootPath, targetPath, options) {
64
+ assertUsableBundleRoot(rootPath);
65
+ assertNoSymlinkAncestor(rootPath, targetPath, options);
66
+ }
67
+ function resolveBundleRootDir(opts, platform) {
68
+ const explicitRoot = opts.resolveBundleRootDir?.(platform);
69
+ if (explicitRoot)
70
+ return explicitRoot;
71
+ const cleanupParent = opts.cleanup?.resolveParentDir(platform);
72
+ return cleanupParent ? path.dirname(cleanupParent) : undefined;
73
+ }
21
74
  function isAdoptableBundleDir(targetDir, files) {
22
- if (!fs.existsSync(targetDir) || !fs.statSync(targetDir).isDirectory()) {
75
+ const targetStat = lstatIfExists(targetDir);
76
+ if (!targetStat?.isDirectory()) {
23
77
  return false;
24
78
  }
25
79
  const expected = new Map(files.map((file) => [file.relativePath, file.sourcePath]));
@@ -30,13 +84,72 @@ function isAdoptableBundleDir(targetDir, files) {
30
84
  const sourcePath = expected.get(rel);
31
85
  if (!sourcePath)
32
86
  return false;
87
+ const targetPath = path.join(targetDir, rel);
88
+ if (lstatIfExists(targetPath)?.isSymbolicLink())
89
+ return false;
33
90
  const sourceContent = fs.readFileSync(sourcePath);
34
- const targetContent = fs.readFileSync(path.join(targetDir, rel));
91
+ const targetContent = fs.readFileSync(targetPath);
35
92
  if (Buffer.compare(sourceContent, targetContent) !== 0)
36
93
  return false;
37
94
  }
38
95
  return true;
39
96
  }
97
+ function executableBits(mode) {
98
+ return mode & 0o111;
99
+ }
100
+ function targetModeMatchesSourceExecutableBits(srcMode, dstMode) {
101
+ if (executableBits(srcMode) !== 0) {
102
+ return dstMode === srcMode;
103
+ }
104
+ return executableBits(dstMode) === 0;
105
+ }
106
+ function desiredTargetMode(srcMode, currentMode) {
107
+ if (executableBits(srcMode) !== 0) {
108
+ return srcMode;
109
+ }
110
+ return currentMode & 0o666;
111
+ }
112
+ function ensureDirectoryWithoutFollowingSymlink(dirPath, options) {
113
+ const stat = lstatIfExists(dirPath);
114
+ if (!stat) {
115
+ fs.mkdirSync(dirPath, { recursive: options?.recursive === true });
116
+ return;
117
+ }
118
+ if (stat.isDirectory() && !stat.isSymbolicLink())
119
+ return;
120
+ if (!stat.isSymbolicLink()) {
121
+ throw new Error(`path exists and is not a directory: ${dirPath}`);
122
+ }
123
+ fs.unlinkSync(dirPath);
124
+ fs.mkdirSync(dirPath);
125
+ }
126
+ function ensureBundleParentDir(targetDir, relativePath) {
127
+ ensureDirectoryWithoutFollowingSymlink(targetDir, { recursive: true });
128
+ const parentRel = path.dirname(relativePath);
129
+ if (parentRel === '.')
130
+ return;
131
+ let current = targetDir;
132
+ for (const segment of parentRel.split(path.sep)) {
133
+ if (!segment || segment === '.')
134
+ continue;
135
+ current = path.join(current, segment);
136
+ ensureDirectoryWithoutFollowingSymlink(current);
137
+ }
138
+ }
139
+ function removeBundlePath(targetPath) {
140
+ const stat = lstatIfExists(targetPath);
141
+ if (!stat)
142
+ return;
143
+ if (stat.isDirectory() && !stat.isSymbolicLink()) {
144
+ const entries = fs.readdirSync(targetPath, { withFileTypes: true });
145
+ for (const entry of entries) {
146
+ removeBundlePath(path.join(targetPath, entry.name));
147
+ }
148
+ fs.rmdirSync(targetPath);
149
+ return;
150
+ }
151
+ fs.unlinkSync(targetPath);
152
+ }
40
153
  /**
41
154
  * Distribute skill bundles (directories) to target platforms.
42
155
  * Copies all files in each skill directory, preserving structure.
@@ -65,6 +178,7 @@ export function distributeBundle(opts) {
65
178
  const isBootstrapSync = manifest != null && (!sectionEntries || Object.keys(sectionEntries).length === 0);
66
179
  for (const platform of opts.platforms) {
67
180
  const platformHash = createHash('sha256');
181
+ const bundleRootDir = resolveBundleRootDir(opts, platform);
68
182
  // Apply per-platform filter if provided
69
183
  const platformSelected = opts.filterSelected
70
184
  ? opts.filterSelected(platform, opts.selected)
@@ -73,16 +187,51 @@ export function distributeBundle(opts) {
73
187
  const targetDir = opts.resolveTargetDir(platform, entry);
74
188
  const files = opts.listFiles(entry);
75
189
  const entryId = opts.getId(entry);
190
+ if (managedProjectRoot) {
191
+ try {
192
+ assertNoSymlinkAncestor(managedProjectRoot, targetDir, { allowFinalSymlink: true });
193
+ }
194
+ catch (error) {
195
+ const msg = error instanceof Error ? error.message : String(error);
196
+ results.push({
197
+ platform,
198
+ targetDir,
199
+ status: 'error',
200
+ error: `Failed to prepare ${entryId}: ${msg}`,
201
+ entryId,
202
+ });
203
+ continue;
204
+ }
205
+ }
206
+ if (bundleRootDir) {
207
+ try {
208
+ assertSafeBundleTarget(bundleRootDir, targetDir, { allowFinalSymlink: true });
209
+ }
210
+ catch (error) {
211
+ const msg = error instanceof Error ? error.message : String(error);
212
+ results.push({
213
+ platform,
214
+ targetDir,
215
+ status: 'error',
216
+ error: `Failed to prepare ${entryId}: ${msg}`,
217
+ entryId,
218
+ });
219
+ continue;
220
+ }
221
+ }
222
+ const targetDirStat = lstatIfExists(targetDir);
223
+ const targetDirExists = targetDirStat != null;
224
+ const targetDirIsSymlink = targetDirStat?.isSymbolicLink() === true;
76
225
  const manifestEntry = manifest
77
226
  ? getLibraryEntry(manifest, manifestSection, entryId, platform)
78
227
  : undefined;
79
228
  const canAdoptBootstrapDir = manifest != null &&
80
229
  isBootstrapSync &&
81
230
  !manifestEntry &&
82
- fs.existsSync(targetDir) &&
231
+ targetDirExists &&
83
232
  isAdoptableBundleDir(targetDir, files);
84
233
  // Conflict detection in managed mode: check if target dir exists but isn't owned.
85
- if (manifest && fs.existsSync(targetDir) && !manifestEntry && collision !== 'takeover') {
234
+ if (manifest && targetDirExists && !manifestEntry && collision !== 'takeover') {
86
235
  if (!canAdoptBootstrapDir) {
87
236
  const isHardError = collision === 'error';
88
237
  results.push({
@@ -99,6 +248,23 @@ export function distributeBundle(opts) {
99
248
  continue;
100
249
  }
101
250
  }
251
+ const replaceTargetDir = targetDirIsSymlink;
252
+ if (replaceTargetDir && !dryRun) {
253
+ try {
254
+ fs.unlinkSync(targetDir);
255
+ }
256
+ catch (error) {
257
+ const msg = error instanceof Error ? error.message : String(error);
258
+ results.push({
259
+ platform,
260
+ targetDir,
261
+ status: 'error',
262
+ error: `Failed to replace ${entryId}: ${msg}`,
263
+ entryId,
264
+ });
265
+ continue;
266
+ }
267
+ }
102
268
  let filesWritten = 0;
103
269
  let filesSkipped = 0;
104
270
  let hadError = false;
@@ -106,28 +272,39 @@ export function distributeBundle(opts) {
106
272
  const sourceContents = [];
107
273
  for (const file of files) {
108
274
  const targetPath = path.join(targetDir, file.relativePath);
109
- if (!dryRun)
110
- ensureParentDir(targetPath);
111
275
  try {
276
+ if (!dryRun)
277
+ ensureBundleParentDir(targetDir, file.relativePath);
112
278
  const srcContent = fs.readFileSync(file.sourcePath);
279
+ const srcMode = fs.statSync(file.sourcePath).mode & 0o777;
113
280
  sourceContents.push(srcContent);
114
281
  let same = false;
115
- if (fs.existsSync(targetPath)) {
116
- const dstContent = fs.readFileSync(targetPath);
117
- same = Buffer.compare(srcContent, dstContent) === 0;
282
+ let modeSame = true;
283
+ let replaceExistingTarget = false;
284
+ if (!replaceTargetDir) {
285
+ const dstStat = lstatIfExists(targetPath);
286
+ replaceExistingTarget = dstStat?.isSymbolicLink() === true;
287
+ if (replaceExistingTarget) {
288
+ modeSame = false;
289
+ }
290
+ else if (dstStat) {
291
+ const dstContent = fs.readFileSync(targetPath);
292
+ same = Buffer.compare(srcContent, dstContent) === 0;
293
+ if (dstStat.isFile()) {
294
+ const dstMode = dstStat.mode & 0o777;
295
+ modeSame = targetModeMatchesSourceExecutableBits(srcMode, dstMode);
296
+ }
297
+ }
118
298
  }
119
- if (!same) {
299
+ if (!same || !modeSame) {
120
300
  if (!dryRun) {
121
- fs.writeFileSync(targetPath, srcContent);
122
- // Preserve executable permission for scripts
123
- try {
124
- const srcMode = fs.statSync(file.sourcePath).mode;
125
- if (srcMode & 0o111) {
126
- fs.chmodSync(targetPath, srcMode & 0o777);
127
- }
128
- }
129
- catch {
130
- // Ignore permission errors on some platforms
301
+ if (replaceExistingTarget)
302
+ fs.unlinkSync(targetPath);
303
+ if (!same)
304
+ fs.writeFileSync(targetPath, srcContent);
305
+ const currentMode = fs.statSync(targetPath).mode & 0o777;
306
+ if (!targetModeMatchesSourceExecutableBits(srcMode, currentMode)) {
307
+ fs.chmodSync(targetPath, desiredTargetMode(srcMode, currentMode));
131
308
  }
132
309
  }
133
310
  filesWritten++;
@@ -146,9 +323,16 @@ export function distributeBundle(opts) {
146
323
  }
147
324
  }
148
325
  // Clean stale files: remove files in target that are no longer in source bundle
149
- if (!dryRun && !hadError && fs.existsSync(targetDir)) {
326
+ if (!dryRun && !hadError && lstatIfExists(targetDir)?.isDirectory()) {
150
327
  const expectedFiles = new Set(files.map((f) => f.relativePath));
151
- cleanStaleFiles(targetDir, '', expectedFiles);
328
+ try {
329
+ cleanStaleFiles(targetDir, '', expectedFiles);
330
+ }
331
+ catch (error) {
332
+ hadError = true;
333
+ const msg = error instanceof Error ? error.message : String(error);
334
+ errorMessage = `Failed to clean stale files: ${msg}`;
335
+ }
152
336
  }
153
337
  if (hadError) {
154
338
  results.push({
@@ -195,16 +379,8 @@ export function distributeBundle(opts) {
195
379
  }
196
380
  }
197
381
  }
198
- // Update sync state
199
382
  const aggregateHash = platformHash.digest('hex');
200
383
  const prev = agentSync[platform]?.hash;
201
- const hadErrors = results.some((r) => r.platform === platform && r.status === 'error');
202
- if (!dryRun && !hadErrors && prev !== aggregateHash) {
203
- updateLibraryAgentSync(opts.section, (current) => ({
204
- ...current,
205
- [platform]: { hash: aggregateHash, updatedAt: timestamp },
206
- }));
207
- }
208
384
  // Cleanup orphan directories
209
385
  if (opts.cleanup) {
210
386
  const activeIds = new Set(platformSelected.map(opts.getId));
@@ -214,6 +390,7 @@ export function distributeBundle(opts) {
214
390
  for (const item of toRemove) {
215
391
  const entryPath = path.join(path.resolve(managedProjectRoot), item.entry.relativePath);
216
392
  try {
393
+ assertNoSymlinkAncestor(managedProjectRoot, entryPath, { allowFinalSymlink: true });
217
394
  const sharedPathStillOwned = hasOtherLibraryEntryAtPath(manifest, manifestSection, item.entry.relativePath, item.id, platform);
218
395
  if (sharedPathStillOwned) {
219
396
  results.push({
@@ -224,9 +401,9 @@ export function distributeBundle(opts) {
224
401
  entryId: item.id,
225
402
  });
226
403
  }
227
- else if (fs.existsSync(entryPath)) {
404
+ else if (lstatIfExists(entryPath)) {
228
405
  if (!dryRun)
229
- rmDirRecursive(entryPath);
406
+ removeBundlePath(entryPath);
230
407
  results.push({
231
408
  platform,
232
409
  targetDir: entryPath,
@@ -262,11 +439,29 @@ export function distributeBundle(opts) {
262
439
  else {
263
440
  // Exclusive mode: scan directory for orphans (existing behavior)
264
441
  const parentDir = opts.cleanup.resolveParentDir(platform);
442
+ try {
443
+ if (bundleRootDir) {
444
+ assertSafeBundleTarget(bundleRootDir, parentDir);
445
+ }
446
+ else {
447
+ assertUsableBundleRoot(parentDir);
448
+ }
449
+ }
450
+ catch (error) {
451
+ const msg = error instanceof Error ? error.message : String(error);
452
+ results.push({
453
+ platform,
454
+ targetDir: parentDir,
455
+ status: 'error',
456
+ error: `Failed to scan orphan parent: ${msg}`,
457
+ });
458
+ continue;
459
+ }
265
460
  if (fs.existsSync(parentDir)) {
266
461
  try {
267
462
  const dirEntries = fs.readdirSync(parentDir, { withFileTypes: true });
268
463
  for (const dirEntry of dirEntries) {
269
- if (!dirEntry.isDirectory())
464
+ if (!dirEntry.isDirectory() && !dirEntry.isSymbolicLink())
270
465
  continue;
271
466
  const id = dirEntry.name;
272
467
  if (opts.cleanup.isReservedDir?.(id, platform))
@@ -275,7 +470,7 @@ export function distributeBundle(opts) {
275
470
  const dirPath = path.join(parentDir, id);
276
471
  try {
277
472
  if (!dryRun)
278
- rmDirRecursive(dirPath);
473
+ removeBundlePath(dirPath);
279
474
  results.push({
280
475
  platform,
281
476
  targetDir: dirPath,
@@ -297,46 +492,44 @@ export function distributeBundle(opts) {
297
492
  }
298
493
  }
299
494
  }
300
- catch {
301
- // Ignore errors reading directory
495
+ catch (error) {
496
+ const msg = error instanceof Error ? error.message : String(error);
497
+ results.push({
498
+ platform,
499
+ targetDir: parentDir,
500
+ status: 'error',
501
+ error: `Failed to scan orphan parent: ${msg}`,
502
+ });
302
503
  }
303
504
  }
304
505
  }
305
506
  }
507
+ // Update sync state after cleanup, so cleanup failures do not record durable success.
508
+ const hadErrors = results.some((r) => r.platform === platform && r.status === 'error');
509
+ if (!dryRun && !hadErrors && prev !== aggregateHash) {
510
+ updateLibraryAgentSync(opts.section, (current) => ({
511
+ ...current,
512
+ [platform]: { hash: aggregateHash, updatedAt: timestamp },
513
+ }));
514
+ }
306
515
  }
307
516
  return { results };
308
517
  }
309
518
  /** Recursively remove files in targetDir not present in expectedFiles (relative paths). */
310
519
  function cleanStaleFiles(dir, prefix, expectedFiles) {
311
- try {
312
- const entries = fs.readdirSync(dir, { withFileTypes: true });
313
- for (const entry of entries) {
314
- const rel = prefix ? `${prefix}/${entry.name}` : entry.name;
315
- const abs = path.join(dir, entry.name);
316
- if (entry.isDirectory()) {
317
- cleanStaleFiles(abs, rel, expectedFiles);
318
- // Remove empty directories left after cleaning
319
- try {
320
- const remaining = fs.readdirSync(abs);
321
- if (remaining.length === 0)
322
- fs.rmdirSync(abs);
323
- }
324
- catch {
325
- // Ignore
326
- }
327
- }
328
- else if (!expectedFiles.has(rel)) {
329
- try {
330
- fs.unlinkSync(abs);
331
- }
332
- catch {
333
- // Ignore permission errors
334
- }
335
- }
520
+ const entries = fs.readdirSync(dir, { withFileTypes: true });
521
+ for (const entry of entries) {
522
+ const rel = prefix ? `${prefix}/${entry.name}` : entry.name;
523
+ const abs = path.join(dir, entry.name);
524
+ if (entry.isDirectory()) {
525
+ cleanStaleFiles(abs, rel, expectedFiles);
526
+ const remaining = fs.readdirSync(abs);
527
+ if (remaining.length === 0)
528
+ fs.rmdirSync(abs);
529
+ }
530
+ else if (!expectedFiles.has(rel)) {
531
+ fs.unlinkSync(abs);
336
532
  }
337
- }
338
- catch {
339
- // Ignore errors reading directory
340
533
  }
341
534
  }
342
535
  //# sourceMappingURL=distribute-bundle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"distribute-bundle.js","sourceRoot":"","sources":["../../src/library/distribute-bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,0BAA0B,EAE1B,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAuB,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAmE/F,SAAS,iBAAiB,CAAC,GAAW,EAAE,MAAM,GAAG,EAAE;IACjD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;QAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;YAC3C,SAAS;QACX,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAiB,EAAE,KAAmB;IAClE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QACvE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACpF,MAAM,WAAW,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACjD,IAAI,WAAW,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAEtD,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAE9B,MAAM,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;QACjE,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;IACvE,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAA+C;IAE/C,IAAI,IAAI,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;QACvD,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACzB,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC;IACpC,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,OAAO,GAAyC,EAAE,CAAC;IACzD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC;IAChD,4FAA4F;IAC5F,MAAM,eAAe,GAAG,IAAI,CAAC,OAAiC,CAAC;IAC/D,wFAAwF;IACxF,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC;IAC/C,MAAM,uBAAuB,GAC3B,kBAAkB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,KAAK,SAAS,CAAC;IACxE,IAAI,uBAAuB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACrE,wEAAwE;IACxE,4EAA4E;IAC5E,MAAM,cAAc,GAAG,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC3D,MAAM,eAAe,GACnB,QAAQ,IAAI,IAAI,IAAI,CAAC,CAAC,cAAc,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IAEpF,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE1C,wCAAwC;QACxC,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc;YAC1C,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC;YAC9C,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QAElB,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;YACrC,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACzD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAClC,MAAM,aAAa,GAAG,QAAQ;gBAC5B,CAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,QAAkB,CAAC;gBACzE,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,oBAAoB,GACxB,QAAQ,IAAI,IAAI;gBAChB,eAAe;gBACf,CAAC,aAAa;gBACd,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;gBACxB,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAEzC,kFAAkF;YAClF,IAAI,QAAQ,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBACvF,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC1B,MAAM,WAAW,GAAG,SAAS,KAAK,OAAO,CAAC;oBAC1C,OAAO,CAAC,IAAI,CAAC;wBACX,QAAQ;wBACR,SAAS;wBACT,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU;wBAC1C,GAAG,CAAC,WAAW;4BACb,CAAC,CAAC,EAAE,KAAK,EAAE,0BAA0B,EAAE;4BACvC,CAAC,CAAC,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAC;wBAC3C,OAAO;qBACR,CAAC,CAAC;oBACH,gEAAgE;oBAChE,0DAA0D;oBAC1D,SAAS;gBACX,CAAC;YACH,CAAC;YAED,IAAI,YAAY,GAAG,CAAC,CAAC;YACrB,IAAI,YAAY,GAAG,CAAC,CAAC;YACrB,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,YAAY,GAAG,EAAE,CAAC;YACtB,MAAM,cAAc,GAAa,EAAE,CAAC;YAEpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC3D,IAAI,CAAC,MAAM;oBAAE,eAAe,CAAC,UAAU,CAAC,CAAC;gBAEzC,IAAI,CAAC;oBACH,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACpD,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAChC,IAAI,IAAI,GAAG,KAAK,CAAC;oBAEjB,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;wBAC9B,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;wBAC/C,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;oBACtD,CAAC;oBAED,IAAI,CAAC,IAAI,EAAE,CAAC;wBACV,IAAI,CAAC,MAAM,EAAE,CAAC;4BACZ,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;4BAEzC,6CAA6C;4BAC7C,IAAI,CAAC;gCACH,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;gCAClD,IAAI,OAAO,GAAG,KAAK,EAAE,CAAC;oCACpB,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,GAAG,KAAK,CAAC,CAAC;gCAC5C,CAAC;4BACH,CAAC;4BAAC,MAAM,CAAC;gCACP,6CAA6C;4BAC/C,CAAC;wBACH,CAAC;wBACD,YAAY,EAAE,CAAC;oBACjB,CAAC;yBAAM,CAAC;wBACN,YAAY,EAAE,CAAC;oBACjB,CAAC;oBAED,uBAAuB;oBACvB,YAAY,CAAC,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,CAAC;oBAC3C,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBAClC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,QAAQ,GAAG,IAAI,CAAC;oBAChB,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACtE,MAAM;gBACR,CAAC;YACH,CAAC;YAED,gFAAgF;YAChF,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBACrD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;gBAChE,eAAe,CAAC,SAAS,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC;YAChD,CAAC;YAED,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC;oBACX,QAAQ;oBACR,SAAS;oBACT,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,kBAAkB,OAAO,KAAK,YAAY,EAAE;iBACpD,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,IAAI,CAAC;oBACX,QAAQ;oBACR,SAAS;oBACT,MAAM,EAAE,SAAS;oBACjB,MAAM,EAAE,SAAS;oBACjB,YAAY;oBACZ,YAAY;iBACb,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC;oBACX,QAAQ;oBACR,SAAS;oBACT,MAAM,EAAE,SAAS;oBACjB,MAAM,EAAE,YAAY;oBACpB,YAAY,EAAE,CAAC;oBACf,YAAY;iBACb,CAAC,CAAC;YACL,CAAC;YAED,2EAA2E;YAC3E,IAAI,CAAC,MAAM,IAAI,QAAQ,IAAI,kBAAkB,EAAE,CAAC;gBAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC/C,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBACvE,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;oBACzC,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;wBACjC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC1B,CAAC;oBACD,kBAAkB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE;wBACrD,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,SAAS,CAAC;wBACxE,QAAQ,EAAE,QAAkB;wBAC5B,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;wBAC/B,SAAS,EAAE,SAAS;qBACrB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAED,oBAAoB;QACpB,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;QACvC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;QAEvF,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;YACpD,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBACjD,GAAG,OAAO;gBACV,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE;aAC1D,CAAC,CAAC,CAAC;QACN,CAAC;QAED,6BAA6B;QAC7B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAE5D,IAAI,QAAQ,IAAI,kBAAkB,EAAE,CAAC;gBACnC,uEAAuE;gBACvE,MAAM,QAAQ,GAAG,wBAAwB,CACvC,QAAQ,EACR,eAAe,EACf,SAAS,EACT,QAAkB,CACnB,CAAC;gBACF,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;oBAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;oBACvF,IAAI,CAAC;wBACH,MAAM,oBAAoB,GAAG,0BAA0B,CACrD,QAAQ,EACR,eAAe,EACf,IAAI,CAAC,KAAK,CAAC,YAAY,EACvB,IAAI,CAAC,EAAE,EACP,QAAkB,CACnB,CAAC;wBACF,IAAI,oBAAoB,EAAE,CAAC;4BACzB,OAAO,CAAC,IAAI,CAAC;gCACX,QAAQ;gCACR,SAAS,EAAE,SAAS;gCACpB,MAAM,EAAE,SAAS;gCACjB,MAAM,EAAE,2CAA2C;gCACnD,OAAO,EAAE,IAAI,CAAC,EAAE;6BACjB,CAAC,CAAC;wBACL,CAAC;6BAAM,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;4BACpC,IAAI,CAAC,MAAM;gCAAE,cAAc,CAAC,SAAS,CAAC,CAAC;4BACvC,OAAO,CAAC,IAAI,CAAC;gCACX,QAAQ;gCACR,SAAS,EAAE,SAAS;gCACpB,MAAM,EAAE,SAAS;gCACjB,MAAM,EAAE,QAAQ;gCAChB,OAAO,EAAE,IAAI,CAAC,EAAE;6BACjB,CAAC,CAAC;wBACL,CAAC;6BAAM,CAAC;4BACN,OAAO,CAAC,IAAI,CAAC;gCACX,QAAQ;gCACR,SAAS,EAAE,SAAS;gCACpB,MAAM,EAAE,SAAS;gCACjB,MAAM,EAAE,QAAQ;gCAChB,OAAO,EAAE,IAAI,CAAC,EAAE;6BACjB,CAAC,CAAC;wBACL,CAAC;wBACD,IAAI,CAAC,MAAM;4BAAE,kBAAkB,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,EAAE,QAAkB,CAAC,CAAC;oBAC1F,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACnE,OAAO,CAAC,IAAI,CAAC;4BACX,QAAQ;4BACR,SAAS,EAAE,SAAS;4BACpB,MAAM,EAAE,OAAO;4BACf,KAAK,EAAE,4BAA4B,GAAG,EAAE;4BACxC,OAAO,EAAE,IAAI,CAAC,EAAE;yBACjB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,iEAAiE;gBACjE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAE1D,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC7B,IAAI,CAAC;wBACH,MAAM,UAAU,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;wBACtE,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;4BAClC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE;gCAAE,SAAS;4BAEtC,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC;4BACzB,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC;gCAAE,SAAS;4BACzD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gCACvB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;gCACzC,IAAI,CAAC;oCACH,IAAI,CAAC,MAAM;wCAAE,cAAc,CAAC,OAAO,CAAC,CAAC;oCACrC,OAAO,CAAC,IAAI,CAAC;wCACX,QAAQ;wCACR,SAAS,EAAE,OAAO;wCAClB,MAAM,EAAE,SAAS;wCACjB,MAAM,EAAE,QAAQ;wCAChB,OAAO,EAAE,EAAE;qCACZ,CAAC,CAAC;gCACL,CAAC;gCAAC,OAAO,KAAK,EAAE,CAAC;oCACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oCACnE,OAAO,CAAC,IAAI,CAAC;wCACX,QAAQ;wCACR,SAAS,EAAE,OAAO;wCAClB,MAAM,EAAE,OAAO;wCACf,KAAK,EAAE,4BAA4B,GAAG,EAAE;wCACxC,OAAO,EAAE,EAAE;qCACZ,CAAC,CAAC;gCACL,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,kCAAkC;oBACpC,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,CAAC;AACrB,CAAC;AAED,2FAA2F;AAC3F,SAAS,eAAe,CAAC,GAAW,EAAE,MAAc,EAAE,aAA0B;IAC9E,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;gBACzC,+CAA+C;gBAC/C,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;oBACtC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;wBAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBAChD,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS;gBACX,CAAC;YACH,CAAC;iBAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC;oBACH,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;gBACrB,CAAC;gBAAC,MAAM,CAAC;oBACP,2BAA2B;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,kCAAkC;IACpC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"distribute-bundle.js","sourceRoot":"","sources":["../../src/library/distribute-bundle.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-switchboard",
3
- "version": "0.4.17",
3
+ "version": "0.4.18",
4
4
  "description": "Unified MCP server manager for AI coding agents",
5
5
  "type": "module",
6
6
  "bin": {