@isaacriehm/cairn 0.5.0 → 0.7.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.
package/dist/cli/fix.js CHANGED
@@ -30,11 +30,11 @@
30
30
  * phase boundaries.
31
31
  */
32
32
  import { execFileSync } from "node:child_process";
33
- import { existsSync, readFileSync, readdirSync, rmSync, writeFileSync, } from "node:fs";
33
+ import { existsSync, mkdirSync, readFileSync, readdirSync, rmSync, writeFileSync, } from "node:fs";
34
34
  import { dirname, join, resolve } from "node:path";
35
35
  import { fileURLToPath } from "node:url";
36
36
  import { parse as parseYaml } from "yaml";
37
- import { applyBrandAnswers, deriveBrandFromProject, derivedToBrandAnswers, parseDraftMeta, readMapperOutputFile, runDecSourceStrip, runFixAlign, } from "@isaacriehm/cairn-core";
37
+ import { applyBrandAnswers, deriveBrandFromProject, derivedToBrandAnswers, gitDirtyPathsInScope, parseDraftMeta, readMapperOutputFile, runDecSourceStrip, runFixAlign, validateFixAlignSentinel, writeFixAlignSentinel, } from "@isaacriehm/cairn-core";
38
38
  import { fixCli as doctorFixCli } from "./doctor.js";
39
39
  function parseRepoFlag(argv) {
40
40
  const idx = argv.indexOf("--repo");
@@ -240,7 +240,6 @@ async function fixClaudeRules(repoRoot, dryRun) {
240
240
  // mkdir -p .claude/rules/
241
241
  const targetDir = dirname(targetAbs);
242
242
  if (!existsSync(targetDir)) {
243
- const { mkdirSync } = await import("node:fs");
244
243
  mkdirSync(targetDir, { recursive: true });
245
244
  }
246
245
  writeFileSync(targetAbs, templateContent, "utf8");
@@ -390,6 +389,7 @@ const RETROACTIVE_SUBCOMMANDS = new Set([
390
389
  function parseAlignFlags(argv) {
391
390
  const flags = {
392
391
  dryRun: false,
392
+ force: false,
393
393
  maxCost: null,
394
394
  include: [],
395
395
  exclude: [],
@@ -400,6 +400,9 @@ function parseAlignFlags(argv) {
400
400
  if (a === "--dry-run") {
401
401
  flags.dryRun = true;
402
402
  }
403
+ else if (a === "--force") {
404
+ flags.force = true;
405
+ }
403
406
  else if (a === "--no-creation") {
404
407
  flags.skipCreation = true;
405
408
  }
@@ -490,7 +493,33 @@ function renderApply(result) {
490
493
  }
491
494
  async function fixAlign(repoRoot, argv) {
492
495
  const flags = parseAlignFlags(argv);
493
- process.stdout.write(` ⬡ cairn fix align${flags.dryRun ? " --dry-run" : ""} — ${repoRoot}\n\n` +
496
+ const sentinelArgs = {
497
+ include: flags.include,
498
+ exclude: flags.exclude,
499
+ skipCreation: flags.skipCreation,
500
+ maxCost: flags.maxCost,
501
+ };
502
+ // Apply-phase gates (skipped on --dry-run and on --force).
503
+ if (!flags.dryRun && !flags.force) {
504
+ const sentinel = validateFixAlignSentinel(repoRoot, sentinelArgs);
505
+ if (!sentinel.ok) {
506
+ process.stdout.write(` ⬡ cairn fix align — ${repoRoot}\n\n` +
507
+ ` ✗ aborted — ${sentinel.detail}.\n` +
508
+ ` Re-run \`cairn fix align --dry-run\` with the same flags first, or pass --force.\n`);
509
+ process.exit(2);
510
+ }
511
+ const dirty = gitDirtyPathsInScope(repoRoot, flags.include);
512
+ if (dirty.length > 0) {
513
+ const preview = dirty.slice(0, 5).map((d) => ` ${d.status} ${d.path}`).join("\n");
514
+ const overflow = dirty.length > 5 ? `\n … and ${dirty.length - 5} more` : "";
515
+ process.stdout.write(` ⬡ cairn fix align — ${repoRoot}\n\n` +
516
+ ` ✗ aborted — working tree dirty within sweep scope (${dirty.length} path${dirty.length === 1 ? "" : "s"}):\n` +
517
+ `${preview}${overflow}\n` +
518
+ ` Commit / stash these changes first, or pass --force to override.\n`);
519
+ process.exit(2);
520
+ }
521
+ }
522
+ process.stdout.write(` ⬡ cairn fix align${flags.dryRun ? " --dry-run" : ""}${flags.force ? " --force" : ""} — ${repoRoot}\n\n` +
494
523
  ` pre-flight…\n`);
495
524
  const args = { repoRoot };
496
525
  if (flags.dryRun)
@@ -512,7 +541,11 @@ async function fixAlign(repoRoot, argv) {
512
541
  process.exit(2);
513
542
  }
514
543
  if (flags.dryRun) {
515
- process.stdout.write(`\n Dry-run complete. Re-run without --dry-run to apply.\n`);
544
+ // Stamp the sentinel so the next non-dry-run invocation with the
545
+ // same flags can pass the validation gate.
546
+ writeFixAlignSentinel(repoRoot, sentinelArgs);
547
+ process.stdout.write(`\n Dry-run complete. Re-run without --dry-run within 30 minutes to apply ` +
548
+ `(sentinel written to .cairn/state/fix-align-dryrun.json).\n`);
516
549
  process.exit(0);
517
550
  }
518
551
  process.stdout.write(`\n apply…\n${renderApply(result)}\n`);
@@ -527,12 +560,23 @@ export async function fixCli(argv) {
527
560
  " align Layer D — full-repo Haiku-judge sweep over every\n" +
528
561
  " prose block × every DEC. Use --dry-run for the\n" +
529
562
  " pre-flight cost estimate; re-run without --dry-run\n" +
530
- " to apply. Flags:\n" +
563
+ " within 30 min to apply. Flags:\n" +
531
564
  " --max-cost <tokens> abort if estimate exceeds\n" +
532
565
  " budget (default 500k).\n" +
533
566
  " --include <glob> repeatable — scope the sweep.\n" +
534
567
  " --exclude <glob> repeatable — atop defaults.\n" +
535
568
  " --no-creation skip Tier 3; consolidate only.\n" +
569
+ " --force bypass the dry-run sentinel +\n" +
570
+ " dirty-tree guard (CI / scripted\n" +
571
+ " contexts only).\n" +
572
+ " Apply gates:\n" +
573
+ " • dry-run sentinel — `--dry-run` writes\n" +
574
+ " .cairn/state/fix-align-dryrun.json with HEAD SHA +\n" +
575
+ " flag hash. Apply requires a fresh (≤30 min) sentinel\n" +
576
+ " matching current HEAD + flags.\n" +
577
+ " • dirty-tree guard — apply aborts if `git status`\n" +
578
+ " reports modified / staged paths inside the include\n" +
579
+ " globs (or anywhere when no --include passed).\n" +
536
580
  " Subcommands (retroactive — for projects adopted on older versions):\n" +
537
581
  " brand re-run the Haiku brand-derive call against the\n" +
538
582
  " mapper output already on disk; rewrite the 4 brand\n" +
@@ -1 +1 @@
1
- {"version":3,"file":"fix.js","sourceRoot":"","sources":["../../src/cli/fix.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,UAAU,EACV,YAAY,EACZ,WAAW,EACX,MAAM,EACN,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,GAIZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AAErD,SAAS,aAAa,CAAC,IAAc;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,GAAG,KAAK,CAAC,CAAC;QAAE,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IAChC,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1D,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,aAAa,CAAC,QAAgB;IACrC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,CAAC,wCAAwC,QAAQ,EAAE,CAAC,CAAC;QAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC1C,OAAO,CAAC,KAAK,CACX,cAAc,QAAQ,+DAA+D,CACtF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IACxD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,cAAc,CAAC;IAChD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAE9C,CAAC;QACT,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,cAAc,CAAC;QACzE,MAAM,IAAI,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;QACpC,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC;IAC7E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,cAAc,CAAC;IACxB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,QAAgB,EAAE,MAAe;IACvD,MAAM,MAAM,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAC9C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CACX,uEAAuE;YACrE,yEAAyE,CAC5E,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC;IACnD,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC9C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,yBAAyB,QAAQ,IAAI;QACnC,qBAAqB,WAAW,IAAI;QACpC,uBAAuB,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI;QAC5F,sEAAsE,CACzE,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC;QAC3C,QAAQ;QACR,WAAW;QACX,aAAa;KACd,CAAC,CAAC;IACH,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,CAAC,KAAK,CACX,wDAAwD;YACtD,qDAAqD,CACxD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,OAAO,GAAiB,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC7D,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QACnE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;QAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACpD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,MAAM,CAAC,OAAO,CAAC,MAAM,aAAa,CAAC,CAAC;IACtE,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QACtC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,QAAgB,EAAE,MAAe;IAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACrE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,KAAK,CACX,4CAA4C,YAAY,6BAA6B,CACtF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CACX,mDAAmD,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACtG,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CACpE,CAAC;IACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,0BAA0B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,QAAQ,IAAI;QACpE,gBAAgB,QAAQ,CAAC,MAAM,qDAAqD,CACvF,CAAC;IAEF,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,MAAM,WAAW,GAAqC,EAAE,CAAC;IAEzD,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,CAAC;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACrC,IAAI,IAAY,CAAC;QACjB,IAAI,CAAC;YACH,IAAI,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QAClC,IACE,IAAI,KAAK,IAAI;YACb,IAAI,CAAC,aAAa,KAAK,sBAAsB;YAC7C,IAAI,CAAC,OAAO,KAAK,IAAI,EACrB,CAAC;YACD,SAAS;QACX,CAAC;QACD,UAAU,IAAI,CAAC,CAAC;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,iBAAiB,KAAK,wBAAwB,IAAI,CAAC,OAAO,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,CAC5F,CAAC;YACF,SAAS;QACX,CAAC;QACD,MAAM,OAAO,GAAG,iBAAiB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC;QACjC,IAAI,OAAO,CAAC,MAAM,KAAK,kBAAkB,EAAE,CAAC;YAC1C,eAAe,IAAI,CAAC,CAAC;YACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,+BAA+B,CAAC,CAAC;YACpE,SAAS;QACX,CAAC;QACD,IAAI,OAAO,CAAC,aAAa,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,CAAC;YACb,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC,CAAC;YACrE,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,SAAS,KAAK,eAAe,OAAO,CAAC,MAAM,IAAI,SAAS,KAAK,CAC9D,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,SAAS,KAAK,eAAe,OAAO,CAAC,aAAa,gBAAgB,OAAO,CAAC,cAAc,YAAY,CACrG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,eAAe,OAAO,gBAAgB,UAAU,eAAe,SAAS,aAAa,OAAO,sBAAsB,eAAe,aAAa,OAAO,IAAI,CAC1J,CAAC;IACF,IAAI,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;QACzC,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACxD,CAAC;QACD,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC;YACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,uBAAuB;YACrB,oGAAoG;YACpG,2FAA2F;YAC3F,mGAAmG;YACnG,8FAA8F;YAC9F,iEAAiE,CACpE,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,QAAgB,EAAE,MAAe;IAC7D,MAAM,SAAS,GAAG,wBAAwB,CAAC;IAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC5C,gEAAgE;IAChE,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG;QACjB,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC;QACvF,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC;QAC7F,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC;QACnE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC;KAC9D,CAAC;IACF,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CACX,4FAA4F,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACrH,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,eAAe,GAAG,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,6BAA6B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,QAAQ,IAAI;QACvE,iBAAiB,YAAY,mBAAmB,SAAS,MAAM,CAClE,CAAC;IACF,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;YAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAClE,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,SAAS,IAAI,CAAC,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;QAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,SAAS,sCAAsC,CAAC,CAAC;QAC7E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,SAAS,IAAI,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,0BAA0B;IAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9C,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC;IACD,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;IAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,OAAO,SAAS,YAAY;QAC1B,+DAA+D;QAC/D,qDAAqD;QACrD,eAAe,SAAS,IAAI;QAC5B,sFAAsF,CACzF,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,QAAgB,EAAE,MAAe;IAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,+BAA+B,QAAQ,IAAI;YACzC,mBAAmB,QAAQ,uBAAuB,CACrD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CACX,iDAAiD,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACpG,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,4BAA4B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,QAAQ,IAAI;QACtE,aAAa,UAAU,CAAC,MAAM,yBAAyB,QAAQ,MAAM,CACxE,CAAC;IACF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,UAAU,CAAC,MAAM,gBAAgB,CAAC,CAAC;QACpF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9C,OAAO,IAAI,CAAC,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB;QACnB,CAAC;IACH,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,gBAAgB,OAAO,mDAAmD;QACxE,2EAA2E;QAC3E,0EAA0E;QAC1E,2EAA2E;QAC3E,yEAAyE,CAC5E,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,QAAgB,EAAE,MAAe;IAC3D,MAAM,kBAAkB,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAClE,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,KAAK,CACX,gCAAgC,kBAAkB,0BAA0B,CAC7E,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,kEAAkE;IAClE,qEAAqE;IACrE,kEAAkE;IAClE,kEAAkE;IAClE,6DAA6D;IAC7D,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG;QACjB,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,CAAC;QAC/E,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,CAAC;QACrF,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,CAAC;QAC3D,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,CAAC;KACtD,CAAC;IACF,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CACX,oFAAoF,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC7G,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,eAAe,GAAG,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC3D,MAAM,cAAc,GAAG,YAAY,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAChE,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,0BAA0B,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,QAAQ,IAAI;QACpE,iBAAiB,YAAY,MAAM,CACtC,CAAC;IAEF,IAAI,eAAe,KAAK,cAAc,EAAE,CAAC;QACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sEAAsE,CAAC,CAAC;QAC7F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,sEAAsE;IACtE,qEAAqE;IACrE,qEAAqE;IACrE,wCAAwC;IACxC,MAAM,WAAW,GAAG,CAAC,IAAY,EAAe,EAAE,CAChD,IAAI,GAAG,CACL,IAAI;SACD,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CACrD,CAAC;IACJ,MAAM,MAAM,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,WAAW,CAAC,eAAe,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,YAAY,CAAC,MAAM,MAAM,CAAC,CAAC;IAC5E,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;QAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,+DAA+D,CAChE,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,+FAA+F,CAChG,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,aAAa,CAAC,kBAAkB,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;IAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;IAE1E,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,sEAAsE;IACtE,iEAAiE;IACjE,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,2DAA2D,OAAO,CAAC,MAAM,aAAa,CACvF,CAAC;IACF,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CACtB,KAAK,EACL,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,EAC9D,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CACpC,CAAC;QACF,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CACX,gDAAgD,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACnG,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,2EAA2E;QACzE,kBAAkB;QAClB,iCAAiC;QACjC,kFAAkF,CACrF,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC;IACtC,OAAO;IACP,OAAO;IACP,WAAW;IACX,WAAW;IACX,aAAa;IACb,cAAc;IACd,YAAY;IACZ,aAAa;CACd,CAAC,CAAC;AAEH,SAAS,eAAe,CAAC,IAAc;IAOrC,MAAM,KAAK,GAAG;QACZ,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,IAAqB;QAC9B,OAAO,EAAE,EAAc;QACvB,OAAO,EAAE,EAAc;QACvB,YAAY,EAAE,KAAK;KACpB,CAAC;IACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;YACtB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QACtB,CAAC;aAAM,IAAI,CAAC,KAAK,eAAe,EAAE,CAAC;YACjC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;QAC5B,CAAC;aAAM,IAAI,CAAC,KAAK,YAAY,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBACpB,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjC,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;gBAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC;YAClB,CAAC,IAAI,CAAC,CAAC;QACT,CAAC;aAAM,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBACpB,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,CAAC,IAAI,CAAC,CAAC;QACT,CAAC;aAAM,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBACpB,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,CAAC,IAAI,CAAC,CAAC;QACT,CAAC;aAAM,IAAI,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC1B,yDAAyD;YACzD,CAAC,IAAI,CAAC,CAAC;QACT,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,GAAG,CAAC,CAAC;YACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,CAAS;IAC7B,IAAI,CAAC,IAAI,SAAS;QAAE,OAAO,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC5D,IAAI,CAAC,IAAI,KAAK;QAAE,OAAO,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACpD,OAAO,GAAG,CAAC,EAAE,CAAC;AAChB,CAAC;AAED,SAAS,eAAe,CAAC,MAAsB;IAC7C,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;IAC3B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAClE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACtE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACjE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,yBAAyB,EAAE,CAAC,CAAC;IAC/E,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAC7E,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACzE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACzE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,sBAAsB,EAAE,CAAC,CAAC;IAC5E,KAAK,CAAC,IAAI,CAAC,sCAAsC,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IACpF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,WAAW,CAAC,MAAsB;IACzC,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI;QAAE,OAAO,+BAA+B,CAAC;IAClE,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IACvB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAClE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAClE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAClE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACjE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACjE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAClE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAClE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACjE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7D,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACzE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7D,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;IACrE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;IACrE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;IAChE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,QAAgB,EAAE,IAAc;IACtD,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,sBAAsB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,QAAQ,MAAM;QACxE,iBAAiB,CACpB,CAAC;IACF,MAAM,IAAI,GAAiB,EAAE,QAAQ,EAAE,CAAC;IACxC,IAAI,KAAK,CAAC,MAAM;QAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI;QAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IACzD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC3D,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC3D,IAAI,KAAK,CAAC,YAAY;QAAE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAEjD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;IACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAErD,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,qCAAqC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG;YACpF,wBAAwB,YAAY,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM;YACnE,yEAAyE,CAC5E,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,4DAA4D,CAC7D,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,IAAc;IACzC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,+DAA+D;YAC7D,oEAAoE;YACpE,wCAAwC;YACxC,kBAAkB;YAClB,wEAAwE;YACxE,sEAAsE;YACtE,0EAA0E;YAC1E,wCAAwC;YACxC,0EAA0E;YAC1E,uEAAuE;YACvE,8EAA8E;YAC9E,4EAA4E;YAC5E,+EAA+E;YAC/E,yEAAyE;YACzE,sEAAsE;YACtE,0EAA0E;YAC1E,2EAA2E;YAC3E,2EAA2E;YAC3E,wEAAwE;YACxE,2EAA2E;YAC3E,2EAA2E;YAC3E,wDAAwD;YACxD,2EAA2E;YAC3E,sEAAsE;YACtE,8EAA8E;YAC9E,+EAA+E;YAC/E,8EAA8E;YAC9E,6EAA6E;YAC7E,4EAA4E;YAC5E,6EAA6E;YAC7E,8EAA8E;YAC9E,qEAAqE;YACrE,4EAA4E;YAC5E,gEAAgE;YAChE,gFAAgF;YAChF,yEAAyE;YACzE,oEAAoE;YACpE,sEAAsE;YACtE,wEAAwE;YACxE,sDAAsD,CACzD,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,GAAG,KAAK,SAAS,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3D,gEAAgE;QAChE,kEAAkE;QAClE,gCAAgC;QAChC,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QACzB,OAAO;IACT,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACrC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACxB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC1C,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC/B,OAAO;QACT,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACjC,OAAO;QACT,KAAK,WAAW;YACd,MAAM,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACpC,OAAO;QACT,KAAK,WAAW;YACd,MAAM,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACrC,OAAO;QACT,KAAK,aAAa;YAChB,MAAM,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACtC,OAAO;QACT,KAAK,cAAc;YACjB,MAAM,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACvC,OAAO;QACT,KAAK,YAAY;YACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,yEAAyE;gBACvE,iEAAiE;gBACjE,iEAAiE;gBACjE,+CAA+C,CAClD,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChB,OAAO;QACT,KAAK,aAAa;YAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,+CAA+C;gBAC7C,2DAA2D;gBAC3D,mEAAmE;gBACnE,kCAAkC,CACrC,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChB,OAAO;IACX,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"fix.js","sourceRoot":"","sources":["../../src/cli/fix.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -12,6 +12,7 @@ import { joinCli } from "./join.js";
12
12
  import { mcpCli } from "./mcp.js";
13
13
  import { scopeCli } from "./scope.js";
14
14
  import { sensorRunCli } from "./sensor-run.js";
15
+ import { tagCli } from "./tag.js";
15
16
  import { traceCli } from "./trace.js";
16
17
  function decodePayload(text) {
17
18
  if (text.length === 0)
@@ -95,6 +96,9 @@ switch (subcommand) {
95
96
  case "sensor-run":
96
97
  await sensorRunCli(rest);
97
98
  break;
99
+ case "tag":
100
+ await tagCli(rest);
101
+ break;
98
102
  case "trace":
99
103
  await traceCli(rest);
100
104
  break;
@@ -158,6 +162,10 @@ switch (subcommand) {
158
162
  " hook Claude Code hook runner (stdin = hook payload JSON)\n" +
159
163
  " (subcommands: session-start | read-enrich | write-guard)\n" +
160
164
  " sensor-run git-hook sensor sweep (--staged | --commit-msg <path>)\n" +
165
+ " tag operator-driven retro-tagging — insert <!-- cairn:decision -->\n" +
166
+ " markers after lines matching a regex pattern\n" +
167
+ " (--insert-marker <pattern> <file-or-dir>\n" +
168
+ " [--force] [--force-pattern] [--repo <path>])\n" +
161
169
  " trace pretty-print the unified live-session trace log\n" +
162
170
  " (--tail | --session <id> | --repo <path> | --source <name> |\n" +
163
171
  " --kind <substr> | --errors-only | --wide | --json)\n" +
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * `cairn tag --insert-marker <pattern> <file-or-dir>` — operator-driven
3
+ * retro-tagging for existing decision docs.
4
+ *
5
+ * Inserts `<!-- cairn:decision -->` after each line matching `<pattern>` so
6
+ * the phase-6 walker's marker-override path picks them up on the next
7
+ * `cairn init` (Stage-3 deterministic, 0 Haiku — see PHASE_6_REDESIGN §4.1).
8
+ *
9
+ * Safety model (PHASE_6_REDESIGN §4.8):
10
+ *
11
+ * 1. Git-aware. Pre-flight runs `git status --porcelain <file>` for
12
+ * every target. If any are dirty AND `--force` is not passed, abort
13
+ * with the dirty-file list. Operator commits/stashes first or
14
+ * passes `--force`.
15
+ *
16
+ * 2. Impact circuit breaker. Counts pattern matches per file. If
17
+ * matches > 30% of total lines AND `--force-pattern` is not passed,
18
+ * that file is skipped with a WARN line; other files still process.
19
+ *
20
+ * 3. Idempotent. Scans 3 lines ahead (not 1) for an existing
21
+ * `<!-- cairn:decision -->` marker before inserting — handles the
22
+ * blank-line-between-heading-and-body case.
23
+ *
24
+ * Deterministic, 0 Haiku.
25
+ */
26
+ export interface CmdTagResult {
27
+ exitCode: 0 | 1;
28
+ filesProcessed: number;
29
+ filesSkippedHighImpact: number;
30
+ totalInserted: number;
31
+ }
32
+ /**
33
+ * Pure-ish entrypoint for the smoke harness — does NOT call process.exit.
34
+ * The CLI wrapper below maps the result to stdout / stderr / exit code.
35
+ */
36
+ export declare function runTag(args: {
37
+ insertMarker: string;
38
+ targets: string[];
39
+ repoRoot: string;
40
+ force: boolean;
41
+ forcePattern: boolean;
42
+ stdout?: (s: string) => void;
43
+ stderr?: (s: string) => void;
44
+ }): CmdTagResult;
45
+ export declare function tagCli(argv: string[]): Promise<void>;
46
+ export declare const _internal: {
47
+ IMPACT_RATIO_LIMIT: number;
48
+ MARKER_LOOKAHEAD_LINES: number;
49
+ MARKER_TEXT: string;
50
+ };
@@ -0,0 +1,238 @@
1
+ /**
2
+ * `cairn tag --insert-marker <pattern> <file-or-dir>` — operator-driven
3
+ * retro-tagging for existing decision docs.
4
+ *
5
+ * Inserts `<!-- cairn:decision -->` after each line matching `<pattern>` so
6
+ * the phase-6 walker's marker-override path picks them up on the next
7
+ * `cairn init` (Stage-3 deterministic, 0 Haiku — see PHASE_6_REDESIGN §4.1).
8
+ *
9
+ * Safety model (PHASE_6_REDESIGN §4.8):
10
+ *
11
+ * 1. Git-aware. Pre-flight runs `git status --porcelain <file>` for
12
+ * every target. If any are dirty AND `--force` is not passed, abort
13
+ * with the dirty-file list. Operator commits/stashes first or
14
+ * passes `--force`.
15
+ *
16
+ * 2. Impact circuit breaker. Counts pattern matches per file. If
17
+ * matches > 30% of total lines AND `--force-pattern` is not passed,
18
+ * that file is skipped with a WARN line; other files still process.
19
+ *
20
+ * 3. Idempotent. Scans 3 lines ahead (not 1) for an existing
21
+ * `<!-- cairn:decision -->` marker before inserting — handles the
22
+ * blank-line-between-heading-and-body case.
23
+ *
24
+ * Deterministic, 0 Haiku.
25
+ */
26
+ import { execFileSync } from "node:child_process";
27
+ import { existsSync, readFileSync, readdirSync, statSync, writeFileSync } from "node:fs";
28
+ import { extname, join, relative, resolve } from "node:path";
29
+ const IMPACT_RATIO_LIMIT = 0.30;
30
+ const MARKER_LOOKAHEAD_LINES = 3;
31
+ const MARKER_TEXT = "<!-- cairn:decision -->";
32
+ const MARKDOWN_EXTENSIONS = new Set([".md", ".mdx", ".markdown"]);
33
+ function usage() {
34
+ process.stderr.write("Usage: cairn tag --insert-marker <pattern> <file-or-dir> [--force] [--force-pattern]\n" +
35
+ " [--repo <path>]\n" +
36
+ "\n" +
37
+ " --insert-marker regex pattern (per-line); marker inserted after each match\n" +
38
+ " <file-or-dir> target file or directory (markdown only)\n" +
39
+ " --force allow run even if targets have uncommitted changes\n" +
40
+ " --force-pattern allow files where pattern matches >30% of lines\n" +
41
+ " --repo repo root for git status (default: cwd)\n");
42
+ process.exit(2);
43
+ }
44
+ function parseArgs(argv) {
45
+ let insertMarker;
46
+ let target;
47
+ let repoRoot = process.cwd();
48
+ let force = false;
49
+ let forcePattern = false;
50
+ for (let i = 0; i < argv.length; i += 1) {
51
+ const arg = argv[i];
52
+ if (arg === "--insert-marker") {
53
+ const v = argv[i + 1];
54
+ if (v === undefined) {
55
+ process.stderr.write("--insert-marker requires a pattern argument\n");
56
+ process.exit(2);
57
+ }
58
+ insertMarker = v;
59
+ i += 1;
60
+ }
61
+ else if (arg === "--repo") {
62
+ const v = argv[i + 1];
63
+ if (v === undefined) {
64
+ process.stderr.write("--repo requires a path argument\n");
65
+ process.exit(2);
66
+ }
67
+ repoRoot = resolve(v);
68
+ i += 1;
69
+ }
70
+ else if (arg === "--force") {
71
+ force = true;
72
+ }
73
+ else if (arg === "--force-pattern") {
74
+ forcePattern = true;
75
+ }
76
+ else if (arg === "-h" || arg === "--help") {
77
+ usage();
78
+ }
79
+ else if (arg !== undefined && !arg.startsWith("--")) {
80
+ if (target === undefined)
81
+ target = arg;
82
+ else {
83
+ process.stderr.write(`unexpected positional argument: ${arg}\n`);
84
+ process.exit(2);
85
+ }
86
+ }
87
+ else {
88
+ process.stderr.write(`unknown flag: ${String(arg)}\n`);
89
+ process.exit(2);
90
+ }
91
+ }
92
+ if (insertMarker === undefined || target === undefined)
93
+ usage();
94
+ return { insertMarker, target, force, forcePattern, repoRoot };
95
+ }
96
+ function resolveTargets(target, repoRoot) {
97
+ const abs = resolve(repoRoot, target);
98
+ if (!existsSync(abs)) {
99
+ process.stderr.write(`target does not exist: ${target}\n`);
100
+ process.exit(2);
101
+ }
102
+ const stat = statSync(abs);
103
+ if (stat.isFile())
104
+ return [abs];
105
+ if (!stat.isDirectory()) {
106
+ process.stderr.write(`target is not a file or directory: ${target}\n`);
107
+ process.exit(2);
108
+ }
109
+ const out = [];
110
+ walk(abs, out);
111
+ return out;
112
+ }
113
+ function walk(dir, out) {
114
+ for (const entry of readdirSync(dir, { withFileTypes: true })) {
115
+ if (entry.name === ".git" || entry.name === "node_modules" || entry.name === ".cairn") {
116
+ continue;
117
+ }
118
+ const p = join(dir, entry.name);
119
+ if (entry.isDirectory())
120
+ walk(p, out);
121
+ else if (entry.isFile() && MARKDOWN_EXTENSIONS.has(extname(entry.name).toLowerCase())) {
122
+ out.push(p);
123
+ }
124
+ }
125
+ }
126
+ function isDirty(filePath, repoRoot) {
127
+ try {
128
+ const rel = relative(repoRoot, filePath);
129
+ const out = execFileSync("git", ["status", "--porcelain", "--", rel], {
130
+ cwd: repoRoot,
131
+ encoding: "utf8",
132
+ });
133
+ return out.trim().length > 0;
134
+ }
135
+ catch {
136
+ return false;
137
+ }
138
+ }
139
+ /**
140
+ * Pure-ish entrypoint for the smoke harness — does NOT call process.exit.
141
+ * The CLI wrapper below maps the result to stdout / stderr / exit code.
142
+ */
143
+ export function runTag(args) {
144
+ const stdout = args.stdout ?? ((s) => void process.stdout.write(s));
145
+ const stderr = args.stderr ?? ((s) => void process.stderr.write(s));
146
+ const dirtyFiles = args.targets.filter((p) => isDirty(p, args.repoRoot));
147
+ if (dirtyFiles.length > 0 && !args.force) {
148
+ stderr(`Error: ${dirtyFiles.length} file${dirtyFiles.length === 1 ? "" : "s"} have uncommitted changes:\n`);
149
+ for (const p of dirtyFiles.slice(0, 5)) {
150
+ stderr(` - ${relative(args.repoRoot, p)}\n`);
151
+ }
152
+ if (dirtyFiles.length > 5)
153
+ stderr(` - …and ${dirtyFiles.length - 5} more\n`);
154
+ stderr(`Commit/stash first or pass --force.\n`);
155
+ return {
156
+ exitCode: 1,
157
+ filesProcessed: 0,
158
+ filesSkippedHighImpact: 0,
159
+ totalInserted: 0,
160
+ };
161
+ }
162
+ const pattern = new RegExp(args.insertMarker);
163
+ let totalInserted = 0;
164
+ let filesProcessed = 0;
165
+ let filesSkippedHighImpact = 0;
166
+ for (const file of args.targets) {
167
+ let content;
168
+ try {
169
+ content = readFileSync(file, "utf8");
170
+ }
171
+ catch (err) {
172
+ stderr(`WARN: could not read ${relative(args.repoRoot, file)}: ${err.message}\n`);
173
+ continue;
174
+ }
175
+ const lines = content.split("\n");
176
+ const matchCount = lines.reduce((n, l) => (pattern.test(l) ? n + 1 : n), 0);
177
+ if (matchCount === 0) {
178
+ filesProcessed += 1;
179
+ continue;
180
+ }
181
+ const ratio = matchCount / Math.max(1, lines.length);
182
+ if (ratio > IMPACT_RATIO_LIMIT && !args.forcePattern) {
183
+ stderr(`WARN: pattern matched ${(ratio * 100).toFixed(0)}% of lines in ${relative(args.repoRoot, file)}. Skipping. Use --force-pattern to override.\n`);
184
+ filesSkippedHighImpact += 1;
185
+ continue;
186
+ }
187
+ const out = [];
188
+ let insertedHere = 0;
189
+ for (let i = 0; i < lines.length; i += 1) {
190
+ const line = lines[i] ?? "";
191
+ out.push(line);
192
+ if (pattern.test(line)) {
193
+ const window = lines.slice(i + 1, i + 1 + MARKER_LOOKAHEAD_LINES).join("\n");
194
+ if (!window.includes(MARKER_TEXT)) {
195
+ out.push(MARKER_TEXT);
196
+ insertedHere += 1;
197
+ }
198
+ }
199
+ }
200
+ if (insertedHere > 0) {
201
+ writeFileSync(file, out.join("\n"), "utf8");
202
+ totalInserted += insertedHere;
203
+ }
204
+ filesProcessed += 1;
205
+ }
206
+ stdout(`Inserted ${totalInserted} marker${totalInserted === 1 ? "" : "s"} across ${filesProcessed} file${filesProcessed === 1 ? "" : "s"}.\n`);
207
+ if (filesSkippedHighImpact > 0) {
208
+ stdout(`Skipped ${filesSkippedHighImpact} file${filesSkippedHighImpact === 1 ? "" : "s"} (impact circuit breaker).\n`);
209
+ }
210
+ return {
211
+ exitCode: 0,
212
+ filesProcessed,
213
+ filesSkippedHighImpact,
214
+ totalInserted,
215
+ };
216
+ }
217
+ export async function tagCli(argv) {
218
+ const parsed = parseArgs(argv);
219
+ const targets = resolveTargets(parsed.target, parsed.repoRoot);
220
+ if (targets.length === 0) {
221
+ process.stderr.write(`No markdown targets resolved under: ${parsed.target}\n`);
222
+ process.exit(2);
223
+ }
224
+ const result = runTag({
225
+ insertMarker: parsed.insertMarker,
226
+ targets,
227
+ repoRoot: parsed.repoRoot,
228
+ force: parsed.force,
229
+ forcePattern: parsed.forcePattern,
230
+ });
231
+ process.exit(result.exitCode);
232
+ }
233
+ export const _internal = {
234
+ IMPACT_RATIO_LIMIT,
235
+ MARKER_LOOKAHEAD_LINES,
236
+ MARKER_TEXT,
237
+ };
238
+ //# sourceMappingURL=tag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../src/cli/tag.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@isaacriehm/cairn",
3
- "version": "0.5.0",
3
+ "version": "0.7.0",
4
4
  "description": "Cairn — state + context-loading layer for AI coding agents.",
5
5
  "author": "Isaac Riehm",
6
6
  "license": "MIT",
@@ -37,7 +37,7 @@
37
37
  "dependencies": {
38
38
  "simple-git": "^3.36.0",
39
39
  "yaml": "^2.8.4",
40
- "@isaacriehm/cairn-core": "0.5.0"
40
+ "@isaacriehm/cairn-core": "0.7.0"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@types/node": "^25.6.0",
@@ -80,12 +80,17 @@
80
80
  "smoke:id-content-addressed": "tsx scripts/smoke-id-content-addressed.ts",
81
81
  "smoke:attention-serve": "tsx scripts/smoke-attention-serve.ts",
82
82
  "smoke:topic-index": "tsx scripts/smoke-topic-index.ts",
83
+ "smoke:search-candidates": "tsx scripts/smoke-search-candidates.ts",
84
+ "smoke:propose-decision": "tsx scripts/smoke-propose-decision.ts",
85
+ "smoke:reject-candidate": "tsx scripts/smoke-reject-candidate.ts",
86
+ "smoke:tag-cli": "tsx scripts/smoke-tag-cli.ts",
87
+ "smoke:llm-prompt-eval": "tsx scripts/smoke-llm-prompt-eval.ts",
83
88
  "smoke:conflicts-queue": "tsx scripts/smoke-conflicts-queue.ts",
84
89
  "smoke:sot-align": "tsx scripts/smoke-sot-align.ts",
85
90
  "smoke:layer-b-precommit": "tsx scripts/smoke-layer-b-precommit.ts",
86
91
  "smoke:layer-c-sessionstart-drain": "tsx scripts/smoke-layer-c-sessionstart-drain.ts",
87
92
  "smoke:fix-align": "tsx scripts/smoke-fix-align.ts",
88
- "smoke:attention-undo": "tsx scripts/smoke-attention-undo.ts",
89
- "smoke:migrate-to-sot": "tsx scripts/smoke-migrate-to-sot.ts"
93
+ "smoke:fix-align-gates": "tsx scripts/smoke-fix-align-gates.ts",
94
+ "smoke:attention-undo": "tsx scripts/smoke-attention-undo.ts"
90
95
  }
91
96
  }