@lannguyensi/harness 0.40.0 → 0.42.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.
Files changed (189) hide show
  1. package/CHANGELOG.md +68 -0
  2. package/README.md +9 -0
  3. package/dist/cli/adopt/derive.d.ts +15 -0
  4. package/dist/cli/adopt/derive.js +34 -7
  5. package/dist/cli/adopt/derive.js.map +1 -1
  6. package/dist/cli/adopt/index.d.ts +30 -0
  7. package/dist/cli/adopt/index.js +23 -3
  8. package/dist/cli/adopt/index.js.map +1 -1
  9. package/dist/cli/apply/generate-settings.d.ts +14 -1
  10. package/dist/cli/apply/generate-settings.js +7 -3
  11. package/dist/cli/apply/generate-settings.js.map +1 -1
  12. package/dist/cli/approve/stdin-report.js +2 -0
  13. package/dist/cli/approve/stdin-report.js.map +1 -1
  14. package/dist/cli/approve/understanding.js +28 -0
  15. package/dist/cli/approve/understanding.js.map +1 -1
  16. package/dist/cli/doctor/claude-mcp.d.ts +50 -0
  17. package/dist/cli/doctor/claude-mcp.js +170 -0
  18. package/dist/cli/doctor/claude-mcp.js.map +1 -0
  19. package/dist/cli/doctor/codex.d.ts +8 -0
  20. package/dist/cli/doctor/codex.js +8 -1
  21. package/dist/cli/doctor/codex.js.map +1 -1
  22. package/dist/cli/doctor/format.js +60 -11
  23. package/dist/cli/doctor/format.js.map +1 -1
  24. package/dist/cli/doctor/index.d.ts +46 -0
  25. package/dist/cli/doctor/index.js +155 -29
  26. package/dist/cli/doctor/index.js.map +1 -1
  27. package/dist/cli/doctor/npm-bin-path.js +42 -0
  28. package/dist/cli/doctor/npm-bin-path.js.map +1 -1
  29. package/dist/cli/doctor/types.d.ts +37 -0
  30. package/dist/cli/doctor/types.js.map +1 -1
  31. package/dist/cli/dry-run.js +5 -0
  32. package/dist/cli/dry-run.js.map +1 -1
  33. package/dist/cli/explain.js +16 -3
  34. package/dist/cli/explain.js.map +1 -1
  35. package/dist/cli/index.js +328 -11
  36. package/dist/cli/index.js.map +1 -1
  37. package/dist/cli/init/agent-tasks-auth.js +32 -0
  38. package/dist/cli/init/agent-tasks-auth.js.map +1 -1
  39. package/dist/cli/init/composer.js +13 -40
  40. package/dist/cli/init/composer.js.map +1 -1
  41. package/dist/cli/init/dependencies.js +21 -0
  42. package/dist/cli/init/dependencies.js.map +1 -1
  43. package/dist/cli/init/detect.d.ts +20 -3
  44. package/dist/cli/init/detect.js +34 -36
  45. package/dist/cli/init/detect.js.map +1 -1
  46. package/dist/cli/init/index.d.ts +18 -0
  47. package/dist/cli/init/index.js +28 -2
  48. package/dist/cli/init/index.js.map +1 -1
  49. package/dist/cli/init/interactive.d.ts +41 -0
  50. package/dist/cli/init/interactive.js +421 -6
  51. package/dist/cli/init/interactive.js.map +1 -1
  52. package/dist/cli/init/profiles.d.ts +2 -2
  53. package/dist/cli/init/profiles.js +10 -1
  54. package/dist/cli/init/profiles.js.map +1 -1
  55. package/dist/cli/init/templates.d.ts +1 -1
  56. package/dist/cli/init/templates.js +217 -8
  57. package/dist/cli/init/templates.js.map +1 -1
  58. package/dist/cli/list.js +3 -1
  59. package/dist/cli/list.js.map +1 -1
  60. package/dist/cli/main.js +10 -0
  61. package/dist/cli/main.js.map +1 -1
  62. package/dist/cli/pack/hook-bootstrap.d.ts +24 -0
  63. package/dist/cli/pack/hook-bootstrap.js +47 -1
  64. package/dist/cli/pack/hook-bootstrap.js.map +1 -1
  65. package/dist/cli/pack/hook-branch-protection.js +9 -1
  66. package/dist/cli/pack/hook-branch-protection.js.map +1 -1
  67. package/dist/cli/pack/hook-codex-post-tool-use.d.ts +25 -0
  68. package/dist/cli/pack/hook-codex-post-tool-use.js +160 -0
  69. package/dist/cli/pack/hook-codex-post-tool-use.js.map +1 -0
  70. package/dist/cli/pack/hook-codex-pre-tool-use.d.ts +1 -0
  71. package/dist/cli/pack/hook-codex-pre-tool-use.js +43 -10
  72. package/dist/cli/pack/hook-codex-pre-tool-use.js.map +1 -1
  73. package/dist/cli/pack/hook-codex-stop.js +1 -8
  74. package/dist/cli/pack/hook-codex-stop.js.map +1 -1
  75. package/dist/cli/pack/hook-post-merge-gate-record.d.ts +30 -0
  76. package/dist/cli/pack/hook-post-merge-gate-record.js +153 -0
  77. package/dist/cli/pack/hook-post-merge-gate-record.js.map +1 -0
  78. package/dist/cli/pack/hook-post-merge-gate.d.ts +28 -0
  79. package/dist/cli/pack/hook-post-merge-gate.js +244 -0
  80. package/dist/cli/pack/hook-post-merge-gate.js.map +1 -0
  81. package/dist/cli/pack/hook-post-tool-use.js +16 -131
  82. package/dist/cli/pack/hook-post-tool-use.js.map +1 -1
  83. package/dist/cli/pack/hook-pre-tool-use.js +54 -2
  84. package/dist/cli/pack/hook-pre-tool-use.js.map +1 -1
  85. package/dist/cli/pack/hook-solution-acceptance-writeguard.js +148 -2
  86. package/dist/cli/pack/hook-solution-acceptance-writeguard.js.map +1 -1
  87. package/dist/cli/pack/hook-stay-in-scope.js +63 -20
  88. package/dist/cli/pack/hook-stay-in-scope.js.map +1 -1
  89. package/dist/cli/pack/hook-track-active-claim.js +33 -9
  90. package/dist/cli/pack/hook-track-active-claim.js.map +1 -1
  91. package/dist/cli/pack/index.d.ts +2 -1
  92. package/dist/cli/pack/index.js +2 -1
  93. package/dist/cli/pack/index.js.map +1 -1
  94. package/dist/cli/pack/mutate.d.ts +19 -0
  95. package/dist/cli/pack/mutate.js +38 -0
  96. package/dist/cli/pack/mutate.js.map +1 -1
  97. package/dist/cli/pack/reseed.d.ts +19 -0
  98. package/dist/cli/pack/reseed.js +118 -0
  99. package/dist/cli/pack/reseed.js.map +1 -0
  100. package/dist/cli/pack/understanding-report-schema-hint.js +1 -1
  101. package/dist/cli/pack/understanding-report-schema-hint.js.map +1 -1
  102. package/dist/cli/pause/index.js +12 -3
  103. package/dist/cli/pause/index.js.map +1 -1
  104. package/dist/cli/record/index.d.ts +64 -0
  105. package/dist/cli/record/index.js +211 -0
  106. package/dist/cli/record/index.js.map +1 -0
  107. package/dist/cli/session-start/index.d.ts +21 -0
  108. package/dist/cli/session-start/index.js +160 -25
  109. package/dist/cli/session-start/index.js.map +1 -1
  110. package/dist/cli/session-start/toolchain-parity.d.ts +149 -0
  111. package/dist/cli/session-start/toolchain-parity.js +618 -0
  112. package/dist/cli/session-start/toolchain-parity.js.map +1 -0
  113. package/dist/cli/uninstall/index.d.ts +73 -1
  114. package/dist/cli/uninstall/index.js +134 -2
  115. package/dist/cli/uninstall/index.js.map +1 -1
  116. package/dist/cli/validate/checks.js +8 -0
  117. package/dist/cli/validate/checks.js.map +1 -1
  118. package/dist/io/claude-mcp.d.ts +258 -0
  119. package/dist/io/claude-mcp.js +544 -0
  120. package/dist/io/claude-mcp.js.map +1 -0
  121. package/dist/policies/ledger-client.d.ts +34 -1
  122. package/dist/policies/ledger-client.js +21 -16
  123. package/dist/policies/ledger-client.js.map +1 -1
  124. package/dist/policy-packs/builtin/branch-protection-runtime.d.ts +4 -2
  125. package/dist/policy-packs/builtin/branch-protection-runtime.js +4 -2
  126. package/dist/policy-packs/builtin/branch-protection-runtime.js.map +1 -1
  127. package/dist/policy-packs/builtin/branch-protection.d.ts +10 -1
  128. package/dist/policy-packs/builtin/branch-protection.js +17 -0
  129. package/dist/policy-packs/builtin/branch-protection.js.map +1 -1
  130. package/dist/policy-packs/builtin/post-merge-gate-runtime.d.ts +195 -0
  131. package/dist/policy-packs/builtin/post-merge-gate-runtime.js +290 -0
  132. package/dist/policy-packs/builtin/post-merge-gate-runtime.js.map +1 -0
  133. package/dist/policy-packs/builtin/post-merge-gate.d.ts +56 -0
  134. package/dist/policy-packs/builtin/post-merge-gate.js +291 -0
  135. package/dist/policy-packs/builtin/post-merge-gate.js.map +1 -0
  136. package/dist/policy-packs/builtin/solution-acceptance-runtime.js +28 -13
  137. package/dist/policy-packs/builtin/solution-acceptance-runtime.js.map +1 -1
  138. package/dist/policy-packs/builtin/understanding-before-execution-runtime.d.ts +197 -24
  139. package/dist/policy-packs/builtin/understanding-before-execution-runtime.js +342 -40
  140. package/dist/policy-packs/builtin/understanding-before-execution-runtime.js.map +1 -1
  141. package/dist/policy-packs/builtin/understanding-before-execution.d.ts +26 -1
  142. package/dist/policy-packs/builtin/understanding-before-execution.js +302 -17
  143. package/dist/policy-packs/builtin/understanding-before-execution.js.map +1 -1
  144. package/dist/policy-packs/registry.d.ts +23 -2
  145. package/dist/policy-packs/registry.js +31 -2
  146. package/dist/policy-packs/registry.js.map +1 -1
  147. package/dist/policy-packs/ux-compare.d.ts +14 -0
  148. package/dist/policy-packs/ux-compare.js +58 -0
  149. package/dist/policy-packs/ux-compare.js.map +1 -0
  150. package/dist/policy-packs/ux-drift-check.d.ts +27 -0
  151. package/dist/policy-packs/ux-drift-check.js +78 -0
  152. package/dist/policy-packs/ux-drift-check.js.map +1 -0
  153. package/dist/probes/mcp.d.ts +13 -0
  154. package/dist/probes/mcp.js +57 -0
  155. package/dist/probes/mcp.js.map +1 -1
  156. package/dist/runtime/approval-signing.d.ts +82 -0
  157. package/dist/runtime/approval-signing.js +275 -0
  158. package/dist/runtime/approval-signing.js.map +1 -0
  159. package/dist/runtime/git-context.d.ts +50 -0
  160. package/dist/runtime/git-context.js +108 -1
  161. package/dist/runtime/git-context.js.map +1 -1
  162. package/dist/runtime/hermetic-spawn-guard.d.ts +25 -0
  163. package/dist/runtime/hermetic-spawn-guard.js +136 -0
  164. package/dist/runtime/hermetic-spawn-guard.js.map +1 -0
  165. package/dist/runtime/intercept.js +62 -5
  166. package/dist/runtime/intercept.js.map +1 -1
  167. package/dist/runtime/ledger-writer.d.ts +27 -0
  168. package/dist/runtime/ledger-writer.js +46 -0
  169. package/dist/runtime/ledger-writer.js.map +1 -0
  170. package/dist/runtime/pause-sentinel.js +14 -3
  171. package/dist/runtime/pause-sentinel.js.map +1 -1
  172. package/dist/runtime/read-only-bash.js +118 -0
  173. package/dist/runtime/read-only-bash.js.map +1 -1
  174. package/dist/runtime/recovery-git-commit.d.ts +22 -0
  175. package/dist/runtime/recovery-git-commit.js +284 -0
  176. package/dist/runtime/recovery-git-commit.js.map +1 -0
  177. package/dist/runtime/tool-name-aliases.d.ts +1 -0
  178. package/dist/runtime/tool-name-aliases.js +7 -1
  179. package/dist/runtime/tool-name-aliases.js.map +1 -1
  180. package/dist/schema/index.d.ts +94 -42
  181. package/dist/schema/index.js +5 -0
  182. package/dist/schema/index.js.map +1 -1
  183. package/dist/schema/policies.d.ts +56 -44
  184. package/dist/schema/policies.js +79 -9
  185. package/dist/schema/policies.js.map +1 -1
  186. package/dist/schema/toolchain-parity.d.ts +18 -0
  187. package/dist/schema/toolchain-parity.js +35 -0
  188. package/dist/schema/toolchain-parity.js.map +1 -0
  189. package/package.json +4 -2
@@ -17,6 +17,40 @@
17
17
  // (covers `echo >`, `$SOLUTION_VERDICT_DIR` spellings, `tee`, `mv`/`cp`/
18
18
  // `ln`/`install`, `python3 -c '...path...'`, and `chmod`/`chattr` that
19
19
  // would loosen perms) — or whose shell cwd is inside the dir.
20
+ // - Bash `cd` whose RESOLVED target is inside the verdict dir. `cd` itself
21
+ // is provably read-only (task fb67b402 added it to the shared
22
+ // read-only-bash floor: it mutates only the invoking shell's own cwd,
23
+ // never the filesystem), so it no longer reaches the "not read-only"
24
+ // checks below. But stepping into the dir is the setup half of a
25
+ // two-call forge (`cd <dir>` then, in a LATER un-chained Bash call,
26
+ // a bare relative write): this pre-check keeps that first step blocked
27
+ // as defense-in-depth, ahead of (not instead of) the cwd-inside check
28
+ // below, which is what actually closes the later relative-write call
29
+ // once cwd has genuinely moved. A `cd` target that `path.resolve`
30
+ // cannot literally evaluate does NOT get `cd`'s read-only fast path
31
+ // either: it falls through to the same reference-based checks as any
32
+ // other non-read-only Bash. `CD_TARGET_UNRESOLVABLE_CHARS` documents
33
+ // exactly WHICH expansions this enumerates (quoting, `$`/env-var,
34
+ // `~`, glob, and `{...}` brace expansion) — that list is what this
35
+ // check catches, not a claim that every shell-expansion class is
36
+ // closed. Known-open residual, pre-existing (not introduced by this
37
+ // branch, since it applies to `bashReferencesVerdictDir`'s textual
38
+ // match on ANY Bash command, not just `cd`): a backslash-escaped
39
+ // spelling of the leaf, e.g. `cd <parent>/solution\-verdicts`, still
40
+ // navigates into the dir under bash (verified against bash 3.2.57)
41
+ // while `bashReferencesVerdictDir` returns false — the backslash
42
+ // breaks the literal-leaf substring match and no metacharacter here
43
+ // triggers the glob/brace fallback either. Closing it needs
44
+ // shell-unescaping in the textual check itself, which is more than
45
+ // this task absorbs; do not assume the class is closed.
46
+ // A SECOND residual of the same class, and on a macOS operator
47
+ // machine the more reachable of the two: case variance.
48
+ // `cd <parent>/SOLUTION-VERDICTS` navigates into the dir on a
49
+ // case-insensitive APFS volume, but `isInsideDir` compares with a
50
+ // case-sensitive `path.relative` and the textual check uses a
51
+ // case-sensitive `includes`, so both return false. Also allowed:
52
+ // a trailing backslash, `cd <DIR>\`. Both pre-existing; closing
53
+ // them needs case-folding in the textual check.
20
54
  //
21
55
  // Pure reads (`cat <dir>/x.json`) are allowed so the guard is not over-broad.
22
56
  //
@@ -30,7 +64,10 @@
30
64
  // write paths above. A path constructed at runtime inside an interpreter
31
65
  // with no textual reference is NOT caught; marker signing (a cross-repo
32
66
  // follow-up) closes content-authenticity against an unguarded write
33
- // primitive.
67
+ // primitive. The `cd`-target check added later (task fb67b402) has its own
68
+ // enumerated, not exhaustive, expansion list — see the bullet above and
69
+ // `CD_TARGET_UNRESOLVABLE_CHARS`'s docstring for the backslash-escaping
70
+ // residual specifically.
34
71
  import { bashReferencesVerdictDir, isInsideDir, PACK_NAME, verdictDir as resolveVerdictDir, } from "../../policy-packs/builtin/solution-acceptance-runtime.js";
35
72
  import { isReadOnlyBashCommand } from "../../runtime/read-only-bash.js";
36
73
  import { checkHookPause, readStdin } from "./hook-bootstrap.js";
@@ -60,6 +97,94 @@ function bashCommandOf(toolInput) {
60
97
  const cmd = toolInput["command"];
61
98
  return typeof cmd === "string" ? cmd : "";
62
99
  }
100
+ /**
101
+ * Extract `cd`'s destination argument from a Bash command string, or null
102
+ * when the command is not a `cd` invocation or has no statically resolvable
103
+ * destination. Whitespace-tokenized, same as `read-only-bash.ts`'s own
104
+ * classifier (this hook does not shell-parse either).
105
+ *
106
+ * Deliberately narrow:
107
+ * - Only fires when the FIRST token is exactly `cd`. `env cd x` or a
108
+ * chained `foo && cd x` do not match here (tokens[0] would be `env` /
109
+ * `foo`); those are unaffected by this pre-check and are still governed
110
+ * by the existing not-read-only + `bashReferencesVerdictDir` checks
111
+ * below, which already close the `cd <parent> && write <relative>`
112
+ * descent via the leaf-segment match.
113
+ * - `cd`'s own flags (`-L`, `-P`, `-e`, `-@`, and combinations) are
114
+ * skipped to find the first positional path argument.
115
+ * - `cd -` (switch to `$OLDPWD`) and a bare `cd` (goes to `$HOME`) have no
116
+ * destination this function can resolve without ambient shell state;
117
+ * both return null (not flagged), the same conservative stance as the
118
+ * rest of this module's enumerated-path checks.
119
+ * - A single layer of surrounding quotes (`"..."` or `'...'`) is stripped
120
+ * from the returned token before the caller does anything with it, so
121
+ * `cd "<path>"` and `cd <path>` are treated identically (both the
122
+ * resolved-path inside-dir check AND the unresolvable-chars check see
123
+ * the same unquoted value). Without this, a quoted literal that merely
124
+ * shares a text prefix with the verdict dir (`cd "<dir>-decoy"`) would
125
+ * route to the textual leaf match and be wrongly blocked, while the
126
+ * unquoted `cd <dir>-decoy` correctly passes via the resolved-path
127
+ * check — spelling-dependent behavior for what is the same destination.
128
+ */
129
+ function cdTargetArgument(command) {
130
+ const tokens = command.trim().split(/\s+/);
131
+ if (tokens[0] !== "cd")
132
+ return null;
133
+ for (let i = 1; i < tokens.length; i += 1) {
134
+ const t = tokens[i];
135
+ if (t === undefined)
136
+ break;
137
+ if (t === "-")
138
+ return null;
139
+ if (t.startsWith("-"))
140
+ continue;
141
+ return stripSurroundingQuotes(t);
142
+ }
143
+ return null;
144
+ }
145
+ /**
146
+ * Strip one layer of surrounding double or single quotes from `token`, or
147
+ * return it unchanged if it is not fully wrapped in a matching pair. Does
148
+ * NOT attempt any other shell-quoting semantics (no backslash-escape
149
+ * handling, no nested-quote handling) — this is a narrow normalization so a
150
+ * simple quoted literal reads the same as its unquoted form, not a shell
151
+ * parser.
152
+ */
153
+ function stripSurroundingQuotes(token) {
154
+ if (token.length >= 2 &&
155
+ ((token.startsWith('"') && token.endsWith('"')) ||
156
+ (token.startsWith("'") && token.endsWith("'")))) {
157
+ return token.slice(1, -1);
158
+ }
159
+ return token;
160
+ }
161
+ /**
162
+ * Characters/sequences that make a `cd` destination token something
163
+ * `path.resolve` cannot literally evaluate: quoting (`"`, `'` — the residual
164
+ * case after `stripSurroundingQuotes` has already removed a clean single
165
+ * layer, e.g. an unbalanced or embedded quote), env-var expansion (`$`),
166
+ * home-directory expansion (`~`), shell globbing (`*`, `?`, `[`), and brace
167
+ * expansion (`{`, `}`, `,`). `path.resolve` treats the raw token as a
168
+ * literal path segment, so `cd "$SOLUTION_VERDICT_DIR"`, `cd
169
+ * ~/.../solution-verdicts`, or `cd <parent>/{solution-verdicts,x}` all
170
+ * resolve to a nonsense path that is never "inside" the dir even though a
171
+ * real shell would expand each of them TO (or, for the brace form, INTO)
172
+ * the dir. A `cd` target containing any of these must therefore NOT take
173
+ * the read-only fast path in `evaluateWriteGuard`: control must fall
174
+ * through to the same `bashReferencesVerdictDir` text-reference check any
175
+ * other non-read-only Bash command goes through, which DOES recognize
176
+ * these spellings (the env-var token, the `agent-grounding/solution-verdicts`
177
+ * tail, and — after the matching widening in
178
+ * `solution-acceptance-runtime.ts`'s glob-metacharacter test — glob- and
179
+ * brace-obscured leaf words).
180
+ *
181
+ * This list is enumerated, not exhaustive: it is exactly the expansion
182
+ * classes this check has been reasoned about, not a claim that every way a
183
+ * shell can rewrite a `cd` argument is covered. A known-open residual
184
+ * (pre-existing, not introduced by this check) is backslash escaping — see
185
+ * the module header's "Known-open residual" note.
186
+ */
187
+ const CD_TARGET_UNRESOLVABLE_CHARS = /[$~*?[{},"']/;
63
188
  /**
64
189
  * Pure write-guard decision for a tool event. Exported for direct unit
65
190
  * testing of the full forge-attempt matrix without spinning up the CLI.
@@ -100,7 +225,28 @@ export function evaluateWriteGuard(toolName, toolInput, dir, cwd) {
100
225
  const command = bashCommandOf(toolInput);
101
226
  if (command === "")
102
227
  return { blocked: false, reason: "empty Bash command" };
103
- if (isReadOnlyBashCommand(command)) {
228
+ // Defense-in-depth, ahead of the read-only fast path below: `cd` itself
229
+ // cannot write, but `cd`ing into the verdict dir is the setup half of a
230
+ // two-call forge (see the module header). Only a RESOLVED-path check
231
+ // (via the shared `isInsideDir`, not a substring match) so a sibling
232
+ // that merely shares a text prefix with the dir (`solution-verdicts-decoy`,
233
+ // or a parent directory of it) is not wrongly flagged.
234
+ const cdTarget = cdTargetArgument(command);
235
+ if (cdTarget !== null && isInsideDir(cdTarget, dir, cwd)) {
236
+ return {
237
+ blocked: true,
238
+ reason: `cd targets the harness-protected solution-verdict dir (${dir}); stepping into it would set up a later un-chained relative write to forge the verdict marker`,
239
+ };
240
+ }
241
+ // A `cd` target containing one of the enumerated unresolvable
242
+ // expansions (see `CD_TARGET_UNRESOLVABLE_CHARS`'s docstring for the
243
+ // exact list and its non-exhaustive scope) must not take `cd`'s
244
+ // read-only fast path below: without this, `cd "$SOLUTION_VERDICT_DIR"`
245
+ // etc. would be waved through by `isReadOnlyBashCommand` (true for ANY
246
+ // `cd`, per the shared read-only-bash floor) before ever reaching the
247
+ // reference check that recognizes these exact spellings.
248
+ const cdTargetUnresolvable = cdTarget !== null && CD_TARGET_UNRESOLVABLE_CHARS.test(cdTarget);
249
+ if (!cdTargetUnresolvable && isReadOnlyBashCommand(command)) {
104
250
  return { blocked: false, reason: "read-only Bash command" };
105
251
  }
106
252
  if (isInsideDir(".", dir, cwd)) {
@@ -1 +1 @@
1
- {"version":3,"file":"hook-solution-acceptance-writeguard.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-solution-acceptance-writeguard.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,sEAAsE;AACtE,EAAE;AACF,0EAA0E;AAC1E,iEAAiE;AACjE,yEAAyE;AACzE,8EAA8E;AAC9E,2EAA2E;AAC3E,yEAAyE;AACzE,0EAA0E;AAC1E,EAAE;AACF,0CAA0C;AAC1C,yEAAyE;AACzE,8BAA8B;AAC9B,uEAAuE;AACvE,yEAAyE;AACzE,6EAA6E;AAC7E,2EAA2E;AAC3E,kEAAkE;AAClE,EAAE;AACF,8EAA8E;AAC9E,EAAE;AACF,2EAA2E;AAC3E,0EAA0E;AAC1E,6EAA6E;AAC7E,8EAA8E;AAC9E,yCAAyC;AACzC,EAAE;AACF,4EAA4E;AAC5E,yEAAyE;AACzE,wEAAwE;AACxE,oEAAoE;AACpE,aAAa;AAEb,OAAO,EACL,wBAAwB,EACxB,WAAW,EACX,SAAS,EACT,UAAU,IAAI,iBAAiB,GAChC,MAAM,2DAA2D,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAwBhE,+EAA+E;AAC/E,SAAS,cAAc,CAAC,QAAgB,EAAE,SAAkB;IAC1D,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACrE,MAAM,KAAK,GAAG,SAAoC,CAAC;IACnD,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,OAAO,CAAC;QACb,KAAK,MAAM,CAAC;QACZ,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;YAC9B,OAAO,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7D,CAAC;QACD,KAAK,cAAc,CAAC,CAAC,CAAC;YACpB,MAAM,EAAE,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;YAClC,OAAO,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7D,CAAC;QACD;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,SAAkB;IACvC,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC;IACnE,MAAM,GAAG,GAAI,SAAqC,CAAC,SAAS,CAAC,CAAC;IAC9D,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,CAAC;AAOD;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,QAAgB,EAChB,SAAkB,EAClB,GAAW,EACX,GAAW;IAEX,qEAAqE;IACrE,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACnD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,IAAI,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;YAClC,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,GAAG,QAAQ,uEAAuE,GAAG,yEAAyE;aACvK,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,QAAQ,oCAAoC,EAAE,CAAC;IACrF,CAAC;IAED,4EAA4E;IAC5E,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;QAC/B,MAAM,KAAK,GACT,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI;YACjD,CAAC,CAAE,SAAqC;YACxC,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,IAAI,GACR,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,QAAQ;YAChC,CAAC,CAAE,KAAK,CAAC,OAAO,CAAY;YAC5B,CAAC,CAAC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,QAAQ;gBAClC,CAAC,CAAE,KAAK,CAAC,OAAO,CAAY;gBAC5B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QACxC,IAAI,wBAAwB,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;YACxC,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,sEAAsE,GAAG,GAAG;aACrF,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,gDAAgD,EAAE,CAAC;IACtF,CAAC;IAED,0EAA0E;IAC1E,4CAA4C;IAC5C,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,OAAO,KAAK,EAAE;YAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;QAC5E,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;QAC9D,CAAC;QACD,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,0FAA0F,GAAG,GAAG;aACzG,CAAC;QACJ,CAAC;QACD,IAAI,wBAAwB,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC;YAC3C,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,6EAA6E,GAAG,yEAAyE;aAClK,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,uDAAuD,EAAE,CAAC;IAC7F,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,QAAQ,iCAAiC,EAAE,CAAC;AAClF,CAAC;AAED,SAAS,SAAS,CAAC,QAAgB,EAAE,MAAc;IACjD,MAAM,IAAI,GACR,6CAA6C,QAAQ,KAAK,MAAM,KAAK;QACrE,2EAA2E;QAC3E,kEAAkE;QAClE,gFAAgF;QAChF,oCAAoC;QACpC,uCAAuC,CAAC;IAC1C,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,QAAQ,EAAE,OAAO;QACjB,MAAM,EAAE,IAAI;QACZ,kBAAkB,EAAE;YAClB,aAAa,EAAE,YAAY;YAC3B,kBAAkB,EAAE,MAAM;YAC1B,wBAAwB,EAAE,IAAI;SAC/B;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0CAA0C,CAC9D,OAAoD,EAAE;IAEtD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAC7C,MAAM,IAAI,GAAG,CAAC,GAAW,EAAQ,EAAE;QACjC,MAAM,CAAC,KAAK,CAAC,qDAAqD,GAAG,IAAI,CAAC,CAAC;IAC7E,CAAC,CAAC;IAEF,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,KAAK,GAAkB,EAAE,CAAC;IAC9B,IAAI,CAAC;QACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,CAAkB,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,sDAAsD;IACxD,CAAC;IAED,IAAI,cAAc,CAAC,GAAG,SAAS,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACnE,MAAM,UAAU,GAAG,0DAA0D,CAAC;QAC9E,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IACrD,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;IACrF,MAAM,GAAG,GACP,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC;QACjD,CAAC,CAAC,IAAI,CAAC,GAAG;QACV,CAAC,CAAC,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC;YACrD,CAAC,CAAC,KAAK,CAAC,GAAG;YACX,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACtB,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,iBAAiB,EAAE,CAAC;IAEnD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC1E,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtB,MAAM,UAAU,GAAG,WAAW,QAAQ,CAAC,MAAM,EAAE,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,CAAC;QACjB,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IACrD,CAAC;IAED,MAAM,UAAU,GAAG,WAAW,QAAQ,CAAC,MAAM,EAAE,CAAC;IAChD,IAAI,CAAC,UAAU,CAAC,CAAC;IACjB,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1D,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"hook-solution-acceptance-writeguard.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-solution-acceptance-writeguard.ts"],"names":[],"mappings":"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"}
@@ -43,10 +43,40 @@
43
43
  // Disable knob: `STAY_IN_SCOPE_DISABLED=1` short-circuits to no-op AFTER
44
44
  // pause-sentinel evaluation, so an operator who pauses harness still
45
45
  // sees the standard pause notice instead of stay-in-scope's silence.
46
+ //
47
+ // Codex parity (task cf4cdc93): this hook is now also wired on the
48
+ // Codex adapter (`understanding-before-execution.ts`, `runtime ===
49
+ // "codex"` branch), reusing this exact command — no Codex-specific CLI
50
+ // verb is needed. The tool-name watch-list check is alias-aware
51
+ // (`toolNameMatchesAny`, not a raw `.includes`): a Codex session can
52
+ // emit an MCP tool name in a variant form for the identical tool
53
+ // (server hyphen/underscore swap, the `mcp__server__.tool` dotted
54
+ // form), and the emitted Codex matcher is alias-EXPANDED at
55
+ // `harness apply` time (`expandCodexHookMatchPattern`) so the
56
+ // dispatcher DOES invoke this hook for a variant — a raw membership
57
+ // check here would then silently miss it, the exact bug class task
58
+ // a1348c89 fixed once already for the marker-expiry PostToolUse hook.
59
+ //
60
+ // Review finding on task cf4cdc93 (empirically confirmed, MEDIUM): the
61
+ // event envelope's field NAMES also vary across the tolerated Codex
62
+ // synonyms — `tool` as well as `tool_name`, `raw_input` as well as
63
+ // `tool_input` (`hook-codex-post-tool-use.ts`'s own doc comment and
64
+ // `docs/policy-packs/understanding-before-execution.md`'s wire-format
65
+ // block both document this). A payload shaped `{ tool, raw_input }`
66
+ // used to silently no-op here. Now mirrored via the same shared
67
+ // helpers (`hook-bootstrap.ts`'s `pickString` / `resolveToolInput`) the
68
+ // sibling `codex-post-tool-use` hook already used. This does NOT touch
69
+ // the `tool_response` taskId fallback below (a Claude-side convenience
70
+ // for the create-call shape where the task UUID is only known after
71
+ // the server roundtrip) — the Codex envelope may not carry
72
+ // `tool_response` at all, and that fallback correctly stays a no-op in
73
+ // that case rather than being folded into the tool_input/raw_input
74
+ // resolution.
46
75
  import * as fs from "node:fs";
47
76
  import * as path from "node:path";
48
77
  import { resolveHomeDir } from "../../runtime/home-dir.js";
49
- import { checkHookPause, readStdin } from "./hook-bootstrap.js";
78
+ import { toolNameMatchesAny } from "../../policy-packs/builtin/understanding-before-execution-runtime.js";
79
+ import { checkHookPause, pickString, readStdin, resolveToolInput, } from "./hook-bootstrap.js";
50
80
  export const TOOL_NAME_TASK_CREATE = "mcp__agent-tasks__task_create";
51
81
  export const TOOL_NAME_TASKS_CREATE = "mcp__agent-tasks__tasks_create";
52
82
  export const TOOL_NAME_TASKS_UPDATE = "mcp__agent-tasks__tasks_update";
@@ -123,28 +153,40 @@ function extractTitle(toolInput) {
123
153
  const t = toolInput["title"];
124
154
  return typeof t === "string" && t.length > 0 ? t : null;
125
155
  }
126
- // Pull a taskId out of either the tool_input (for tasks_update) or the
127
- // tool_response (the typical create-call shape, where the task UUID is
128
- // only known after the server roundtrip). Returns null when neither
129
- // surface carries one.
130
- function extractTaskId(event) {
156
+ // Pull a taskId out of either the (resolved) tool input — tool_input,
157
+ // with the raw_input Codex-shim fallback already applied by the caller
158
+ // for tasks_update, or the tool_response (the typical create-call
159
+ // shape, where the task UUID is only known after the server
160
+ // roundtrip). Returns null when neither surface carries one.
161
+ //
162
+ // `toolResponse` is read as-is, NOT resolved through the tool_input/
163
+ // raw_input fallback: `tool_response` is a Claude Code convention (the
164
+ // MCP call's return value) that the Codex PostToolUse envelope may not
165
+ // carry at all (see `docs/policy-packs/understanding-before-execution.md`
166
+ // "Adapter notes / Codex" — the documented Codex envelope names
167
+ // `tool_response` nowhere). Folding it into the same resolution as the
168
+ // tool_input/raw_input synonym pair would be wrong: a Codex event
169
+ // simply has no equivalent field, so this half of the fallback
170
+ // correctly stays a no-op there rather than being widened to "resolve
171
+ // from something else".
172
+ function extractTaskId(toolInput, toolResponse) {
131
173
  const fromInput = (() => {
132
- if (typeof event.tool_input !== "object" ||
133
- event.tool_input === null ||
134
- Array.isArray(event.tool_input)) {
174
+ if (typeof toolInput !== "object" ||
175
+ toolInput === null ||
176
+ Array.isArray(toolInput)) {
135
177
  return null;
136
178
  }
137
- const tid = event.tool_input["taskId"];
179
+ const tid = toolInput["taskId"];
138
180
  return typeof tid === "string" && tid.length > 0 ? tid : null;
139
181
  })();
140
182
  if (fromInput !== null)
141
183
  return fromInput;
142
- if (typeof event.tool_response !== "object" ||
143
- event.tool_response === null ||
144
- Array.isArray(event.tool_response)) {
184
+ if (typeof toolResponse !== "object" ||
185
+ toolResponse === null ||
186
+ Array.isArray(toolResponse)) {
145
187
  return null;
146
188
  }
147
- const respObj = event.tool_response;
189
+ const respObj = toolResponse;
148
190
  // The server response wraps the task under `task` for task_create and
149
191
  // task_finish, but at the top level for some bulk verbs. Probe both
150
192
  // shapes; fall back to null on miss.
@@ -226,18 +268,19 @@ export async function runPackHookStayInScopeCli(opts = {}) {
226
268
  if (env[STAY_IN_SCOPE_DISABLED_ENV] === "1") {
227
269
  return noop(`harness pack hook stay-in-scope: ${STAY_IN_SCOPE_DISABLED_ENV}=1, skipping`, stderr);
228
270
  }
229
- const toolName = typeof event.tool_name === "string" ? event.tool_name : "";
230
- if (toolName === "" || !STAY_IN_SCOPE_TOOLS.includes(toolName)) {
271
+ const toolName = pickString(event.tool_name, event.tool) ?? "";
272
+ if (toolName === "" || !toolNameMatchesAny(toolName, STAY_IN_SCOPE_TOOLS)) {
231
273
  return noop(`harness pack hook stay-in-scope: tool ${toolName || "(missing)"} not in watch list, skipping`, stderr);
232
274
  }
233
- const labels = extractLabels(event.tool_input);
234
- const description = extractDescription(event.tool_input);
275
+ const toolInput = resolveToolInput(event);
276
+ const labels = extractLabels(toolInput);
277
+ const description = extractDescription(toolInput);
235
278
  const evaluation = evaluateMatch(labels, description);
236
279
  if (!evaluation.matched) {
237
280
  return noop(`harness pack hook stay-in-scope: ${toolName} payload carries no review-shaped label or description marker, skipping`, stderr);
238
281
  }
239
- const taskId = extractTaskId(event);
240
- const title = extractTitle(event.tool_input);
282
+ const taskId = extractTaskId(toolInput, event.tool_response);
283
+ const title = extractTitle(toolInput);
241
284
  const now = (opts.now ?? new Date()).toISOString();
242
285
  const record = {
243
286
  ts: now,
@@ -1 +1 @@
1
- {"version":3,"file":"hook-stay-in-scope.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-stay-in-scope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook-stay-in-scope.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-stay-in-scope.ts"],"names":[],"mappings":"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"}
@@ -30,9 +30,33 @@
30
30
  // specific. Operators on Linear / JIRA can ignore this hook (the
31
31
  // matcher will never fire for them); a config-driven extension can
32
32
  // land later if a second tasking system asks for it.
33
- import { clearActiveClaim, writeActiveClaim, } from "../../policy-packs/builtin/understanding-before-execution-runtime.js";
33
+ //
34
+ // Codex parity (task cf4cdc93): this hook is now also wired on the
35
+ // Codex adapter (`understanding-before-execution.ts`, `runtime ===
36
+ // "codex"` branch), reusing this exact command — no Codex-specific
37
+ // CLI verb needed. The tool-name comparisons below are alias-aware
38
+ // (`toolNameMatchesAny`, not raw `===`): a Codex session can emit an
39
+ // MCP tool name in a variant form for the identical tool (server
40
+ // hyphen/underscore swap, the `mcp__server__.tool` dotted form), and
41
+ // the emitted Codex matcher is alias-EXPANDED at `harness apply` time
42
+ // (`expandCodexHookMatchPattern`) so the dispatcher DOES invoke this
43
+ // hook for a variant — a raw `===` here would then silently miss it,
44
+ // the exact bug class task a1348c89 fixed once already for the
45
+ // marker-expiry PostToolUse hook.
46
+ //
47
+ // Review finding on task cf4cdc93 (empirically confirmed, MEDIUM): the
48
+ // event envelope's field NAMES also vary across the tolerated Codex
49
+ // synonyms — `tool` as well as `tool_name`, `raw_input` as well as
50
+ // `tool_input` (`hook-codex-post-tool-use.ts`'s own doc comment and
51
+ // `docs/policy-packs/understanding-before-execution.md`'s wire-format
52
+ // block both document this). A payload shaped `{ tool, raw_input }`
53
+ // (or any mix) used to silently no-op here while the sibling
54
+ // `codex-post-tool-use` hook already handled it via its own
55
+ // `pickString(event.tool_name, event.tool)` / `resolveToolInput`. Now
56
+ // mirrored via the same shared helpers (`hook-bootstrap.ts`).
57
+ import { clearActiveClaim, toolNameMatchesAny, writeActiveClaim, } from "../../policy-packs/builtin/understanding-before-execution-runtime.js";
34
58
  import { resolveGeneratedDir } from "../../runtime/pending-approval.js";
35
- import { checkHookPause, loadManifestOrInjected, readStdin, } from "./hook-bootstrap.js";
59
+ import { checkHookPause, loadManifestOrInjected, pickString, readStdin, resolveToolInput, } from "./hook-bootstrap.js";
36
60
  const PACK_NAME = "understanding-before-execution";
37
61
  export const TOOL_NAME_TASK_START = "mcp__agent-tasks__task_start";
38
62
  export const TOOL_NAME_TASK_FINISH = "mcp__agent-tasks__task_finish";
@@ -97,7 +121,7 @@ export async function runPackHookTrackActiveClaimCli(opts = {}) {
97
121
  if (checkHookPause("track-active-claim", stderr, opts, opts.generatedDir).paused) {
98
122
  return noop("harness paused; track-active-claim skipping without evaluating.", stderr);
99
123
  }
100
- const toolName = typeof event.tool_name === "string" ? event.tool_name : "";
124
+ const toolName = pickString(event.tool_name, event.tool) ?? "";
101
125
  if (toolName === "") {
102
126
  return noop("harness pack hook track-active-claim: missing tool_name, skipping", stderr);
103
127
  }
@@ -129,8 +153,9 @@ export async function runPackHookTrackActiveClaimCli(opts = {}) {
129
153
  if (generatedDir === undefined) {
130
154
  return noop("harness pack hook track-active-claim: generatedDir unresolvable, skipping", stderr);
131
155
  }
132
- const taskId = extractTaskId(event.tool_input);
133
- if (toolName === TOOL_NAME_TASK_START) {
156
+ const toolInput = resolveToolInput(event);
157
+ const taskId = extractTaskId(toolInput);
158
+ if (toolNameMatchesAny(toolName, [TOOL_NAME_TASK_START])) {
134
159
  if (taskId === "") {
135
160
  return noop(`harness pack hook track-active-claim: task_start without tool_input.taskId, skipping`, stderr);
136
161
  }
@@ -150,8 +175,7 @@ export async function runPackHookTrackActiveClaimCli(opts = {}) {
150
175
  diagnostic,
151
176
  };
152
177
  }
153
- if (toolName === TOOL_NAME_TASK_FINISH ||
154
- toolName === TOOL_NAME_TASK_ABANDON) {
178
+ if (toolNameMatchesAny(toolName, [TOOL_NAME_TASK_FINISH, TOOL_NAME_TASK_ABANDON])) {
155
179
  clearActiveClaim(generatedDir);
156
180
  const diagnostic = `harness pack hook track-active-claim: cleared active-claim after ${toolName}`;
157
181
  stderr.write(`${diagnostic}\n`);
@@ -163,8 +187,8 @@ export async function runPackHookTrackActiveClaimCli(opts = {}) {
163
187
  diagnostic,
164
188
  };
165
189
  }
166
- if (toolName === TOOL_NAME_TASKS_TRANSITION) {
167
- const status = extractStatus(event.tool_input);
190
+ if (toolNameMatchesAny(toolName, [TOOL_NAME_TASKS_TRANSITION])) {
191
+ const status = extractStatus(toolInput);
168
192
  if (!TASKS_TRANSITION_CLEAR_STATUSES.has(status)) {
169
193
  // open / in_progress / review keep the work claim per v2 semantics
170
194
  // (see task_finish docs). Malformed / missing status also falls
@@ -1 +1 @@
1
- {"version":3,"file":"hook-track-active-claim.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-track-active-claim.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook-track-active-claim.js","sourceRoot":"","sources":["../../../src/cli/pack/hook-track-active-claim.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export { packAdd, type PackAddOptions, type PackAddResult } from "./add.js";
2
2
  export { packRemove, type PackRemoveOptions, type PackRemoveResult } from "./remove.js";
3
3
  export { packList, type PackListOptions, type PackListResult } from "./list.js";
4
- export { applyPackAdd, applyPackRemove, planPackRemove, type PackAddEntry, type PackRemovePlan, } from "./mutate.js";
4
+ export { packReseed, type PackReseedField, type PackReseedOptions, type PackReseedResult, } from "./reseed.js";
5
+ export { applyPackAdd, applyPackRemove, applyPackReseedUx, planPackRemove, type PackAddEntry, type PackReseedFields, type PackRemovePlan, } from "./mutate.js";
@@ -1,5 +1,6 @@
1
1
  export { packAdd } from "./add.js";
2
2
  export { packRemove } from "./remove.js";
3
3
  export { packList } from "./list.js";
4
- export { applyPackAdd, applyPackRemove, planPackRemove, } from "./mutate.js";
4
+ export { packReseed, } from "./reseed.js";
5
+ export { applyPackAdd, applyPackRemove, applyPackReseedUx, planPackRemove, } from "./mutate.js";
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/pack/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA2C,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAiD,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,QAAQ,EAA6C,MAAM,WAAW,CAAC;AAChF,OAAO,EACL,YAAY,EACZ,eAAe,EACf,cAAc,GAGf,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/pack/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA2C,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAiD,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,QAAQ,EAA6C,MAAM,WAAW,CAAC;AAChF,OAAO,EACL,UAAU,GAIX,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,cAAc,GAIf,MAAM,aAAa,CAAC"}
@@ -1,3 +1,4 @@
1
+ import type { PolicyUx, Producer } from "../../schema/index.js";
1
2
  export interface PackAddEntry {
2
3
  name: string;
3
4
  source?: string;
@@ -11,4 +12,22 @@ export interface PackRemovePlan {
11
12
  }
12
13
  export declare function applyPackAdd(yamlText: string, entry: PackAddEntry): string;
13
14
  export declare function planPackRemove(yamlText: string, name: string): PackRemovePlan;
15
+ export interface PackReseedFields {
16
+ /** Present when the pack has a canonical shipped `config.ux`. */
17
+ ux?: PolicyUx;
18
+ /** Present when the pack has a canonical shipped `config.producers`. */
19
+ producers?: Producer[];
20
+ }
21
+ /**
22
+ * Overwrite `policy_packs[<name>].config.ux` (and `.config.producers`,
23
+ * when supplied) with the given shipped-template values, leaving every
24
+ * other key in the entry — including sibling `config:` keys like `mode`
25
+ * or `approval_lifecycle` — untouched. Used by `harness pack reseed`
26
+ * (task 68b9ad9c) to pull a wording fix into an already-installed
27
+ * manifest without clobbering the operator's other customisations.
28
+ * `doc.setIn` creates the intermediate `config:` map when the entry
29
+ * doesn't have one yet (verified: an entry with no `config:` key at all
30
+ * round-trips to a freshly-created `config: { ux: ... }` block).
31
+ */
32
+ export declare function applyPackReseedUx(yamlText: string, name: string, fields: PackReseedFields): string;
14
33
  export declare function applyPackRemove(yamlText: string, name: string): string;
@@ -53,6 +53,44 @@ export function planPackRemove(yamlText, name) {
53
53
  }
54
54
  return { found, availableNames: names };
55
55
  }
56
+ /**
57
+ * Overwrite `policy_packs[<name>].config.ux` (and `.config.producers`,
58
+ * when supplied) with the given shipped-template values, leaving every
59
+ * other key in the entry — including sibling `config:` keys like `mode`
60
+ * or `approval_lifecycle` — untouched. Used by `harness pack reseed`
61
+ * (task 68b9ad9c) to pull a wording fix into an already-installed
62
+ * manifest without clobbering the operator's other customisations.
63
+ * `doc.setIn` creates the intermediate `config:` map when the entry
64
+ * doesn't have one yet (verified: an entry with no `config:` key at all
65
+ * round-trips to a freshly-created `config: { ux: ... }` block).
66
+ */
67
+ export function applyPackReseedUx(yamlText, name, fields) {
68
+ const doc = parseDocument(yamlText);
69
+ const node = doc.getIn(["policy_packs"]);
70
+ if (!isSeq(node)) {
71
+ throw new Error(`expected a YAML sequence at policy_packs, got ${typeof node}`);
72
+ }
73
+ let index = -1;
74
+ for (let i = 0; i < node.items.length; i++) {
75
+ const item = node.items[i];
76
+ if (!isMap(item))
77
+ continue;
78
+ if (item.get("name") === name) {
79
+ index = i;
80
+ break;
81
+ }
82
+ }
83
+ if (index === -1) {
84
+ throw new Error(`policy_packs entry ${JSON.stringify(name)} not found`);
85
+ }
86
+ if (fields.ux !== undefined) {
87
+ doc.setIn(["policy_packs", index, "config", "ux"], fields.ux);
88
+ }
89
+ if (fields.producers !== undefined) {
90
+ doc.setIn(["policy_packs", index, "config", "producers"], fields.producers);
91
+ }
92
+ return doc.toString({ flowCollectionPadding: false, lineWidth: 0 });
93
+ }
56
94
  export function applyPackRemove(yamlText, name) {
57
95
  const doc = parseDocument(yamlText);
58
96
  const node = doc.getIn(["policy_packs"]);
@@ -1 +1 @@
1
- {"version":3,"file":"mutate.js","sourceRoot":"","sources":["../../../src/cli/pack/mutate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mutate.js","sourceRoot":"","sources":["../../../src/cli/pack/mutate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export interface PackReseedOptions {
2
+ configPath?: string;
3
+ homeDir?: string;
4
+ dryRun?: boolean;
5
+ }
6
+ export type PackReseedField = "ux" | "producers";
7
+ export interface PackReseedResult {
8
+ path: string;
9
+ name: string;
10
+ diff: string;
11
+ applied: boolean;
12
+ /**
13
+ * Fields the reseed changed (or would change, on `--dry-run`):
14
+ * "ux", "producers", both, or an empty array when the pack already
15
+ * matched the shipped template (no-op, nothing written).
16
+ */
17
+ fieldsChanged: PackReseedField[];
18
+ }
19
+ export declare function packReseed(name: string, opts?: PackReseedOptions): Promise<PackReseedResult>;