craftar 0.8.5 → 0.9.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalogue.js","sourceRoot":"","sources":["../../src/core/catalogue.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,13 @@
1
1
  import { deepMerge } from "./merge.js";
2
2
  import { outName } from "../emitters/shared.js";
3
3
  /**
4
- * Layer order (weak → strong): ingredient defaults (scoped to that ingredient, see `paramsFor`) →
5
- * base recipes → stack recipes → profile → workspace → local.
6
- * Recipes are expanded depth-first through `extends`, each recipe applied once.
4
+ * Depth-first `extends` walk: returns recipes in application order (parents before children).
5
+ * Throws on a cycle or an unknown recipe, with the same two messages `resolve()` produced.
6
+ * @param forge The Forge to look recipes up in.
7
+ * @param wanted The top-level recipes to walk (profile's + workspace's add, minus remove).
8
+ * @param origin A human-readable string for the "referenced by" part of the not-found error.
7
9
  */
8
- export function resolve(forge, ws) {
9
- const profile = forge.profiles.get(ws.profile);
10
- if (!profile)
11
- throw new Error(`profile "${ws.profile}" not found in Forge (${[...forge.profiles.keys()].join(", ") || "none"})`);
12
- const warnings = [];
13
- const wanted = [...profile.recipes, ...ws.recipes.add].filter((r) => !ws.recipes.remove.includes(r));
10
+ export function recipeOrder(forge, wanted, origin) {
14
11
  const order = [];
15
12
  const visiting = new Set();
16
13
  const visit = (name, chain) => {
@@ -20,7 +17,7 @@ export function resolve(forge, ws) {
20
17
  throw new Error(`recipe cycle: ${[...chain, name].join(" → ")}`);
21
18
  const r = forge.recipes.get(name);
22
19
  if (!r)
23
- throw new Error(`recipe "${name}" not found (referenced by ${chain.at(-1) ?? "profile " + profile.name})`);
20
+ throw new Error(`recipe "${name}" not found (referenced by ${chain.at(-1) ?? origin})`);
24
21
  visiting.add(name);
25
22
  for (const parent of r.extends)
26
23
  visit(parent, [...chain, name]);
@@ -29,6 +26,20 @@ export function resolve(forge, ws) {
29
26
  };
30
27
  for (const r of wanted)
31
28
  visit(r, []);
29
+ return order;
30
+ }
31
+ /**
32
+ * Layer order (weak → strong): ingredient defaults (scoped to that ingredient, see `paramsFor`) →
33
+ * base recipes → stack recipes → profile → workspace → local.
34
+ * Recipes are expanded depth-first through `extends`, each recipe applied once.
35
+ */
36
+ export function resolve(forge, ws) {
37
+ const profile = forge.profiles.get(ws.profile);
38
+ if (!profile)
39
+ throw new Error(`profile "${ws.profile}" not found in Forge (${[...forge.profiles.keys()].join(", ") || "none"})`);
40
+ const warnings = [];
41
+ const wanted = [...profile.recipes, ...ws.recipes.add].filter((r) => !ws.recipes.remove.includes(r));
42
+ const order = recipeOrder(forge, wanted, `profile ${profile.name}`);
32
43
  // Slot exclusivity
33
44
  const slots = new Map();
34
45
  for (const name of order) {
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/core/resolve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/core/resolve.ts"],"names":[],"mappings":"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"}
package/dist/core/sync.js CHANGED
@@ -35,20 +35,29 @@ export async function loadWorkspace(root) {
35
35
  return { root, config, forge: await loadForge(forgeRoot) };
36
36
  }
37
37
  /**
38
- * The Forge a `forge` command operates on (spec 04 §4.3). `--forge` names it directly;
39
- * otherwise the workspace's craftar.yaml does. Both at once is ambiguous, so it fails.
38
+ * The Forge and (optionally) the workspace a command operates on.
39
+ * `--forge` names the Forge directly, `workspace` is undefined.
40
+ * Otherwise the workspace's craftar.yaml gives both.
40
41
  */
41
- export async function resolveForge(opts) {
42
+ export async function resolveForgeSource(opts) {
42
43
  if (opts.forge !== undefined && opts.workspace !== undefined) {
43
44
  throw new Error("pass either --forge or --workspace, not both — two sources for one Forge");
44
45
  }
45
46
  if (opts.forge !== undefined)
46
- return loadForge(path.resolve(opts.forge));
47
+ return { forge: await loadForge(path.resolve(opts.forge)) };
47
48
  const root = path.resolve(opts.workspace ?? ".");
48
49
  if (!(await exists(path.join(root, WORKSPACE_FILE)))) {
49
50
  throw new Error(`no ${WORKSPACE_FILE} in ${root} — run this inside a workspace, pass --workspace <dir>, or point at the Forge with --forge <dir>`);
50
51
  }
51
- return (await loadWorkspace(root)).forge;
52
+ const workspace = await loadWorkspace(root);
53
+ return { forge: workspace.forge, workspace };
54
+ }
55
+ /**
56
+ * The Forge a `forge` command operates on (spec 04 §4.3). `--forge` names it directly;
57
+ * otherwise the workspace's craftar.yaml does. Both at once is ambiguous, so it fails.
58
+ */
59
+ export async function resolveForge(opts) {
60
+ return (await resolveForgeSource(opts)).forge;
52
61
  }
53
62
  /** A path as the Forge names it: relative to its root, POSIX separators. */
54
63
  function forgeRel(forge, abs) {
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/core/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAc,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,UAAU,EAA4C,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACjI,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAuB,MAAM,eAAe,CAAC;AACnJ,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAgE,MAAM,oBAAoB,CAAC;AACrI,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,MAAM,CAAC,MAAM,cAAc,GAAG,cAAc,CAAC;AAC7C,MAAM,CAAC,MAAM,UAAU,GAAG,oBAAoB,CAAC;AAC/C,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CAAC;AAExC,MAAM,QAAQ,GAA4B,EAAE,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;AAQrG,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY;IAC9C,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC7C,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,GAAG,cAAc,iBAAiB,IAAI,wCAAwC,IAAI,mFAAmF,CACtK,CAAC;IACJ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;IACzC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACrF,MAAM,MAAM,GAAG,qBAAqB,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IACvE,+FAA+F;IAC/F,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,WAAW,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,iBAAiB,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5I,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC;IAC3B,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5G,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,oFAAoF,CAAC,CAAC;IACrK,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;AAC7D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAA4C;IAC7E,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAC9F,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC;IACjD,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CACb,MAAM,cAAc,OAAO,IAAI,kGAAkG,CAClI,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AAC3C,CAAC;AAYD,4EAA4E;AAC5E,SAAS,QAAQ,CAAC,KAAY,EAAE,GAAW;IACzC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClE,CAAC;AAED,2GAA2G;AAC3G,SAAS,OAAO,CAAC,UAAsB,EAAE,GAAW,EAAE,IAAY;IAChE,MAAM,GAAG,GAAG,CAAC,CAAyC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;IAChH,IAAI,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,CAAC;QAAE,OAAO,WAAW,CAAC;IAChE,IAAI,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IAC5D,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,UAAU,CAAC,UAAsB,EAAE,KAAmB;IAC7D,OAAO,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AACxF,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,WAAW,CAAC,KAAY,EAAE,UAAsB,EAAE,QAAkB;IACjF,MAAM,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC,CAAC,mBAAmB;IACrE,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAuB,CAAC,CAAC,uDAAuD;IACxG,MAAM,KAAK,GAAqB,IAAI,GAAG,EAAE,CAAC;IAC1C,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,EAAU,CAAC;QACrD,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzB,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK;YAAE,SAAS,CAAC,kEAAkE;QACzG,MAAM,KAAK,GAA8C,EAAE,CAAC;QAC5D,KAAK,MAAM,GAAG,IAAI,MAAM,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3C,IAAI,GAAG,KAAK,iBAAiB;gBAAE,SAAS;YACxC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACpC,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;gBACvF,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBACnB,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;gBACvB,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,IAAI,WAAW,KAAK,IAAI;oBAAE,WAAW,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACjG,CAAC;iBAAM,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/C,+HAA+H;gBAC/H,+FAA+F;gBAC/F,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACrC,IAAI,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;oBAChI,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,0FAA0F,CAAC,CAAC;gBAC7H,CAAC;YACH,CAAC;YACD,yFAAyF;QAC3F,CAAC;QACD,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM,IAAI,GAA+D,EAAE,CAAC;QAC5E,KAAK,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,KAAK,EAAE,CAAC;YAC/B,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAC3B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClB,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,MAAM;YAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,uGAAuG;IACvG,IAAI,WAAW,KAAK,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CACb,GAAG,cAAc,4BAA4B,WAAW,8CAA8C,cAAc,IAAI;YACtH,mFAAmF,CACtF,CAAC;IACJ,CAAC;IAED,2GAA2G;IAC3G,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1F,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE;QACxB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACd,CAAC,CAAC;IACF,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;YACrE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,GAAG,CAAC,eAAe,GAAG,OAAO,KAAK,mCAAmC,CAAC,CAAC;iBAC3F,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,GAAG,CAAC,GAAG,KAAK,iBAAiB,IAAI,OAAO,GAAG,4BAA4B,CAAC,CAAC;QACxI,CAAC;IACH,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAAC,GAAuB,EAAE,IAAY,EAAE,GAAW,EAAE,CAAiB,EAAE,UAAsB,EAAE,MAA+B;IACjJ,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO;IAC1B,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC5C,IAAI,IAAI,GAAG,0BAA0B,CAAC;IACtC,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IACtJ,IAAI,OAAO;QAAE,IAAI,GAAG,GAAG,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,aAAa,OAAO,CAAC,IAAI,EAAE,CAAC;SAC5G,CAAC;QACJ,MAAM,CAAC,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,oCAAoC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxJ,IAAI,CAAC,KAAK,SAAS;YAAE,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC;IAC3C,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,IAAI,sDAAsD,IAAI,UAAU,IAAI,4CAA4C,CAAC,CAAC;AAC1J,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAa;IACtC,MAAM,UAAU,GAAG,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,QAAQ,CAAC,IAAI,CACX,+JAA+J,CAChK,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;IACnE,kEAAkE;IAClE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAuB,CAAC;IACrD,MAAM,GAAG,GAAG;QACV,KAAK,EAAE,EAAE,CAAC,KAAK;QACf,UAAU;QACV,aAAa,EAAE,EAAE,CAAC,IAAI;QACtB,KAAK,CAAC,YAAY,CAAC,GAAW;YAC5B,IAAI,CAAC;gBACH,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;YACpD,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,GAAuB,EAAE,IAAY;YAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACrC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;YAClC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC1C,gFAAgF;YAChF,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACnF,mHAAmH;YACnH,iHAAiH;YACjH,gEAAgE;YAChE,IAAI,MAAM,KAAK,SAAS;gBACtB,MAAM,IAAI,KAAK,CACb,GAAG,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,6IAA6I,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,+CAA+C,CAC9P,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YACrG,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAClD,IAAI,MAAM;gBAAE,WAAW,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;YACpE,KAAK,MAAM,GAAG,IAAI,OAAO;gBAAE,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,EAAU,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9G,OAAO,GAAG,CAAC;QACb,CAAC;QACD,KAAK,CAAC,GAAuB,EAAE,IAAY;YACzC,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,GAAW;YACd,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;KACF,CAAC;IACF,MAAM,KAAK,GAAkB,EAAE,CAAC;IAChC,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC;YAClD,SAAS;QACX,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,QAAQ,CAAC,IAAI,CAAC,UAAU,GAAG,gDAAgD,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7G,CAAC;IACD,uBAAuB;IACvB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,IAAI;YAAE,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,IAAI,KAAK,IAAI,QAAQ,CAAC,CAAC,UAAU,cAAc,CAAC,CAAC;QACpG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;AAC1F,CAAC;AAED,SAAS,cAAc,CAAC,KAAoB;IAC1C,MAAM,CAAC,GAAG,IAAI,GAAG,EAAuB,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACtE,CAAC;AAED,wEAAwE;AACxE,0EAA0E;AAC1E,wEAAwE;AAExE,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAY;IACzC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACrC,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAY,EAAE,IAAU;IACtD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;AAC/F,CAAC;AAyBD,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,EAAa,EAAE,CAAO,EAAE,IAAiB;IACpE,MAAM,GAAG,GAAiB,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,KAAgB,CAAC;QACrB,IAAI,IAAI,KAAK,IAAI;YAAE,KAAK,GAAG,KAAK,CAAC;aAC5B,IAAI,KAAK,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,QAAQ,KAAK,KAAK,CAAC,IAAI;gBAAE,KAAK,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;;gBAC9E,KAAK,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC9D,CAAC;;YAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC;QAC9G,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACzG,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC;QAClC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,SAAS;QAClC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,IAAI,KAAK,IAAI;YAAE,SAAS,CAAC,eAAe;QAC5C,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IACtJ,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED,wFAAwF;AACxF,SAAS,QAAQ,CAAC,GAAW,EAAE,CAAS,EAAE,CAAS;IACjD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/H,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,IAAY,EAAE,GAAW;IAC/C,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAkBD,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,EAAa,EAAE,CAAO,EAAE,QAAsB,EAAE,OAAqB,EAAE;IACjG,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,MAAM,OAAO,GAAgB,EAAE,CAAC;IAEhC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;YAChB,KAAK,KAAK,CAAC;YACX,KAAK,QAAQ,CAAC;YACd,KAAK,OAAO;gBACV,IAAI,CAAC,IAAI,CAAC,MAAM;oBAAE,MAAM,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,OAAQ,CAAC,CAAC;gBACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACrB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC;gBAChC,MAAM;YACR,KAAK,WAAW;gBACd,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC;gBAChC,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACxB,IAAI,CAAC,IAAI,CAAC,MAAM;wBAAE,MAAM,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,OAAQ,CAAC,CAAC;oBACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACrB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAQ,CAAC,CAAC,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAK,CAAC,CAAC,CAAC,+CAA+C;gBACxE,CAAC;gBACD,MAAM;YACR,KAAK,WAAW;gBACd,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAChB,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,IAAI,CAAC,MAAM;oBAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACrB,MAAM;YACR,KAAK,cAAc;gBACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAK,CAAC,CAAC,CAAC,2EAA2E;gBAClG,MAAM;QACV,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAS;QACjB,MAAM,EAAE,CAAC;QACT,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE;QAC3D,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO;QAC1B,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;KAC5D,CAAC;IACF,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,MAAM,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACjD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC7C,CAAC;AAED,SAAS,KAAK,CAAC,CAAc;IAC3B,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;AACvG,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAY,EAAE,CAAc;IACnD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/core/sync.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@ export function appliesTo(targets, target) {
4
4
  }
5
5
  /** The characters of a rule name in a `.claude/rules/<name>.md` reference (spec 15 §4.1). */
6
6
  export const RULE_NAME_CHARS = "A-Za-z0-9._-";
7
+ /** Token pattern for rule references: `.claude/rules/<name>.md` with left boundary (spec 15 §4.1). */
8
+ const TOKEN_PATTERN_SOURCE = `(^|[^/${RULE_NAME_CHARS}])(\\.claude\\/rules\\/([${RULE_NAME_CHARS}]+)\\.md)`;
7
9
  /**
8
10
  * The target that writes a rule's own file in this workspace, `claude-code` first, else `kiro`, else none
9
11
  * (spec 14 §4.1): a workspace target the rule's `targets` admit.
@@ -31,7 +33,7 @@ export function buildRuleLookup(ingredients) {
31
33
  return { rulesByName, steeringsByName };
32
34
  }
33
35
  /**
34
- * Resolve `.claude/rules/<x>.md` references in a body (spec 15 §4.1–§4.3, spec 17 §4.2–§4.3).
36
+ * Resolve `.claude/rules/<x>.md` references in a body (spec 15 §4.1–§4.3, spec 17 §4.2–§4.3, spec 20).
35
37
  * Mode "agents-md" (default) is for AGENTS.md; mode "kiro" is for kiro files.
36
38
  * Returns the transformed text and a report of what was reworded or found dead.
37
39
  */
@@ -95,6 +97,78 @@ export function resolveRuleRefs(body, citing, lookup, targets, mode = "agents-md
95
97
  };
96
98
  // Blanket rewrite for kiro mode: .claude/rules/ → .kiro/steering/
97
99
  const kiroRewrite = (s) => s.replace(/\.claude\/rules\//g, ".kiro/steering/");
100
+ // Resolve a single token reference (spec 20 §4.1): used for tokens and link text references.
101
+ // Returns the replacement text and, if it rewords to "not in this workspace", the reworded entry.
102
+ const resolveToken = (name) => {
103
+ const state = ruleState(name);
104
+ const rule = rulesByName.get(name);
105
+ if (mode === "kiro") {
106
+ switch (state) {
107
+ case "K1": return { text: ruleFile("kiro", { name }) };
108
+ case "K2": return { text: `.claude/rules/${name}.md` }; // unchanged
109
+ case "K3": return { text: `AGENTS.md (rule: ${name})` };
110
+ case "D": return { text: `${name} (rule not in this workspace)`, reworded: { ref: `.claude/rules/${name}.md`, kind: `${rule.ref} reaches no target here` } };
111
+ case "unknown": return { text: ruleFile("kiro", { name }), reworded: { ref: `.claude/rules/${name}.md`, kind: UNKNOWN_NAME_KIND } };
112
+ }
113
+ }
114
+ else {
115
+ switch (state) {
116
+ case "A": return { text: `.claude/rules/${name}.md` }; // unchanged
117
+ case "B": return { text: ruleFile("kiro", { name }) };
118
+ case "C": return { text: `AGENTS.md (rule: ${name})` };
119
+ case "D": return { text: `${name} (rule not in this workspace)`, reworded: { ref: `.claude/rules/${name}.md`, kind: `${rule.ref} reaches no target here` } };
120
+ case "unknown":
121
+ if (hasCc)
122
+ return { text: `.claude/rules/${name}.md` }; // unchanged
123
+ return { text: `${name} (rule not in this workspace)`, reworded: { ref: `.claude/rules/${name}.md`, kind: "no such rule" } };
124
+ }
125
+ }
126
+ return { text: `.claude/rules/${name}.md` }; // fallback
127
+ };
128
+ // Collapse: a link whose text is exactly its path becomes the token form (spec 20 §4.2).
129
+ // Returns the token form if collapsible, null otherwise.
130
+ const collapse = (text, name) => {
131
+ const exactPath = `.claude/rules/${name}.md`;
132
+ const backtickedPath = `\`${exactPath}\``;
133
+ if (text !== exactPath && text !== backtickedPath)
134
+ return null;
135
+ const hasBackticks = text === backtickedPath;
136
+ const tokenText = `${name} (rule not in this workspace)`;
137
+ return hasBackticks ? `\`${tokenText}\`` : tokenText;
138
+ };
139
+ // Resolve references inside link text (spec 20 §4.1). Returns the resolved text and any reworded
140
+ // entries from the text's references. In kiro mode, non-references get the directory rewrite
141
+ // except for K2 links (Ruling 4: non-references stay as written).
142
+ const resolveTextRefs = (text, isK2) => {
143
+ const textPattern = new RegExp(TOKEN_PATTERN_SOURCE, "g");
144
+ const textMatches = [];
145
+ let textMatch;
146
+ while ((textMatch = textPattern.exec(text)) !== null) {
147
+ const [match, before, token, name] = textMatch;
148
+ const offset = textMatch.index + before.length;
149
+ const fullOffset = textMatch.index + match.length;
150
+ const after = text.slice(fullOffset);
151
+ if (!rightBoundary(after))
152
+ continue;
153
+ const { text: replacement, reworded } = resolveToken(name);
154
+ textMatches.push({ offset, length: token.length, replacement, reworded });
155
+ }
156
+ // Build the result: gaps get the blanket rewrite in kiro mode, unless this is a K2 link (Ruling 4)
157
+ let resolved = "";
158
+ let lastEnd = 0;
159
+ const rewordedEntries = [];
160
+ for (const m of textMatches) {
161
+ const gap = text.slice(lastEnd, m.offset);
162
+ resolved += (mode === "kiro" && !isK2) ? kiroRewrite(gap) : gap;
163
+ resolved += m.replacement;
164
+ lastEnd = m.offset + m.length;
165
+ if (m.reworded)
166
+ rewordedEntries.push({ offset: m.offset, ref: m.reworded.ref, kind: m.reworded.kind });
167
+ }
168
+ const tail = text.slice(lastEnd);
169
+ resolved += (mode === "kiro" && !isK2) ? kiroRewrite(tail) : tail;
170
+ return { resolved, reworded: rewordedEntries };
171
+ };
98
172
  const matches = [];
99
173
  // Link pattern: [text](.claude/rules/<name>.md) or [text](.claude/rules/<name>.md#frag)
100
174
  const linkPattern = new RegExp(`\\[([^\\]]+)\\]\\(\\.claude\\/rules\\/([${RULE_NAME_CHARS}]+)\\.md(#[^)]*)?\\)`, "g");
@@ -102,34 +176,52 @@ export function resolveRuleRefs(body, citing, lookup, targets, mode = "agents-md
102
176
  while ((linkMatch = linkPattern.exec(body)) !== null) {
103
177
  const [match, text, name, frag] = linkMatch;
104
178
  const offset = linkMatch.index;
179
+ // Warning offset is at the target's start, not at `[` (spec 20 §4.3)
180
+ const targetOffset = offset + 1 + text.length + 2; // `[` + text + `](`
105
181
  const state = ruleState(name);
106
182
  const rule = rulesByName.get(name);
107
183
  let replacement;
108
- let reworded;
184
+ const reworded = [];
185
+ // Resolve references in the link's text (spec 20 §4.1)
186
+ const isK2 = mode === "kiro" && state === "K2";
187
+ const { resolved: resolvedText, reworded: textReworded } = resolveTextRefs(text, isK2);
188
+ // Add text reworded entries, positioned before the link's target (spec 20 §4.3)
189
+ for (const tw of textReworded)
190
+ reworded.push({ offset: offset + 1 + tw.offset, ref: tw.ref, kind: tw.kind });
109
191
  if (mode === "kiro") {
110
192
  // Kiro mode (spec 17 §4.3)
111
193
  switch (state) {
112
194
  case "K1":
113
195
  // Fragment gets the blanket rewrite too (spec 17 §4.3)
114
- replacement = `[${kiroRewrite(text)}](${ruleFile("kiro", { name })}${kiroRewrite(frag ?? "")})`;
196
+ replacement = `[${resolvedText}](${ruleFile("kiro", { name })}${kiroRewrite(frag ?? "")})`;
115
197
  break;
116
198
  case "K2":
117
- // unchanged — exempt from directory rewrite; keep original text exactly
118
- replacement = match;
199
+ // unchanged target — but text references are resolved (spec 20 §4.1, Ruling 4)
200
+ replacement = `[${resolvedText}](${`.claude/rules/${name}.md`}${frag ?? ""})`;
119
201
  break;
120
202
  case "K3":
121
- replacement = `[${kiroRewrite(text)}](AGENTS.md)`; // fragment dropped
203
+ replacement = `[${resolvedText}](AGENTS.md)`; // fragment dropped
122
204
  break;
123
- case "D":
124
- reworded = { ref: `.claude/rules/${name}.md`, kind: `${rule.ref} reaches no target here` };
125
- replacement = `${kiroRewrite(text)} (${name}, rule not in this workspace)`;
205
+ case "D": {
206
+ // Check for collapse (spec 20 §4.2)
207
+ const collapsed = collapse(text, name);
208
+ if (collapsed) {
209
+ replacement = collapsed;
210
+ reworded.length = 0; // Collapsed: only one entry, from the token form
211
+ }
212
+ else {
213
+ replacement = `${resolvedText} (${name}, rule not in this workspace)`;
214
+ }
215
+ reworded.push({ offset: targetOffset, ref: `.claude/rules/${name}.md`, kind: `${rule.ref} reaches no target here` });
126
216
  break;
127
- case "unknown":
217
+ }
218
+ case "unknown": {
128
219
  // Unknown name gets blanket rewrite and is reported (no kind string)
129
220
  // Fragment gets the blanket rewrite too (spec 17 §4.3)
130
- reworded = { ref: `.claude/rules/${name}.md`, kind: UNKNOWN_NAME_KIND };
131
- replacement = `[${kiroRewrite(text)}](${ruleFile("kiro", { name })}${kiroRewrite(frag ?? "")})`;
221
+ reworded.push({ offset: targetOffset, ref: `.claude/rules/${name}.md`, kind: UNKNOWN_NAME_KIND });
222
+ replacement = `[${resolvedText}](${ruleFile("kiro", { name })}${kiroRewrite(frag ?? "")})`;
132
223
  break;
224
+ }
133
225
  default:
134
226
  continue;
135
227
  }
@@ -138,22 +230,56 @@ export function resolveRuleRefs(body, citing, lookup, targets, mode = "agents-md
138
230
  // agents-md mode (spec 15 §4.3)
139
231
  switch (state) {
140
232
  case "A":
141
- continue;
233
+ // State A: link unchanged, but text is now resolved like a token (spec 20 §4.1)
234
+ // The text resolution already happened; we only emit a match if the text changed
235
+ if (resolvedText !== text) {
236
+ replacement = `[${resolvedText}](${`.claude/rules/${name}.md`}${frag ?? ""})`;
237
+ }
238
+ else {
239
+ continue; // No change needed
240
+ }
241
+ break;
142
242
  case "B":
143
- replacement = `[${text}](${ruleFile("kiro", { name })}${frag ?? ""})`;
243
+ replacement = `[${resolvedText}](${ruleFile("kiro", { name })}${frag ?? ""})`;
144
244
  break;
145
245
  case "C":
146
- replacement = `[${text}](AGENTS.md)`;
246
+ replacement = `[${resolvedText}](AGENTS.md)`;
147
247
  break;
148
- case "D":
149
- reworded = { ref: `.claude/rules/${name}.md`, kind: `${rule.ref} reaches no target here` };
150
- replacement = `${text} (${name}, rule not in this workspace)`;
248
+ case "D": {
249
+ // Check for collapse (spec 20 §4.2)
250
+ const collapsed = collapse(text, name);
251
+ if (collapsed) {
252
+ replacement = collapsed;
253
+ reworded.length = 0; // Collapsed: only one entry, from the token form
254
+ }
255
+ else {
256
+ replacement = `${resolvedText} (${name}, rule not in this workspace)`;
257
+ }
258
+ reworded.push({ offset: targetOffset, ref: `.claude/rules/${name}.md`, kind: `${rule.ref} reaches no target here` });
151
259
  break;
260
+ }
152
261
  case "unknown":
153
- if (hasCc)
154
- continue;
155
- reworded = { ref: `.claude/rules/${name}.md`, kind: "no such rule" };
156
- replacement = `${text} (${name}, rule not in this workspace)`;
262
+ if (hasCc) {
263
+ // With claude-code, unknown links are not consumed — but text is resolved (spec 20 §4.1)
264
+ if (resolvedText !== text) {
265
+ replacement = `[${resolvedText}](${`.claude/rules/${name}.md`}${frag ?? ""})`;
266
+ }
267
+ else {
268
+ continue; // No change needed
269
+ }
270
+ }
271
+ else {
272
+ // Without claude-code: collapse or reword (spec 20 §4.2)
273
+ const collapsed = collapse(text, name);
274
+ if (collapsed) {
275
+ replacement = collapsed;
276
+ reworded.length = 0; // Collapsed: clear text entries
277
+ }
278
+ else {
279
+ replacement = `${resolvedText} (${name}, rule not in this workspace)`;
280
+ }
281
+ reworded.push({ offset: targetOffset, ref: `.claude/rules/${name}.md`, kind: "no such rule" });
282
+ }
157
283
  break;
158
284
  default:
159
285
  continue;
@@ -162,7 +288,7 @@ export function resolveRuleRefs(body, citing, lookup, targets, mode = "agents-md
162
288
  matches.push({ offset, length: match.length, replacement, reworded });
163
289
  }
164
290
  // Token pattern: .claude/rules/<name>.md (not in a link) with left boundary
165
- const tokenPattern = new RegExp(`(^|[^/${RULE_NAME_CHARS}])(\\.claude\\/rules\\/([${RULE_NAME_CHARS}]+)\\.md)`, "g");
291
+ const tokenPattern = new RegExp(TOKEN_PATTERN_SOURCE, "g");
166
292
  let tokenMatch;
167
293
  while ((tokenMatch = tokenPattern.exec(body)) !== null) {
168
294
  const [match, before, token, name] = tokenMatch;
@@ -175,70 +301,21 @@ export function resolveRuleRefs(body, citing, lookup, targets, mode = "agents-md
175
301
  // Skip if this offset overlaps with a link match (link pattern already captured it)
176
302
  if (matches.some((m) => offset >= m.offset && offset < m.offset + m.length))
177
303
  continue;
178
- const state = ruleState(name);
179
- const rule = rulesByName.get(name);
180
- let replacement;
181
- let reworded;
182
- if (mode === "kiro") {
183
- // Kiro mode (spec 17 §4.3)
184
- switch (state) {
185
- case "K1":
186
- replacement = ruleFile("kiro", { name });
187
- break;
188
- case "K2":
189
- // unchanged — exempt from directory rewrite; keep original text exactly
190
- replacement = token;
191
- break;
192
- case "K3":
193
- replacement = `AGENTS.md (rule: ${name})`;
194
- break;
195
- case "D":
196
- reworded = { ref: `.claude/rules/${name}.md`, kind: `${rule.ref} reaches no target here` };
197
- replacement = `${name} (rule not in this workspace)`;
198
- break;
199
- case "unknown":
200
- // Unknown name gets blanket rewrite and is reported (no kind string)
201
- reworded = { ref: `.claude/rules/${name}.md`, kind: UNKNOWN_NAME_KIND };
202
- replacement = ruleFile("kiro", { name });
203
- break;
204
- default:
205
- continue;
206
- }
207
- }
208
- else {
209
- // agents-md mode (spec 15 §4.3)
210
- switch (state) {
211
- case "A":
212
- continue;
213
- case "B":
214
- replacement = ruleFile("kiro", { name });
215
- break;
216
- case "C":
217
- replacement = `AGENTS.md (rule: ${name})`;
218
- break;
219
- case "D":
220
- reworded = { ref: `.claude/rules/${name}.md`, kind: `${rule.ref} reaches no target here` };
221
- replacement = `${name} (rule not in this workspace)`;
222
- break;
223
- case "unknown":
224
- if (hasCc)
225
- continue;
226
- reworded = { ref: `.claude/rules/${name}.md`, kind: "no such rule" };
227
- replacement = `${name} (rule not in this workspace)`;
228
- break;
229
- default:
230
- continue;
231
- }
232
- }
233
- matches.push({ offset, length: token.length, replacement, reworded });
304
+ const { text: replacement, reworded } = resolveToken(name);
305
+ const rewordedEntries = [];
306
+ if (reworded)
307
+ rewordedEntries.push({ offset, ref: reworded.ref, kind: reworded.kind });
308
+ // Always add the match even if unchanged (K2, state A, unknown with claude-code) so the token
309
+ // is excluded from gap rewriting in kiro mode
310
+ matches.push({ offset, length: token.length, replacement, reworded: rewordedEntries });
234
311
  }
235
312
  // Sort by offset for correct warning order
236
313
  matches.sort((a, b) => a.offset - b.offset);
237
- // Collect reworded entries with their original offsets for sorting (spec 15 §4.5)
314
+ // Collect reworded entries with their original offsets for sorting (spec 15 §4.5, spec 20 §4.3)
238
315
  const rewordedWithOffset = [];
239
316
  for (const m of matches) {
240
- if (m.reworded) {
241
- rewordedWithOffset.push({ offset: m.offset, ref: m.reworded.ref, citing, kind: m.reworded.kind });
317
+ for (const rw of m.reworded) {
318
+ rewordedWithOffset.push({ offset: rw.offset, ref: rw.ref, citing, kind: rw.kind });
242
319
  }
243
320
  }
244
321
  // Build the result segment by segment: gaps get the blanket rewrite in kiro mode
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/emitters/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/emitters/shared.ts"],"names":[],"mappings":"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"}