@lannguyensi/harness 0.64.0 → 1.0.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 (710) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/README.md +46 -42
  3. package/dist/cli/add/index.js +17 -21
  4. package/dist/cli/add/index.js.map +1 -1
  5. package/dist/cli/adopt/derive.d.ts +2 -2
  6. package/dist/cli/adopt/derive.js +2 -19
  7. package/dist/cli/adopt/derive.js.map +1 -1
  8. package/dist/cli/adopt/index.d.ts +1 -1
  9. package/dist/cli/adopt/index.js +1 -12
  10. package/dist/cli/adopt/index.js.map +1 -1
  11. package/dist/cli/apply/apply.d.ts +20 -35
  12. package/dist/cli/apply/apply.js +61 -136
  13. package/dist/cli/apply/apply.js.map +1 -1
  14. package/dist/cli/apply/generate-codex-config.js +10 -58
  15. package/dist/cli/apply/generate-codex-config.js.map +1 -1
  16. package/dist/cli/apply/generate-memory-index.js +1 -2
  17. package/dist/cli/apply/generate-memory-index.js.map +1 -1
  18. package/dist/cli/apply/generate-opencode-config.d.ts +2 -10
  19. package/dist/cli/apply/generate-opencode-config.js +74 -113
  20. package/dist/cli/apply/generate-opencode-config.js.map +1 -1
  21. package/dist/cli/apply/generate-settings.d.ts +11 -64
  22. package/dist/cli/apply/generate-settings.js +27 -132
  23. package/dist/cli/apply/generate-settings.js.map +1 -1
  24. package/dist/cli/apply/index.d.ts +1 -1
  25. package/dist/cli/apply/index.js +1 -1
  26. package/dist/cli/apply/index.js.map +1 -1
  27. package/dist/cli/apply/install-codex-config.d.ts +153 -1
  28. package/dist/cli/apply/install-codex-config.js +445 -70
  29. package/dist/cli/apply/install-codex-config.js.map +1 -1
  30. package/dist/cli/apply/next-steps.d.ts +7 -0
  31. package/dist/cli/apply/next-steps.js +13 -1
  32. package/dist/cli/apply/next-steps.js.map +1 -1
  33. package/dist/cli/bounded-stdin.d.ts +0 -23
  34. package/dist/cli/bounded-stdin.js +2 -49
  35. package/dist/cli/bounded-stdin.js.map +1 -1
  36. package/dist/cli/describe.d.ts +1 -1
  37. package/dist/cli/describe.js +0 -3
  38. package/dist/cli/describe.js.map +1 -1
  39. package/dist/cli/diff/engine.d.ts +0 -11
  40. package/dist/cli/diff/engine.js +1 -17
  41. package/dist/cli/diff/engine.js.map +1 -1
  42. package/dist/cli/diff/index.js +14 -25
  43. package/dist/cli/diff/index.js.map +1 -1
  44. package/dist/cli/doctor/claude-mcp.d.ts +4 -19
  45. package/dist/cli/doctor/claude-mcp.js +11 -22
  46. package/dist/cli/doctor/claude-mcp.js.map +1 -1
  47. package/dist/cli/doctor/codex.d.ts +12 -14
  48. package/dist/cli/doctor/codex.js +31 -144
  49. package/dist/cli/doctor/codex.js.map +1 -1
  50. package/dist/cli/doctor/format.js +23 -345
  51. package/dist/cli/doctor/format.js.map +1 -1
  52. package/dist/cli/doctor/hook-liveness.d.ts +56 -0
  53. package/dist/cli/doctor/hook-liveness.js +455 -0
  54. package/dist/cli/doctor/hook-liveness.js.map +1 -0
  55. package/dist/cli/doctor/index.d.ts +13 -87
  56. package/dist/cli/doctor/index.js +57 -713
  57. package/dist/cli/doctor/index.js.map +1 -1
  58. package/dist/cli/doctor/opencode.d.ts +2 -1
  59. package/dist/cli/doctor/opencode.js.map +1 -1
  60. package/dist/cli/doctor/types.d.ts +21 -387
  61. package/dist/cli/doctor/types.js.map +1 -1
  62. package/dist/cli/drain-stdio.d.ts +31 -0
  63. package/dist/cli/drain-stdio.js +76 -0
  64. package/dist/cli/drain-stdio.js.map +1 -0
  65. package/dist/cli/export.d.ts +3 -1
  66. package/dist/cli/export.js +7 -16
  67. package/dist/cli/export.js.map +1 -1
  68. package/dist/cli/gate/codex-disable.d.ts +29 -0
  69. package/dist/cli/gate/codex-disable.js +195 -0
  70. package/dist/cli/gate/codex-disable.js.map +1 -0
  71. package/dist/cli/gate/codex-enable.d.ts +41 -0
  72. package/dist/cli/gate/codex-enable.js +127 -0
  73. package/dist/cli/gate/codex-enable.js.map +1 -0
  74. package/dist/cli/gate/codex-snapshot.d.ts +208 -0
  75. package/dist/cli/gate/codex-snapshot.js +402 -0
  76. package/dist/cli/gate/codex-snapshot.js.map +1 -0
  77. package/dist/cli/gate/disable.d.ts +9 -0
  78. package/dist/cli/gate/disable.js +263 -28
  79. package/dist/cli/gate/disable.js.map +1 -1
  80. package/dist/cli/gate/enable.d.ts +26 -6
  81. package/dist/cli/gate/enable.js +152 -80
  82. package/dist/cli/gate/enable.js.map +1 -1
  83. package/dist/cli/gate/link-chain.d.ts +53 -0
  84. package/dist/cli/gate/link-chain.js +122 -0
  85. package/dist/cli/gate/link-chain.js.map +1 -0
  86. package/dist/cli/gate/snapshot.d.ts +289 -12
  87. package/dist/cli/gate/snapshot.js +481 -22
  88. package/dist/cli/gate/snapshot.js.map +1 -1
  89. package/dist/cli/index.d.ts +0 -9
  90. package/dist/cli/index.js +9 -2131
  91. package/dist/cli/index.js.map +1 -1
  92. package/dist/cli/init/composer.d.ts +3 -6
  93. package/dist/cli/init/composer.js +6 -370
  94. package/dist/cli/init/composer.js.map +1 -1
  95. package/dist/cli/init/dependencies.d.ts +1 -2
  96. package/dist/cli/init/dependencies.js +4 -80
  97. package/dist/cli/init/dependencies.js.map +1 -1
  98. package/dist/cli/init/detect.js +5 -4
  99. package/dist/cli/init/detect.js.map +1 -1
  100. package/dist/cli/init/interactive.d.ts +1 -23
  101. package/dist/cli/init/interactive.js +33 -247
  102. package/dist/cli/init/interactive.js.map +1 -1
  103. package/dist/cli/init/profiles.d.ts +2 -2
  104. package/dist/cli/init/profiles.js +51 -245
  105. package/dist/cli/init/profiles.js.map +1 -1
  106. package/dist/cli/init/templates.d.ts +2 -37
  107. package/dist/cli/init/templates.js +25 -1237
  108. package/dist/cli/init/templates.js.map +1 -1
  109. package/dist/cli/list.d.ts +1 -1
  110. package/dist/cli/list.js +1 -38
  111. package/dist/cli/list.js.map +1 -1
  112. package/dist/cli/loader.d.ts +15 -1
  113. package/dist/cli/loader.js +56 -39
  114. package/dist/cli/loader.js.map +1 -1
  115. package/dist/cli/main.js +7 -2
  116. package/dist/cli/main.js.map +1 -1
  117. package/dist/cli/migrate-home/index.js +2 -2
  118. package/dist/cli/migrate-home/index.js.map +1 -1
  119. package/dist/cli/pack/add.js +1 -1
  120. package/dist/cli/pack/add.js.map +1 -1
  121. package/dist/cli/pack/hook-bootstrap.d.ts +5 -164
  122. package/dist/cli/pack/hook-bootstrap.js +15 -291
  123. package/dist/cli/pack/hook-bootstrap.js.map +1 -1
  124. package/dist/cli/pack/hook-branch-protection.d.ts +28 -21
  125. package/dist/cli/pack/hook-branch-protection.js +365 -340
  126. package/dist/cli/pack/hook-branch-protection.js.map +1 -1
  127. package/dist/cli/pack/index.d.ts +0 -1
  128. package/dist/cli/pack/index.js +0 -1
  129. package/dist/cli/pack/index.js.map +1 -1
  130. package/dist/cli/pack/list.js +1 -6
  131. package/dist/cli/pack/list.js.map +1 -1
  132. package/dist/cli/pack/mutate.d.ts +7 -9
  133. package/dist/cli/pack/mutate.js +6 -9
  134. package/dist/cli/pack/mutate.js.map +1 -1
  135. package/dist/cli/pack/reseed.d.ts +2 -2
  136. package/dist/cli/pack/reseed.js +16 -22
  137. package/dist/cli/pack/reseed.js.map +1 -1
  138. package/dist/cli/{delegate/register.d.ts → register-gate-group.d.ts} +1 -1
  139. package/dist/cli/register-gate-group.js +348 -0
  140. package/dist/cli/register-gate-group.js.map +1 -0
  141. package/dist/cli/register-inspect-group.d.ts +6 -0
  142. package/dist/cli/register-inspect-group.js +189 -0
  143. package/dist/cli/register-inspect-group.js.map +1 -0
  144. package/dist/cli/register-operator-lifecycle.d.ts +1 -1
  145. package/dist/cli/register-operator-lifecycle.js +3 -100
  146. package/dist/cli/register-operator-lifecycle.js.map +1 -1
  147. package/dist/cli/register-pack-group.d.ts +5 -0
  148. package/dist/cli/register-pack-group.js +134 -0
  149. package/dist/cli/register-pack-group.js.map +1 -0
  150. package/dist/cli/{register-audit-group.d.ts → register-setup-group.d.ts} +1 -1
  151. package/dist/cli/register-setup-group.js +495 -0
  152. package/dist/cli/register-setup-group.js.map +1 -0
  153. package/dist/cli/remove/index.d.ts +0 -14
  154. package/dist/cli/remove/index.js +2 -115
  155. package/dist/cli/remove/index.js.map +1 -1
  156. package/dist/cli/remove/mutate.d.ts +0 -2
  157. package/dist/cli/remove/mutate.js +1 -19
  158. package/dist/cli/remove/mutate.js.map +1 -1
  159. package/dist/cli/remove/register.js +2 -19
  160. package/dist/cli/remove/register.js.map +1 -1
  161. package/dist/cli/shell-quote.d.ts +7 -0
  162. package/dist/cli/shell-quote.js +17 -0
  163. package/dist/cli/shell-quote.js.map +1 -0
  164. package/dist/cli/uninstall/index.d.ts +4 -2
  165. package/dist/cli/uninstall/index.js +15 -7
  166. package/dist/cli/uninstall/index.js.map +1 -1
  167. package/dist/cli/uninstall/register.js +6 -4
  168. package/dist/cli/uninstall/register.js.map +1 -1
  169. package/dist/cli/uninstall/snapshot.d.ts +15 -0
  170. package/dist/cli/uninstall/snapshot.js +38 -0
  171. package/dist/cli/uninstall/snapshot.js.map +1 -1
  172. package/dist/cli/validate/checks.d.ts +0 -77
  173. package/dist/cli/validate/checks.js +3 -1049
  174. package/dist/cli/validate/checks.js.map +1 -1
  175. package/dist/cli/validate/index.js +19 -15
  176. package/dist/cli/validate/index.js.map +1 -1
  177. package/dist/index.d.ts +0 -3
  178. package/dist/index.js +0 -3
  179. package/dist/index.js.map +1 -1
  180. package/dist/io/claude-mcp.d.ts +1 -1
  181. package/dist/io/claude-mcp.js +27 -14
  182. package/dist/io/claude-mcp.js.map +1 -1
  183. package/dist/io/harness-lock.js +2 -2
  184. package/dist/io/harness-lock.js.map +1 -1
  185. package/dist/io/lock.d.ts +0 -26
  186. package/dist/io/lock.js +10 -27
  187. package/dist/io/lock.js.map +1 -1
  188. package/dist/io/merge-settings.js +6 -4
  189. package/dist/io/merge-settings.js.map +1 -1
  190. package/dist/io/project-name.d.ts +22 -39
  191. package/dist/io/project-name.js +25 -42
  192. package/dist/io/project-name.js.map +1 -1
  193. package/dist/io/read-regular-file.d.ts +103 -40
  194. package/dist/io/read-regular-file.js +196 -35
  195. package/dist/io/read-regular-file.js.map +1 -1
  196. package/dist/io/restart-hints.js +3 -6
  197. package/dist/io/restart-hints.js.map +1 -1
  198. package/dist/io/version-compare.d.ts +1 -3
  199. package/dist/io/version-compare.js +1 -3
  200. package/dist/io/version-compare.js.map +1 -1
  201. package/dist/io/write-regular-file.d.ts +30 -0
  202. package/dist/io/write-regular-file.js +85 -0
  203. package/dist/io/write-regular-file.js.map +1 -0
  204. package/dist/overrides/index.d.ts +1 -0
  205. package/dist/overrides/index.js +1 -0
  206. package/dist/overrides/index.js.map +1 -1
  207. package/dist/overrides/merge-layers.d.ts +43 -0
  208. package/dist/overrides/merge-layers.js +76 -0
  209. package/dist/overrides/merge-layers.js.map +1 -0
  210. package/dist/overrides/merge.d.ts +16 -0
  211. package/dist/overrides/merge.js +21 -8
  212. package/dist/overrides/merge.js.map +1 -1
  213. package/dist/policy-packs/builtin/branch-protection-runtime.d.ts +4 -69
  214. package/dist/policy-packs/builtin/branch-protection-runtime.js +12 -84
  215. package/dist/policy-packs/builtin/branch-protection-runtime.js.map +1 -1
  216. package/dist/policy-packs/builtin/branch-protection.d.ts +7 -30
  217. package/dist/policy-packs/builtin/branch-protection.js +56 -89
  218. package/dist/policy-packs/builtin/branch-protection.js.map +1 -1
  219. package/dist/policy-packs/config-check.d.ts +7 -5
  220. package/dist/policy-packs/config-check.js +2 -2
  221. package/dist/policy-packs/config-check.js.map +1 -1
  222. package/dist/policy-packs/expand.d.ts +1 -3
  223. package/dist/policy-packs/expand.js +5 -42
  224. package/dist/policy-packs/expand.js.map +1 -1
  225. package/dist/policy-packs/index.d.ts +3 -3
  226. package/dist/policy-packs/index.js +2 -2
  227. package/dist/policy-packs/index.js.map +1 -1
  228. package/dist/policy-packs/registry.d.ts +9 -38
  229. package/dist/policy-packs/registry.js +5 -65
  230. package/dist/policy-packs/registry.js.map +1 -1
  231. package/dist/policy-packs/runtime.d.ts +0 -4
  232. package/dist/policy-packs/runtime.js +9 -22
  233. package/dist/policy-packs/runtime.js.map +1 -1
  234. package/dist/policy-packs/types.d.ts +0 -19
  235. package/dist/policy-packs/ux-compare.d.ts +1 -11
  236. package/dist/policy-packs/ux-compare.js +6 -42
  237. package/dist/policy-packs/ux-compare.js.map +1 -1
  238. package/dist/policy-packs/ux-drift-check.d.ts +5 -5
  239. package/dist/policy-packs/ux-drift-check.js +17 -22
  240. package/dist/policy-packs/ux-drift-check.js.map +1 -1
  241. package/dist/policy-packs/version-check.d.ts +5 -26
  242. package/dist/policy-packs/version-check.js +19 -74
  243. package/dist/policy-packs/version-check.js.map +1 -1
  244. package/dist/probes/memory.d.ts +1 -1
  245. package/dist/probes/memory.js +1 -1
  246. package/dist/probes/memory.js.map +1 -1
  247. package/dist/runtime/agent-facing.d.ts +9 -0
  248. package/dist/runtime/agent-facing.js +28 -14
  249. package/dist/runtime/agent-facing.js.map +1 -1
  250. package/dist/runtime/bounded-text.d.ts +15 -0
  251. package/dist/runtime/bounded-text.js +27 -0
  252. package/dist/runtime/bounded-text.js.map +1 -0
  253. package/dist/runtime/git-branch.d.ts +125 -0
  254. package/dist/runtime/git-branch.js +381 -0
  255. package/dist/runtime/git-branch.js.map +1 -0
  256. package/dist/runtime/hermetic-spawn-guard.d.ts +2 -2
  257. package/dist/runtime/hermetic-spawn-guard.js +24 -34
  258. package/dist/runtime/hermetic-spawn-guard.js.map +1 -1
  259. package/dist/runtime/home-dir.js +3 -2
  260. package/dist/runtime/home-dir.js.map +1 -1
  261. package/dist/runtime/tool-name-aliases.d.ts +0 -6
  262. package/dist/runtime/tool-name-aliases.js +5 -18
  263. package/dist/runtime/tool-name-aliases.js.map +1 -1
  264. package/dist/schema/grounding.d.ts +7 -54
  265. package/dist/schema/grounding.js +10 -12
  266. package/dist/schema/grounding.js.map +1 -1
  267. package/dist/schema/hooks.d.ts +39 -136
  268. package/dist/schema/hooks.js +3 -6
  269. package/dist/schema/hooks.js.map +1 -1
  270. package/dist/schema/index.d.ts +114 -3828
  271. package/dist/schema/index.js +41 -80
  272. package/dist/schema/index.js.map +1 -1
  273. package/dist/schema/memory.d.ts +54 -131
  274. package/dist/schema/memory.js +2 -2
  275. package/dist/schema/memory.js.map +1 -1
  276. package/dist/schema/policy-packs.d.ts +3 -45
  277. package/dist/schema/policy-packs.js +7 -13
  278. package/dist/schema/policy-packs.js.map +1 -1
  279. package/dist/schema/policy-ux.d.ts +7 -0
  280. package/dist/schema/policy-ux.js +18 -0
  281. package/dist/schema/policy-ux.js.map +1 -0
  282. package/dist/schema/removed-keys.d.ts +185 -0
  283. package/dist/schema/removed-keys.js +531 -0
  284. package/dist/schema/removed-keys.js.map +1 -0
  285. package/dist/schema/tools.d.ts +30 -268
  286. package/dist/schema/tools.js +4 -4
  287. package/dist/schema/tools.js.map +1 -1
  288. package/package.json +5 -16
  289. package/dist/cli/approve/branch-protection.d.ts +0 -69
  290. package/dist/cli/approve/branch-protection.js +0 -144
  291. package/dist/cli/approve/branch-protection.js.map +0 -1
  292. package/dist/cli/approve/risk.d.ts +0 -112
  293. package/dist/cli/approve/risk.js +0 -197
  294. package/dist/cli/approve/risk.js.map +0 -1
  295. package/dist/cli/approve/stdin-report.d.ts +0 -57
  296. package/dist/cli/approve/stdin-report.js +0 -145
  297. package/dist/cli/approve/stdin-report.js.map +0 -1
  298. package/dist/cli/approve/understanding.d.ts +0 -410
  299. package/dist/cli/approve/understanding.js +0 -996
  300. package/dist/cli/approve/understanding.js.map +0 -1
  301. package/dist/cli/audit.d.ts +0 -80
  302. package/dist/cli/audit.js +0 -252
  303. package/dist/cli/audit.js.map +0 -1
  304. package/dist/cli/delegate/index.d.ts +0 -76
  305. package/dist/cli/delegate/index.js +0 -444
  306. package/dist/cli/delegate/index.js.map +0 -1
  307. package/dist/cli/delegate/register.js +0 -90
  308. package/dist/cli/delegate/register.js.map +0 -1
  309. package/dist/cli/doctor/auto-approve-mode.d.ts +0 -37
  310. package/dist/cli/doctor/auto-approve-mode.js +0 -80
  311. package/dist/cli/doctor/auto-approve-mode.js.map +0 -1
  312. package/dist/cli/doctor/bypass-without-auto-approve.d.ts +0 -38
  313. package/dist/cli/doctor/bypass-without-auto-approve.js +0 -95
  314. package/dist/cli/doctor/bypass-without-auto-approve.js.map +0 -1
  315. package/dist/cli/doctor/codex-config-drift.d.ts +0 -28
  316. package/dist/cli/doctor/codex-config-drift.js +0 -240
  317. package/dist/cli/doctor/codex-config-drift.js.map +0 -1
  318. package/dist/cli/doctor/expire-on-tool-match.d.ts +0 -15
  319. package/dist/cli/doctor/expire-on-tool-match.js +0 -58
  320. package/dist/cli/doctor/expire-on-tool-match.js.map +0 -1
  321. package/dist/cli/doctor/rogue-ledger.d.ts +0 -53
  322. package/dist/cli/doctor/rogue-ledger.js +0 -153
  323. package/dist/cli/doctor/rogue-ledger.js.map +0 -1
  324. package/dist/cli/doctor/session-start-preflight-setup-version.d.ts +0 -83
  325. package/dist/cli/doctor/session-start-preflight-setup-version.js +0 -114
  326. package/dist/cli/doctor/session-start-preflight-setup-version.js.map +0 -1
  327. package/dist/cli/doctor/settings-drift.d.ts +0 -25
  328. package/dist/cli/doctor/settings-drift.js +0 -213
  329. package/dist/cli/doctor/settings-drift.js.map +0 -1
  330. package/dist/cli/doctor/toolchain-parity.d.ts +0 -63
  331. package/dist/cli/doctor/toolchain-parity.js +0 -154
  332. package/dist/cli/doctor/toolchain-parity.js.map +0 -1
  333. package/dist/cli/doctor/ug-auto-approvals.d.ts +0 -40
  334. package/dist/cli/doctor/ug-auto-approvals.js +0 -91
  335. package/dist/cli/doctor/ug-auto-approvals.js.map +0 -1
  336. package/dist/cli/doctor/ug-delegations.d.ts +0 -26
  337. package/dist/cli/doctor/ug-delegations.js +0 -121
  338. package/dist/cli/doctor/ug-delegations.js.map +0 -1
  339. package/dist/cli/doctor/ug-inflight.d.ts +0 -35
  340. package/dist/cli/doctor/ug-inflight.js +0 -57
  341. package/dist/cli/doctor/ug-inflight.js.map +0 -1
  342. package/dist/cli/doctor/understanding-mode-env.d.ts +0 -51
  343. package/dist/cli/doctor/understanding-mode-env.js +0 -98
  344. package/dist/cli/doctor/understanding-mode-env.js.map +0 -1
  345. package/dist/cli/dry-run.d.ts +0 -58
  346. package/dist/cli/dry-run.js +0 -283
  347. package/dist/cli/dry-run.js.map +0 -1
  348. package/dist/cli/enriched-event.d.ts +0 -35
  349. package/dist/cli/enriched-event.js +0 -60
  350. package/dist/cli/enriched-event.js.map +0 -1
  351. package/dist/cli/event-input.d.ts +0 -28
  352. package/dist/cli/event-input.js +0 -73
  353. package/dist/cli/event-input.js.map +0 -1
  354. package/dist/cli/explain-action.d.ts +0 -25
  355. package/dist/cli/explain-action.js +0 -57
  356. package/dist/cli/explain-action.js.map +0 -1
  357. package/dist/cli/explain-policy.d.ts +0 -147
  358. package/dist/cli/explain-policy.js +0 -248
  359. package/dist/cli/explain-policy.js.map +0 -1
  360. package/dist/cli/explain.d.ts +0 -31
  361. package/dist/cli/explain.js +0 -159
  362. package/dist/cli/explain.js.map +0 -1
  363. package/dist/cli/gc/index.d.ts +0 -63
  364. package/dist/cli/gc/index.js +0 -566
  365. package/dist/cli/gc/index.js.map +0 -1
  366. package/dist/cli/pack/approve-escape.d.ts +0 -19
  367. package/dist/cli/pack/approve-escape.js +0 -190
  368. package/dist/cli/pack/approve-escape.js.map +0 -1
  369. package/dist/cli/pack/auto-approve-path.d.ts +0 -146
  370. package/dist/cli/pack/auto-approve-path.js +0 -462
  371. package/dist/cli/pack/auto-approve-path.js.map +0 -1
  372. package/dist/cli/pack/hook-codex-post-tool-use.d.ts +0 -25
  373. package/dist/cli/pack/hook-codex-post-tool-use.js +0 -160
  374. package/dist/cli/pack/hook-codex-post-tool-use.js.map +0 -1
  375. package/dist/cli/pack/hook-codex-pre-tool-use.d.ts +0 -48
  376. package/dist/cli/pack/hook-codex-pre-tool-use.js +0 -474
  377. package/dist/cli/pack/hook-codex-pre-tool-use.js.map +0 -1
  378. package/dist/cli/pack/hook-codex-stop.d.ts +0 -35
  379. package/dist/cli/pack/hook-codex-stop.js +0 -329
  380. package/dist/cli/pack/hook-codex-stop.js.map +0 -1
  381. package/dist/cli/pack/hook-codex-user-prompt-submit.d.ts +0 -24
  382. package/dist/cli/pack/hook-codex-user-prompt-submit.js +0 -93
  383. package/dist/cli/pack/hook-codex-user-prompt-submit.js.map +0 -1
  384. package/dist/cli/pack/hook-post-merge-gate-record.d.ts +0 -37
  385. package/dist/cli/pack/hook-post-merge-gate-record.js +0 -190
  386. package/dist/cli/pack/hook-post-merge-gate-record.js.map +0 -1
  387. package/dist/cli/pack/hook-post-merge-gate.d.ts +0 -34
  388. package/dist/cli/pack/hook-post-merge-gate.js +0 -277
  389. package/dist/cli/pack/hook-post-merge-gate.js.map +0 -1
  390. package/dist/cli/pack/hook-post-tool-use.d.ts +0 -45
  391. package/dist/cli/pack/hook-post-tool-use.js +0 -137
  392. package/dist/cli/pack/hook-post-tool-use.js.map +0 -1
  393. package/dist/cli/pack/hook-pre-tool-use.d.ts +0 -92
  394. package/dist/cli/pack/hook-pre-tool-use.js +0 -1328
  395. package/dist/cli/pack/hook-pre-tool-use.js.map +0 -1
  396. package/dist/cli/pack/hook-runtime-reality.d.ts +0 -63
  397. package/dist/cli/pack/hook-runtime-reality.js +0 -210
  398. package/dist/cli/pack/hook-runtime-reality.js.map +0 -1
  399. package/dist/cli/pack/hook-solution-acceptance-writeguard.d.ts +0 -32
  400. package/dist/cli/pack/hook-solution-acceptance-writeguard.js +0 -438
  401. package/dist/cli/pack/hook-solution-acceptance-writeguard.js.map +0 -1
  402. package/dist/cli/pack/hook-solution-acceptance.d.ts +0 -157
  403. package/dist/cli/pack/hook-solution-acceptance.js +0 -530
  404. package/dist/cli/pack/hook-solution-acceptance.js.map +0 -1
  405. package/dist/cli/pack/hook-stay-in-scope.d.ts +0 -37
  406. package/dist/cli/pack/hook-stay-in-scope.js +0 -128
  407. package/dist/cli/pack/hook-stay-in-scope.js.map +0 -1
  408. package/dist/cli/pack/hook-subagent-start.d.ts +0 -23
  409. package/dist/cli/pack/hook-subagent-start.js +0 -88
  410. package/dist/cli/pack/hook-subagent-start.js.map +0 -1
  411. package/dist/cli/pack/hook-subagent-stop.d.ts +0 -19
  412. package/dist/cli/pack/hook-subagent-stop.js +0 -41
  413. package/dist/cli/pack/hook-subagent-stop.js.map +0 -1
  414. package/dist/cli/pack/hook-track-active-claim.d.ts +0 -27
  415. package/dist/cli/pack/hook-track-active-claim.js +0 -275
  416. package/dist/cli/pack/hook-track-active-claim.js.map +0 -1
  417. package/dist/cli/pack/transcript-report-scan.d.ts +0 -71
  418. package/dist/cli/pack/transcript-report-scan.js +0 -359
  419. package/dist/cli/pack/transcript-report-scan.js.map +0 -1
  420. package/dist/cli/pack/understanding-report-schema-hint.d.ts +0 -26
  421. package/dist/cli/pack/understanding-report-schema-hint.js +0 -120
  422. package/dist/cli/pack/understanding-report-schema-hint.js.map +0 -1
  423. package/dist/cli/pack/upgrade.d.ts +0 -32
  424. package/dist/cli/pack/upgrade.js +0 -273
  425. package/dist/cli/pack/upgrade.js.map +0 -1
  426. package/dist/cli/pause/index.d.ts +0 -113
  427. package/dist/cli/pause/index.js +0 -251
  428. package/dist/cli/pause/index.js.map +0 -1
  429. package/dist/cli/pause-check.d.ts +0 -22
  430. package/dist/cli/pause-check.js +0 -54
  431. package/dist/cli/pause-check.js.map +0 -1
  432. package/dist/cli/policy/intercept.d.ts +0 -233
  433. package/dist/cli/policy/intercept.js +0 -1022
  434. package/dist/cli/policy/intercept.js.map +0 -1
  435. package/dist/cli/policy/risk-envelope-enrichment.d.ts +0 -40
  436. package/dist/cli/policy/risk-envelope-enrichment.js +0 -110
  437. package/dist/cli/policy/risk-envelope-enrichment.js.map +0 -1
  438. package/dist/cli/record/index.d.ts +0 -81
  439. package/dist/cli/record/index.js +0 -348
  440. package/dist/cli/record/index.js.map +0 -1
  441. package/dist/cli/register-audit-group.js +0 -91
  442. package/dist/cli/register-audit-group.js.map +0 -1
  443. package/dist/cli/resolve-env.d.ts +0 -32
  444. package/dist/cli/resolve-env.js +0 -46
  445. package/dist/cli/resolve-env.js.map +0 -1
  446. package/dist/cli/session-export/index.d.ts +0 -46
  447. package/dist/cli/session-export/index.js +0 -169
  448. package/dist/cli/session-export/index.js.map +0 -1
  449. package/dist/cli/session-export/redact.d.ts +0 -22
  450. package/dist/cli/session-export/redact.js +0 -47
  451. package/dist/cli/session-export/redact.js.map +0 -1
  452. package/dist/cli/session-export/transcript.d.ts +0 -24
  453. package/dist/cli/session-export/transcript.js +0 -164
  454. package/dist/cli/session-export/transcript.js.map +0 -1
  455. package/dist/cli/session-start/branch-check.d.ts +0 -18
  456. package/dist/cli/session-start/branch-check.js +0 -140
  457. package/dist/cli/session-start/branch-check.js.map +0 -1
  458. package/dist/cli/session-start/index.d.ts +0 -121
  459. package/dist/cli/session-start/index.js +0 -591
  460. package/dist/cli/session-start/index.js.map +0 -1
  461. package/dist/cli/session-start/shared-options.d.ts +0 -103
  462. package/dist/cli/session-start/shared-options.js +0 -107
  463. package/dist/cli/session-start/shared-options.js.map +0 -1
  464. package/dist/cli/session-start/stale-base-check.d.ts +0 -46
  465. package/dist/cli/session-start/stale-base-check.js +0 -352
  466. package/dist/cli/session-start/stale-base-check.js.map +0 -1
  467. package/dist/cli/session-start/toolchain-parity.d.ts +0 -267
  468. package/dist/cli/session-start/toolchain-parity.js +0 -797
  469. package/dist/cli/session-start/toolchain-parity.js.map +0 -1
  470. package/dist/cli/smoke/assertions.d.ts +0 -46
  471. package/dist/cli/smoke/assertions.js +0 -170
  472. package/dist/cli/smoke/assertions.js.map +0 -1
  473. package/dist/cli/smoke/index.d.ts +0 -76
  474. package/dist/cli/smoke/index.js +0 -245
  475. package/dist/cli/smoke/index.js.map +0 -1
  476. package/dist/cli/smoke/runner.d.ts +0 -55
  477. package/dist/cli/smoke/runner.js +0 -134
  478. package/dist/cli/smoke/runner.js.map +0 -1
  479. package/dist/cli/smoke/stream-parser.d.ts +0 -65
  480. package/dist/cli/smoke/stream-parser.js +0 -115
  481. package/dist/cli/smoke/stream-parser.js.map +0 -1
  482. package/dist/cli/test-risk.d.ts +0 -27
  483. package/dist/cli/test-risk.js +0 -38
  484. package/dist/cli/test-risk.js.map +0 -1
  485. package/dist/io/display-path.d.ts +0 -11
  486. package/dist/io/display-path.js +0 -29
  487. package/dist/io/display-path.js.map +0 -1
  488. package/dist/io/duration.d.ts +0 -5
  489. package/dist/io/duration.js +0 -50
  490. package/dist/io/duration.js.map +0 -1
  491. package/dist/io/extract.d.ts +0 -79
  492. package/dist/io/extract.js +0 -226
  493. package/dist/io/extract.js.map +0 -1
  494. package/dist/io/ledger-record.d.ts +0 -83
  495. package/dist/io/ledger-record.js +0 -301
  496. package/dist/io/ledger-record.js.map +0 -1
  497. package/dist/io/read-json-dir-entries.d.ts +0 -36
  498. package/dist/io/read-json-dir-entries.js +0 -48
  499. package/dist/io/read-json-dir-entries.js.map +0 -1
  500. package/dist/io/safe-json-parse.d.ts +0 -5
  501. package/dist/io/safe-json-parse.js +0 -21
  502. package/dist/io/safe-json-parse.js.map +0 -1
  503. package/dist/policies/index.d.ts +0 -5
  504. package/dist/policies/index.js +0 -6
  505. package/dist/policies/index.js.map +0 -1
  506. package/dist/policies/ledger-client.d.ts +0 -113
  507. package/dist/policies/ledger-client.js +0 -500
  508. package/dist/policies/ledger-client.js.map +0 -1
  509. package/dist/policies/producers.d.ts +0 -12
  510. package/dist/policies/producers.js +0 -61
  511. package/dist/policies/producers.js.map +0 -1
  512. package/dist/policies/requires.d.ts +0 -75
  513. package/dist/policies/requires.js +0 -240
  514. package/dist/policies/requires.js.map +0 -1
  515. package/dist/policies/timestamp.d.ts +0 -14
  516. package/dist/policies/timestamp.js +0 -36
  517. package/dist/policies/timestamp.js.map +0 -1
  518. package/dist/policy-packs/builtin/permission-profiles.d.ts +0 -11
  519. package/dist/policy-packs/builtin/permission-profiles.js +0 -74
  520. package/dist/policy-packs/builtin/permission-profiles.js.map +0 -1
  521. package/dist/policy-packs/builtin/post-merge-gate-runtime.d.ts +0 -286
  522. package/dist/policy-packs/builtin/post-merge-gate-runtime.js +0 -397
  523. package/dist/policy-packs/builtin/post-merge-gate-runtime.js.map +0 -1
  524. package/dist/policy-packs/builtin/post-merge-gate.d.ts +0 -56
  525. package/dist/policy-packs/builtin/post-merge-gate.js +0 -347
  526. package/dist/policy-packs/builtin/post-merge-gate.js.map +0 -1
  527. package/dist/policy-packs/builtin/solution-acceptance-reconnect.d.ts +0 -50
  528. package/dist/policy-packs/builtin/solution-acceptance-reconnect.js +0 -151
  529. package/dist/policy-packs/builtin/solution-acceptance-reconnect.js.map +0 -1
  530. package/dist/policy-packs/builtin/solution-acceptance-runtime.d.ts +0 -323
  531. package/dist/policy-packs/builtin/solution-acceptance-runtime.js +0 -672
  532. package/dist/policy-packs/builtin/solution-acceptance-runtime.js.map +0 -1
  533. package/dist/policy-packs/builtin/solution-acceptance.d.ts +0 -45
  534. package/dist/policy-packs/builtin/solution-acceptance.js +0 -226
  535. package/dist/policy-packs/builtin/solution-acceptance.js.map +0 -1
  536. package/dist/policy-packs/builtin/understanding-before-execution/active-claim.d.ts +0 -25
  537. package/dist/policy-packs/builtin/understanding-before-execution/active-claim.js +0 -94
  538. package/dist/policy-packs/builtin/understanding-before-execution/active-claim.js.map +0 -1
  539. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.d.ts +0 -35
  540. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.js +0 -86
  541. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve-default.js.map +0 -1
  542. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve.d.ts +0 -210
  543. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve.js +0 -361
  544. package/dist/policy-packs/builtin/understanding-before-execution/auto-approve.js.map +0 -1
  545. package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.d.ts +0 -304
  546. package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js +0 -734
  547. package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js.map +0 -1
  548. package/dist/policy-packs/builtin/understanding-before-execution/expiry-reason.d.ts +0 -36
  549. package/dist/policy-packs/builtin/understanding-before-execution/expiry-reason.js +0 -73
  550. package/dist/policy-packs/builtin/understanding-before-execution/expiry-reason.js.map +0 -1
  551. package/dist/policy-packs/builtin/understanding-before-execution/index.d.ts +0 -19
  552. package/dist/policy-packs/builtin/understanding-before-execution/index.js +0 -83
  553. package/dist/policy-packs/builtin/understanding-before-execution/index.js.map +0 -1
  554. package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.d.ts +0 -135
  555. package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js +0 -643
  556. package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js.map +0 -1
  557. package/dist/policy-packs/builtin/understanding-before-execution/ledger.d.ts +0 -25
  558. package/dist/policy-packs/builtin/understanding-before-execution/ledger.js +0 -56
  559. package/dist/policy-packs/builtin/understanding-before-execution/ledger.js.map +0 -1
  560. package/dist/policy-packs/builtin/understanding-before-execution/lifecycle.d.ts +0 -20
  561. package/dist/policy-packs/builtin/understanding-before-execution/lifecycle.js +0 -106
  562. package/dist/policy-packs/builtin/understanding-before-execution/lifecycle.js.map +0 -1
  563. package/dist/policy-packs/builtin/understanding-before-execution/markers.d.ts +0 -126
  564. package/dist/policy-packs/builtin/understanding-before-execution/markers.js +0 -245
  565. package/dist/policy-packs/builtin/understanding-before-execution/markers.js.map +0 -1
  566. package/dist/policy-packs/builtin/understanding-before-execution/measured-permission-modes.d.ts +0 -29
  567. package/dist/policy-packs/builtin/understanding-before-execution/measured-permission-modes.js +0 -82
  568. package/dist/policy-packs/builtin/understanding-before-execution/measured-permission-modes.js.map +0 -1
  569. package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.d.ts +0 -71
  570. package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.js +0 -175
  571. package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.js.map +0 -1
  572. package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.d.ts +0 -625
  573. package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.js +0 -1076
  574. package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.js.map +0 -1
  575. package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.d.ts +0 -128
  576. package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js +0 -213
  577. package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js.map +0 -1
  578. package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.d.ts +0 -129
  579. package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js +0 -166
  580. package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js.map +0 -1
  581. package/dist/policy-packs/builtin/understanding-before-execution/task-markers.d.ts +0 -164
  582. package/dist/policy-packs/builtin/understanding-before-execution/task-markers.js +0 -275
  583. package/dist/policy-packs/builtin/understanding-before-execution/task-markers.js.map +0 -1
  584. package/dist/policy-packs/builtin/understanding-before-execution-runtime.d.ts +0 -1
  585. package/dist/policy-packs/builtin/understanding-before-execution-runtime.js +0 -10
  586. package/dist/policy-packs/builtin/understanding-before-execution-runtime.js.map +0 -1
  587. package/dist/policy-packs/builtin/understanding-before-execution.d.ts +0 -526
  588. package/dist/policy-packs/builtin/understanding-before-execution.js +0 -1078
  589. package/dist/policy-packs/builtin/understanding-before-execution.js.map +0 -1
  590. package/dist/policy-packs/permission-translator.d.ts +0 -9
  591. package/dist/policy-packs/permission-translator.js +0 -76
  592. package/dist/policy-packs/permission-translator.js.map +0 -1
  593. package/dist/runtime/action-envelope.d.ts +0 -64
  594. package/dist/runtime/action-envelope.js +0 -46
  595. package/dist/runtime/action-envelope.js.map +0 -1
  596. package/dist/runtime/approval-signing.d.ts +0 -111
  597. package/dist/runtime/approval-signing.js +0 -384
  598. package/dist/runtime/approval-signing.js.map +0 -1
  599. package/dist/runtime/bash-match-facts.d.ts +0 -60
  600. package/dist/runtime/bash-match-facts.js +0 -196
  601. package/dist/runtime/bash-match-facts.js.map +0 -1
  602. package/dist/runtime/bash-match-registry.d.ts +0 -112
  603. package/dist/runtime/bash-match-registry.js +0 -406
  604. package/dist/runtime/bash-match-registry.js.map +0 -1
  605. package/dist/runtime/bash-prefix-parse.d.ts +0 -31
  606. package/dist/runtime/bash-prefix-parse.js +0 -576
  607. package/dist/runtime/bash-prefix-parse.js.map +0 -1
  608. package/dist/runtime/command-normalize.d.ts +0 -658
  609. package/dist/runtime/command-normalize.js +0 -2410
  610. package/dist/runtime/command-normalize.js.map +0 -1
  611. package/dist/runtime/deletion-target-resolve.d.ts +0 -28
  612. package/dist/runtime/deletion-target-resolve.js +0 -1078
  613. package/dist/runtime/deletion-target-resolve.js.map +0 -1
  614. package/dist/runtime/destructive-shell-floor.d.ts +0 -19
  615. package/dist/runtime/destructive-shell-floor.js +0 -611
  616. package/dist/runtime/destructive-shell-floor.js.map +0 -1
  617. package/dist/runtime/environment-resolver.d.ts +0 -36
  618. package/dist/runtime/environment-resolver.js +0 -138
  619. package/dist/runtime/environment-resolver.js.map +0 -1
  620. package/dist/runtime/git-context.d.ts +0 -201
  621. package/dist/runtime/git-context.js +0 -422
  622. package/dist/runtime/git-context.js.map +0 -1
  623. package/dist/runtime/index.d.ts +0 -12
  624. package/dist/runtime/index.js +0 -13
  625. package/dist/runtime/index.js.map +0 -1
  626. package/dist/runtime/intercept.d.ts +0 -623
  627. package/dist/runtime/intercept.js +0 -1384
  628. package/dist/runtime/intercept.js.map +0 -1
  629. package/dist/runtime/kube-context.d.ts +0 -16
  630. package/dist/runtime/kube-context.js +0 -63
  631. package/dist/runtime/kube-context.js.map +0 -1
  632. package/dist/runtime/kubectl-target-parse.d.ts +0 -31
  633. package/dist/runtime/kubectl-target-parse.js +0 -249
  634. package/dist/runtime/kubectl-target-parse.js.map +0 -1
  635. package/dist/runtime/ledger-add.d.ts +0 -16
  636. package/dist/runtime/ledger-add.js +0 -150
  637. package/dist/runtime/ledger-add.js.map +0 -1
  638. package/dist/runtime/ledger-writer.d.ts +0 -27
  639. package/dist/runtime/ledger-writer.js +0 -46
  640. package/dist/runtime/ledger-writer.js.map +0 -1
  641. package/dist/runtime/pause-sentinel.d.ts +0 -60
  642. package/dist/runtime/pause-sentinel.js +0 -156
  643. package/dist/runtime/pause-sentinel.js.map +0 -1
  644. package/dist/runtime/pending-approval.d.ts +0 -23
  645. package/dist/runtime/pending-approval.js +0 -67
  646. package/dist/runtime/pending-approval.js.map +0 -1
  647. package/dist/runtime/read-only-bash.d.ts +0 -141
  648. package/dist/runtime/read-only-bash.js +0 -2204
  649. package/dist/runtime/read-only-bash.js.map +0 -1
  650. package/dist/runtime/recovery-git-commit.d.ts +0 -22
  651. package/dist/runtime/recovery-git-commit.js +0 -284
  652. package/dist/runtime/recovery-git-commit.js.map +0 -1
  653. package/dist/runtime/reject-malformed-session-id.d.ts +0 -8
  654. package/dist/runtime/reject-malformed-session-id.js +0 -16
  655. package/dist/runtime/reject-malformed-session-id.js.map +0 -1
  656. package/dist/runtime/risk-classifier.d.ts +0 -38
  657. package/dist/runtime/risk-classifier.js +0 -311
  658. package/dist/runtime/risk-classifier.js.map +0 -1
  659. package/dist/runtime/session-id.d.ts +0 -113
  660. package/dist/runtime/session-id.js +0 -193
  661. package/dist/runtime/session-id.js.map +0 -1
  662. package/dist/runtime/shell-word.d.ts +0 -62
  663. package/dist/runtime/shell-word.js +0 -410
  664. package/dist/runtime/shell-word.js.map +0 -1
  665. package/dist/runtime/task-providers/agent-tasks.d.ts +0 -105
  666. package/dist/runtime/task-providers/agent-tasks.js +0 -247
  667. package/dist/runtime/task-providers/agent-tasks.js.map +0 -1
  668. package/dist/runtime/when-eval.d.ts +0 -62
  669. package/dist/runtime/when-eval.js +0 -212
  670. package/dist/runtime/when-eval.js.map +0 -1
  671. package/dist/runtime/workflow-policies.d.ts +0 -207
  672. package/dist/runtime/workflow-policies.js +0 -596
  673. package/dist/runtime/workflow-policies.js.map +0 -1
  674. package/dist/schema/audit.d.ts +0 -71
  675. package/dist/schema/audit.js +0 -32
  676. package/dist/schema/audit.js.map +0 -1
  677. package/dist/schema/doctor.d.ts +0 -25
  678. package/dist/schema/doctor.js +0 -23
  679. package/dist/schema/doctor.js.map +0 -1
  680. package/dist/schema/environments.d.ts +0 -215
  681. package/dist/schema/environments.js +0 -101
  682. package/dist/schema/environments.js.map +0 -1
  683. package/dist/schema/extract.d.ts +0 -9
  684. package/dist/schema/extract.js +0 -86
  685. package/dist/schema/extract.js.map +0 -1
  686. package/dist/schema/permission-profiles.d.ts +0 -2292
  687. package/dist/schema/permission-profiles.js +0 -60
  688. package/dist/schema/permission-profiles.js.map +0 -1
  689. package/dist/schema/policies.d.ts +0 -974
  690. package/dist/schema/policies.js +0 -298
  691. package/dist/schema/policies.js.map +0 -1
  692. package/dist/schema/requires.d.ts +0 -131
  693. package/dist/schema/requires.js +0 -88
  694. package/dist/schema/requires.js.map +0 -1
  695. package/dist/schema/risk.d.ts +0 -144
  696. package/dist/schema/risk.js +0 -194
  697. package/dist/schema/risk.js.map +0 -1
  698. package/dist/schema/session-start-preflight.d.ts +0 -10
  699. package/dist/schema/session-start-preflight.js +0 -106
  700. package/dist/schema/session-start-preflight.js.map +0 -1
  701. package/dist/schema/stale-base-check.d.ts +0 -18
  702. package/dist/schema/stale-base-check.js +0 -37
  703. package/dist/schema/stale-base-check.js.map +0 -1
  704. package/dist/schema/toolchain-parity.d.ts +0 -21
  705. package/dist/schema/toolchain-parity.js +0 -48
  706. package/dist/schema/toolchain-parity.js.map +0 -1
  707. package/dist/schema/workflows.d.ts +0 -519
  708. package/dist/schema/workflows.js +0 -81
  709. package/dist/schema/workflows.js.map +0 -1
  710. package/scripts/runtime-reality-docker-probe.mjs +0 -71
@@ -5,7 +5,19 @@
5
5
  // `--matcher`, removes them, writes a snapshot of the removed groups to
6
6
  // `<settings-dir>/harness.gate-disable.<ISO>.json`, backs up the original
7
7
  // to `<settings.json>.bak.<ISO>`, and atomically rewrites settings.json
8
- // without the matching groups.
8
+ // without the matching groups. There is one live snapshot per settings.json:
9
+ // when one already exists and the file is exactly the state it left, the
10
+ // newly removed groups are merged into it (and the backup of this call is
11
+ // added to its audit trail) instead of starting a second one, so a single
12
+ // `gate enable` brings every removed group back. A live snapshot that is
13
+ // spent (the file is back at its pre-disable state, or holds every group it
14
+ // names unchanged) is retired first and a fresh one is started; a live
15
+ // snapshot the file has drifted from while a group is still missing, or is
16
+ // there only with other content, makes this verb refuse, writing nothing but
17
+ // the retire of the spent snapshots it walked past, and points at
18
+ // `gate enable --force`. A settings.json that is itself a symlink is written
19
+ // through: the link stays a link, and the backup and snapshot sit beside the
20
+ // file it leads to (`resolveSettingsEntry`).
9
21
  //
10
22
  // With NO `--matcher`, this verb is a pure listing — it prints the
11
23
  // candidate groups and exits without writing. That's the no-args
@@ -18,7 +30,8 @@ import * as fs from "node:fs";
18
30
  import * as os from "node:os";
19
31
  import * as path from "node:path";
20
32
  import { atomicWriteFile } from "../../io/atomic-write.js";
21
- import { backupPath, sha256Hex, SNAPSHOT_VERSION, snapshotPath, } from "./snapshot.js";
33
+ import { shellQuote } from "../shell-quote.js";
34
+ import { backupPath, changedLabel, copyOverLinkCommand, groupCommands, isReadOnlyWriteError, listLiveSnapshots, missingLabel, planRestore, readOnlyLinkTargetText, readOnlyWritablePlace, resolveSettingsEntry, retireSnapshot, settingsFlag, settingsOwnEntry, sha256Hex, SNAPSHOT_VERSION, snapshotPath, supersedeSnapshot, } from "./snapshot.js";
22
35
  const DEFAULT_SETTINGS_REL = path.join(".claude", "settings.json");
23
36
  export class GateDisableError extends Error {
24
37
  constructor(message) {
@@ -76,16 +89,7 @@ function summarizeGroup(group) {
76
89
  if (group === null || typeof group !== "object" || Array.isArray(group)) {
77
90
  return "<malformed group>";
78
91
  }
79
- const obj = group;
80
- const inner = Array.isArray(obj["hooks"]) ? obj["hooks"] : [];
81
- const cmds = [];
82
- for (const h of inner) {
83
- if (h !== null && typeof h === "object" && !Array.isArray(h)) {
84
- const cmd = h["command"];
85
- if (typeof cmd === "string")
86
- cmds.push(cmd);
87
- }
88
- }
92
+ const cmds = groupCommands(group);
89
93
  if (cmds.length === 0)
90
94
  return "<no commands>";
91
95
  // Truncate aggressively — operators reading the list want to scan
@@ -124,6 +128,56 @@ function matcherMatches(group, pattern) {
124
128
  // demand for it.
125
129
  return m.includes(pattern);
126
130
  }
131
+ /**
132
+ * Whether two existing directories are the same one, however each was spelled:
133
+ * the native `realpath` takes `d/..` through the real location of `d`, as the
134
+ * kernel does when it lists the directory.
135
+ */
136
+ function sameDirectory(a, b) {
137
+ return fs.realpathSync.native(a) === fs.realpathSync.native(b);
138
+ }
139
+ /**
140
+ * The refusal for a write that a read-only directory turned down while the
141
+ * settings path is a symlink into it, or null when the failure is anything
142
+ * else. `effect` says what was and was not written, so the message can say
143
+ * truthfully that settings.json was not changed.
144
+ *
145
+ * Making the directory writable always works. A copy of the file in place of
146
+ * the link is offered only when the link sits in another directory (the copy
147
+ * is written there) and no live snapshot sits beside the file: an enable
148
+ * through the copy looks only beside the copy, so it would report nothing to
149
+ * restore while the groups those snapshots removed are still missing. Such
150
+ * snapshots are named instead, with the enable that restores them first.
151
+ *
152
+ * `written` is the snapshot this call wrote before the refusal (the file is
153
+ * unchanged, so the snapshot describes a removal that never happened). The
154
+ * same reason applies: once the link is a copy, an enable or a disable run
155
+ * again through the settings path looks only beside the copy and leaves it
156
+ * live beside the original file. The copy is therefore offered only after
157
+ * the enable through the link, which retires it, or after it is moved aside.
158
+ */
159
+ function readOnlyTargetError(settingsPath, own, entry, matcher, live, err, effect, written) {
160
+ if (entry === own || !isReadOnlyWriteError(err))
161
+ return null;
162
+ const again = `then run \`harness gate disable --matcher ${shellQuote(matcher)} ${settingsFlag(settingsPath)}\` again.`;
163
+ const writable = `make ${readOnlyWritablePlace(entry, err)} writable`;
164
+ const besideFile = live.filter((l) => sameDirectory(path.dirname(l.path), path.dirname(entry))).map((l) => l.path);
165
+ const wayOut = besideFile.length > 0
166
+ ? `To disable anyway, ${writable}, ${again} Do not replace the link with a copy of its file while the live ` +
167
+ `snapshot(s) beside that file are there (${besideFile.join(", ")}): they hold groups an earlier disable ` +
168
+ `removed, and an enable through the copy would not look for them. To switch to a copy, first ${writable} ` +
169
+ `and run \`harness gate enable ${settingsFlag(settingsPath)}\`, which restores them, then replace the link.`
170
+ : sameDirectory(path.dirname(own), path.dirname(entry))
171
+ ? `To disable anyway, ${writable}, ${again}`
172
+ : written !== undefined
173
+ ? `To disable anyway, first run \`harness gate enable ${settingsFlag(settingsPath)}\` (it retires that snapshot) ` +
174
+ `or move ${written} aside: once the link is a copy, an enable through it looks only beside the copy and ` +
175
+ `would leave the snapshot live beside ${entry}. Then replace the link with a copy of its file ` +
176
+ `(\`${copyOverLinkCommand(settingsPath, entry)}\`) or ${writable}, ${again}`
177
+ : `To disable anyway, replace the link with a copy of its file ` +
178
+ `(\`${copyOverLinkCommand(settingsPath, entry)}\`) or ${writable}, ${again}`;
179
+ return new GateDisableError(`${readOnlyLinkTargetText(settingsPath, entry, err)} ${effect} ${wayOut}`);
180
+ }
127
181
  export function gateDisable(opts = {}) {
128
182
  const settingsPath = resolveSettingsPath(opts);
129
183
  const parsed = readSettings(settingsPath);
@@ -151,15 +205,48 @@ export function gateDisable(opts = {}) {
151
205
  }
152
206
  if (removed.length === 0) {
153
207
  throw new GateDisableError(`no hook groups matched matcher substring ${JSON.stringify(matcherPattern)} in ${settingsPath}. ` +
154
- `Run \`harness gate disable\` (no args) to list the available candidates.`);
208
+ `Run \`harness gate disable ${settingsFlag(settingsPath)}\` (no --matcher) to list the available candidates.`);
155
209
  }
156
210
  const beforeSha = sha256Hex(parsed.raw);
157
211
  const now = opts.now ?? new Date();
158
- const backup = backupPath(settingsPath, now);
159
- const snapPath = snapshotPath(settingsPath, now);
212
+ // Every write goes to the file itself: a settings.json that is a symlink
213
+ // (dotfiles) stays a symlink, and its backup and snapshot sit beside the
214
+ // file it leads to, where an enable through either spelling looks. A
215
+ // spelling with `..` is taken through its real directory, so no path built
216
+ // from it is folded into another directory.
217
+ const own = settingsOwnEntry(settingsPath);
218
+ const entry = resolveSettingsEntry(settingsPath);
219
+ const backup = backupPath(entry, now);
220
+ const found = listLiveSnapshots(settingsPath);
221
+ if (!found.ok) {
222
+ throw new GateDisableError(`${found.reason}. A live snapshot beside ${settingsPath} that cannot be read would be left out of this ` +
223
+ `disable; nothing was changed. Move ${found.path} aside (or rename it to *.restored.json once its groups ` +
224
+ `are back; if it names groups that are still removed, put them back by hand first, the snapshot's ` +
225
+ `settingsBackupPath names the file as it was before the disable) and run this again.`);
226
+ }
227
+ const { target, spent } = chooseSnapshot(found.live, parsed, beforeSha, settingsPath);
228
+ const step = target === undefined ? 0 : Math.max(...target.snapshot.removed.map((r) => r.step ?? 0), 0) + 1;
229
+ const stepped = removed.map((r) => ({ ...r, step }));
230
+ // A merge keeps the snapshot beside the file it describes. One found beside
231
+ // the settings path while the path is a symlink to a file elsewhere is moved
232
+ // there: an enable through the file's own path looks only in its directory.
233
+ const relocated = target !== undefined && !sameDirectory(path.dirname(target.path), path.dirname(entry));
234
+ const snapPath = target === undefined
235
+ ? snapshotPath(entry, now)
236
+ : relocated
237
+ ? path.join(path.dirname(entry), path.basename(target.path))
238
+ : target.path;
239
+ const retired = retireSpent(spent, settingsPath);
240
+ // The snapshots still live after that retire, for a refusal that names the ones beside the file.
241
+ const stillLive = found.live.filter((l) => !spent.includes(l));
160
242
  // Backup BEFORE we touch the live file. If the backup write fails we
161
243
  // bail without having mutated anything.
162
- atomicWriteFile(backup, parsed.raw);
244
+ try {
245
+ atomicWriteFile(backup, parsed.raw);
246
+ }
247
+ catch (err) {
248
+ throw readOnlyTargetError(settingsPath, own, entry, matcherPattern, stillLive, err, `${settingsPath} was not changed.`) ?? err;
249
+ }
163
250
  const newObj = { ...parsed.obj };
164
251
  if (Object.keys(keptHooks).length === 0) {
165
252
  // Preserve the operator's choice to omit the key when there are no
@@ -172,28 +259,176 @@ export function gateDisable(opts = {}) {
172
259
  }
173
260
  const newSettings = `${JSON.stringify(newObj, null, 2)}\n`;
174
261
  const afterSha = sha256Hex(newSettings);
175
- const snapshot = {
176
- version: SNAPSHOT_VERSION,
177
- createdAt: now.toISOString(),
178
- settingsPath,
179
- settingsBackupPath: backup,
180
- settingsBeforeSha256: beforeSha,
181
- settingsAfterSha256: afterSha,
182
- filter: { matcher: matcherPattern },
183
- removed,
184
- };
262
+ // A merge keeps the original pre-disable state (sha, backup, filter) and
263
+ // moves only the post-disable sha forward; the snapshot is upgraded to the
264
+ // current version because the stepped positions are not readable by a
265
+ // release that only knows version 1.
266
+ const snapshot = target === undefined
267
+ ? {
268
+ version: SNAPSHOT_VERSION,
269
+ createdAt: now.toISOString(),
270
+ settingsPath: path.resolve(entry),
271
+ settingsBackupPath: path.resolve(backup),
272
+ settingsBeforeSha256: beforeSha,
273
+ settingsAfterSha256: afterSha,
274
+ filter: { matcher: matcherPattern },
275
+ removed: stepped,
276
+ }
277
+ : {
278
+ ...target.snapshot,
279
+ version: SNAPSHOT_VERSION,
280
+ ...(relocated ? { settingsPath: path.resolve(entry) } : {}),
281
+ settingsAfterSha256: afterSha,
282
+ removed: [...target.snapshot.removed, ...stepped],
283
+ merges: [
284
+ ...(target.snapshot.merges ?? []),
285
+ {
286
+ step,
287
+ createdAt: now.toISOString(),
288
+ matcher: matcherPattern,
289
+ settingsBackupPath: path.resolve(backup),
290
+ },
291
+ ],
292
+ };
185
293
  // Snapshot lands BEFORE the live settings.json rewrite: the snapshot
186
294
  // is the operator's reversibility insurance, so we don't want to be
187
295
  // left in a "settings.json mutated but snapshot missing" state if the
188
296
  // process dies between the two writes.
189
- atomicWriteFile(snapPath, `${JSON.stringify(snapshot, null, 2)}\n`);
190
- atomicWriteFile(settingsPath, newSettings);
297
+ const priorSnapshot = target === undefined || relocated ? undefined : fs.readFileSync(target.path, "utf8");
298
+ // Written by this call alone: nothing earlier to put back if the settings write fails.
299
+ const freshSnapshot = !relocated && priorSnapshot === undefined;
300
+ try {
301
+ atomicWriteFile(snapPath, `${JSON.stringify(snapshot, null, 2)}\n`);
302
+ }
303
+ catch (err) {
304
+ throw (readOnlyTargetError(settingsPath, own, entry, matcherPattern, stillLive, err, `The backup ${backup} was written; ${settingsPath} and the snapshots were not changed.`) ?? err);
305
+ }
306
+ try {
307
+ atomicWriteFile(entry, newSettings);
308
+ }
309
+ catch (err) {
310
+ if (relocated || priorSnapshot !== undefined) {
311
+ // The merged snapshot now describes a removal that never happened to
312
+ // the file. Put the live snapshot back to what it was (a relocated
313
+ // merge: remove the copy, the earlier snapshot was never touched); if
314
+ // that fails too, `gate enable` still restores it, because it leaves a
315
+ // group the file still holds unchanged alone, and the operator is told so.
316
+ try {
317
+ if (priorSnapshot !== undefined)
318
+ atomicWriteFile(snapPath, priorSnapshot);
319
+ else
320
+ fs.unlinkSync(snapPath);
321
+ }
322
+ catch (rollbackErr) {
323
+ throw new GateDisableError(`cannot write ${settingsPath}: ${err.message}; and the snapshot ${snapPath}, already merged, ` +
324
+ `could not be put back (${rollbackErr.message}). ${settingsPath} still holds the groups this ` +
325
+ `disable meant to remove. Run \`harness gate enable ${settingsFlag(settingsPath)}\` to put back what the earlier ` +
326
+ `disables removed (add --force if it refuses; a group the file still holds is left alone), then run ` +
327
+ `this disable again.`);
328
+ }
329
+ }
330
+ throw (readOnlyTargetError(settingsPath, own, entry, matcherPattern, stillLive, err, `${settingsPath} was not changed (the backup ${backup} was written` +
331
+ `${freshSnapshot ? `, and the snapshot ${snapPath}, which an enable or this disable run again through ${settingsPath} retires` : ""}).`, freshSnapshot ? snapPath : undefined) ?? err);
332
+ }
333
+ // The earlier snapshot's groups now live in the one beside the file; retire it
334
+ // under a name that says so, never as restored.
335
+ let carriedFrom;
336
+ if (relocated && target !== undefined) {
337
+ try {
338
+ carriedFrom = { from: target.path, to: supersedeSnapshot(target.path) };
339
+ }
340
+ catch (err) {
341
+ throw new GateDisableError(`removed ${removed.length} hook group(s) from ${settingsPath} and merged the live snapshot into ${snapPath}, ` +
342
+ `but cannot retire the earlier snapshot ${target.path} (${err.message}). Move it out of the ` +
343
+ `directory by hand (or rename it to *.superseded.json) so it is never offered again; until then ` +
344
+ `\`harness gate enable ${settingsFlag(settingsPath)}\` exits non-zero on it.`);
345
+ }
346
+ }
191
347
  return {
192
348
  mode: "remove",
193
349
  settingsPath,
194
350
  backupPath: backup,
195
351
  snapshotPath: snapPath,
196
352
  removed,
353
+ merged: target !== undefined,
354
+ retired,
355
+ ...(carriedFrom !== undefined ? { carriedFrom } : {}),
197
356
  };
198
357
  }
358
+ /**
359
+ * Retires the spent snapshots a disable walked past, returning their retired
360
+ * names. A failed rename stops the disable before it writes anything, naming
361
+ * the snapshot and the way out instead of a bare errno.
362
+ */
363
+ function retireSpent(spent, settingsPath) {
364
+ return spent.map((l) => {
365
+ try {
366
+ return retireSnapshot(l.path);
367
+ }
368
+ catch (err) {
369
+ throw new GateDisableError(`the live gate snapshot ${l.path} is spent (${settingsPath} holds every group it names, enable would only ` +
370
+ `retire it) but cannot be retired (${err.message}). Move it out of the directory by hand (or ` +
371
+ `rename it to *.restored.json) and run this again. ${settingsPath} was not changed.`);
372
+ }
373
+ });
374
+ }
375
+ /**
376
+ * Which live snapshot a new disable joins, and which spent ones it retires
377
+ * first. Newest first, for each live snapshot:
378
+ * - the file is exactly the state it left (post-disable sha): join it;
379
+ * - the file already holds every group it names unchanged, which includes
380
+ * being back at its pre-disable state: it is spent, `gate enable` would
381
+ * only retire it, so retire it here and look at the next older one;
382
+ * - otherwise the file has drifted while a group is still missing, or is
383
+ * there only with other content (which may be another hook sharing the
384
+ * matcher): retire the spent snapshots walked past, so the way out stays
385
+ * `gate enable --force` and this disable again, then refuse before
386
+ * writing anything else.
387
+ * No live snapshot left to join means a fresh snapshot.
388
+ */
389
+ function chooseSnapshot(live, parsed, beforeSha, settingsPath) {
390
+ const spent = [];
391
+ for (const candidate of live) {
392
+ const snap = candidate.snapshot;
393
+ if (snap.settingsAfterSha256 === beforeSha)
394
+ return { target: candidate, spent };
395
+ const plan = planRestore(parsed.hooks ?? {}, snap);
396
+ if (plan.restored.length === 0 && plan.changed.length === 0) {
397
+ spent.push(candidate);
398
+ continue;
399
+ }
400
+ const retired = retireSpent(spent, settingsPath);
401
+ const problems = [
402
+ ...(plan.restored.length > 0
403
+ ? [
404
+ `${plan.restored.length} hook group(s) it removed are still missing ` +
405
+ `(${plan.restored.map(missingLabel).join("; ")})`,
406
+ ]
407
+ : []),
408
+ ...(plan.changed.length > 0
409
+ ? [
410
+ `${plan.changed.length} hook group(s) of the file have the event and matcher of one it removed but other ` +
411
+ `content, so they do not count as back (${plan.changed.map(changedLabel).join("; ")})`,
412
+ ]
413
+ : []),
414
+ ];
415
+ // A group that only shares the matcher may be another hook: --force takes
416
+ // it for the snapshot's and leaves the snapshot's out, so the refusal also
417
+ // names the way that puts the snapshot's group back instead.
418
+ const wayOut = plan.changed.length > 0
419
+ ? `If the file's group stands in for the snapshot's, run \`harness gate enable --force ${settingsFlag(settingsPath)}\`: ` +
420
+ `it takes it as back (the snapshot's group is not put back), puts the missing groups back and keeps every ` +
421
+ `other edit. Otherwise make the file hold the snapshot's group (${snap.settingsBackupPath} has it) and run ` +
422
+ `\`harness gate enable ${settingsFlag(settingsPath)}\`. Then run this again.`
423
+ : `Run \`harness gate enable --force ${settingsFlag(settingsPath)}\`: it puts the missing groups back, leaves a group ` +
424
+ `that is already there alone and keeps every other edit. Then run this again.`;
425
+ throw new GateDisableError(`${settingsPath} is not the state the live snapshot ${candidate.path} left, and ${problems.join("; ")}; ` +
426
+ `merging this disable into it would lose track of them. ` +
427
+ (retired.length > 0
428
+ ? `Retired the spent snapshot(s) walked past first (${retired.join(", ")}); nothing else was changed. `
429
+ : `Nothing was changed. `) +
430
+ wayOut);
431
+ }
432
+ return { target: undefined, spent };
433
+ }
199
434
  //# sourceMappingURL=disable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"disable.js","sourceRoot":"","sources":["../../../src/cli/gate/disable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"disable.js","sourceRoot":"","sources":["../../../src/cli/gate/disable.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { listSnapshots } from "./snapshot.js";
1
+ import { type ForeignSnapshot } from "./snapshot.js";
2
2
  export interface GateEnableOptions {
3
3
  /** `~/.claude/settings.json` override. */
4
4
  settingsPath?: string;
@@ -6,28 +6,48 @@ export interface GateEnableOptions {
6
6
  homeDir?: string;
7
7
  /**
8
8
  * `--force`: restore even when the on-disk settings.json sha differs
9
- * from the snapshot's recorded post-disable sha. Without it, a
10
- * mismatch refuses (the operator edited the file between disable and
11
- * enable; silent overwrite would lose their changes).
9
+ * from the snapshot's recorded post-disable sha and putting the missing
10
+ * groups back would not give the pre-disable file. Without it, that case
11
+ * refuses (the operator edited the file between disable and enable).
12
+ * Every group that is still missing is spliced into the file as it is, one
13
+ * that is already there unchanged is left alone and reported, and the
14
+ * edits stay. A group with the same event and matcher but other content is
15
+ * taken as back (not spliced in) and reported with both groups' commands.
12
16
  */
13
17
  force?: boolean;
14
18
  }
15
19
  export type GateEnableResult = {
16
20
  mode: "no-snapshots";
17
21
  settingsPath: string;
22
+ /** Live snapshots beside the file that name another settings file; their groups are not restored. */
23
+ foreign: ForeignSnapshot[];
18
24
  } | {
19
25
  mode: "already-restored";
20
26
  settingsPath: string;
27
+ /** The snapshot under its retired name. */
21
28
  snapshotPath: string;
29
+ /** Snapshots still live after this call (version 1 leftovers), newest first. */
30
+ remaining: string[];
31
+ foreign: ForeignSnapshot[];
32
+ /** Groups the file already held unchanged, left alone. Empty when the file matched the pre-disable state. */
33
+ alreadyBack: string[];
34
+ /** `--force` only: groups of the file taken as back for a snapshot group with the same event and matcher, with both groups' commands. */
35
+ accepted: string[];
22
36
  } | {
23
37
  mode: "restored";
24
38
  settingsPath: string;
39
+ /** The snapshot under its retired name. */
25
40
  snapshotPath: string;
26
41
  restoredCount: number;
42
+ /** Snapshots still live after this call (version 1 leftovers), newest first. */
43
+ remaining: string[];
44
+ foreign: ForeignSnapshot[];
45
+ /** Groups the file already held unchanged, left alone instead of spliced in a second time. */
46
+ alreadyBack: string[];
47
+ /** `--force` only: groups of the file taken as back for a snapshot group with the same event and matcher, with both groups' commands. */
48
+ accepted: string[];
27
49
  };
28
50
  export declare class GateEnableError extends Error {
29
51
  constructor(message: string);
30
52
  }
31
53
  export declare function gateEnable(opts?: GateEnableOptions): GateEnableResult;
32
- /** Test-helper: re-export for the test suite to inspect snapshot pickup. */
33
- export { listSnapshots };