@dungle-scrubs/harness-cli-normalizer 0.6.0 → 0.6.1

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 (212) hide show
  1. package/README.md +18 -6
  2. package/dist/cli/args.d.ts +9 -1
  3. package/dist/cli/args.d.ts.map +1 -1
  4. package/dist/cli/args.js +31 -26
  5. package/dist/cli/args.js.map +1 -1
  6. package/dist/cli/check.d.ts +14 -0
  7. package/dist/cli/check.d.ts.map +1 -1
  8. package/dist/cli/check.js +10 -3
  9. package/dist/cli/check.js.map +1 -1
  10. package/dist/cli/config.d.ts +4 -4
  11. package/dist/cli/config.d.ts.map +1 -1
  12. package/dist/cli/config.js +6 -6
  13. package/dist/cli/config.js.map +1 -1
  14. package/dist/cli/exit-codes.d.ts +0 -1
  15. package/dist/cli/exit-codes.d.ts.map +1 -1
  16. package/dist/cli/exit-codes.js +0 -1
  17. package/dist/cli/exit-codes.js.map +1 -1
  18. package/dist/cli/help.d.ts +2 -2
  19. package/dist/cli/help.d.ts.map +1 -1
  20. package/dist/cli/help.js +6 -2
  21. package/dist/cli/help.js.map +1 -1
  22. package/dist/cli/index.d.ts.map +1 -1
  23. package/dist/cli/index.js +3 -1
  24. package/dist/cli/index.js.map +1 -1
  25. package/dist/cli/inspect.d.ts.map +1 -1
  26. package/dist/cli/inspect.js +84 -265
  27. package/dist/cli/inspect.js.map +1 -1
  28. package/dist/cli/plan-turn.d.ts +68 -0
  29. package/dist/cli/plan-turn.d.ts.map +1 -0
  30. package/dist/cli/plan-turn.js +266 -0
  31. package/dist/cli/plan-turn.js.map +1 -0
  32. package/dist/cli/refuse.d.ts.map +1 -1
  33. package/dist/cli/refuse.js +2 -1
  34. package/dist/cli/refuse.js.map +1 -1
  35. package/dist/cli/resolve-harness.d.ts.map +1 -1
  36. package/dist/cli/resolve-harness.js +2 -3
  37. package/dist/cli/resolve-harness.js.map +1 -1
  38. package/dist/cli/run.d.ts.map +1 -1
  39. package/dist/cli/run.js +33 -367
  40. package/dist/cli/run.js.map +1 -1
  41. package/dist/cli/session-json.d.ts +1 -1
  42. package/dist/cli/session-json.d.ts.map +1 -1
  43. package/dist/cli/session-json.js +1 -3
  44. package/dist/cli/session-json.js.map +1 -1
  45. package/dist/cli/session.d.ts.map +1 -1
  46. package/dist/cli/session.js +25 -44
  47. package/dist/cli/session.js.map +1 -1
  48. package/dist/cli/skills-root.d.ts +1 -1
  49. package/dist/cli/skills-root.d.ts.map +1 -1
  50. package/dist/cli/skills-root.js +1 -1
  51. package/dist/cli/skills-root.js.map +1 -1
  52. package/dist/execution/decode.d.ts.map +1 -1
  53. package/dist/execution/decode.js +11 -36
  54. package/dist/execution/decode.js.map +1 -1
  55. package/dist/execution/events.d.ts +4 -1
  56. package/dist/execution/events.d.ts.map +1 -1
  57. package/dist/execution/events.js.map +1 -1
  58. package/dist/execution/failure.d.ts +3 -1
  59. package/dist/execution/failure.d.ts.map +1 -1
  60. package/dist/execution/failure.js +14 -11
  61. package/dist/execution/failure.js.map +1 -1
  62. package/dist/execution/open-session.d.ts +1 -1
  63. package/dist/execution/open-session.d.ts.map +1 -1
  64. package/dist/execution/open-session.js +150 -223
  65. package/dist/execution/open-session.js.map +1 -1
  66. package/dist/execution/stream-turn.d.ts +9 -14
  67. package/dist/execution/stream-turn.d.ts.map +1 -1
  68. package/dist/execution/stream-turn.js +85 -188
  69. package/dist/execution/stream-turn.js.map +1 -1
  70. package/dist/execution/supervisor.d.ts +71 -0
  71. package/dist/execution/supervisor.d.ts.map +1 -0
  72. package/dist/execution/supervisor.js +127 -0
  73. package/dist/execution/supervisor.js.map +1 -0
  74. package/dist/interpretation/argv.d.ts +38 -12
  75. package/dist/interpretation/argv.d.ts.map +1 -1
  76. package/dist/interpretation/argv.js +26 -20
  77. package/dist/interpretation/argv.js.map +1 -1
  78. package/dist/interpretation/content.d.ts +10 -1
  79. package/dist/interpretation/content.d.ts.map +1 -1
  80. package/dist/interpretation/content.js +20 -11
  81. package/dist/interpretation/content.js.map +1 -1
  82. package/dist/interpretation/hints.d.ts +1 -1
  83. package/dist/interpretation/hints.d.ts.map +1 -1
  84. package/dist/interpretation/hints.js +10 -11
  85. package/dist/interpretation/hints.js.map +1 -1
  86. package/dist/interpretation/index.d.ts +0 -1
  87. package/dist/interpretation/index.d.ts.map +1 -1
  88. package/dist/interpretation/index.js +0 -1
  89. package/dist/interpretation/index.js.map +1 -1
  90. package/dist/interpretation/limits.d.ts +2 -5
  91. package/dist/interpretation/limits.d.ts.map +1 -1
  92. package/dist/interpretation/limits.js +8 -62
  93. package/dist/interpretation/limits.js.map +1 -1
  94. package/dist/interpretation/question.d.ts +27 -0
  95. package/dist/interpretation/question.d.ts.map +1 -1
  96. package/dist/interpretation/question.js +28 -0
  97. package/dist/interpretation/question.js.map +1 -1
  98. package/dist/interpretation/refusal.d.ts +10 -5
  99. package/dist/interpretation/refusal.d.ts.map +1 -1
  100. package/dist/interpretation/refusal.js +24 -15
  101. package/dist/interpretation/refusal.js.map +1 -1
  102. package/dist/interpretation/resolve-options.d.ts +36 -2
  103. package/dist/interpretation/resolve-options.d.ts.map +1 -1
  104. package/dist/interpretation/resolve-options.js +38 -21
  105. package/dist/interpretation/resolve-options.js.map +1 -1
  106. package/dist/interpretation/session-input.d.ts +44 -1
  107. package/dist/interpretation/session-input.d.ts.map +1 -1
  108. package/dist/interpretation/session-input.js +59 -4
  109. package/dist/interpretation/session-input.js.map +1 -1
  110. package/dist/interpretation/shape.d.ts +1 -0
  111. package/dist/interpretation/shape.d.ts.map +1 -1
  112. package/dist/interpretation/shape.js +10 -0
  113. package/dist/interpretation/shape.js.map +1 -1
  114. package/dist/interpretation/skills-selection.d.ts +25 -33
  115. package/dist/interpretation/skills-selection.d.ts.map +1 -1
  116. package/dist/interpretation/skills-selection.js +41 -48
  117. package/dist/interpretation/skills-selection.js.map +1 -1
  118. package/dist/interpretation/support.d.ts.map +1 -1
  119. package/dist/interpretation/support.js +23 -8
  120. package/dist/interpretation/support.js.map +1 -1
  121. package/dist/interpretation/tool-selection.d.ts +7 -6
  122. package/dist/interpretation/tool-selection.d.ts.map +1 -1
  123. package/dist/interpretation/tool-selection.js +54 -116
  124. package/dist/interpretation/tool-selection.js.map +1 -1
  125. package/dist/interpretation/tool-vocabulary.d.ts +31 -12
  126. package/dist/interpretation/tool-vocabulary.d.ts.map +1 -1
  127. package/dist/interpretation/tool-vocabulary.js +19 -41
  128. package/dist/interpretation/tool-vocabulary.js.map +1 -1
  129. package/dist/interpretation/turn-options.d.ts +4 -0
  130. package/dist/interpretation/turn-options.d.ts.map +1 -1
  131. package/dist/interpretation/turn-options.js +105 -241
  132. package/dist/interpretation/turn-options.js.map +1 -1
  133. package/dist/interpretation/vocabulary.d.ts +8 -6
  134. package/dist/interpretation/vocabulary.d.ts.map +1 -1
  135. package/dist/interpretation/vocabulary.js +22 -9
  136. package/dist/interpretation/vocabulary.js.map +1 -1
  137. package/dist/knowledge/claude-code.js +3 -3
  138. package/dist/knowledge/claude-code.js.map +1 -1
  139. package/dist/knowledge/codex.d.ts.map +1 -1
  140. package/dist/knowledge/codex.js +31 -7
  141. package/dist/knowledge/codex.js.map +1 -1
  142. package/dist/knowledge/descriptor.d.ts +67 -36
  143. package/dist/knowledge/descriptor.d.ts.map +1 -1
  144. package/dist/knowledge/descriptor.js +49 -15
  145. package/dist/knowledge/descriptor.js.map +1 -1
  146. package/dist/knowledge/matchers.d.ts +12 -0
  147. package/dist/knowledge/matchers.d.ts.map +1 -1
  148. package/dist/knowledge/matchers.js +34 -0
  149. package/dist/knowledge/matchers.js.map +1 -1
  150. package/dist/knowledge/muse.d.ts.map +1 -1
  151. package/dist/knowledge/muse.js +7 -5
  152. package/dist/knowledge/muse.js.map +1 -1
  153. package/dist/knowledge/overrides.d.ts.map +1 -1
  154. package/dist/knowledge/overrides.js +9 -20
  155. package/dist/knowledge/overrides.js.map +1 -1
  156. package/dist/knowledge/pi.d.ts.map +1 -1
  157. package/dist/knowledge/pi.js +8 -6
  158. package/dist/knowledge/pi.js.map +1 -1
  159. package/dist/knowledge/profile.d.ts +1 -0
  160. package/dist/knowledge/profile.d.ts.map +1 -1
  161. package/dist/knowledge/profile.js +1 -0
  162. package/dist/knowledge/profile.js.map +1 -1
  163. package/package.json +1 -1
  164. package/src/cli/args.ts +35 -27
  165. package/src/cli/check.ts +10 -3
  166. package/src/cli/config.ts +12 -11
  167. package/src/cli/exit-codes.ts +0 -2
  168. package/src/cli/help.ts +6 -2
  169. package/src/cli/index.ts +3 -1
  170. package/src/cli/inspect.ts +88 -269
  171. package/src/cli/plan-turn.ts +346 -0
  172. package/src/cli/refuse.ts +2 -1
  173. package/src/cli/resolve-harness.ts +4 -5
  174. package/src/cli/run.ts +36 -399
  175. package/src/cli/session-json.ts +1 -6
  176. package/src/cli/session.ts +34 -44
  177. package/src/cli/skills-root.ts +1 -4
  178. package/src/execution/decode.ts +10 -36
  179. package/src/execution/events.ts +4 -1
  180. package/src/execution/failure.ts +18 -11
  181. package/src/execution/open-session.ts +154 -228
  182. package/src/execution/stream-turn.ts +90 -193
  183. package/src/execution/supervisor.ts +199 -0
  184. package/src/interpretation/argv.ts +62 -34
  185. package/src/interpretation/content.ts +30 -13
  186. package/src/interpretation/hints.ts +2 -12
  187. package/src/interpretation/index.ts +0 -1
  188. package/src/interpretation/limits.ts +14 -75
  189. package/src/interpretation/question.ts +46 -0
  190. package/src/interpretation/refusal.ts +28 -18
  191. package/src/interpretation/resolve-options.ts +85 -32
  192. package/src/interpretation/session-input.ts +88 -5
  193. package/src/interpretation/shape.ts +10 -0
  194. package/src/interpretation/skills-selection.ts +70 -74
  195. package/src/interpretation/support.ts +19 -6
  196. package/src/interpretation/tool-selection.ts +67 -122
  197. package/src/interpretation/tool-vocabulary.ts +48 -53
  198. package/src/interpretation/turn-options.ts +123 -220
  199. package/src/interpretation/vocabulary.ts +15 -10
  200. package/src/knowledge/claude-code.ts +3 -3
  201. package/src/knowledge/codex.ts +31 -7
  202. package/src/knowledge/descriptor.ts +105 -49
  203. package/src/knowledge/matchers.ts +35 -0
  204. package/src/knowledge/muse.ts +7 -5
  205. package/src/knowledge/overrides.ts +17 -32
  206. package/src/knowledge/pi.ts +8 -6
  207. package/src/knowledge/profile.ts +1 -0
  208. package/dist/interpretation/dimensions.d.ts +0 -11
  209. package/dist/interpretation/dimensions.d.ts.map +0 -1
  210. package/dist/interpretation/dimensions.js +0 -4
  211. package/dist/interpretation/dimensions.js.map +0 -1
  212. package/src/interpretation/dimensions.ts +0 -14
@@ -1 +1 @@
1
- {"version":3,"file":"matchers.d.ts","sourceRoot":"","sources":["../../src/knowledge/matchers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,iBAAiB,CAAC;AAEzB,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,YAAY,CAyB7D,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,WAAW,CAG3D,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,aAAa,CAAC,gBAAgB,CAcrE,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,aAAa,CAAC,kBAAkB,CASzE,CAAC"}
1
+ {"version":3,"file":"matchers.d.ts","sourceRoot":"","sources":["../../src/knowledge/matchers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,iBAAiB,CAAC;AAEzB;;;oEAGoE;AACpE,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC;0CAC0C;AAC1C,eAAO,MAAM,aAAa,SAAS,CAAC;AAEpC;gEACgE;AAChE,eAAO,MAAM,cAAc,YAAa,MAAM,SAAS,MAAM,GAAG,SAAS,KAAG,MAqB3E,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,YAAY,CAyB7D,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,WAAW,CAG3D,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,aAAa,CAAC,gBAAgB,CAcrE,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,aAAa,CAAC,kBAAkB,CASzE,CAAC"}
@@ -1,3 +1,37 @@
1
+ /** Bounds on a matcher, enforced wherever one is compiled - the limits
2
+ * scanner and the override loader alike (RFC-02 change 9). They keep a
3
+ * crafted override file from DoS'ing the compiler or the scanner; the
4
+ * input window, not pattern analysis, is the backtracking bound. */
5
+ export const MAX_PATTERN_LENGTH = 200;
6
+ export const MAX_MATCHERS_PER_KIND = 64;
7
+ /** The only flags a matcher may carry. `g` and `y` are stateful and
8
+ * would make `test()` order-dependent. */
9
+ export const MATCHER_FLAGS = "imsu";
10
+ /** Compile one matcher under the bounds. Throws a plain Error naming the
11
+ * violated bound; loaders wrap it in their own refusal type. */
12
+ export const compileMatcher = (pattern, flags) => {
13
+ const f = flags ?? "i";
14
+ if (pattern.length > MAX_PATTERN_LENGTH) {
15
+ throw new Error(`pattern over ${MAX_PATTERN_LENGTH} characters`);
16
+ }
17
+ if (pattern.length === 0) {
18
+ throw new Error("pattern must not be empty");
19
+ }
20
+ if (f.includes("g") || f.includes("y")) {
21
+ throw new Error(`flags must not contain g or y (got ${JSON.stringify(f)})`);
22
+ }
23
+ for (const ch of f) {
24
+ if (!MATCHER_FLAGS.includes(ch)) {
25
+ throw new Error(`flag ${JSON.stringify(ch)} outside ${MATCHER_FLAGS}`);
26
+ }
27
+ }
28
+ try {
29
+ return new RegExp(pattern, f);
30
+ }
31
+ catch (e) {
32
+ throw new Error(`uncompilable pattern ${JSON.stringify(pattern)}: ${e.message}`);
33
+ }
34
+ };
1
35
  export const SHARED_LIMIT_MATCHERS = [
2
36
  { pattern: "you'?ve hit your usage limit", flags: "i", code: "usage-limit" },
3
37
  { pattern: "usage limit (?:reached|exceeded)", flags: "i", code: "usage-limit" },
@@ -1 +1 @@
1
- {"version":3,"file":"matchers.js","sourceRoot":"","sources":["../../src/knowledge/matchers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matchers.js","sourceRoot":"","sources":["../../src/knowledge/matchers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"muse.d.ts","sourceRoot":"","sources":["../../src/knowledge/muse.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAc,KAAK,iBAAiB,EAAc,MAAM,iBAAiB,CAAC;AAGjF,eAAO,MAAM,QAAQ,EAAE,iBA8IrB,CAAC"}
1
+ {"version":3,"file":"muse.d.ts","sourceRoot":"","sources":["../../src/knowledge/muse.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAc,KAAK,iBAAiB,EAAc,MAAM,iBAAiB,CAAC;AAGjF,eAAO,MAAM,QAAQ,EAAE,iBAgJrB,CAAC"}
@@ -23,7 +23,6 @@ export const museCode = deepFreeze({
23
23
  baseFlags: ["exec", "--json"],
24
24
  subcommands: ["exec"],
25
25
  promptStyle: "positional",
26
- toolsFlag: null,
27
26
  streamFlags: [],
28
27
  idFlag: "--session-id",
29
28
  },
@@ -115,10 +114,14 @@ export const museCode = deepFreeze({
115
114
  max: 10000,
116
115
  render: { kind: "flag-value", flag: "--max-model-steps" },
117
116
  },
117
+ // read gates the write and shell categories; write is the harness
118
+ // default and emits nothing.
118
119
  access: {
119
- kind: "flag-list-by-value",
120
- flags: { read: ["--disable-write", "--disable-shell"], write: [] },
121
- render: { kind: "flag-list", flags: ["--disable-write", "--disable-shell"] },
120
+ kind: "access",
121
+ renders: {
122
+ read: { render: { kind: "flag-list", flags: ["--disable-write", "--disable-shell"] } },
123
+ write: null,
124
+ },
122
125
  },
123
126
  },
124
127
  // Phase 0 fixtures: muse-category-flags.md. No name lists; category
@@ -132,7 +135,6 @@ export const museCode = deepFreeze({
132
135
  includeFlag: null,
133
136
  excludeFlag: null,
134
137
  includeIsStrictAllowlist: false,
135
- composable: false,
136
138
  builtins: [],
137
139
  categories: [
138
140
  {
@@ -1 +1 @@
1
- {"version":3,"file":"muse.js","sourceRoot":"","sources":["../../src/knowledge/muse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"muse.js","sourceRoot":"","sources":["../../src/knowledge/muse.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"overrides.d.ts","sourceRoot":"","sources":["../../src/knowledge/overrides.ts"],"names":[],"mappings":"AAgBA,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAEjB,MAAM,iBAAiB,CAAC;AAIzB,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAS5E,eAAO,MAAM,kBAAkB,QAAO,aAAmC,CAAC;AAE1E;;sDAEsD;AACtD,eAAO,MAAM,kBAAkB;WAA2C,MAAM;UAAQ,MAAM;EAAK,CAAC;AAEpG,qBAAa,oBAAqB,SAAQ,KAAK;IAE3C,QAAQ,CAAC,IAAI,EAAE,MAAM;IAErB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM;IAH3B,YACW,IAAI,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,EACL,OAAO,CAAC,EAAE,MAAM,YAAA,EAM1B;CACF;AAiLD,sEAAsE;AACtE,eAAO,MAAM,cAAc,aAAc,MAAM,QAAQ,MAAM,KAAG,aAkD/D,CAAC"}
1
+ {"version":3,"file":"overrides.d.ts","sourceRoot":"","sources":["../../src/knowledge/overrides.ts"],"names":[],"mappings":"AAgBA,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAEjB,MAAM,iBAAiB,CAAC;AAKzB,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAS5E,eAAO,MAAM,kBAAkB,QAAO,aAAmC,CAAC;AAE1E;;sDAEsD;AACtD,eAAO,MAAM,kBAAkB;WAA2C,MAAM;UAAQ,MAAM;EAAK,CAAC;AAEpG,qBAAa,oBAAqB,SAAQ,KAAK;IAE3C,QAAQ,CAAC,IAAI,EAAE,MAAM;IAErB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM;IAH3B,YACW,IAAI,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,EACL,OAAO,CAAC,EAAE,MAAM,YAAA,EAM1B;CACF;AAiKD,sEAAsE;AACtE,eAAO,MAAM,cAAc,aAAc,MAAM,QAAQ,MAAM,KAAG,aAkD/D,CAAC"}
@@ -15,6 +15,7 @@
15
15
  import { claudeCode } from "./claude-code.js";
16
16
  import { codexCli } from "./codex.js";
17
17
  import { HARNESS_NAMES, SESSION_INPUT_KINDS, } from "./descriptor.js";
18
+ import { compileMatcher, MAX_MATCHERS_PER_KIND } from "./matchers.js";
18
19
  import { museCode } from "./muse.js";
19
20
  import { piCli } from "./pi.js";
20
21
  const SHARED_DESCRIPTORS = {
@@ -136,33 +137,21 @@ const mergeValue = (base, override, keyPath, refuse) => {
136
137
  return override;
137
138
  };
138
139
  const validateMatcherPattern = (pattern, flags, path, harness) => {
139
- const f = flags ?? "i";
140
- if (pattern.length > 200) {
141
- throw new OverrideRefusalError(path, `pattern over 200 characters: ${JSON.stringify(pattern.slice(0, 40))}`, harness);
142
- }
143
- if (pattern.length === 0) {
144
- throw new OverrideRefusalError(path, `pattern must not be empty`, harness);
145
- }
146
- if (f.includes("g") || f.includes("y")) {
147
- throw new OverrideRefusalError(path, `flags must not contain g or y (got ${JSON.stringify(f)})`, harness);
148
- }
149
- for (const ch of f) {
150
- if (!"imsu".includes(ch))
151
- throw new OverrideRefusalError(path, `flag ${JSON.stringify(ch)} outside imsu`, harness);
152
- }
140
+ // One compiler and one set of bounds, shared with the limits scanner
141
+ // (RFC-02 change 9); this loader only wraps the refusal.
153
142
  try {
154
- new RegExp(pattern, f);
143
+ compileMatcher(pattern, flags);
155
144
  }
156
145
  catch (e) {
157
- throw new OverrideRefusalError(path, `uncompilable pattern ${JSON.stringify(pattern)}: ${e.message}`, harness);
146
+ throw new OverrideRefusalError(path, e.message, harness);
158
147
  }
159
148
  };
160
149
  const validateMatchers = (desc, path, harness) => {
161
150
  const limitMatchers = desc.limitMatchers;
162
151
  const authMatchers = desc.authMatchers;
163
152
  if (Array.isArray(limitMatchers)) {
164
- if (limitMatchers.length > 64) {
165
- throw new OverrideRefusalError(path, `more than 64 limit matchers`, harness);
153
+ if (limitMatchers.length > MAX_MATCHERS_PER_KIND) {
154
+ throw new OverrideRefusalError(path, `more than ${MAX_MATCHERS_PER_KIND} limit matchers`, harness);
166
155
  }
167
156
  for (const m of limitMatchers) {
168
157
  if (!isPlain(m)) {
@@ -176,8 +165,8 @@ const validateMatchers = (desc, path, harness) => {
176
165
  }
177
166
  }
178
167
  if (Array.isArray(authMatchers)) {
179
- if (authMatchers.length > 64) {
180
- throw new OverrideRefusalError(path, `more than 64 auth matchers`, harness);
168
+ if (authMatchers.length > MAX_MATCHERS_PER_KIND) {
169
+ throw new OverrideRefusalError(path, `more than ${MAX_MATCHERS_PER_KIND} auth matchers`, harness);
181
170
  }
182
171
  for (const m of authMatchers) {
183
172
  if (!isPlain(m)) {
@@ -1 +1 @@
1
- {"version":3,"file":"overrides.js","sourceRoot":"","sources":["../../src/knowledge/overrides.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"overrides.js","sourceRoot":"","sources":["../../src/knowledge/overrides.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pi.d.ts","sourceRoot":"","sources":["../../src/knowledge/pi.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAc,KAAK,iBAAiB,EAAc,MAAM,iBAAiB,CAAC;AAGjF,eAAO,MAAM,KAAK,EAAE,iBA4LlB,CAAC"}
1
+ {"version":3,"file":"pi.d.ts","sourceRoot":"","sources":["../../src/knowledge/pi.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAc,KAAK,iBAAiB,EAAc,MAAM,iBAAiB,CAAC;AAGjF,eAAO,MAAM,KAAK,EAAE,iBA8LlB,CAAC"}
@@ -21,7 +21,6 @@ export const piCli = deepFreeze({
21
21
  baseFlags: ["-p", "--mode", "json"],
22
22
  subcommands: [],
23
23
  promptStyle: "positional",
24
- toolsFlag: null,
25
24
  streamFlags: [],
26
25
  idFlag: "--session-id",
27
26
  },
@@ -48,8 +47,10 @@ export const piCli = deepFreeze({
48
47
  // --mode rpc exists on 0.84.2 and its session semantics are now VERIFIED
49
48
  // against a live run (2026-08-19 spike, evidence at
50
49
  // test/fixtures/pi-rpc-spike): JSONL both directions, agent_settled
51
- // delimits turns, steer/follow_up queue mid-run (hcn never needs them -
52
- // it queues sends itself), identity is silent at startup and readable
50
+ // delimits turns, steer/follow_up queue mid-run (hcn keeps no queue of
51
+ // its own since ADR 0007 and writes a send when it arrives; a bare
52
+ // prompt mid-run is refused with success:false - spike fixture 05, a
53
+ // pending change), identity is silent at startup and readable
53
54
  // only via a get_state round trip, stdin EOF exits rc=0. The claude
54
55
  // slice remains the proven vertical (D-003); this entry is the second.
55
56
  sessionMode: {
@@ -72,7 +73,7 @@ export const piCli = deepFreeze({
72
73
  resumeFlag: "--session-id",
73
74
  input: { kind: "pi-rpc-prompt" },
74
75
  turnEnd: { type: "agent_settled" },
75
- identityProbe: { command: "get_state" },
76
+ identityProbe: { command: "get_state", responseIdField: "data.sessionId" },
76
77
  },
77
78
  output: {
78
79
  // pi -p prints plain text; --mode json emits structured v3 records
@@ -172,7 +173,9 @@ export const piCli = deepFreeze({
172
173
  },
173
174
  },
174
175
  },
175
- access: { kind: "tool-preset", render: { kind: "flag-value", flag: "--tools" } },
176
+ // read renders the read preset through --tools (strict allowlist);
177
+ // write is the harness default and emits nothing.
178
+ access: { kind: "access", renders: { read: "tool-preset", write: null } },
176
179
  },
177
180
  // Phase 0 fixtures: pi-both-tool-flags.md. Both list flags legal at once;
178
181
  // exclude subtracts from include. --tools is strict over BUILT-INS but
@@ -183,7 +186,6 @@ export const piCli = deepFreeze({
183
186
  includeFlag: "--tools",
184
187
  excludeFlag: "--exclude-tools",
185
188
  includeIsStrictAllowlist: true,
186
- composable: true,
187
189
  builtins: [
188
190
  { name: "read", defaultEnabled: true, canonical: "read" },
189
191
  { name: "bash", defaultEnabled: true, canonical: "shell" },
@@ -1 +1 @@
1
- {"version":3,"file":"pi.js","sourceRoot":"","sources":["../../src/knowledge/pi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pi.js","sourceRoot":"","sources":["../../src/knowledge/pi.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  export declare const DEFAULT_TURN_PROFILE: {
2
2
  readonly effort: "medium";
3
3
  readonly sandbox: "workspace-write";
4
+ readonly contextWindow: 272000;
4
5
  readonly discovery: {
5
6
  readonly tools: true;
6
7
  readonly instructionFiles: true;
@@ -1 +1 @@
1
- {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/knowledge/profile.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,oBAAoB;qBACvB,QAAQ;sBAKP,iBAAiB;;iBAMb,KAAK;iBAAQ,gBAAgB;iBAAQ,UAAU;iBAAQ,MAAM;;;;;oBAenE,WAAW;CAST,CAAC;AAEZ,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,oBAAoB,CAAC"}
1
+ {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/knowledge/profile.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,oBAAoB;qBACvB,QAAQ;sBAKP,iBAAiB;4BACX,MAAM;;iBAMR,KAAK;iBAAQ,gBAAgB;iBAAQ,UAAU;iBAAQ,MAAM;;;;;oBAenE,WAAW;CAST,CAAC;AAEZ,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,oBAAoB,CAAC"}
@@ -18,6 +18,7 @@ export const DEFAULT_TURN_PROFILE = deepFreeze({
18
18
  // profile tier. On the other three the dimension is unrenderable and
19
19
  // reports as divergence.
20
20
  sandbox: "workspace-write",
21
+ contextWindow: 272000,
21
22
  // Ratified: discovery fully ON. The harnesses' bare runs already
22
23
  // discover instruction files, skills, and extensions; the profile makes
23
24
  // that a stated contract. The off-spellings exist per harness
@@ -1 +1 @@
1
- {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/knowledge/profile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;IAC7C,MAAM,EAAE,QAAQ;IAChB,uEAAuE;IACvE,iEAAiE;IACjE,qEAAqE;IACrE,yBAAyB;IACzB,OAAO,EAAE,iBAAiB;IAC1B,iEAAiE;IACjE,wEAAwE;IACxE,8DAA8D;IAC9D,wEAAwE;IACxE,QAAQ;IACR,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAClF,qEAAqE;IACrE,mCAAmC;IACnC,QAAQ,EAAE,KAAK;IACf,+DAA+D;IAC/D,oEAAoE;IACpE,uEAAuE;IACvE,cAAc;IACd,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,kEAAkE;IAClE,gEAAgE;IAChE,sEAAsE;IACtE,mEAAmE;IACnE,+BAA+B;IAC/B,KAAK,EAAE,WAAW;IAClB,mEAAmE;IACnE,yDAAyD;IACzD,uEAAuE;IACvE,mEAAmE;IACnE,sEAAsE;IACtE,gEAAgE;IAChE,uEAAuE;IACvE,wCAAwC;CAChC,CAAC,CAAC"}
1
+ {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/knowledge/profile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;IAC7C,MAAM,EAAE,QAAQ;IAChB,uEAAuE;IACvE,iEAAiE;IACjE,qEAAqE;IACrE,yBAAyB;IACzB,OAAO,EAAE,iBAAiB;IAC1B,aAAa,EAAE,MAAM;IACrB,iEAAiE;IACjE,wEAAwE;IACxE,8DAA8D;IAC9D,wEAAwE;IACxE,QAAQ;IACR,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAClF,qEAAqE;IACrE,mCAAmC;IACnC,QAAQ,EAAE,KAAK;IACf,+DAA+D;IAC/D,oEAAoE;IACpE,uEAAuE;IACvE,cAAc;IACd,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,kEAAkE;IAClE,gEAAgE;IAChE,sEAAsE;IACtE,mEAAmE;IACnE,+BAA+B;IAC/B,KAAK,EAAE,WAAW;IAClB,mEAAmE;IACnE,yDAAyD;IACzD,uEAAuE;IACvE,mEAAmE;IACnE,sEAAsE;IACtE,gEAAgE;IAChE,uEAAuE;IACvE,wCAAwC;CAChC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dungle-scrubs/harness-cli-normalizer",
3
- "version": "0.6.0",
3
+ "version": "0.6.1",
4
4
  "description": "One stable CLI to four coding-agent harnesses: normalized flags, defaults, and events.",
5
5
  "license": "MIT",
6
6
  "author": "Kevin Frilot",
package/src/cli/args.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { readFileSync } from "node:fs";
2
2
  import { parseArgs } from "node:util";
3
3
  import type { DiscoveryOptions, TurnOptions } from "../interpretation/argv.js";
4
+ import { isQuestionMode, QUESTION_MODES } from "../interpretation/question.js";
4
5
  import { ArgvRefusalError } from "../interpretation/refusal.js";
5
6
 
6
7
  export type ParsedPromptSource =
@@ -49,7 +50,6 @@ export const parseEnvEntries = (
49
50
  if (eq === -1) {
50
51
  throw new ArgvRefusalError({
51
52
  issue: "invalid-env",
52
- harness: "claude",
53
53
  supported: ["KEY=VAL"],
54
54
  detail: entry,
55
55
  });
@@ -59,7 +59,6 @@ export const parseEnvEntries = (
59
59
  if (!/^[A-Za-z_][A-Za-z0-9_]*$/.test(key) || value.includes("\0") || key.includes("\0")) {
60
60
  throw new ArgvRefusalError({
61
61
  issue: "invalid-env",
62
- harness: "claude",
63
62
  supported: ["keys must match ^[A-Za-z_][A-Za-z0-9_]*$ and contain no NUL"],
64
63
  detail: entry,
65
64
  });
@@ -82,7 +81,6 @@ export const resolvePrompt = (args: {
82
81
  if (count === 0) {
83
82
  throw new ArgvRefusalError({
84
83
  issue: "invalid-option-value",
85
- harness: "claude",
86
84
  supported: ["provide prompt via positional, --prompt, or --prompt-file"],
87
85
  detail: "missing prompt",
88
86
  });
@@ -90,7 +88,6 @@ export const resolvePrompt = (args: {
90
88
  if (count > 1) {
91
89
  throw new ArgvRefusalError({
92
90
  issue: "invalid-option-value",
93
- harness: "claude",
94
91
  supported: ["use one of positional, --prompt, or --prompt-file"],
95
92
  detail: "mutual exclusion",
96
93
  });
@@ -122,7 +119,6 @@ export const resolvePromptAsync = async (args: {
122
119
  if (count === 0) {
123
120
  throw new ArgvRefusalError({
124
121
  issue: "invalid-option-value",
125
- harness: "claude",
126
122
  supported: ["provide prompt via positional, --prompt, or --prompt-file"],
127
123
  detail: "missing prompt",
128
124
  });
@@ -130,7 +126,6 @@ export const resolvePromptAsync = async (args: {
130
126
  if (count > 1) {
131
127
  throw new ArgvRefusalError({
132
128
  issue: "invalid-option-value",
133
- harness: "claude",
134
129
  supported: ["use one of positional, --prompt, or --prompt-file"],
135
130
  detail: "mutual exclusion",
136
131
  });
@@ -148,15 +143,20 @@ export const resolvePromptAsync = async (args: {
148
143
  return { prompt: content, source: "prompt-file" };
149
144
  };
150
145
 
146
+ /** Parsed turn options plus the skill names as typed, which the command
147
+ * resolves against the registry before they become a turn option. */
148
+ export type ParsedTurnOptions = TurnOptions & { readonly skillNames?: readonly string[] };
149
+
151
150
  /**
152
151
  * Build TurnOptions from parsed flag values. Shared between run and inspect --argv.
153
152
  */
154
- export const parseTurnOptions = (values: Record<string, unknown>): TurnOptions => {
153
+ export const parseTurnOptions = (values: Record<string, unknown>): ParsedTurnOptions => {
155
154
  const opts: Record<string, unknown> = {};
156
155
 
157
156
  if (values.model !== undefined) opts.model = values.model;
158
157
  if (values.effort !== undefined) opts.effort = values.effort;
159
158
  if (values.sandbox !== undefined) opts.sandbox = values.sandbox;
159
+ if (values["context-window"] !== undefined) opts.contextWindow = Number(values["context-window"]);
160
160
  if (values.provider !== undefined) opts.provider = values.provider;
161
161
  if (values.tools !== undefined) {
162
162
  const raw = String(values.tools);
@@ -167,9 +167,10 @@ export const parseTurnOptions = (values: Record<string, unknown>): TurnOptions =
167
167
  opts.excludeTools = raw.length === 0 ? [] : raw.split(",").map((s) => s.trim());
168
168
  }
169
169
  if (values.skills !== undefined) {
170
+ // Names as typed; the command resolves them against the registry and
171
+ // builds the skills turn option (picks plus known names) from them.
170
172
  const raw = String(values.skills);
171
- (opts as Record<string, unknown>).skills =
172
- raw.length === 0 ? [] : raw.split(",").map((s) => s.trim());
173
+ opts.skillNames = raw.length === 0 ? [] : raw.split(",").map((s) => s.trim());
173
174
  }
174
175
  if (values.autonomy === true) opts.autonomy = true;
175
176
  else if (values["no-autonomy"] === true) opts.autonomy = false;
@@ -181,16 +182,15 @@ export const parseTurnOptions = (values: Record<string, unknown>): TurnOptions =
181
182
  else if (values["no-shell"] === true) opts.shell = false;
182
183
  if (values.questions !== undefined) {
183
184
  const v = String(values.questions);
184
- if (!["ask", "assume", "none"].includes(v)) {
185
+ if (!isQuestionMode(v)) {
185
186
  throw new ArgvRefusalError({
186
187
  issue: "invalid-option-value",
187
- harness: "claude",
188
188
  option: "questions",
189
- supported: ["ask", "assume", "none"],
189
+ supported: [...QUESTION_MODES],
190
190
  detail: v,
191
191
  });
192
192
  }
193
- (opts as Record<string, unknown>).questions = v;
193
+ opts.questions = v;
194
194
  }
195
195
  if (values["system-prompt"] !== undefined) opts.systemPrompt = String(values["system-prompt"]);
196
196
  if (values["append-system-prompt"] !== undefined)
@@ -201,7 +201,6 @@ export const parseTurnOptions = (values: Record<string, unknown>): TurnOptions =
201
201
  if (!Number.isFinite(n)) {
202
202
  throw new ArgvRefusalError({
203
203
  issue: "invalid-option-value",
204
- harness: "claude",
205
204
  option: "maxSteps",
206
205
  supported: ["integer 1-10000"],
207
206
  detail: String(values["max-steps"]),
@@ -234,7 +233,22 @@ export const parseTurnOptions = (values: Record<string, unknown>): TurnOptions =
234
233
  if (values.access !== undefined) opts.access = String(values.access);
235
234
 
236
235
  // prompt will be set by caller after resolvePrompt
237
- return opts as unknown as TurnOptions;
236
+ return opts as unknown as ParsedTurnOptions;
237
+ };
238
+
239
+ /** `--resume` and `--session-id` are aliases for one session id; both at
240
+ * once refuses. The one check every command calls (run, inspect, session). */
241
+ export const resumeIdOf = (values: Record<string, unknown>): string | undefined => {
242
+ if (values.resume !== undefined && values["session-id"] !== undefined) {
243
+ throw new ArgvRefusalError({
244
+ issue: "mutually-exclusive-options",
245
+ supported: ["--resume or --session-id, not both (--session-id is an alias for --resume)"],
246
+ detail: "both --resume and --session-id given",
247
+ });
248
+ }
249
+ if (values.resume !== undefined) return String(values.resume);
250
+ if (values["session-id"] !== undefined) return String(values["session-id"]);
251
+ return undefined;
238
252
  };
239
253
 
240
254
  export const parseRunExtra = (
@@ -256,8 +270,7 @@ export const parseRunExtra = (
256
270
  if (!Number.isFinite(n) || n < 0 || !Number.isInteger(n)) {
257
271
  throw new ArgvRefusalError({
258
272
  issue: "invalid-option-value",
259
- harness: "claude",
260
- option: "maxSteps",
273
+ option: "timeout",
261
274
  supported: ["whole seconds, >= 0 (0 disables)"],
262
275
  detail: String(values.timeout),
263
276
  });
@@ -265,16 +278,8 @@ export const parseRunExtra = (
265
278
  extra.timeoutSeconds = n;
266
279
  }
267
280
  if (values.cwd !== undefined) extra.cwd = String(values.cwd);
268
- if (values.resume !== undefined && values["session-id"] !== undefined) {
269
- throw new ArgvRefusalError({
270
- issue: "mutually-exclusive-options",
271
- harness: "claude",
272
- supported: ["--resume or --session-id, not both (--session-id is an alias for --resume)"],
273
- detail: "both --resume and --session-id given",
274
- });
275
- }
276
- if (values.resume !== undefined) extra.resume = String(values.resume);
277
- if (values["session-id"] !== undefined) extra.resume = String(values["session-id"]);
281
+ const resume = resumeIdOf(values);
282
+ if (resume !== undefined) extra.resume = resume;
278
283
  if (values.env !== undefined) {
279
284
  // parseArgs with multiple:true gives string[] ; else string
280
285
  const list = values.env as string | string[];
@@ -294,6 +299,7 @@ const KNOWN_FLAGS = new Set([
294
299
  "--model",
295
300
  "--effort",
296
301
  "--sandbox",
302
+ "--context-window",
297
303
  "--provider",
298
304
  "--tools",
299
305
  "--exclude-tools",
@@ -333,6 +339,7 @@ const FLAGS_WITH_VALUE = new Set([
333
339
  "--model",
334
340
  "--effort",
335
341
  "--sandbox",
342
+ "--context-window",
336
343
  "--provider",
337
344
  "--tools",
338
345
  "--exclude-tools",
@@ -448,6 +455,7 @@ export const parseCommonFlags = (
448
455
  model: { type: "string" as const },
449
456
  effort: { type: "string" as const },
450
457
  sandbox: { type: "string" as const },
458
+ "context-window": { type: "string" as const },
451
459
  provider: { type: "string" as const },
452
460
  tools: { type: "string" as const },
453
461
  "exclude-tools": { type: "string" as const },
package/src/cli/check.ts CHANGED
@@ -12,7 +12,10 @@ interface Row {
12
12
  status: VersionStatus;
13
13
  }
14
14
 
15
- const npmLatest = async (pkg: string): Promise<string | null> => {
15
+ /** The latest published version of an npm package, or null when the
16
+ * registry cannot be reached. One owner; the version-check script imports
17
+ * it (RFC-02 change 12). */
18
+ export const npmLatest = async (pkg: string): Promise<string | null> => {
16
19
  try {
17
20
  const res = await fetch(`https://registry.npmjs.org/${pkg}`, {
18
21
  headers: { accept: "application/vnd.npm.install-v1+json" },
@@ -27,7 +30,9 @@ const npmLatest = async (pkg: string): Promise<string | null> => {
27
30
  }
28
31
  };
29
32
 
30
- const installedVersion = (bin: string): string | null => {
33
+ /** The locally installed CLI's version from `<bin> --version`, or null
34
+ * when the binary is absent or reports none. */
35
+ export const installedVersion = (bin: string): string | null => {
31
36
  try {
32
37
  const out = execFileSync(bin, ["--version"], { encoding: "utf8", timeout: 10_000 });
33
38
  const match = out.match(/\d+\.\d+\.\d+(?:[.+-][0-9A-Za-z.-]+)?/);
@@ -37,7 +42,9 @@ const installedVersion = (bin: string): string | null => {
37
42
  }
38
43
  };
39
44
 
40
- const resolveLatest = async (
45
+ /** Where a descriptor's latest version is found, per its versionSource:
46
+ * the npm registry, or the installed binary. */
47
+ export const resolveLatest = async (
41
48
  h: HarnessDescriptor,
42
49
  ): Promise<{ latest: string | null; source: string }> => {
43
50
  if (h.versionSource.kind === "npm") {