@rsaglobaltech/specgate 1.0.0-rc.1 → 1.0.0-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/dist/packages/core/src/domain/Approvals.js +19 -4
  3. package/dist/packages/core/src/domain/Approvals.js.map +1 -1
  4. package/dist/packages/core/src/domain/ChangeLayers.js +6 -2
  5. package/dist/packages/core/src/domain/ChangeLayers.js.map +1 -1
  6. package/dist/packages/core/src/domain/WorkspaceStory.js +259 -0
  7. package/dist/packages/core/src/domain/WorkspaceStory.js.map +1 -0
  8. package/dist/scripts/change/instructions.js +8 -0
  9. package/dist/scripts/change/instructions.js.map +1 -1
  10. package/dist/scripts/cli/commands/change/ChangeCommand.js +62 -3
  11. package/dist/scripts/cli/commands/change/ChangeCommand.js.map +1 -1
  12. package/dist/scripts/cli/commands/harness/RunCommand.js +5 -4
  13. package/dist/scripts/cli/commands/harness/RunCommand.js.map +1 -1
  14. package/dist/scripts/cli/commands/project/InitProjectCommand.js +9 -14
  15. package/dist/scripts/cli/commands/project/InitProjectCommand.js.map +1 -1
  16. package/dist/scripts/cli/commands/spec/DoneCommand.js +22 -0
  17. package/dist/scripts/cli/commands/spec/DoneCommand.js.map +1 -1
  18. package/dist/scripts/cli/commands/spec/StatusCommand.js +73 -0
  19. package/dist/scripts/cli/commands/spec/StatusCommand.js.map +1 -1
  20. package/dist/scripts/cli/commands/spec/StudioCommand.js +6 -6
  21. package/dist/scripts/cli/commands/spec/StudioCommand.js.map +1 -1
  22. package/dist/scripts/cli/commands/workspace/WorkspaceCommand.js +252 -42
  23. package/dist/scripts/cli/commands/workspace/WorkspaceCommand.js.map +1 -1
  24. package/dist/scripts/draft/confined-agent.js +2 -1
  25. package/dist/scripts/draft/confined-agent.js.map +1 -1
  26. package/dist/scripts/harness/prompt.js +50 -1
  27. package/dist/scripts/harness/prompt.js.map +1 -1
  28. package/dist/scripts/lib/story-part.js +73 -0
  29. package/dist/scripts/lib/story-part.js.map +1 -0
  30. package/dist/scripts/lib/surface.js +1 -1
  31. package/dist/scripts/lib/surface.js.map +1 -1
  32. package/dist/scripts/lib/temp-file.js +72 -0
  33. package/dist/scripts/lib/temp-file.js.map +1 -0
  34. package/dist/scripts/lib/workspace-draft.js +224 -0
  35. package/dist/scripts/lib/workspace-draft.js.map +1 -0
  36. package/dist/scripts/lib/workspace-live.js +9 -26
  37. package/dist/scripts/lib/workspace-live.js.map +1 -1
  38. package/dist/scripts/lib/workspace.js +325 -6
  39. package/dist/scripts/lib/workspace.js.map +1 -1
  40. package/package.json +1 -1
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.LAST_CHECK_FILE = void 0;
36
+ exports.STORY_LINK = exports.RUNS_DIR = exports.LAST_CHECK_FILE = void 0;
37
37
  exports.workspaceFile = workspaceFile;
38
38
  exports.loadWorkspace = loadWorkspace;
39
39
  exports.memberRequirements = memberRequirements;
@@ -44,8 +44,14 @@ exports.subChangeState = subChangeState;
44
44
  exports.storyStates = storyStates;
45
45
  exports.workspaceModel = workspaceModel;
46
46
  exports.checkWorkspace = checkWorkspace;
47
+ exports.divergedParts = divergedParts;
48
+ exports.storyLevels = storyLevels;
49
+ exports.changeRequirements = changeRequirements;
50
+ exports.storyContext = storyContext;
47
51
  exports.recordCheck = recordCheck;
48
52
  exports.openSubChange = openSubChange;
53
+ exports.criteriaWarnings = criteriaWarnings;
54
+ exports.readyRequirements = readyRequirements;
49
55
  exports.noteNoMembers = noteNoMembers;
50
56
  const fs = __importStar(require("node:fs"));
51
57
  const path = __importStar(require("node:path"));
@@ -53,6 +59,7 @@ const node_child_process_1 = require("node:child_process");
53
59
  const Workspace_1 = require("../../packages/core/src/domain/Workspace");
54
60
  const ChangeWorkspace_1 = require("../../packages/core/src/infrastructure/ChangeWorkspace");
55
61
  const SpecParser_1 = require("../../packages/core/src/domain/SpecParser");
62
+ const WorkspaceStory_1 = require("../../packages/core/src/domain/WorkspaceStory");
56
63
  const requirement_graph_1 = require("./requirement-graph");
57
64
  const in_flight_1 = require("./in-flight");
58
65
  const project_root_1 = require("./project-root");
@@ -64,6 +71,8 @@ const diagnostics_1 = require("./diagnostics");
64
71
  */
65
72
  /** Where `workspace check` writes its last result, for `workspace status`. */
66
73
  exports.LAST_CHECK_FILE = ".specgate/workspace-check.json";
74
+ /** Where `workspace harness run` keeps each repository's log and context (REQ-349). */
75
+ exports.RUNS_DIR = ".specgate/workspace-runs";
67
76
  function workspaceFile(dir) {
68
77
  return path.join(dir, Workspace_1.WORKSPACE_FILE);
69
78
  }
@@ -364,7 +373,172 @@ function checkWorkspace(ws) {
364
373
  }
365
374
  }
366
375
  const ok = repos.every((r) => r.ok) && problems.length === 0;
367
- return { ok, repos, problems };
376
+ return { ok, repos, problems, warnings: [...divergedParts(ws), ...criteriaWarnings(ws)] };
377
+ }
378
+ /** The `discover.md` of a member's open change, or null. */
379
+ function discoverOf(memberDir, change) {
380
+ const file = path.join(memberDir, "docs", "specs", "changes", change, "discover.md");
381
+ return fs.existsSync(file) ? fs.readFileSync(file, "utf8") : null;
382
+ }
383
+ /**
384
+ * REQ-343: the story's criteria are the business's, the same in every
385
+ * repository; an open sub-change whose `AC-n` lines are not the story's has
386
+ * drifted from it.
387
+ */
388
+ function divergedParts(ws) {
389
+ const out = [];
390
+ for (const s of readStories(ws.dir)) {
391
+ const md = path.join(s.dir, "story.md");
392
+ if (!fs.existsSync(md))
393
+ continue;
394
+ const theirs = (0, WorkspaceStory_1.criteriaLines)(fs.readFileSync(md, "utf8"));
395
+ if (theirs.length === 0)
396
+ continue;
397
+ for (const sc of s.subchanges) {
398
+ const dir = ws.dirs[sc.repo];
399
+ if (!dir || !fs.existsSync(dir))
400
+ continue;
401
+ const text = discoverOf(dir, sc.change);
402
+ if (text === null)
403
+ continue;
404
+ const mine = (0, WorkspaceStory_1.criteriaLines)(text);
405
+ const missing = theirs.filter((c) => !mine.includes(c));
406
+ const extra = mine.filter((c) => !theirs.includes(c));
407
+ if (missing.length === 0 && extra.length === 0)
408
+ continue;
409
+ out.push((0, diagnostics_1.warning)("workspace_story_diverged", `${sc.repo}'s change ${sc.change} states its criteria otherwise than the story ${s.id}` +
410
+ (missing.length
411
+ ? `: the story's "${missing[0]}" is not there`
412
+ : `: "${extra[0]}" is not the story's`) +
413
+ ".", {
414
+ target: sc.repo,
415
+ file: `${sc.repo}/docs/specs/changes/${sc.change}/discover.md`,
416
+ fix: `Write the story's criteria as ${Workspace_1.STORIES_DIR}/${s.id}/story.md states them, or change the story there, on purpose.`,
417
+ }));
418
+ }
419
+ }
420
+ return out;
421
+ }
422
+ /**
423
+ * REQ-345: the order a story's repositories are built in. A repository whose
424
+ * part depends on a requirement another part adds, not yet delivered, comes a
425
+ * level after that part's repository.
426
+ */
427
+ function storyLevels(ws, story) {
428
+ const owner = new Map();
429
+ const needs = new Map();
430
+ const parts = story.subchanges.filter((sc) => ws.dirs[sc.repo] && fs.existsSync(ws.dirs[sc.repo]));
431
+ const reqsOf = new Map();
432
+ for (const sc of parts) {
433
+ const reqs = changeRequirements(ws.dirs[sc.repo], sc.change);
434
+ reqsOf.set(sc.repo, reqs);
435
+ for (const r of reqs)
436
+ owner.set(`${sc.repo}:${r.id}`, sc.repo);
437
+ }
438
+ for (const sc of parts) {
439
+ const set = new Set();
440
+ const statuses = memberStatusesCache(ws);
441
+ for (const r of reqsOf.get(sc.repo) || []) {
442
+ for (const d of r.depends) {
443
+ const q = (0, Workspace_1.splitQualified)(d);
444
+ if (!q || q.repo === sc.repo)
445
+ continue;
446
+ const theirs = owner.get(`${q.repo}:${q.id}`);
447
+ if (theirs && !in_flight_1.DELIVERED.includes(statuses(q.repo).get(q.id) || ""))
448
+ set.add(theirs);
449
+ }
450
+ }
451
+ needs.set(sc.repo, set);
452
+ }
453
+ const level = {};
454
+ const visit = (repo, seen) => {
455
+ if (level[repo])
456
+ return level[repo];
457
+ if (seen.has(repo))
458
+ return 1; // a cycle: build them together
459
+ seen.add(repo);
460
+ const deps = [...(needs.get(repo) || [])];
461
+ const l = deps.length ? Math.max(...deps.map((d) => visit(d, seen))) + 1 : 1;
462
+ level[repo] = l;
463
+ return l;
464
+ };
465
+ for (const sc of parts)
466
+ visit(sc.repo, new Set());
467
+ return level;
468
+ }
469
+ function memberStatusesCache(ws) {
470
+ const cache = new Map();
471
+ return (repo) => {
472
+ if (!cache.has(repo))
473
+ cache.set(repo, ws.dirs[repo] ? memberStatuses(ws.dirs[repo]) : new Map());
474
+ return cache.get(repo);
475
+ };
476
+ }
477
+ /** The requirements a change adds or modifies, open or archived, with their `depends=`. */
478
+ function changeRequirements(memberDir, change) {
479
+ const archived = (0, ChangeWorkspace_1.listArchivedIds)(memberDir).find((a) => a === change || a.endsWith(`-${change}`));
480
+ const id = (0, ChangeWorkspace_1.listChangeIds)(memberDir).includes(change)
481
+ ? change
482
+ : archived
483
+ ? path.join("archive", archived)
484
+ : null;
485
+ if (!id)
486
+ return [];
487
+ const out = [];
488
+ for (const d of (0, ChangeWorkspace_1.listDeltas)(memberDir, id)) {
489
+ let parsed;
490
+ try {
491
+ parsed = (0, SpecParser_1.parseDelta)(fs.readFileSync(d.file, "utf8"));
492
+ }
493
+ catch {
494
+ continue;
495
+ }
496
+ for (const r of [...(parsed.added || []), ...(parsed.modified || [])]) {
497
+ if (!r.id)
498
+ continue;
499
+ const raw = String((r.trace || {}).depends || "");
500
+ out.push({
501
+ id: r.id.toUpperCase(),
502
+ title: String(r.name || ""),
503
+ depends: raw.split(/[,;\s]+/).filter(Boolean),
504
+ scenarios: r.scenarios.map((s) => s.id || "").filter(Boolean),
505
+ });
506
+ }
507
+ }
508
+ return out;
509
+ }
510
+ /**
511
+ * REQ-344: what a repository's harness is told of the story's other parts —
512
+ * each repository, its role, and the requirements its part adds with their
513
+ * status — so a requirement can name what it waits for.
514
+ */
515
+ function storyContext(ws, story, repo) {
516
+ const roleOf = (n) => (ws.config.repos.find((r) => r.name === n) || { role: "" }).role;
517
+ const statuses = memberStatusesCache(ws);
518
+ const lines = [
519
+ `## The workspace story ${ws.config.name}:${story.id} — ${story.title}`,
520
+ "",
521
+ `This requirement is ${repo}'s part of a story built across repositories. The other parts:`,
522
+ "",
523
+ ];
524
+ for (const sc of story.subchanges) {
525
+ if (sc.repo === repo || !ws.dirs[sc.repo])
526
+ continue;
527
+ lines.push(`- \`${sc.repo}\` (${roleOf(sc.repo)}):`);
528
+ const reqs = fs.existsSync(ws.dirs[sc.repo])
529
+ ? changeRequirements(ws.dirs[sc.repo], sc.change)
530
+ : [];
531
+ if (reqs.length === 0)
532
+ lines.push(" - nothing specified yet");
533
+ for (const r of reqs)
534
+ lines.push(` - ${sc.repo}:${r.id} — ${r.title} (${statuses(sc.repo).get(r.id) || "Draft"})`);
535
+ }
536
+ const contracts = ws.config.repos.filter((r) => r.role === "contracts").map((r) => r.name);
537
+ lines.push("", "Call another part's requirement by its qualified id: a requirement that needs it carries `depends=<repo>:REQ-NNN` in its trace" +
538
+ (contracts.length
539
+ ? `, and an API between repositories is an operation of \`${contracts[0]}\`, cited as \`api=<file>#<operationId>\`.`
540
+ : "."), "Do not build another repository's part here: call it through its API, or a stand-in in the tests.", "");
541
+ return lines.join("\n");
368
542
  }
369
543
  function recordCheck(dir, result) {
370
544
  const file = path.join(dir, exports.LAST_CHECK_FILE);
@@ -376,7 +550,7 @@ function recordCheck(dir, result) {
376
550
  }
377
551
  // ── workspace propose ───────────────────────────────────────────────────────
378
552
  /** Open the story's change in one member, linked back to the story. */
379
- function openSubChange(ws, repo, story, title) {
553
+ function openSubChange(ws, repo, story, title, carried = { storyText: "", repos: [] }) {
380
554
  const dir = ws.dirs[repo];
381
555
  const r = cli(["change", "new", story, "--project-dir", dir]);
382
556
  if (r.status !== 0) {
@@ -391,13 +565,158 @@ function openSubChange(ws, repo, story, title) {
391
565
  .map((f) => path.join(changeDir, f))
392
566
  .find((f) => fs.existsSync(f));
393
567
  if (proposal) {
394
- const text = fs.readFileSync(proposal, "utf8");
568
+ let text = fs.readFileSync(proposal, "utf8");
569
+ // REQ-342: the story itself, not a path this repository cannot open.
395
570
  const link = `\n> Part of the workspace story \`${ws.config.name}:${story}\` — ${title}. ` +
396
- `The story and its other repositories: \`${Workspace_1.STORIES_DIR}/${story}/story.md\` in the workspace repository.\n`;
397
- fs.writeFileSync(proposal, text.replace(/^(# .*\n)/, `$1${link}`), "utf8");
571
+ "Its intent and criteria are copied below as the story states them; change them in the story, " +
572
+ "not here.\n";
573
+ text = text.replace(/^(# .*\n)/, `$1${link}`);
574
+ const intent = (0, WorkspaceStory_1.section)(carried.storyText, WorkspaceStory_1.INTENT);
575
+ const criteria = (0, WorkspaceStory_1.criteriaLines)(carried.storyText);
576
+ if (intent)
577
+ text = replaceSection(text, /context/i, intent);
578
+ if (criteria.length)
579
+ text = replaceSection(text, WorkspaceStory_1.CRITERIA, criteria.map((c) => `- ${c}`).join("\n"));
580
+ text = text.trimEnd() + "\n\n" + otherRepositories(ws, repo, carried.repos) + "\n";
581
+ const part = repositoryPart(repo, carried.repos, (0, WorkspaceStory_1.storyCriteria)(carried.storyText));
582
+ if (part)
583
+ text = text.trimEnd() + "\n\n" + part + "\n";
584
+ fs.writeFileSync(proposal, text, "utf8");
585
+ }
586
+ // REQ-365: how to name what this part needs is the design's, not the Discover's.
587
+ const design = path.join(changeDir, "design.md");
588
+ if (fs.existsSync(design)) {
589
+ fs.writeFileSync(design, fs.readFileSync(design, "utf8").trimEnd() +
590
+ "\n\n" +
591
+ acrossRepositories(ws, repo, carried.repos) +
592
+ "\n", "utf8");
593
+ }
594
+ // REQ-366: where the story's workspace is, for whoever writes this part.
595
+ if (fs.existsSync(changeDir)) {
596
+ const link = {
597
+ workspace: path.relative(dir, ws.dir).split(path.sep).join("/") || ".",
598
+ story,
599
+ repo,
600
+ };
601
+ fs.writeFileSync(path.join(changeDir, exports.STORY_LINK), JSON.stringify(link, null, 2) + "\n", "utf8");
398
602
  }
399
603
  return null;
400
604
  }
605
+ /** The file of a sub-change that names its story's workspace (REQ-366). */
606
+ exports.STORY_LINK = "story.json";
607
+ /** REQ-361: the criteria this repository answers, and those the others do. */
608
+ function repositoryPart(repo, repos, map) {
609
+ if (Object.keys(map).length === 0)
610
+ return "";
611
+ const mine = map[repo] || [];
612
+ const others = repos.filter((r) => r !== repo && (map[r] || []).length);
613
+ return [
614
+ "## This repository's part",
615
+ "",
616
+ mine.length
617
+ ? `This repository answers ${mine.join(", ")}.`
618
+ : "The story gives this repository none of its criteria.",
619
+ ...(others.length
620
+ ? ["", "The others:", "", ...others.map((r) => `- \`${r}\`: ${map[r].join(", ")}`)]
621
+ : []),
622
+ ].join("\n");
623
+ }
624
+ /** The body of a `##` section replaced, its heading kept. */
625
+ function replaceSection(md, heading, body) {
626
+ const lines = md.split("\n");
627
+ const at = lines.findIndex((l) => /^##\s/.test(l) && heading.test(l));
628
+ if (at < 0)
629
+ return md;
630
+ let end = lines.findIndex((l, i) => i > at && /^##\s/.test(l));
631
+ if (end < 0)
632
+ end = lines.length;
633
+ return [...lines.slice(0, at + 1), "", body, "", ...lines.slice(end)].join("\n");
634
+ }
635
+ /** REQ-344: the story's other repositories, by name and role — business words only (REQ-365). */
636
+ function otherRepositories(ws, repo, repos) {
637
+ const others = repos.filter((r) => r !== repo);
638
+ const contracts = ws.config.repos.filter((r) => r.role === "contracts").map((r) => r.name);
639
+ const roleOf = (n) => (ws.config.repos.find((r) => r.name === n) || { role: "" }).role;
640
+ return [
641
+ "## The story's other repositories",
642
+ "",
643
+ ...others.map((r) => `- \`${r}\` (${roleOf(r)})`),
644
+ ...contracts
645
+ .filter((c) => !others.includes(c) && c !== repo)
646
+ .map((c) => `- \`${c}\` (contracts)`),
647
+ ].join("\n");
648
+ }
649
+ /** REQ-344, REQ-365: in the design, how a requirement names what it needs from the others. */
650
+ function acrossRepositories(ws, repo, repos) {
651
+ const others = repos.filter((r) => r !== repo);
652
+ const contracts = ws.config.repos.filter((r) => r.role === "contracts").map((r) => r.name);
653
+ const example = others[0] || "fleet";
654
+ return [
655
+ "## Across repositories",
656
+ "",
657
+ `A requirement here that needs one of their requirements names it in its trace: \`depends=${example}:REQ-NNN\`.` +
658
+ (contracts.length
659
+ ? ` An API between repositories is an operation of \`${contracts[0]}\`, cited as \`api=<file>#<operationId>\`.`
660
+ : ""),
661
+ ].join("\n");
662
+ }
663
+ /**
664
+ * REQ-362: a story that maps its criteria to repositories leaves none to no
665
+ * repository and gives none to two.
666
+ */
667
+ function criteriaWarnings(ws) {
668
+ const out = [];
669
+ for (const s of readStories(ws.dir)) {
670
+ const md = path.join(s.dir, "story.md");
671
+ if (!fs.existsSync(md))
672
+ continue;
673
+ const text = fs.readFileSync(md, "utf8");
674
+ const map = (0, WorkspaceStory_1.storyCriteria)(text);
675
+ if (Object.keys(map).length === 0)
676
+ continue;
677
+ const file = `${Workspace_1.STORIES_DIR}/${s.id}/story.md`;
678
+ for (const id of (0, WorkspaceStory_1.criterionIds)(text)) {
679
+ const by = Object.keys(map).filter((r) => map[r].includes(id));
680
+ if (by.length === 0) {
681
+ out.push((0, diagnostics_1.warning)("workspace_criterion_unanswered", `${id} of the story ${s.id} is answered by no repository.`, {
682
+ target: s.id,
683
+ file,
684
+ fix: `Name the repository that answers ${id} under ## Repositories in ${file}.`,
685
+ }));
686
+ }
687
+ else if (by.length > 1) {
688
+ out.push((0, diagnostics_1.warning)("workspace_criterion_shared", `${id} of the story ${s.id} is claimed by ${by.join(" and ")}.`, {
689
+ target: s.id,
690
+ file,
691
+ fix: `Give ${id} to one repository, or split it into a criterion for each, in ${file}.`,
692
+ }));
693
+ }
694
+ }
695
+ }
696
+ return out;
697
+ }
698
+ /**
699
+ * REQ-367: a part's requirements split into those whose every `depends=` on
700
+ * another repository is delivered, and those still waiting, with what for.
701
+ */
702
+ function readyRequirements(ws, repo, change) {
703
+ const statuses = memberStatusesCache(ws);
704
+ const ready = [];
705
+ const waiting = [];
706
+ for (const r of changeRequirements(ws.dirs[repo], change)) {
707
+ const on = r.depends.filter((d) => {
708
+ const q = (0, Workspace_1.splitQualified)(d);
709
+ if (!q || q.repo === repo || !ws.dirs[q.repo])
710
+ return false;
711
+ return !in_flight_1.DELIVERED.includes(statuses(q.repo).get(q.id) || "");
712
+ });
713
+ if (on.length)
714
+ waiting.push({ id: r.id, on });
715
+ else
716
+ ready.push(r.id);
717
+ }
718
+ return { ready, waiting };
719
+ }
401
720
  function noteNoMembers() {
402
721
  return (0, diagnostics_1.warning)("workspace_no_members", "No sibling folder holds a Specgate project.", {
403
722
  fix: "specgate workspace init --repo fleet=../fleet --repo web=../web:web",
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../scripts/lib/workspace.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CA,sCAEC;AAGD,sCAwBC;AAkCD,gDAQC;AAMD,wCAaC;AAGD,gDAoBC;AAkBD,kCAYC;AAKD,wCAKC;AAyCD,kCAiBC;AAGD,wCA4BC;AAeD,wCA4HC;AAED,kCAMC;AAKD,sCA+BC;AAED,sCAIC;AA3dD,4CAA8B;AAC9B,gDAAkC;AAClC,2DAA+C;AAC/C,wEAOkD;AAMlD,4FAIgE;AAChE,0EAAuE;AACvE,2DAA+D;AAC/D,2CAA8D;AAC9D,iDAA6C;AAC7C,+CAA+C;AAG/C;;;;GAIG;AAEH,8EAA8E;AACjE,QAAA,eAAe,GAAG,gCAAgC,CAAC;AAShE,SAAgB,aAAa,CAAC,GAAW;IACvC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,0BAAc,CAAC,CAAC;AACxC,CAAC;AAED,4EAA4E;AAC5E,SAAgB,aAAa,CAAC,GAAW;IACvC,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,EAAE,EAAE,IAAI;YACR,QAAQ,EAAE;gBACR,IAAA,mBAAK,EAAC,mBAAmB,EAAE,GAAG,GAAG,WAAW,0BAAc,GAAG,EAAE;oBAC7D,GAAG,EAAE,qEAAqE;iBAC3E,CAAC;aACH;SACF,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,IAAA,yBAAa,EAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO;YACL,EAAE,EAAE,IAAI;YACR,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAChC,IAAA,mBAAK,EAAC,mBAAmB,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,0BAAc,EAAE,GAAG,EAAE,4BAA4B,EAAE,CAAC,CAC3F;SACF,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAA2B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK;QAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC5E,OAAO,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAClE,CAAC;AAED,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAA,0BAAW,EAAC,SAAS,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;AAE1E,SAAS,GAAG,CAAC,IAAc;IACzB,MAAM,CAAC,GAAG,IAAA,8BAAS,EAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,EAAE;QACtD,QAAQ,EAAE,MAAM;QAChB,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;QAC3B,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE;KACvC,CAAC,CAAC;IACH,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;AAC9E,CAAC;AAED,SAAS,IAAI,CAAC,IAAY;IACxB,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW;IAC3B,MAAM,CAAC,GAAG,IAAA,8BAAS,EAAC,KAAK,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAClG,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACjD,CAAC;AAUD,SAAgB,kBAAkB,CAAC,GAAW;IAC5C,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;IAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC3B,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,MAAM,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAiB,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACpF,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IACzC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;AACrE,CAAC;AAED;;;GAGG;AACH,SAAgB,cAAc,CAAC,GAAW;IACxC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC;IAClE,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAClE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACnD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAAE,SAAS;YAChD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7C,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,IAAA,gCAAoB,EAAC,GAAG,CAAC;QAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IACjF,OAAO,GAAG,CAAC;AACb,CAAC;AAED,sEAAsE;AACtE,SAAgB,kBAAkB,CAAC,GAAW;IAC5C,MAAM,QAAQ,GAA6B,EAAE,GAAG,IAAA,4CAAwB,EAAC,GAAG,CAAC,EAAE,CAAC;IAChF,KAAK,MAAM,MAAM,IAAI,IAAA,+BAAa,EAAC,GAAG,CAAC,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,IAAI,IAAA,4BAAU,EAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;YACxC,IAAI,MAAqC,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,GAAG,IAAA,uBAAU,EAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;YACvD,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;YACD,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBACxE,MAAM,GAAG,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC;gBAChD,IAAI,GAAG,IAAI,GAAG,CAAC,EAAE;oBACf,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC;yBACzC,KAAK,CAAC,SAAS,CAAC;yBAChB,MAAM,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,sFAAsF;AACtF,SAAS,SAAS,CAAC,GAAW;IAC5B,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3D,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;IAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IAC7D,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,CAAC,WAAW,EAAE;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,IAAA,+BAAa,EAAC,GAAG,CAAC;QAAE,KAAK,MAAM,CAAC,IAAI,IAAA,4BAAU,EAAC,GAAG,EAAE,MAAM,CAAC;YAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9F,OAAO,GAAG,CAAC;AACb,CAAC;AAED,6EAA6E;AAC7E,SAAgB,WAAW,CAAC,GAAW;IACrC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAW,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,MAAM,GAAG,GAAmC,EAAE,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAC9D,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE;YAAE,SAAS;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACnD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QACnC,MAAM,KAAK,GAAG,IAAA,qBAAS,EAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QACvD,IAAI,KAAK;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACtD,CAAC;AAID,qFAAqF;AACrF,SAAgB,cAAc,CAAC,SAAiB,EAAE,MAAc;IAC9D,IAAI,IAAA,+BAAa,EAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAC7D,IAAI,IAAA,iCAAe,EAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;QAClF,OAAO,UAAU,CAAC;IACpB,OAAO,SAAS,CAAC;AACnB,CAAC;AAmCD,SAAS,SAAS,CAAC,GAAW;IAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAe,CAAC,CAAC;IAC7C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACtC,OAAO,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAqB,CAAC;AACjE,CAAC;AAED,SAAgB,WAAW,CAAC,EAAmB;IAC7C,OAAO,WAAW,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnC,MAAM,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC3C,IAAI,EAAE,EAAE,CAAC,IAAI;YACb,MAAM,EAAE,EAAE,CAAC,MAAM;YACjB,KAAK,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;gBACzD,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC;gBAC7C,CAAC,CAAC,SAAS,CAAmB;SACjC,CAAC,CAAC,CAAC;QACJ,OAAO;YACL,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,8DAA8D;YAC9D,IAAI,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,KAAK,UAAU,CAAC;YAChF,UAAU;SACX,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,2EAA2E;AAC3E,SAAgB,cAAc,CAAC,EAAmB;IAChD,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAgB,EAAa,EAAE;QAChE,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC;QACzC,OAAO;YACL,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,IAAI;YAClB,MAAM;YACN,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;YACrC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI;YACrF,IAAI,EAAE;gBACJ,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;gBACpE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,IAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;aAC1B;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI;QACpB,GAAG,EAAE,EAAE,CAAC,GAAG;QACX,KAAK;QACL,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC;KACzB,CAAC;AACJ,CAAC;AAUD;;;;GAIG;AACH,SAAgB,cAAc,CAAC,EAAmB;IAChD,MAAM,KAAK,GAAyB,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAiB,EAAE,CAAC;IAClC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC7C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA+B,CAAC;IAExD,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,GAAG,IAAA,mBAAK,EAAC,wBAAwB,EAAE,YAAY,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,IAAI,GAAG,EAAE;gBACnF,MAAM,EAAE,CAAC,CAAC,IAAI;gBACd,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,uBAAuB,0BAAc,GAAG;aACvF,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACvD,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,GAAG,GAAiB,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC;YAClD,CAAC,CAAC,GAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC;YAC/D,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;QAClE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACzE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,kFAAkF;IAClF,MAAM,OAAO,GAAyC,EAAE,CAAC;IACzD,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;QACpC,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,SAAS;QACjC,KAAK,MAAM,CAAC,IAAI,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACrF,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,OAAO,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,GAAG;YACf,CAAC,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACzE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1D,KAAK,MAAM,GAAG,IAAI,IAAA,yBAAa,EAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;YAC/D,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvB,QAAQ,CAAC,IAAI,CACX,IAAA,mBAAK,EACH,wBAAwB,EACxB,GAAG,KAAK,IAAI,GAAG,CAAC,IAAI,UAAU,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,SAAS,GAAG,CAAC,IAAI,mCAAmC,EACpG;oBACE,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,GAAG,EAAE,OAAO,GAAG,CAAC,IAAI,OAAO,0BAAc,6BAA6B;iBACvE,CACF,CACF,CAAC;YACJ,CAAC;iBAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACnC,QAAQ,CAAC,IAAI,CACX,IAAA,mBAAK,EACH,+BAA+B,EAC/B,GAAG,KAAK,IAAI,GAAG,CAAC,IAAI,UAAU,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,WAAW,GAAG,CAAC,IAAI,iBAAiB,EACpF;oBACE,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,GAAG,EAAE,4BAA4B,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,GAAG;iBAC1D,CACF,CACF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,SAAS;QACjC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9E,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,IAAA,0BAAc,EAAC,GAAG,CAAC,CAAC;gBAC9B,IAAI,CAAC,CAAC;oBAAE,SAAS;gBACjB,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;wBACrB,QAAQ,CAAC,IAAI,CACX,IAAA,mBAAK,EACH,wBAAwB,EACxB,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,eAAe,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,mCAAmC,EAC/F;4BACE,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,EAAE;4BAC1B,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,OAAO,0BAAc,4BAA4B,GAAG,GAAG;yBAC1E,CACF,CACF,CAAC;oBACJ,CAAC;oBACD,SAAS;gBACX,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAChC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,QAAQ,CAAC,IAAI,CACX,IAAA,mBAAK,EACH,+BAA+B,EAC/B,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,eAAe,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,IAAI,iBAAiB,EAC/E;wBACE,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,EAAE;wBAC1B,GAAG,EAAE,uBAAuB,GAAG,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,GAAG;qBAClE,CACF,CACF,CAAC;gBACJ,CAAC;qBAAM,IAAI,CAAC,qBAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACvC,QAAQ,CAAC,IAAI,CACX,IAAA,mBAAK,EACH,8BAA8B,EAC9B,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,eAAe,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,cAAc,MAAM,kBAAkB,EACnF;wBACE,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,EAAE;wBAC1B,GAAG,EAAE,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,sCAAsC,CAAC,CAAC,EAAE,UAAU;qBACtF,CACF,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;IAC7D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AACjC,CAAC;AAED,SAAgB,WAAW,CAAC,GAAW,EAAE,MAAmB;IAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAe,CAAC,CAAC;IAC7C,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,MAAM,KAAK,GAA4B,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK;QAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;IACnD,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAClG,CAAC;AAED,+EAA+E;AAE/E,uEAAuE;AACvE,SAAgB,aAAa,CAC3B,EAAmB,EACnB,IAAY,EACZ,KAAa,EACb,KAAa;IAEb,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;IAC9D,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,IAAA,mBAAK,EACV,0BAA0B,EAC1B,cAAc,KAAK,cAAc,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,EAC3F;YACE,MAAM,EAAE,IAAI;YACZ,GAAG,EAAE,2BAA2B,KAAK,OAAO,IAAI,cAAc;SAC/D,CACF,CAAC;IACJ,CAAC;IACD,mEAAmE;IACnE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACpE,MAAM,QAAQ,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC;SAC5C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;SACnC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,IAAI,GACR,qCAAqC,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,KAAK,QAAQ,KAAK,IAAI;YAC7E,2CAA2C,uBAAW,IAAI,KAAK,4CAA4C,CAAC;QAC9G,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,aAAa;IAC3B,OAAO,IAAA,qBAAO,EAAC,sBAAsB,EAAE,6CAA6C,EAAE;QACpF,GAAG,EAAE,qEAAqE;KAC3E,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../scripts/lib/workspace.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rsaglobaltech/specgate",
3
- "version": "1.0.0-rc.1",
3
+ "version": "1.0.0-rc.3",
4
4
  "description": "Specs as executable contracts — requirements, scenarios and traceability that CI enforces.",
5
5
  "license": "MIT",
6
6
  "type": "commonjs",