@refrakt-md/plan 0.35.0 → 0.37.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"cli-plugin.d.ts","sourceRoot":"","sources":["../src/cli-plugin.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AA0tBnD,QAAA,MAAM,MAAM,EAAE,SAmEb,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"cli-plugin.d.ts","sourceRoot":"","sources":["../src/cli-plugin.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAq0BnD,QAAA,MAAM,MAAM,EAAE,SAmEb,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -7,6 +7,9 @@ import { runStatus, EXIT_INVALID_ARGS as STATUS_INVALID_ARGS } from './commands/
7
7
  import { runValidate, EXIT_INVALID_ARGS as VALIDATE_INVALID_ARGS } from './commands/validate.js';
8
8
  import { runHistory } from './commands/history.js';
9
9
  import { runMigrateFilenames, runMigratePrAttrs, runMigrateDependencies, EXIT_INVALID_ARGS as MIGRATE_INVALID_ARGS, } from './commands/migrate.js';
10
+ import { runMigrateIds } from './commands/migrate-ids.js';
11
+ import { readRefIds, collisionsFrom } from './commands/against.js';
12
+ import { scanPlanFiles } from './scanner.js';
10
13
  import { VALID_TYPES } from './commands/templates.js';
11
14
  import { resolvePlanDir } from './plan-config.js';
12
15
  import { nextSchema, nextMcpHandler, updateSchema, updateMcpHandler, createSchema, createMcpHandler, statusSchema, statusMcpHandler, validateSchema, validateMcpHandler, nextIdSchema, nextIdMcpHandler, initSchema, initMcpHandler, historySchema, historyMcpHandler, migrateSchema, migrateMcpHandler, } from './mcp-bindings.js';
@@ -391,6 +394,7 @@ function handleValidate(args) {
391
394
  let dir = resolvePlanDir().dir;
392
395
  let formatJson = false;
393
396
  let strict = false;
397
+ let against;
394
398
  for (let i = 0; i < args.length; i++) {
395
399
  const arg = args[i];
396
400
  if (arg === '--dir' && args[i + 1]) {
@@ -403,12 +407,23 @@ function handleValidate(args) {
403
407
  else if (arg === '--strict') {
404
408
  strict = true;
405
409
  }
410
+ else if (arg === '--against') {
411
+ against = args[++i];
412
+ if (!against) {
413
+ console.error('Error: --against requires a git ref');
414
+ process.exit(VALIDATE_INVALID_ARGS);
415
+ }
416
+ }
406
417
  else {
407
418
  console.error(`Error: Unexpected argument "${arg}"`);
408
- console.error('Usage: refrakt plan validate [--strict] [--format json]');
419
+ console.error('Usage: refrakt plan validate [--strict] [--against <ref>] [--format json]');
409
420
  process.exit(VALIDATE_INVALID_ARGS);
410
421
  }
411
422
  }
423
+ if (against) {
424
+ handleAgainst(dir, against, formatJson);
425
+ return;
426
+ }
412
427
  const result = runValidate({ dir, strict, formatJson });
413
428
  if (formatJson) {
414
429
  console.log(JSON.stringify(result, null, 2));
@@ -584,11 +599,54 @@ function handleHistory(args) {
584
599
  }
585
600
  runHistory({ dir, id, limit, since, type, author, status, all, formatJson });
586
601
  }
602
+ /**
603
+ * `plan validate --against <ref>` (SPEC-135 D8 / WORK-582).
604
+ *
605
+ * Reported separately from the entity-graph checks because it answers a
606
+ * different question: not "is this plan directory internally consistent" but
607
+ * "would merging this branch create a collision". It is the tier that fires
608
+ * while resolution is still free.
609
+ */
610
+ function handleAgainst(dir, ref, formatJson) {
611
+ const cwd = process.cwd();
612
+ const index = readRefIds(dir, ref, cwd);
613
+ // A ref that cannot be read must not render like a clean run. "No
614
+ // collisions" and "I could not look" are different answers.
615
+ if (index.error) {
616
+ if (formatJson) {
617
+ console.log(JSON.stringify({ ref, error: index.error, collisions: [] }, null, 2));
618
+ }
619
+ else {
620
+ console.error(index.error);
621
+ }
622
+ process.exit(VALIDATE_INVALID_ARGS);
623
+ }
624
+ const entities = scanPlanFiles(dir, { cache: false });
625
+ const collisions = collisionsFrom(index.refIds, entities, dir, cwd);
626
+ if (formatJson) {
627
+ console.log(JSON.stringify({ ref, collisions }, null, 2));
628
+ process.exit(collisions.length > 0 ? 1 : 0);
629
+ }
630
+ if (collisions.length === 0) {
631
+ console.log(`No ID collisions with ${ref} (${index.refIds.size} ids compared).`);
632
+ process.exit(0);
633
+ }
634
+ console.log(`ID collisions with ${ref}:\n`);
635
+ for (const c of collisions) {
636
+ console.log(` ✗ ${c.id}`);
637
+ console.log(` here: ${c.file}`);
638
+ console.log(` ${ref}: ${c.refFile}`);
639
+ }
640
+ console.log(`\n${collisions.length} collision(s). Merging would leave two entities claiming the same ID,` +
641
+ '\nand every reference to it ambiguous. Renumber now, while this branch still makes' +
642
+ '\nresolution unambiguous: `refrakt plan migrate ids --apply --git`.');
643
+ process.exit(1);
644
+ }
587
645
  function handleMigrate(args) {
588
646
  const sub = args[0];
589
- if (sub !== 'filenames' && sub !== 'pr-attrs' && sub !== 'dependencies') {
590
- console.error('Usage: refrakt plan migrate <filenames|pr-attrs|dependencies> [--dir <path>] [--dry-run] [--apply] [--git] [--format json]');
591
- console.error('Subcommands: filenames, pr-attrs, dependencies');
647
+ if (sub !== 'filenames' && sub !== 'pr-attrs' && sub !== 'dependencies' && sub !== 'ids') {
648
+ console.error('Usage: refrakt plan migrate <filenames|pr-attrs|dependencies|ids> [--dir <path>] [--dry-run] [--apply] [--git] [--format json]');
649
+ console.error('Subcommands: filenames, pr-attrs, dependencies, ids');
592
650
  process.exit(MIGRATE_INVALID_ARGS);
593
651
  }
594
652
  let dir = resolvePlanDir().dir;
@@ -623,6 +681,50 @@ function handleMigrate(args) {
623
681
  console.error('Error: --apply and --dry-run are mutually exclusive');
624
682
  process.exit(MIGRATE_INVALID_ARGS);
625
683
  }
684
+ if (sub === 'ids') {
685
+ const result = runMigrateIds({ dir, apply, useGit });
686
+ if (formatJson) {
687
+ console.log(JSON.stringify(result, null, 2));
688
+ process.exit(result.exitCode);
689
+ return;
690
+ }
691
+ console.log(`Scanned ${result.scanned} plan files in ${dir}/`);
692
+ const rows = apply ? result.applied : result.planned;
693
+ if (rows.length === 0 && result.refused.length === 0) {
694
+ console.log(' No duplicate IDs.');
695
+ process.exit(result.exitCode);
696
+ return;
697
+ }
698
+ if (rows.length > 0) {
699
+ console.log(` ${apply ? 'Renumbered' : 'Would renumber'} ${rows.length} entit(y/ies):`);
700
+ for (const r of rows) {
701
+ console.log(` ${r.from} → ${r.to} ${r.file}`);
702
+ console.log(` collides with ${r.collidesWith.join(', ')}`);
703
+ console.log(` file → ${r.toFile}`);
704
+ }
705
+ }
706
+ // The refusals are the point, not an error path. A tool that guessed
707
+ // here would repoint a reference at the wrong entity, silently.
708
+ if (result.refused.length > 0) {
709
+ console.log(`\n Refused ${result.refused.length}:`);
710
+ for (const r of result.refused) {
711
+ console.log(` ${r.id} ${r.file}`);
712
+ console.log(` ${r.reason}`);
713
+ for (const ref of r.ambiguousRefs.slice(0, 10)) {
714
+ console.log(` ${ref.file}:${ref.line} ${ref.text}`);
715
+ }
716
+ if (r.ambiguousRefs.length > 10) {
717
+ console.log(` … and ${r.ambiguousRefs.length - 10} more`);
718
+ }
719
+ }
720
+ }
721
+ if (!apply && rows.length > 0) {
722
+ const gitHint = useGit ? '' : ' (add --git to stage the edits)';
723
+ console.log(`\nDry run. Re-run with --apply to renumber${gitHint}.`);
724
+ }
725
+ process.exit(result.exitCode);
726
+ return;
727
+ }
626
728
  if (sub === 'pr-attrs') {
627
729
  const result = runMigratePrAttrs({ dir, apply, useGit });
628
730
  if (formatJson) {
@@ -1 +1 @@
1
- {"version":3,"file":"cli-plugin.js","sourceRoot":"","sources":["../src/cli-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-plugin.js","sourceRoot":"","sources":["../src/cli-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyC,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,iBAAiB,IAAI,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,SAAS,EAAE,YAAY,EAAmB,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,iBAAiB,IAAI,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACN,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,IAAI,oBAAoB,GACzC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAqB,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAgC,MAAM,kBAAkB,CAAC;AAChF,OAAO,EACN,UAAU,EACV,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,iBAAiB,GACjB,MAAM,mBAAmB,CAAC;AAG3B,SAAS,YAAY,CAAC,IAAc;IACnC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACnB,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CACZ,kKAAkK,CAClK,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,GAAG,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC;IAC/B,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,KAAyB,CAAC;IAC9B,IAAI,OAA2B,CAAC;IAChC,IAAI,WAA+B,CAAC;IACpC,IAAI,WAA+B,CAAC;IACpC,MAAM,KAAK,GAA2B,EAAE,CAAC;IAEzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YACzD,UAAU,GAAG,IAAI,CAAC;YAClB,CAAC,EAAE,CAAC;QACL,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7C,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACnB,CAAC;aAAM,IAAI,GAAG,KAAK,WAAW,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC/C,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACrB,CAAC;aAAM,IAAI,GAAG,KAAK,WAAW,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC/C,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACzB,CAAC;aAAM,IAAI,GAAG,KAAK,gBAAgB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpD,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACzB,CAAC;aAAM,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAChD,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACzB,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;IACF,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3F,OAAO,CAAC,KAAK,CACZ,gGAAgG,CAChG,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,SAAS,CAAC;YACxB,EAAE;YACF,GAAG;YACH,KAAK;YACL,KAAK;YACL,OAAO;YACP,OAAO,EAAE,WAAW;YACpB,WAAW;YACX,UAAU;SACV,CAAC,CAAC;QACH,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACP,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACP,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;gBAChD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBAChC,IAAI,CAAC,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC;wBAClB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;oBACzC,CAAC;yBAAM,CAAC;wBACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;oBAClD,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC;QACnC,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxB,CAAC;AACF,CAAC;AAED,SAAS,UAAU,CAAC,IAAc;IACjC,IAAI,GAAG,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC;IAC/B,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,SAA6B,CAAC;IAClC,IAAI,GAAuB,CAAC;IAC5B,IAAI,QAA4B,CAAC;IACjC,IAAI,IAAI,GAA2B,KAAK,CAAC;IACzC,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YACzD,UAAU,GAAG,IAAI,CAAC;YAClB,CAAC,EAAE,CAAC;QACL,CAAC;aAAM,IAAI,GAAG,KAAK,aAAa,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACjD,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACvB,CAAC;aAAM,IAAI,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC3C,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,KAAK,YAAY,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAChD,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACtB,CAAC;aAAM,IAAI,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACtB,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;gBACtD,OAAO,CAAC,KAAK,CAAC,wBAAwB,GAAG,wBAAwB,CAAC,CAAC;gBACnE,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACjC,CAAC;YACD,IAAI,GAAG,GAAG,CAAC;QACZ,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7C,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAChC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC3D,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACjC,CAAC;QACF,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,CAAC;YACrD,OAAO,CAAC,KAAK,CACZ,mIAAmI,CACnI,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjC,CAAC;IACF,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;IAEnF,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC;SAAM,CAAC;QACP,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK,IAAI,YAAY,EAAE,CAAC,CAAC;YACzD,OAAO,CAAC,GAAG,CACV,WAAW,IAAI,CAAC,IAAI,eAAe,IAAI,CAAC,QAAQ,iBAAiB,IAAI,CAAC,UAAU,EAAE,CAClF,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACpC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBAC3B,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAC/B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC3D,CAAC;YACF,CAAC;YACD,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChD,CAAC;YACD,OAAO,CAAC,GAAG,EAAE,CAAC;QACf,CAAC;IACF,CAAC;AACF,CAAC;AAED,SAAS,YAAY,CAAC,IAAc;IACnC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAiB,CAAC;IACrC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,OAAO,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;QAC7E,OAAO,CAAC,KAAK,CAAC,UAAU,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClD,OAAO,CAAC,KAAK,CAAC,wEAAwE,CAAC,CAAC;QACxF,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,GAAG,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC;IAC/B,IAAI,EAAsB,CAAC;IAC3B,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,MAAM,KAAK,GAA2B,EAAE,CAAC;IAEzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC1C,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAChB,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7C,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACnB,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YACzD,UAAU,GAAG,IAAI,CAAC;YAClB,CAAC,EAAE,CAAC;QACL,CAAC;aAAM,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAChD,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACzB,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACnC,CAAC;IACF,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,SAAS,CAAC;YACxB,GAAG;YACH,IAAI;YACJ,EAAE;YACF,KAAK;YACL,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;SACxD,CAAC,CAAC;QACH,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACtE,CAAC;IACF,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC;QACnC,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxB,CAAC;AACF,CAAC;AAED,SAAS,YAAY,CAAC,IAAc;IACnC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACrB,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IACxD,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACpE,OAAO,CAAC,KAAK,CAAC,UAAU,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,GAAG,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC;IAC/B,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YACzD,UAAU,GAAG,IAAI,CAAC;YAClB,CAAC,EAAE,CAAC;QACL,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjC,CAAC;IACF,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,IAAkB,CAAC,CAAC;IAElD,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC;SAAM,CAAC;QACP,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,wBAAwB,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;QACxE,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,kBAAkB,IAAI,aAAa,CAAC,CAAC;QAClE,CAAC;IACF,CAAC;AACF,CAAC;AAED,SAAS,UAAU,CAAC,IAAc;IACjC,IAAI,GAAG,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC;IAC/B,IAAI,WAAW,GAAG,GAAG,CAAC;IACtB,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,KAAyB,CAAC;IAC9B,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAEjF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,KAAK,gBAAgB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpD,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACzB,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7C,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAClB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClC,OAAO,CAAC,KAAK,CAAC,yBAAyB,KAAK,oBAAoB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC1F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;QACF,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YACzD,UAAU,GAAG,IAAI,CAAC;YAClB,CAAC,EAAE,CAAC;QACL,CAAC;aAAM,IAAI,GAAG,KAAK,mBAAmB,EAAE,CAAC;YACxC,aAAa,GAAG,IAAI,CAAC;QACtB,CAAC;aAAM,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;YACjC,OAAO,GAAG,IAAI,CAAC;QAChB,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;YAC/B,KAAK,GAAG,IAAI,CAAC;QACd,CAAC;aAAM,IAAI,GAAG,KAAK,cAAc,EAAE,CAAC;YACnC,SAAS,GAAG,IAAI,CAAC;QAClB,CAAC;aAAM,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;YAClC,QAAQ,GAAG,IAAI,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;YAChC,aAAa,GAAG,IAAI,CAAC;YACrB,OAAO,GAAG,IAAI,CAAC;YACf,KAAK,GAAG,IAAI,CAAC;YACb,SAAS,GAAG,IAAI,CAAC;QAClB,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,CAAC;YACrD,OAAO,CAAC,KAAK,CACZ,uLAAuL,CACvL,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;IACF,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC;QACtB,GAAG;QACH,WAAW;QACX,KAAK,EAAE,KAAY;QACnB,aAAa;QACb,OAAO;QACP,KAAK;QACL,SAAS;QACT,QAAQ;KACR,CAAC,CAAC;IAEH,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO;IACR,CAAC;IAED,MAAM,UAAU,GACf,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAC3B,MAAM,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC;QACrC,CAAC,MAAM,CAAC,kBAAkB;QAC1B,CAAC,MAAM,CAAC,WAAW;QACnB,CAAC,MAAM,CAAC,UAAU;QAClB,CAAC,MAAM,CAAC,cAAc;QACtB,CAAC,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;IAExE,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;QAC/D,OAAO;IACR,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;IAClD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,MAAM,CAAC,kBAAkB,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,6BAA6B,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;QACxD,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACV,eAAe,MAAM,CAAC,cAAc,2DAA2D,CAC/F,CAAC;IACH,CAAC;AACF,CAAC;AAED,SAAS,cAAc,CAAC,IAAc;IACrC,IAAI,GAAG,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC;IAC/B,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,OAA2B,CAAC;IAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YACzD,UAAU,GAAG,IAAI,CAAC;YAClB,CAAC,EAAE,CAAC;QACL,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;YAC/B,MAAM,GAAG,IAAI,CAAC;QACf,CAAC;aAAM,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;YAChC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;gBACrD,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACrC,CAAC;QACF,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,CAAC;YACrD,OAAO,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;YAC3F,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACrC,CAAC;IACF,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACb,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QACxC,OAAO;IACR,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IAExD,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO;IACR,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,OAAO,QAAQ,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QACnC,MAAM,MAAM,GACX,KAAK,CAAC,QAAQ,KAAK,OAAO;YACzB,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS;gBAC7B,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,aAAa,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;IAED,OAAO,CAAC,GAAG,CACV,aAAa,MAAM,CAAC,MAAM,CAAC,MAAM,YAAY,MAAM,CAAC,MAAM,CAAC,QAAQ,cAAc,MAAM,CAAC,MAAM,CAAC,IAAI,OAAO,CAC1G,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,YAAY,CAAC,IAAc;IACnC,IAAI,GAAG,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC;IAC/B,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,SAA6B,CAAC;IAElC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YACzD,UAAU,GAAG,IAAI,CAAC;YAClB,CAAC,EAAE,CAAC;QACL,CAAC;aAAM,IAAI,GAAG,KAAK,aAAa,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACjD,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,CAAC;YACrD,OAAO,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;YACjF,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACnC,CAAC;IACF,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;IAEzD,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO;IACR,CAAC;IAED,cAAc;IACd,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;QAC3B,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;QACpC,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,GAAG,SAAS,GAAG,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,WAAW,GAAG,IAAI,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;IAED,SAAS;IACT,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3D,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC;YAAE,SAAS;QAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC5C,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;aAC5B,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,UAAU;IACV,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzF,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,IAAI,YAAY,GAAG,QAAQ,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;IAED,QAAQ;IACR,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CACV,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,YAAY,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAC/F,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;IAED,gBAAgB;IAChB,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAChC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,YAAY,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,OAAO,GAAG,KAAK,EAAE,CAAC,CAAC;QACvF,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;IAED,+DAA+D;IAC/D,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;IAC/E,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;QACnE,KAAK,MAAM,CAAC,IAAI,eAAe,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CACV,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,IAAI,YAAY,2BAA2B,CAAC,CAAC,EAAE,uBAAuB,CAC7F,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACnE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;IAED,WAAW;IACX,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;AACF,CAAC;AAED,SAAS,aAAa,CAAC,IAAc;IACpC,IAAI,GAAG,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC;IAC/B,IAAI,EAAsB,CAAC;IAC3B,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,IAAI,KAAyB,CAAC;IAC9B,IAAI,IAAwB,CAAC;IAC7B,IAAI,MAA0B,CAAC;IAC/B,IAAI,MAA0B,CAAC;IAC/B,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YACzD,UAAU,GAAG,IAAI,CAAC;YAClB,CAAC,EAAE,CAAC;QACL,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7C,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAChC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;QACF,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7C,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACnB,CAAC;aAAM,IAAI,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5C,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAClB,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC9C,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC9C,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,CAAC;aAAM,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YAC5B,GAAG,GAAG,IAAI,CAAC;QACZ,CAAC;aAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,EAAE,GAAG,GAAG,CAAC;QACV,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,CAAC;YACrD,OAAO,CAAC,KAAK,CACZ,yJAAyJ,CACzJ,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;IACF,CAAC;IAED,UAAU,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,aAAa,CAAC,GAAW,EAAE,GAAW,EAAE,UAAmB;IACnE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAExC,kEAAkE;IAClE,4DAA4D;IAC5D,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACjB,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACnF,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAEpE,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,yBAAyB,GAAG,KAAK,KAAK,CAAC,MAAM,CAAC,IAAI,iBAAiB,CAAC,CAAC;QACjF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,sBAAsB,GAAG,KAAK,CAAC,CAAC;IAC5C,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,CAAC,GAAG,CACV,KAAK,UAAU,CAAC,MAAM,uEAAuE;QAC5F,oFAAoF;QACpF,qEAAqE,CACtE,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,SAAS,aAAa,CAAC,IAAc;IACpC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,cAAc,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;QAC1F,OAAO,CAAC,KAAK,CACZ,gIAAgI,CAChI,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,GAAG,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC;IAC/B,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACjB,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YAC9B,KAAK,GAAG,IAAI,CAAC;QACd,CAAC;aAAM,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;YAChC,MAAM,GAAG,IAAI,CAAC;QACf,CAAC;aAAM,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YAC5B,MAAM,GAAG,IAAI,CAAC;QACf,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;YACzD,UAAU,GAAG,IAAI,CAAC;YAClB,CAAC,EAAE,CAAC;QACL,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,GAAG,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACpC,CAAC;IACF,CAAC;IAED,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;QACrB,OAAO,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACrD,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC9B,OAAO;QACR,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,OAAO,kBAAkB,GAAG,GAAG,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QACrD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC9B,OAAO;QACR,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,IAAI,IAAI,CAAC,MAAM,gBAAgB,CAAC,CAAC;YACzF,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBACnD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAChE,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACzC,CAAC;QACF,CAAC;QACD,qEAAqE;QACrE,gEAAgE;QAChE,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;YACrD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBACtC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gBACjC,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;oBAChD,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7D,CAAC;gBACD,IAAI,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;oBACjC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,EAAE,OAAO,CAAC,CAAC;gBAClE,CAAC;YACF,CAAC;QACF,CAAC;QACD,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iCAAiC,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,6CAA6C,OAAO,GAAG,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO;IACR,CAAC;IAED,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC9B,OAAO;QACR,CAAC;QACD,OAAO,CAAC,GAAG,CACV,WAAW,MAAM,CAAC,OAAO,kBAAkB,GAAG,aAAa,MAAM,CAAC,QAAQ,IAAI,SAAS,GAAG,CAC1F,CAAC;QACF,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC;QACrD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,UAAU,IAAI,CAAC,MAAM,WAAW,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACzE,KAAK,MAAM,CAAC,IAAI,IAAI;YAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAClE,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,OAAO,CAAC,MAAM,eAAe,CAAC,CAAC;YAC/D,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO;gBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;YACzD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU;gBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iCAAiC,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,4DAA4D,OAAO,GAAG,CAAC,CAAC;QACrF,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO;IACR,CAAC;IAED,IAAI,GAAG,KAAK,cAAc,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,sBAAsB,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9D,IAAI,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC9B,OAAO;QACR,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,OAAO,kBAAkB,GAAG,GAAG,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC;QAChD,OAAO,CAAC,GAAG,CACV,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,kDAAkD,CACpF,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACvE,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,OAAO,CAAC,GAAG,CACV,OAAO,MAAM,CAAC,YAAY,CAAC,MAAM,gFAAgF,CACjH,CAAC;YACF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,YAAY;gBAClC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iCAAiC,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,wDAAwD,OAAO,GAAG,CAAC,CAAC;QACjF,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO;IACR,CAAC;IAED,MAAM,MAAM,GAAG,mBAAmB,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAE3D,IAAI,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO;IACR,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,OAAO,kBAAkB,GAAG,GAAG,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,CAAC,yBAAyB,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,yBAAyB,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO;IACR,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,SAAS,CAAC,CAAC;QACvD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,UAAU,CAAC,CAAC;QAC/C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IACf,CAAC;IAED,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,+CAA+C,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,qDAAqD,OAAO,GAAG,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,MAAM,GAAc;IACzB,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE;QACT;YACC,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,yBAAyB;YACtC,OAAO,EAAE,YAAY;YACrB,WAAW,EAAE,YAAY;YACzB,UAAU,EAAE,gBAAgB;SAC5B;QACD;YACC,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,qBAAqB;YAClC,OAAO,EAAE,UAAU;YACnB,WAAW,EAAE,UAAU;YACvB,UAAU,EAAE,cAAc;SAC1B;QACD;YACC,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,6BAA6B;YAC1C,OAAO,EAAE,YAAY;YACrB,WAAW,EAAE,YAAY;YACzB,UAAU,EAAE,gBAAgB;SAC5B;QACD;YACC,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,yBAAyB;YACtC,OAAO,EAAE,cAAc;YACvB,WAAW,EAAE,cAAc;YAC3B,UAAU,EAAE,kBAAkB;SAC9B;QACD;YACC,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,yBAAyB;YACtC,OAAO,EAAE,YAAY;YACrB,WAAW,EAAE,YAAY;YACzB,UAAU,EAAE,gBAAgB;SAC5B;QACD;YACC,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,mCAAmC;YAChD,OAAO,EAAE,YAAY;YACrB,WAAW,EAAE,YAAY;YACzB,UAAU,EAAE,gBAAgB;SAC5B;QACD;YACC,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,yBAAyB;YACtC,OAAO,EAAE,UAAU;YACnB,WAAW,EAAE,UAAU;YACvB,UAAU,EAAE,cAAc;SAC1B;QACD;YACC,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,iCAAiC;YAC9C,OAAO,EAAE,aAAa;YACtB,WAAW,EAAE,aAAa;YAC1B,UAAU,EAAE,iBAAiB;SAC7B;QACD;YACC,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,+BAA+B;YAC5C,OAAO,EAAE,aAAa;YACtB,WAAW,EAAE,aAAa;YAC1B,UAAU,EAAE,iBAAiB;SAC7B;KACD;CACD,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * `plan validate --against <ref>` — catch an ID collision *before* the merge
3
+ * that creates it (SPEC-135 D8 / WORK-582).
4
+ *
5
+ * Plain duplicate detection already ships and is correct, but it can only fire
6
+ * once both claimants are reachable — which is after the merge, when every
7
+ * `{% ref %}` to that ID has already become ambiguous. This fires one step
8
+ * earlier, on the branch, where resolution is still free: every reference to the
9
+ * branch's own new entity is unambiguously the branch's, because the base ref
10
+ * does not contain it.
11
+ *
12
+ * That is the whole reason this tier is the valuable one. It is also why it
13
+ * wants somewhere to run — WORK-580's PR job.
14
+ */
15
+ export interface AgainstCollision {
16
+ id: string;
17
+ /** Path in the working tree claiming the ID, plan-dir-relative. */
18
+ file: string;
19
+ /** Path on the base ref claiming the same ID. */
20
+ refFile: string;
21
+ }
22
+ export interface RefIdIndex {
23
+ ref: string;
24
+ /** id → repo-relative path, as the base ref has it. Empty when `error` is set. */
25
+ refIds: Map<string, string>;
26
+ /** Set when the ref could not be read — the caller must treat this as a
27
+ * failure rather than "no collisions found". */
28
+ error?: string;
29
+ }
30
+ /**
31
+ * Compare the IDs claimed in the working tree against those on `ref`.
32
+ *
33
+ * A collision is an ID claimed by **different files** on the two sides: the
34
+ * branch added `WORK-583` in one file while the base already spends it on
35
+ * another, so the merge produces two claimants. The same ID in the same file is
36
+ * simply the file existing on both sides, which is the normal case.
37
+ *
38
+ * @param planDir Plan directory, relative to the repo root.
39
+ * @param ref Any git ref — `origin/main`, a tag, a SHA.
40
+ * @param cwd Repo root.
41
+ */
42
+ export declare function readRefIds(planDir: string, ref: string, cwd: string): RefIdIndex;
43
+ /**
44
+ * Given the base ref's ID→path map and the working tree's entities, report the
45
+ * IDs that collide.
46
+ *
47
+ * **A collision is two claimants surviving the merge**, which is this function's
48
+ * contract and the only thing it can establish from paths. The branch adds the ID
49
+ * in one file, the base already spends it on another, and *both files are still
50
+ * there afterwards* — so every `{% ref %}` to that ID becomes ambiguous.
51
+ *
52
+ * It follows that a base file the branch no longer has is **not** a collision: the
53
+ * merge applies the deletion and one claimant remains. That covers the ordinary
54
+ * rename, where an edited title changes the slug
55
+ * (`WORK-603-add-metafields-….md` → `WORK-603-add-fieldmetas-….md`), and it is
56
+ * why the test is the base path's presence rather than a slug comparison.
57
+ *
58
+ * An earlier revision compared slugs, so it forgave only a rename that kept its
59
+ * slug and moved directory — and fired on every title edit, which is the common
60
+ * case, and on `plan migrate filenames` wholesale.
61
+ *
62
+ * **What this deliberately does not catch**: an ID *reused* for a different entity
63
+ * (the base's file deleted, a new one written under the same ID). That also leaves
64
+ * one claimant, so it is not a collision, but it silently repoints every reference
65
+ * — a real hazard, needing content rather than paths to detect, and not a reason to
66
+ * block a merge. In-tree duplicates are a separate matter and already reported at
67
+ * error severity by `checkDuplicateIds`, which runs before this.
68
+ *
69
+ * @param planDir Plan directory, relative to the repo root.
70
+ * @param cwd Repo root — needed to test whether the base's path still exists.
71
+ */
72
+ export declare function collisionsFrom(refIds: Map<string, string>, entities: {
73
+ file: string;
74
+ attributes: {
75
+ id?: string;
76
+ };
77
+ }[], planDir: string, cwd?: string): AgainstCollision[];
78
+ //# sourceMappingURL=against.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"against.d.ts","sourceRoot":"","sources":["../../src/commands/against.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,MAAM,WAAW,gBAAgB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B;qDACiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAYD;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,UAAU,CA2ChF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,cAAc,CAC7B,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC3B,QAAQ,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,EAAE,EACzD,OAAO,EAAE,MAAM,EACf,GAAG,SAAgB,GACjB,gBAAgB,EAAE,CAoBpB"}
@@ -0,0 +1,134 @@
1
+ /**
2
+ * `plan validate --against <ref>` — catch an ID collision *before* the merge
3
+ * that creates it (SPEC-135 D8 / WORK-582).
4
+ *
5
+ * Plain duplicate detection already ships and is correct, but it can only fire
6
+ * once both claimants are reachable — which is after the merge, when every
7
+ * `{% ref %}` to that ID has already become ambiguous. This fires one step
8
+ * earlier, on the branch, where resolution is still free: every reference to the
9
+ * branch's own new entity is unambiguously the branch's, because the base ref
10
+ * does not contain it.
11
+ *
12
+ * That is the whole reason this tier is the valuable one. It is also why it
13
+ * wants somewhere to run — WORK-580's PR job.
14
+ */
15
+ import { execFileSync } from 'node:child_process';
16
+ import { existsSync } from 'node:fs';
17
+ import { join } from 'node:path';
18
+ /** Read `id="…"` out of a plan file's source. */
19
+ function readId(source) {
20
+ const m = source.match(/\bid=(["'])([^"']+)\1/);
21
+ return m?.[2];
22
+ }
23
+ function git(args, cwd) {
24
+ return execFileSync('git', args, { cwd, encoding: 'utf-8', stdio: ['ignore', 'pipe', 'pipe'] });
25
+ }
26
+ /**
27
+ * Compare the IDs claimed in the working tree against those on `ref`.
28
+ *
29
+ * A collision is an ID claimed by **different files** on the two sides: the
30
+ * branch added `WORK-583` in one file while the base already spends it on
31
+ * another, so the merge produces two claimants. The same ID in the same file is
32
+ * simply the file existing on both sides, which is the normal case.
33
+ *
34
+ * @param planDir Plan directory, relative to the repo root.
35
+ * @param ref Any git ref — `origin/main`, a tag, a SHA.
36
+ * @param cwd Repo root.
37
+ */
38
+ export function readRefIds(planDir, ref, cwd) {
39
+ // Resolve the ref first, so a typo or an unfetched branch fails loudly
40
+ // instead of reporting a clean run. "No collisions" and "I could not look"
41
+ // must never render the same way — that is the failure this milestone is
42
+ // about.
43
+ try {
44
+ git(['rev-parse', '--verify', `${ref}^{commit}`], cwd);
45
+ }
46
+ catch {
47
+ return {
48
+ ref,
49
+ refIds: new Map(),
50
+ error: `Cannot resolve git ref "${ref}". Nothing was compared.\n` +
51
+ ` If this is a remote branch, fetch it first: git fetch origin ${ref.replace(/^origin\//, '')}`,
52
+ };
53
+ }
54
+ let listing;
55
+ try {
56
+ listing = git(['ls-tree', '-r', '--name-only', ref, '--', planDir], cwd);
57
+ }
58
+ catch (err) {
59
+ return {
60
+ ref,
61
+ refIds: new Map(),
62
+ error: `Could not list ${planDir} on ${ref}: ${String(err)}`,
63
+ };
64
+ }
65
+ // id → path, as the base ref has it.
66
+ const refIds = new Map();
67
+ for (const path of listing.split('\n')) {
68
+ if (!path.endsWith('.md'))
69
+ continue;
70
+ let source;
71
+ try {
72
+ source = git(['show', `${ref}:${path}`], cwd);
73
+ }
74
+ catch {
75
+ continue;
76
+ }
77
+ const id = readId(source);
78
+ if (id)
79
+ refIds.set(id, path);
80
+ }
81
+ return { ref, refIds };
82
+ }
83
+ /**
84
+ * Given the base ref's ID→path map and the working tree's entities, report the
85
+ * IDs that collide.
86
+ *
87
+ * **A collision is two claimants surviving the merge**, which is this function's
88
+ * contract and the only thing it can establish from paths. The branch adds the ID
89
+ * in one file, the base already spends it on another, and *both files are still
90
+ * there afterwards* — so every `{% ref %}` to that ID becomes ambiguous.
91
+ *
92
+ * It follows that a base file the branch no longer has is **not** a collision: the
93
+ * merge applies the deletion and one claimant remains. That covers the ordinary
94
+ * rename, where an edited title changes the slug
95
+ * (`WORK-603-add-metafields-….md` → `WORK-603-add-fieldmetas-….md`), and it is
96
+ * why the test is the base path's presence rather than a slug comparison.
97
+ *
98
+ * An earlier revision compared slugs, so it forgave only a rename that kept its
99
+ * slug and moved directory — and fired on every title edit, which is the common
100
+ * case, and on `plan migrate filenames` wholesale.
101
+ *
102
+ * **What this deliberately does not catch**: an ID *reused* for a different entity
103
+ * (the base's file deleted, a new one written under the same ID). That also leaves
104
+ * one claimant, so it is not a collision, but it silently repoints every reference
105
+ * — a real hazard, needing content rather than paths to detect, and not a reason to
106
+ * block a merge. In-tree duplicates are a separate matter and already reported at
107
+ * error severity by `checkDuplicateIds`, which runs before this.
108
+ *
109
+ * @param planDir Plan directory, relative to the repo root.
110
+ * @param cwd Repo root — needed to test whether the base's path still exists.
111
+ */
112
+ export function collisionsFrom(refIds, entities, planDir, cwd = process.cwd()) {
113
+ const collisions = [];
114
+ for (const e of entities) {
115
+ const id = e.attributes.id;
116
+ if (!id)
117
+ continue;
118
+ const refPath = refIds.get(id);
119
+ if (!refPath)
120
+ continue;
121
+ // `ls-tree` paths are repo-relative; entity files are plan-dir-relative.
122
+ const refRel = refPath.startsWith(`${planDir}/`) ? refPath.slice(planDir.length + 1) : refPath;
123
+ if (refRel === e.file)
124
+ continue;
125
+ // The base's claimant is gone from the branch, so the merge leaves one
126
+ // file holding the ID. A rename, a move, or a deliberate replacement —
127
+ // none of them produce the ambiguity this check exists to prevent.
128
+ if (!existsSync(join(cwd, refPath)))
129
+ continue;
130
+ collisions.push({ id, file: e.file, refFile: refRel });
131
+ }
132
+ return collisions;
133
+ }
134
+ //# sourceMappingURL=against.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"against.js","sourceRoot":"","sources":["../../src/commands/against.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * `refrakt plan migrate ids` — renumber a colliding entity, when it can be
3
+ * proved what every reference to that ID meant (SPEC-135 D8 / WORK-582).
4
+ *
5
+ * **The mechanical half is the easy half.** Rewriting `id=`, the filename and
6
+ * every `{% ref %}` is bounded work. The hard part is knowing *which entity a
7
+ * reference meant*: once two files both claim `BUG-019`, every
8
+ * `{% ref "BUG-019" /%}` in the repository is ambiguous, and repointing one at
9
+ * the wrong entity is silent, permanent, and lands in a file nobody is looking
10
+ * at. That is the failure class SPEC-131 exists to remove, so this refuses
11
+ * rather than guesses.
12
+ *
13
+ * The provable case is narrow and stated plainly: an entity can be renumbered
14
+ * when **nothing outside it references the colliding ID**. Then there is no
15
+ * reference whose meaning has to be inferred — only the entity's own
16
+ * declaration, filename and self-references, all of which are unambiguous.
17
+ *
18
+ * Everything else is reported as a refusal naming the references that blocked
19
+ * it. Prevention (`plan validate --against <ref>`) is what removes those cases,
20
+ * by catching the collision while the branch still makes resolution free.
21
+ */
22
+ export declare const EXIT_SUCCESS = 0;
23
+ export declare const EXIT_ERRORS = 1;
24
+ export declare const EXIT_INVALID_ARGS = 2;
25
+ export interface MigrateIdsOptions {
26
+ dir: string;
27
+ apply?: boolean;
28
+ useGit?: boolean;
29
+ }
30
+ export interface PlannedRenumber {
31
+ /** The ID that was duplicated. */
32
+ from: string;
33
+ /** The free ID it moves to. */
34
+ to: string;
35
+ /** File being renumbered, plan-dir-relative. */
36
+ file: string;
37
+ /** New filename, plan-dir-relative. */
38
+ toFile: string;
39
+ /** The other file(s) keeping the original ID. */
40
+ collidesWith: string[];
41
+ }
42
+ export interface RefusedRenumber {
43
+ id: string;
44
+ file: string;
45
+ collidesWith: string[];
46
+ reason: string;
47
+ /** Files referencing the ambiguous ID, which a renumber would have to
48
+ * repoint without being able to prove which entity each one meant. */
49
+ ambiguousRefs: {
50
+ file: string;
51
+ line: number;
52
+ text: string;
53
+ }[];
54
+ }
55
+ export interface MigrateIdsResult {
56
+ mode: 'dry-run' | 'apply';
57
+ scanned: number;
58
+ planned: PlannedRenumber[];
59
+ applied: PlannedRenumber[];
60
+ refused: RefusedRenumber[];
61
+ exitCode: number;
62
+ }
63
+ export declare function runMigrateIds(options: MigrateIdsOptions): MigrateIdsResult;
64
+ //# sourceMappingURL=migrate-ids.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrate-ids.d.ts","sourceRoot":"","sources":["../../src/commands/migrate-ids.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAOH,eAAO,MAAM,YAAY,IAAI,CAAC;AAC9B,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC,MAAM,WAAW,iBAAiB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC/B,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,YAAY,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf;2EACuE;IACvE,aAAa,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC9D;AAED,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;CACjB;AA8DD,wBAAgB,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,gBAAgB,CAsH1E"}
@@ -0,0 +1,218 @@
1
+ /**
2
+ * `refrakt plan migrate ids` — renumber a colliding entity, when it can be
3
+ * proved what every reference to that ID meant (SPEC-135 D8 / WORK-582).
4
+ *
5
+ * **The mechanical half is the easy half.** Rewriting `id=`, the filename and
6
+ * every `{% ref %}` is bounded work. The hard part is knowing *which entity a
7
+ * reference meant*: once two files both claim `BUG-019`, every
8
+ * `{% ref "BUG-019" /%}` in the repository is ambiguous, and repointing one at
9
+ * the wrong entity is silent, permanent, and lands in a file nobody is looking
10
+ * at. That is the failure class SPEC-131 exists to remove, so this refuses
11
+ * rather than guesses.
12
+ *
13
+ * The provable case is narrow and stated plainly: an entity can be renumbered
14
+ * when **nothing outside it references the colliding ID**. Then there is no
15
+ * reference whose meaning has to be inferred — only the entity's own
16
+ * declaration, filename and self-references, all of which are unambiguous.
17
+ *
18
+ * Everything else is reported as a refusal naming the references that blocked
19
+ * it. Prevention (`plan validate --against <ref>`) is what removes those cases,
20
+ * by catching the collision while the branch still makes resolution free.
21
+ */
22
+ import { existsSync, readFileSync, renameSync, writeFileSync } from 'node:fs';
23
+ import { basename, dirname, join, resolve } from 'node:path';
24
+ import { execFileSync } from 'node:child_process';
25
+ import { scanPlanFiles } from '../scanner.js';
26
+ export const EXIT_SUCCESS = 0;
27
+ export const EXIT_ERRORS = 1;
28
+ export const EXIT_INVALID_ARGS = 2;
29
+ /** Every way a plan file can name another entity's ID.
30
+ *
31
+ * Verified against the tree rather than assumed: `extractRefs`
32
+ * (`scanner-core.ts:175`) is private, returns a deduplicated `string[]` with no
33
+ * positions, and covers only `{% ref %}` / `{% xref %}` — not `source=` or
34
+ * `supersedes=`. So it cannot drive a rewrite, and this works on source text.
35
+ * Dependency sections (`## Blocked by` / `## Blocks`) need no separate pattern:
36
+ * their entries are `{% ref %}` tags, so the first pattern already covers them. */
37
+ function referencePatterns(id) {
38
+ const esc = id.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
39
+ return [
40
+ // {% ref "ID" /%} and {% xref "ID" /%}, single or double quoted.
41
+ new RegExp(`(\\{%\\s*x?ref\\s+)(["'])${esc}\\2`, 'g'),
42
+ // source="ID" / supersedes="ID" on an entity tag.
43
+ new RegExp(`((?:source|supersedes)=)(["'])${esc}\\2`, 'g'),
44
+ ];
45
+ }
46
+ /** Does this line mention the ID in a way a renumber would have to rewrite? */
47
+ function lineReferences(line, id) {
48
+ return referencePatterns(id).some((re) => {
49
+ re.lastIndex = 0;
50
+ return re.test(line);
51
+ });
52
+ }
53
+ /** Rewrite every reference to `from` as `to` in one file's source. */
54
+ function rewriteReferences(source, from, to) {
55
+ let out = source;
56
+ for (const re of referencePatterns(from)) {
57
+ // The pattern consumes the closing quote via the backreference, so the
58
+ // replacement has to put it back. Dropping it silently produced
59
+ // `id="WORK-002 status="` — malformed, and in every file touched.
60
+ out = out.replace(re, (_m, prefix, quote) => `${prefix}${quote}${to}${quote}`);
61
+ }
62
+ return out;
63
+ }
64
+ /** Rewrite the entity's own `id="OLD"` declaration. */
65
+ function rewriteOwnId(source, from, to) {
66
+ const esc = from.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
67
+ return source.replace(new RegExp(`(\\bid=)(["'])${esc}\\2`), (_m, p, q) => `${p}${q}${to}${q}`);
68
+ }
69
+ /** The next unused numeric suffix for an ID's prefix, e.g. `WORK-` → WORK-583. */
70
+ function nextFreeId(prefix, taken) {
71
+ let n = 0;
72
+ for (const id of taken) {
73
+ if (!id.startsWith(`${prefix}-`))
74
+ continue;
75
+ const num = Number.parseInt(id.slice(prefix.length + 1), 10);
76
+ if (Number.isFinite(num) && num > n)
77
+ n = num;
78
+ }
79
+ let candidate = `${prefix}-${String(n + 1).padStart(3, '0')}`;
80
+ while (taken.has(candidate)) {
81
+ n += 1;
82
+ candidate = `${prefix}-${String(n + 1).padStart(3, '0')}`;
83
+ }
84
+ return candidate;
85
+ }
86
+ export function runMigrateIds(options) {
87
+ const { dir, apply = false, useGit = false } = options;
88
+ const root = resolve(dir);
89
+ const entities = scanPlanFiles(dir, { cache: false });
90
+ // Group by ID. Milestones are keyed by `name`, not `id`, and are not part of
91
+ // the numbered-ID scheme, so they cannot collide this way.
92
+ const byId = new Map();
93
+ const taken = new Set();
94
+ for (const e of entities) {
95
+ const id = e.attributes.id;
96
+ if (!id)
97
+ continue;
98
+ taken.add(id);
99
+ const group = byId.get(id) ?? [];
100
+ group.push(e);
101
+ byId.set(id, group);
102
+ }
103
+ const planned = [];
104
+ const applied = [];
105
+ const refused = [];
106
+ for (const [id, group] of byId) {
107
+ if (group.length < 2)
108
+ continue;
109
+ const prefix = id.includes('-') ? id.slice(0, id.lastIndexOf('-')) : id;
110
+ // Which claimant "should" keep the ID is not knowable from the files
111
+ // alone, so the choice is made deterministic (sorted by path) rather
112
+ // than left to scan order. It is also harmless: this only ever acts when
113
+ // *nothing* references the ID, so no reference is repointed either way
114
+ // and the entities keep their content. The refusal check below is what
115
+ // protects correctness — not which file happens to move.
116
+ const sorted = [...group].sort((a, b) => a.file.localeCompare(b.file));
117
+ const [keep, ...movers] = sorted;
118
+ for (const mover of movers) {
119
+ // Every mention of the ID outside the entity being renumbered is
120
+ // ambiguous — it could have meant either claimant.
121
+ const ambiguousRefs = [];
122
+ for (const e of entities) {
123
+ if (e.file === mover.file)
124
+ continue;
125
+ const abs = resolve(root, e.file);
126
+ if (!existsSync(abs))
127
+ continue;
128
+ const lines = readFileSync(abs, 'utf-8').split('\n');
129
+ lines.forEach((line, i) => {
130
+ if (lineReferences(line, id)) {
131
+ ambiguousRefs.push({ file: e.file, line: i + 1, text: line.trim() });
132
+ }
133
+ });
134
+ }
135
+ if (ambiguousRefs.length > 0) {
136
+ refused.push({
137
+ id,
138
+ file: mover.file,
139
+ collidesWith: [keep.file],
140
+ reason: `${ambiguousRefs.length} reference(s) to ${id} exist outside the file being renumbered. ` +
141
+ 'Which entity each one meant cannot be established, and repointing one at the wrong ' +
142
+ 'entity is silent. Resolve by hand, or catch the collision pre-merge with ' +
143
+ '`plan validate --against <ref>`, where the branch still makes it unambiguous.',
144
+ ambiguousRefs,
145
+ });
146
+ continue;
147
+ }
148
+ const to = nextFreeId(prefix, taken);
149
+ taken.add(to);
150
+ const currentName = basename(mover.file);
151
+ const relDir = dirname(mover.file);
152
+ // Swap the ID prefix on the filename, keeping the slug.
153
+ const slug = currentName.startsWith(`${id}-`)
154
+ ? currentName.slice(id.length + 1)
155
+ : currentName;
156
+ const toName = `${to}-${slug}`;
157
+ const toFile = relDir === '.' ? toName : join(relDir, toName);
158
+ const rename = {
159
+ from: id,
160
+ to,
161
+ file: mover.file,
162
+ toFile,
163
+ collidesWith: [keep.file],
164
+ };
165
+ planned.push(rename);
166
+ if (apply) {
167
+ const absFrom = resolve(root, mover.file);
168
+ const absTo = resolve(root, toFile);
169
+ // Rename BEFORE rewriting. The rename is the operation that can
170
+ // fail (git mv on an untracked file, a target that appeared
171
+ // underneath us), and doing it first means a failure leaves the
172
+ // file exactly as it was. Writing first left a file whose `id=`
173
+ // had moved while its name had not — a duplicate that had
174
+ // silently become invisible to the very check that found it.
175
+ performRename(absFrom, absTo, useGit, root);
176
+ let source = readFileSync(absTo, 'utf-8');
177
+ source = rewriteOwnId(source, id, to);
178
+ // Self-references inside the moved entity are unambiguous — they
179
+ // are its own, by construction.
180
+ source = rewriteReferences(source, id, to);
181
+ writeFileSync(absTo, source, 'utf-8');
182
+ applied.push(rename);
183
+ }
184
+ }
185
+ }
186
+ return {
187
+ mode: apply ? 'apply' : 'dry-run',
188
+ scanned: entities.length,
189
+ planned,
190
+ applied,
191
+ refused,
192
+ exitCode: refused.length > 0 ? EXIT_ERRORS : EXIT_SUCCESS,
193
+ };
194
+ }
195
+ function performRename(absFrom, absTo, useGit, cwd) {
196
+ if (absFrom === absTo)
197
+ return;
198
+ if (useGit) {
199
+ try {
200
+ execFileSync('git', ['mv', absFrom, absTo], { cwd, stdio: 'pipe' });
201
+ return;
202
+ }
203
+ catch {
204
+ // Fall through to a plain rename — the file may be untracked, which
205
+ // `git mv` refuses but which is perfectly fine to move.
206
+ }
207
+ }
208
+ renameSync(absFrom, absTo);
209
+ if (useGit) {
210
+ try {
211
+ execFileSync('git', ['add', absTo], { cwd, stdio: 'pipe' });
212
+ }
213
+ catch {
214
+ // Staging is best-effort; the rename already happened.
215
+ }
216
+ }
217
+ }
218
+ //# sourceMappingURL=migrate-ids.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrate-ids.js","sourceRoot":"","sources":["../../src/commands/migrate-ids.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC;AAC9B,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC;AAC7B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAwCnC;;;;;;;oFAOoF;AACpF,SAAS,iBAAiB,CAAC,EAAU;IACpC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACtD,OAAO;QACN,iEAAiE;QACjE,IAAI,MAAM,CAAC,4BAA4B,GAAG,KAAK,EAAE,GAAG,CAAC;QACrD,kDAAkD;QAClD,IAAI,MAAM,CAAC,iCAAiC,GAAG,KAAK,EAAE,GAAG,CAAC;KAC1D,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,SAAS,cAAc,CAAC,IAAY,EAAE,EAAU;IAC/C,OAAO,iBAAiB,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;QACxC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC;QACjB,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,sEAAsE;AACtE,SAAS,iBAAiB,CAAC,MAAc,EAAE,IAAY,EAAE,EAAU;IAClE,IAAI,GAAG,GAAG,MAAM,CAAC;IACjB,KAAK,MAAM,EAAE,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,uEAAuE;QACvE,gEAAgE;QAChE,kEAAkE;QAClE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,MAAM,GAAG,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IAChF,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,uDAAuD;AACvD,SAAS,YAAY,CAAC,MAAc,EAAE,IAAY,EAAE,EAAU;IAC7D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACxD,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,iBAAiB,GAAG,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AACjG,CAAC;AAED,kFAAkF;AAClF,SAAS,UAAU,CAAC,MAAc,EAAE,KAAkB;IACrD,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC;YAAE,SAAS;QAC3C,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7D,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC;YAAE,CAAC,GAAG,GAAG,CAAC;IAC9C,CAAC;IACD,IAAI,SAAS,GAAG,GAAG,MAAM,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAC9D,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,CAAC,IAAI,CAAC,CAAC;QACP,SAAS,GAAG,GAAG,MAAM,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IAC3D,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAA0B;IACvD,MAAM,EAAE,GAAG,EAAE,KAAK,GAAG,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IACvD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAE1B,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAEtD,6EAA6E;IAC7E,2DAA2D;IAC3D,MAAM,IAAI,GAAG,IAAI,GAAG,EAA2B,CAAC;IAChD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC,EAAE;YAAE,SAAS;QAClB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACd,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,MAAM,OAAO,GAAsB,EAAE,CAAC;IAEtC,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;QAChC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS;QAE/B,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAExE,qEAAqE;QACrE,qEAAqE;QACrE,yEAAyE;QACzE,uEAAuE;QACvE,uEAAuE;QACvE,yDAAyD;QACzD,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACvE,MAAM,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC;QAEjC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC5B,iEAAiE;YACjE,mDAAmD;YACnD,MAAM,aAAa,GAAmD,EAAE,CAAC;YACzE,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAC1B,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;oBAAE,SAAS;gBACpC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAC/B,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACrD,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;oBACzB,IAAI,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;wBAC9B,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACtE,CAAC;gBACF,CAAC,CAAC,CAAC;YACJ,CAAC;YAED,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,IAAI,CAAC;oBACZ,EAAE;oBACF,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,YAAY,EAAE,CAAC,IAAK,CAAC,IAAI,CAAC;oBAC1B,MAAM,EACL,GAAG,aAAa,CAAC,MAAM,oBAAoB,EAAE,4CAA4C;wBACzF,qFAAqF;wBACrF,2EAA2E;wBAC3E,+EAA+E;oBAChF,aAAa;iBACb,CAAC,CAAC;gBACH,SAAS;YACV,CAAC;YAED,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACrC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAEd,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACnC,wDAAwD;YACxD,MAAM,IAAI,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;gBAC5C,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;gBAClC,CAAC,CAAC,WAAW,CAAC;YACf,MAAM,MAAM,GAAG,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAE9D,MAAM,MAAM,GAAoB;gBAC/B,IAAI,EAAE,EAAE;gBACR,EAAE;gBACF,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM;gBACN,YAAY,EAAE,CAAC,IAAK,CAAC,IAAI,CAAC;aAC1B,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAErB,IAAI,KAAK,EAAE,CAAC;gBACX,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACpC,gEAAgE;gBAChE,4DAA4D;gBAC5D,gEAAgE;gBAChE,gEAAgE;gBAChE,0DAA0D;gBAC1D,6DAA6D;gBAC7D,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC5C,IAAI,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC1C,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBACtC,iEAAiE;gBACjE,gCAAgC;gBAChC,MAAM,GAAG,iBAAiB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC3C,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;gBACtC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO;QACN,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QACjC,OAAO,EAAE,QAAQ,CAAC,MAAM;QACxB,OAAO;QACP,OAAO;QACP,OAAO;QACP,QAAQ,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY;KACzD,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,OAAe,EAAE,KAAa,EAAE,MAAe,EAAE,GAAW;IAClF,IAAI,OAAO,KAAK,KAAK;QAAE,OAAO;IAC9B,IAAI,MAAM,EAAE,CAAC;QACZ,IAAI,CAAC;YACJ,YAAY,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACpE,OAAO;QACR,CAAC;QAAC,MAAM,CAAC;YACR,oEAAoE;YACpE,wDAAwD;QACzD,CAAC;IACF,CAAC;IACD,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC3B,IAAI,MAAM,EAAE,CAAC;QACZ,IAAI,CAAC;YACJ,YAAY,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACR,uDAAuD;QACxD,CAAC;IACF,CAAC;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,YAAY,IAAI,CAAC;AAC9B,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAInC,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAEzD,MAAM,WAAW,eAAe;IAC/B,QAAQ,EAAE,aAAa,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,QAAQ,EAAE,MAAM,CAAC;CACjB;AA8oBD,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,cAAc,CAgDpE"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,YAAY,IAAI,CAAC;AAC9B,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAInC,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAEzD,MAAM,WAAW,eAAe;IAC/B,QAAQ,EAAE,aAAa,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,QAAQ,EAAE,MAAM,CAAC;CACjB;AAkpBD,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,cAAc,CAgDpE"}
@@ -49,7 +49,11 @@ function checkDuplicateIds(entities) {
49
49
  source: id,
50
50
  file: e.file,
51
51
  target: existing.file,
52
- message: `${id} duplicate ID — also defined in ${existing.file}`,
52
+ // Name the fix, matching how the filename findings name theirs
53
+ // (SPEC-135 D8 / WORK-582). `migrate ids` renumbers only when it
54
+ // can prove what every reference meant, and refuses otherwise —
55
+ // so the hint is safe to follow.
56
+ message: `${id} duplicate ID — also defined in ${existing.file}. Run \`refrakt plan migrate ids\` to see whether it can be renumbered safely`,
53
57
  });
54
58
  }
55
59
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@ import { WORK_STATUS_DISPLAY_ORDER, BUG_STATUS_DISPLAY_ORDER } from './commands/
14
14
  export const plan = {
15
15
  name: 'plan',
16
16
  displayName: 'Plan',
17
- version: '0.35.0',
17
+ version: '0.37.0',
18
18
  runes: {
19
19
  spec: {
20
20
  transform: spec,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@refrakt-md/plan",
3
3
  "description": "Planning runes for refrakt.md — specs, work items, bugs, decisions, and milestones",
4
- "version": "0.35.0",
4
+ "version": "0.37.0",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -61,9 +61,9 @@
61
61
  },
62
62
  "dependencies": {
63
63
  "@markdoc/markdoc": "0.4.0",
64
- "@refrakt-md/content": "0.35.0",
65
- "@refrakt-md/runes": "0.35.0",
66
- "@refrakt-md/transform": "0.35.0",
67
- "@refrakt-md/types": "0.35.0"
64
+ "@refrakt-md/content": "0.37.0",
65
+ "@refrakt-md/runes": "0.37.0",
66
+ "@refrakt-md/transform": "0.37.0",
67
+ "@refrakt-md/types": "0.37.0"
68
68
  }
69
69
  }