@deftai/directive 0.125.1 → 0.126.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (420) hide show
  1. package/bin/deft-hook +14 -0
  2. package/bin/deft-hook.cmd +14 -0
  3. package/dist/bin.js +4333 -3
  4. package/package.json +12 -23
  5. package/dist/agents-refresh.d.ts +0 -11
  6. package/dist/agents-refresh.js +0 -90
  7. package/dist/authz.d.ts +0 -7
  8. package/dist/authz.js +0 -732
  9. package/dist/bin.d.ts +0 -3
  10. package/dist/branch-fixtures.d.ts +0 -45
  11. package/dist/branch-fixtures.js +0 -156
  12. package/dist/cache.d.ts +0 -4
  13. package/dist/cache.js +0 -10
  14. package/dist/capacity-backfill.d.ts +0 -3
  15. package/dist/capacity-backfill.js +0 -9
  16. package/dist/capacity-show.d.ts +0 -3
  17. package/dist/capacity-show.js +0 -9
  18. package/dist/change-init.d.ts +0 -3
  19. package/dist/change-init.js +0 -59
  20. package/dist/changelog-check.d.ts +0 -3
  21. package/dist/changelog-check.js +0 -52
  22. package/dist/check.d.ts +0 -15
  23. package/dist/check.js +0 -150
  24. package/dist/cli-package-version.d.ts +0 -3
  25. package/dist/cli-package-version.js +0 -23
  26. package/dist/cli-router/index.d.ts +0 -8
  27. package/dist/cli-router/index.js +0 -44
  28. package/dist/cli-router/route-argv.d.ts +0 -40
  29. package/dist/cli-router/route-argv.js +0 -371
  30. package/dist/codebase-default-extractor.d.ts +0 -3
  31. package/dist/codebase-default-extractor.js +0 -9
  32. package/dist/codebase-map-fresh.d.ts +0 -3
  33. package/dist/codebase-map-fresh.js +0 -9
  34. package/dist/codebase-map.d.ts +0 -3
  35. package/dist/codebase-map.js +0 -9
  36. package/dist/codebase-projection-registry.d.ts +0 -3
  37. package/dist/codebase-projection-registry.js +0 -9
  38. package/dist/codebase-provider.d.ts +0 -3
  39. package/dist/codebase-provider.js +0 -9
  40. package/dist/commit-lint.d.ts +0 -3
  41. package/dist/commit-lint.js +0 -44
  42. package/dist/content-validate-cli/validate-links.d.ts +0 -11
  43. package/dist/content-validate-cli/validate-links.js +0 -37
  44. package/dist/content-validate-cli/validate-strategy-output.d.ts +0 -13
  45. package/dist/content-validate-cli/validate-strategy-output.js +0 -56
  46. package/dist/content-validate-cli/verify-capacity.d.ts +0 -12
  47. package/dist/content-validate-cli/verify-capacity.js +0 -54
  48. package/dist/coverage-hotspots.d.ts +0 -18
  49. package/dist/coverage-hotspots.js +0 -158
  50. package/dist/design-critique-spend-resolve.d.ts +0 -18
  51. package/dist/design-critique-spend-resolve.js +0 -191
  52. package/dist/directive-finish-loop.d.ts +0 -3
  53. package/dist/directive-finish-loop.js +0 -10
  54. package/dist/dispatch.d.ts +0 -193
  55. package/dist/dispatch.js +0 -3082
  56. package/dist/doctor.d.ts +0 -19
  57. package/dist/doctor.js +0 -155
  58. package/dist/entrypoint.d.ts +0 -6
  59. package/dist/entrypoint.js +0 -19
  60. package/dist/escalation-cli.d.ts +0 -4
  61. package/dist/escalation-cli.js +0 -301
  62. package/dist/eval-health.d.ts +0 -13
  63. package/dist/eval-health.js +0 -63
  64. package/dist/eval-report.d.ts +0 -15
  65. package/dist/eval-report.js +0 -97
  66. package/dist/eval-run.d.ts +0 -17
  67. package/dist/eval-run.js +0 -122
  68. package/dist/eval-triggers.d.ts +0 -12
  69. package/dist/eval-triggers.js +0 -56
  70. package/dist/framework-check-updates.d.ts +0 -10
  71. package/dist/framework-check-updates.js +0 -68
  72. package/dist/gates-cli/_helpers.d.ts +0 -24
  73. package/dist/gates-cli/_helpers.js +0 -115
  74. package/dist/gates-cli/verify-bridge-drift.d.ts +0 -11
  75. package/dist/gates-cli/verify-bridge-drift.js +0 -47
  76. package/dist/gates-cli/verify-go-freeze.d.ts +0 -11
  77. package/dist/gates-cli/verify-go-freeze.js +0 -48
  78. package/dist/hook-bin.d.ts +0 -3
  79. package/dist/hook-bin.js +0 -11
  80. package/dist/hook-dispatch.d.ts +0 -80
  81. package/dist/hook-dispatch.js +0 -186
  82. package/dist/human-presence-mint.d.ts +0 -70
  83. package/dist/human-presence-mint.js +0 -204
  84. package/dist/identity-banner.d.ts +0 -13
  85. package/dist/identity-banner.js +0 -19
  86. package/dist/index.d.ts +0 -11
  87. package/dist/index.js +0 -14
  88. package/dist/init-cli/constants.d.ts +0 -42
  89. package/dist/init-cli/constants.js +0 -42
  90. package/dist/init-cli/help.d.ts +0 -9
  91. package/dist/init-cli/help.js +0 -43
  92. package/dist/init-cli/init.d.ts +0 -26
  93. package/dist/init-cli/init.js +0 -80
  94. package/dist/init-cli/migrate.d.ts +0 -3
  95. package/dist/init-cli/migrate.js +0 -51
  96. package/dist/init-cli/resolve-binary.d.ts +0 -34
  97. package/dist/init-cli/resolve-binary.js +0 -78
  98. package/dist/init-cli/run-deft-install.d.ts +0 -23
  99. package/dist/init-cli/run-deft-install.js +0 -71
  100. package/dist/init-cli/update.d.ts +0 -5
  101. package/dist/init-cli/update.js +0 -38
  102. package/dist/install-cli/coverage-map.d.ts +0 -14
  103. package/dist/install-cli/coverage-map.js +0 -113
  104. package/dist/install-uninstall.d.ts +0 -3
  105. package/dist/install-uninstall.js +0 -44
  106. package/dist/install-upgrade.d.ts +0 -41
  107. package/dist/install-upgrade.js +0 -86
  108. package/dist/lifecycle-cli/coverage-map.d.ts +0 -16
  109. package/dist/lifecycle-cli/coverage-map.js +0 -254
  110. package/dist/lifecycle-cli/helpers.d.ts +0 -8
  111. package/dist/lifecycle-cli/helpers.js +0 -20
  112. package/dist/lifecycle-event.d.ts +0 -11
  113. package/dist/lifecycle-event.js +0 -45
  114. package/dist/lifecycle-stats.d.ts +0 -12
  115. package/dist/lifecycle-stats.js +0 -100
  116. package/dist/migrate-category-b.d.ts +0 -9
  117. package/dist/migrate-category-b.js +0 -52
  118. package/dist/migrate-preflight.d.ts +0 -10
  119. package/dist/migrate-preflight.js +0 -85
  120. package/dist/migrate-xbrief.d.ts +0 -11
  121. package/dist/migrate-xbrief.js +0 -88
  122. package/dist/occupancy-grant.d.ts +0 -18
  123. package/dist/occupancy-grant.js +0 -121
  124. package/dist/occupancy-heartbeat.d.ts +0 -8
  125. package/dist/occupancy-heartbeat.js +0 -63
  126. package/dist/occupancy-release.d.ts +0 -18
  127. package/dist/occupancy-release.js +0 -94
  128. package/dist/occupancy-steal.d.ts +0 -10
  129. package/dist/occupancy-steal.js +0 -83
  130. package/dist/occupancy-unrecognized.d.ts +0 -3
  131. package/dist/occupancy-unrecognized.js +0 -5
  132. package/dist/orchestration-cli/coverage-map.d.ts +0 -21
  133. package/dist/orchestration-cli/coverage-map.js +0 -225
  134. package/dist/orchestration-cli/helpers.d.ts +0 -11
  135. package/dist/orchestration-cli/helpers.js +0 -35
  136. package/dist/ownership-doctor.d.ts +0 -10
  137. package/dist/ownership-doctor.js +0 -96
  138. package/dist/ownership-fix.d.ts +0 -10
  139. package/dist/ownership-fix.js +0 -93
  140. package/dist/plan-sequence.d.ts +0 -13
  141. package/dist/plan-sequence.js +0 -196
  142. package/dist/policy-fixtures.d.ts +0 -33
  143. package/dist/policy-fixtures.js +0 -118
  144. package/dist/policy.d.ts +0 -35
  145. package/dist/policy.js +0 -738
  146. package/dist/pr-closing-keywords.d.ts +0 -3
  147. package/dist/pr-closing-keywords.js +0 -10
  148. package/dist/pr-finish-loop.d.ts +0 -3
  149. package/dist/pr-finish-loop.js +0 -10
  150. package/dist/pr-merge-readiness.d.ts +0 -3
  151. package/dist/pr-merge-readiness.js +0 -10
  152. package/dist/pr-monitor.d.ts +0 -3
  153. package/dist/pr-monitor.js +0 -10
  154. package/dist/pr-protected-issues.d.ts +0 -3
  155. package/dist/pr-protected-issues.js +0 -10
  156. package/dist/pr-wait-mergeable.d.ts +0 -3
  157. package/dist/pr-wait-mergeable.js +0 -10
  158. package/dist/pr-watch.d.ts +0 -3
  159. package/dist/pr-watch.js +0 -10
  160. package/dist/pre-pr-run.d.ts +0 -39
  161. package/dist/pre-pr-run.js +0 -514
  162. package/dist/preflight-cache.d.ts +0 -18
  163. package/dist/preflight-cache.js +0 -113
  164. package/dist/preflight-gh.d.ts +0 -15
  165. package/dist/preflight-gh.js +0 -143
  166. package/dist/probe-session.d.ts +0 -3
  167. package/dist/probe-session.js +0 -10
  168. package/dist/release-e2e-fixtures.d.ts +0 -29
  169. package/dist/release-e2e-fixtures.js +0 -38
  170. package/dist/release-e2e.d.ts +0 -3
  171. package/dist/release-e2e.js +0 -10
  172. package/dist/release-publish.d.ts +0 -3
  173. package/dist/release-publish.js +0 -10
  174. package/dist/release-rollback.d.ts +0 -3
  175. package/dist/release-rollback.js +0 -10
  176. package/dist/release-wait-npm.d.ts +0 -3
  177. package/dist/release-wait-npm.js +0 -10
  178. package/dist/release.d.ts +0 -3
  179. package/dist/release.js +0 -10
  180. package/dist/render-cli/deft-ts-runner.d.ts +0 -17
  181. package/dist/render-cli/deft-ts-runner.js +0 -19
  182. package/dist/render-cli/export-spec-cli.d.ts +0 -2
  183. package/dist/render-cli/export-spec-cli.js +0 -6
  184. package/dist/render-cli/prd-render-cli.d.ts +0 -2
  185. package/dist/render-cli/prd-render-cli.js +0 -37
  186. package/dist/render-cli/project-render-cli.d.ts +0 -2
  187. package/dist/render-cli/project-render-cli.js +0 -6
  188. package/dist/render-cli/rule-map-cli.d.ts +0 -2
  189. package/dist/render-cli/rule-map-cli.js +0 -5
  190. package/dist/render-cli/spec-reconstruct-cli.d.ts +0 -3
  191. package/dist/render-cli/spec-reconstruct-cli.js +0 -15
  192. package/dist/render-cli/spec-render-cli.d.ts +0 -2
  193. package/dist/render-cli/spec-render-cli.js +0 -39
  194. package/dist/render-cli/spec-validate-cli.d.ts +0 -2
  195. package/dist/render-cli/spec-validate-cli.js +0 -38
  196. package/dist/review-monitor-register.d.ts +0 -19
  197. package/dist/review-monitor-register.js +0 -183
  198. package/dist/review-monitor-release.d.ts +0 -14
  199. package/dist/review-monitor-release.js +0 -123
  200. package/dist/scm-sync-default.d.ts +0 -34
  201. package/dist/scm-sync-default.js +0 -210
  202. package/dist/scope-lifecycle.d.ts +0 -4
  203. package/dist/scope-lifecycle.js +0 -34
  204. package/dist/scope-record-approved-scope.d.ts +0 -29
  205. package/dist/scope-record-approved-scope.js +0 -319
  206. package/dist/scope-record-intent-constraint.d.ts +0 -16
  207. package/dist/scope-record-intent-constraint.js +0 -202
  208. package/dist/scope-record-observable-scope.d.ts +0 -16
  209. package/dist/scope-record-observable-scope.js +0 -204
  210. package/dist/session-ready.d.ts +0 -15
  211. package/dist/session-ready.js +0 -144
  212. package/dist/session-start.d.ts +0 -56
  213. package/dist/session-start.js +0 -554
  214. package/dist/slice.d.ts +0 -4
  215. package/dist/slice.js +0 -34
  216. package/dist/story-ready-fixtures.d.ts +0 -47
  217. package/dist/story-ready-fixtures.js +0 -137
  218. package/dist/subagent-monitor.d.ts +0 -3
  219. package/dist/subagent-monitor.js +0 -10
  220. package/dist/subagent-pre-cancel.d.ts +0 -21
  221. package/dist/subagent-pre-cancel.js +0 -240
  222. package/dist/subagent-steer-write.d.ts +0 -41
  223. package/dist/subagent-steer-write.js +0 -333
  224. package/dist/toolchain-check.d.ts +0 -8
  225. package/dist/toolchain-check.js +0 -54
  226. package/dist/triage-actions.d.ts +0 -23
  227. package/dist/triage-actions.js +0 -225
  228. package/dist/triage-aux-a-fixtures.d.ts +0 -33
  229. package/dist/triage-aux-a-fixtures.js +0 -107
  230. package/dist/triage-aux-b-fixtures.d.ts +0 -30
  231. package/dist/triage-aux-b-fixtures.js +0 -167
  232. package/dist/triage-bootstrap-fixtures.d.ts +0 -42
  233. package/dist/triage-bootstrap-fixtures.js +0 -139
  234. package/dist/triage-bootstrap.d.ts +0 -24
  235. package/dist/triage-bootstrap.js +0 -175
  236. package/dist/triage-bulk.d.ts +0 -17
  237. package/dist/triage-bulk.js +0 -154
  238. package/dist/triage-classify-fixtures.d.ts +0 -38
  239. package/dist/triage-classify-fixtures.js +0 -137
  240. package/dist/triage-classify.d.ts +0 -45
  241. package/dist/triage-classify.js +0 -287
  242. package/dist/triage-evaluate.d.ts +0 -14
  243. package/dist/triage-evaluate.js +0 -153
  244. package/dist/triage-help.d.ts +0 -3
  245. package/dist/triage-help.js +0 -10
  246. package/dist/triage-queue-fixtures.d.ts +0 -59
  247. package/dist/triage-queue-fixtures.js +0 -284
  248. package/dist/triage-queue.d.ts +0 -38
  249. package/dist/triage-queue.js +0 -385
  250. package/dist/triage-reconcile.d.ts +0 -11
  251. package/dist/triage-reconcile.js +0 -76
  252. package/dist/triage-refresh.d.ts +0 -7
  253. package/dist/triage-refresh.js +0 -37
  254. package/dist/triage-scope-drift.d.ts +0 -12
  255. package/dist/triage-scope-drift.js +0 -117
  256. package/dist/triage-scope-fixtures.d.ts +0 -32
  257. package/dist/triage-scope-fixtures.js +0 -131
  258. package/dist/triage-scope.d.ts +0 -4
  259. package/dist/triage-scope.js +0 -34
  260. package/dist/triage-smoketest.d.ts +0 -3
  261. package/dist/triage-smoketest.js +0 -43
  262. package/dist/triage-strip-withdrawn.d.ts +0 -21
  263. package/dist/triage-strip-withdrawn.js +0 -102
  264. package/dist/triage-subscribe.d.ts +0 -15
  265. package/dist/triage-subscribe.js +0 -157
  266. package/dist/triage-summary.d.ts +0 -14
  267. package/dist/triage-summary.js +0 -83
  268. package/dist/triage-welcome.d.ts +0 -14
  269. package/dist/triage-welcome.js +0 -121
  270. package/dist/ts-check-lane.d.ts +0 -9
  271. package/dist/ts-check-lane.js +0 -49
  272. package/dist/umbrella-current-shape.d.ts +0 -9
  273. package/dist/umbrella-current-shape.js +0 -56
  274. package/dist/vbrief-activate.d.ts +0 -3
  275. package/dist/vbrief-activate.js +0 -7
  276. package/dist/vbrief-build.d.ts +0 -3
  277. package/dist/vbrief-build.js +0 -8
  278. package/dist/vbrief-preflight-fixtures.d.ts +0 -32
  279. package/dist/vbrief-preflight-fixtures.js +0 -79
  280. package/dist/vbrief-preflight.d.ts +0 -13
  281. package/dist/vbrief-preflight.js +0 -141
  282. package/dist/vbrief-reconcile.d.ts +0 -3
  283. package/dist/vbrief-reconcile.js +0 -7
  284. package/dist/vbrief-validate.d.ts +0 -3
  285. package/dist/vbrief-validate.js +0 -8
  286. package/dist/vbrief-validation.d.ts +0 -3
  287. package/dist/vbrief-validation.js +0 -8
  288. package/dist/verify-ac.d.ts +0 -28
  289. package/dist/verify-ac.js +0 -439
  290. package/dist/verify-agents-md-advisory.d.ts +0 -19
  291. package/dist/verify-agents-md-advisory.js +0 -65
  292. package/dist/verify-agents-md-budget.d.ts +0 -12
  293. package/dist/verify-agents-md-budget.js +0 -71
  294. package/dist/verify-branch.d.ts +0 -14
  295. package/dist/verify-branch.js +0 -81
  296. package/dist/verify-class-checks.d.ts +0 -11
  297. package/dist/verify-class-checks.js +0 -71
  298. package/dist/verify-cohort-review-monitors.d.ts +0 -5
  299. package/dist/verify-cohort-review-monitors.js +0 -11
  300. package/dist/verify-completed-tracked.d.ts +0 -19
  301. package/dist/verify-completed-tracked.js +0 -202
  302. package/dist/verify-completed-write-guard.d.ts +0 -13
  303. package/dist/verify-completed-write-guard.js +0 -84
  304. package/dist/verify-consumer-check-contract.d.ts +0 -12
  305. package/dist/verify-consumer-check-contract.js +0 -70
  306. package/dist/verify-consumer-header-placeholder.d.ts +0 -12
  307. package/dist/verify-consumer-header-placeholder.js +0 -73
  308. package/dist/verify-consumer-test-lane.d.ts +0 -12
  309. package/dist/verify-consumer-test-lane.js +0 -57
  310. package/dist/verify-durable-effect-acquisition.d.ts +0 -13
  311. package/dist/verify-durable-effect-acquisition.js +0 -70
  312. package/dist/verify-encoding.d.ts +0 -15
  313. package/dist/verify-encoding.js +0 -83
  314. package/dist/verify-eval-health-relocation.d.ts +0 -16
  315. package/dist/verify-eval-health-relocation.js +0 -93
  316. package/dist/verify-eval-triggers-relocation.d.ts +0 -14
  317. package/dist/verify-eval-triggers-relocation.js +0 -74
  318. package/dist/verify-evaluator-surface.d.ts +0 -15
  319. package/dist/verify-evaluator-surface.js +0 -87
  320. package/dist/verify-forward-coverage.d.ts +0 -19
  321. package/dist/verify-forward-coverage.js +0 -144
  322. package/dist/verify-hooks-installed.d.ts +0 -24
  323. package/dist/verify-hooks-installed.js +0 -140
  324. package/dist/verify-intent-constraint.d.ts +0 -15
  325. package/dist/verify-intent-constraint.js +0 -86
  326. package/dist/verify-investigation.d.ts +0 -3
  327. package/dist/verify-investigation.js +0 -10
  328. package/dist/verify-judgment-gates.d.ts +0 -3
  329. package/dist/verify-judgment-gates.js +0 -10
  330. package/dist/verify-l4-owner.d.ts +0 -15
  331. package/dist/verify-l4-owner.js +0 -132
  332. package/dist/verify-lifecycle-visible.d.ts +0 -13
  333. package/dist/verify-lifecycle-visible.js +0 -68
  334. package/dist/verify-literal-ac.d.ts +0 -14
  335. package/dist/verify-literal-ac.js +0 -168
  336. package/dist/verify-no-task-runtime.d.ts +0 -3
  337. package/dist/verify-no-task-runtime.js +0 -16
  338. package/dist/verify-observable-scope.d.ts +0 -15
  339. package/dist/verify-observable-scope.js +0 -86
  340. package/dist/verify-operator-scope-limit.d.ts +0 -17
  341. package/dist/verify-operator-scope-limit.js +0 -285
  342. package/dist/verify-orphan-active.d.ts +0 -17
  343. package/dist/verify-orphan-active.js +0 -135
  344. package/dist/verify-ownership.d.ts +0 -10
  345. package/dist/verify-ownership.js +0 -90
  346. package/dist/verify-persisted-planning-narratives.d.ts +0 -12
  347. package/dist/verify-persisted-planning-narratives.js +0 -82
  348. package/dist/verify-plan-sequence.d.ts +0 -14
  349. package/dist/verify-plan-sequence.js +0 -138
  350. package/dist/verify-pr-closeout-attestable.d.ts +0 -15
  351. package/dist/verify-pr-closeout-attestable.js +0 -114
  352. package/dist/verify-presentation-ceiling.d.ts +0 -11
  353. package/dist/verify-presentation-ceiling.js +0 -71
  354. package/dist/verify-presentation-coverage.d.ts +0 -14
  355. package/dist/verify-presentation-coverage.js +0 -90
  356. package/dist/verify-review-monitor.d.ts +0 -25
  357. package/dist/verify-review-monitor.js +0 -341
  358. package/dist/verify-scope-provenance.d.ts +0 -12
  359. package/dist/verify-scope-provenance.js +0 -83
  360. package/dist/verify-session-ritual.d.ts +0 -23
  361. package/dist/verify-session-ritual.js +0 -144
  362. package/dist/verify-source-cli/rule-ownership-lint.d.ts +0 -12
  363. package/dist/verify-source-cli/rule-ownership-lint.js +0 -61
  364. package/dist/verify-source-cli/verify-biome-config.d.ts +0 -11
  365. package/dist/verify-source-cli/verify-biome-config.js +0 -46
  366. package/dist/verify-source-cli/verify-closing-keywords.d.ts +0 -35
  367. package/dist/verify-source-cli/verify-closing-keywords.js +0 -139
  368. package/dist/verify-source-cli/verify-consumer-hard-stops.d.ts +0 -16
  369. package/dist/verify-source-cli/verify-consumer-hard-stops.js +0 -99
  370. package/dist/verify-source-cli/verify-contained-writes.d.ts +0 -13
  371. package/dist/verify-source-cli/verify-contained-writes.js +0 -67
  372. package/dist/verify-source-cli/verify-content-manifest.d.ts +0 -12
  373. package/dist/verify-source-cli/verify-content-manifest.js +0 -61
  374. package/dist/verify-source-cli/verify-contract-drift.d.ts +0 -11
  375. package/dist/verify-source-cli/verify-contract-drift.js +0 -47
  376. package/dist/verify-source-cli/verify-cursor-tier1.d.ts +0 -12
  377. package/dist/verify-source-cli/verify-cursor-tier1.js +0 -51
  378. package/dist/verify-source-cli/verify-deposit-closure.d.ts +0 -12
  379. package/dist/verify-source-cli/verify-deposit-closure.js +0 -52
  380. package/dist/verify-source-cli/verify-openclaw-tier1.d.ts +0 -12
  381. package/dist/verify-source-cli/verify-openclaw-tier1.js +0 -51
  382. package/dist/verify-source-cli/verify-scm-boundary.d.ts +0 -13
  383. package/dist/verify-source-cli/verify-scm-boundary.js +0 -66
  384. package/dist/verify-source-cli/verify-semantic-single-source.d.ts +0 -11
  385. package/dist/verify-source-cli/verify-semantic-single-source.js +0 -49
  386. package/dist/verify-source-cli/verify-skill-external-fetch-gate.d.ts +0 -11
  387. package/dist/verify-source-cli/verify-skill-external-fetch-gate.js +0 -46
  388. package/dist/verify-source-cli/verify-spec-drift.d.ts +0 -3
  389. package/dist/verify-source-cli/verify-spec-drift.js +0 -15
  390. package/dist/verify-source-cli/verify-spec-prd-fresh.d.ts +0 -3
  391. package/dist/verify-source-cli/verify-spec-prd-fresh.js +0 -15
  392. package/dist/verify-source-cli/verify-stubs.d.ts +0 -11
  393. package/dist/verify-source-cli/verify-stubs.js +0 -27
  394. package/dist/verify-source-cli/verify-telemetry-coverage.d.ts +0 -13
  395. package/dist/verify-source-cli/verify-telemetry-coverage.js +0 -67
  396. package/dist/verify-source-cli/verify-xbrief-drift.d.ts +0 -15
  397. package/dist/verify-source-cli/verify-xbrief-drift.js +0 -80
  398. package/dist/verify-story-ready.d.ts +0 -18
  399. package/dist/verify-story-ready.js +0 -190
  400. package/dist/verify-subagent-alive.d.ts +0 -21
  401. package/dist/verify-subagent-alive.js +0 -219
  402. package/dist/verify-subagent-steer.d.ts +0 -19
  403. package/dist/verify-subagent-steer.js +0 -136
  404. package/dist/verify-test-boundary.d.ts +0 -12
  405. package/dist/verify-test-boundary.js +0 -80
  406. package/dist/verify-tools.d.ts +0 -13
  407. package/dist/verify-tools.js +0 -67
  408. package/dist/verify-wip-cap.d.ts +0 -13
  409. package/dist/verify-wip-cap.js +0 -62
  410. package/dist/windows-bin-ps1.d.ts +0 -39
  411. package/dist/windows-bin-ps1.js +0 -226
  412. package/dist/wip-cap-fixtures.d.ts +0 -37
  413. package/dist/wip-cap-fixtures.js +0 -122
  414. package/dist/wsl-ownership-guard.d.ts +0 -2
  415. package/dist/wsl-ownership-guard.js +0 -15
  416. package/dist/xbrief-create.d.ts +0 -3
  417. package/dist/xbrief-create.js +0 -9
  418. package/dist/xbrief-verify.d.ts +0 -3
  419. package/dist/xbrief-verify.js +0 -9
  420. package/scripts/remove-windows-ps1-shims.mjs +0 -26
@@ -1,54 +0,0 @@
1
- #!/usr/bin/env node
2
- import { resolve } from "node:path";
3
- import { fileURLToPath } from "node:url";
4
- import { verifyCapacity } from "@deftai/directive-core/validate-content";
5
- /** Parse verify-capacity CLI args, mirroring scripts/verify_capacity.py. */
6
- export function parseArgs(argv) {
7
- const parsed = { projectRoot: ".", quiet: false };
8
- for (let i = 0; i < argv.length; i += 1) {
9
- const arg = argv[i];
10
- if (arg === "--quiet") {
11
- parsed.quiet = true;
12
- }
13
- else if (arg === "--project-root") {
14
- const value = argv[i + 1];
15
- if (value === undefined) {
16
- return { ...parsed, error: "argument --project-root: expected one argument" };
17
- }
18
- parsed.projectRoot = value;
19
- i += 1;
20
- }
21
- else if (arg?.startsWith("--project-root=")) {
22
- parsed.projectRoot = arg.slice("--project-root=".length);
23
- }
24
- else {
25
- return { ...parsed, error: `unrecognized argument: ${arg}` };
26
- }
27
- }
28
- return parsed;
29
- }
30
- /** Run the gate and return the process exit code. */
31
- export function run(argv) {
32
- const args = parseArgs(argv);
33
- if (args.error !== undefined) {
34
- process.stderr.write(`verify_capacity: ${args.error}\n`);
35
- return 2;
36
- }
37
- const result = verifyCapacity.evaluate({
38
- projectRoot: resolve(args.projectRoot),
39
- quiet: args.quiet,
40
- });
41
- if (result.code === 0) {
42
- if (!args.quiet && result.message.length > 0) {
43
- process.stdout.write(`${result.message}\n`);
44
- }
45
- }
46
- else {
47
- process.stderr.write(`${result.message}\n`);
48
- }
49
- return result.code;
50
- }
51
- if (process.argv[1] !== undefined && fileURLToPath(import.meta.url) === process.argv[1]) {
52
- process.exit(run(process.argv.slice(2)));
53
- }
54
- //# sourceMappingURL=verify-capacity.js.map
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env node
2
- interface ParsedArgs {
3
- projectRoot: string;
4
- coverageDir: string | null;
5
- minHeadroomPp: number | null;
6
- baseRef: string | null;
7
- pathFilter: string[];
8
- useDiffPaths: boolean;
9
- json: boolean;
10
- quiet: boolean;
11
- error?: string;
12
- }
13
- /** Parse coverage-hotspots CLI args. */
14
- export declare function parseArgs(argv: string[]): ParsedArgs;
15
- /** Run coverage-hotspots and return the process exit code. */
16
- export declare function run(argv: string[]): number;
17
- export {};
18
- //# sourceMappingURL=coverage-hotspots.d.ts.map
@@ -1,158 +0,0 @@
1
- #!/usr/bin/env node
2
- import { resolve } from "node:path";
3
- import { fileURLToPath } from "node:url";
4
- import { evaluateCoverageHotspots, formatJsonReport } from "@deftai/directive-core";
5
- function parseNumber(raw) {
6
- const value = Number.parseFloat(raw);
7
- if (!Number.isFinite(value)) {
8
- return null;
9
- }
10
- return value;
11
- }
12
- /** Parse coverage-hotspots CLI args. */
13
- export function parseArgs(argv) {
14
- const parsed = {
15
- projectRoot: ".",
16
- coverageDir: null,
17
- minHeadroomPp: null,
18
- baseRef: null,
19
- pathFilter: [],
20
- useDiffPaths: true,
21
- json: false,
22
- quiet: false,
23
- };
24
- for (let i = 0; i < argv.length; i += 1) {
25
- const arg = argv[i];
26
- if (arg === "--json") {
27
- parsed.json = true;
28
- }
29
- else if (arg === "--quiet") {
30
- parsed.quiet = true;
31
- }
32
- else if (arg === "--no-diff-filter") {
33
- parsed.useDiffPaths = false;
34
- }
35
- else if (arg === "--project-root") {
36
- const value = argv[i + 1];
37
- if (value === undefined) {
38
- return { ...parsed, error: "argument --project-root: expected one argument" };
39
- }
40
- parsed.projectRoot = value;
41
- i += 1;
42
- }
43
- else if (arg?.startsWith("--project-root=")) {
44
- parsed.projectRoot = arg.slice("--project-root=".length);
45
- }
46
- else if (arg === "--coverage-dir") {
47
- const value = argv[i + 1];
48
- if (value === undefined) {
49
- return { ...parsed, error: "argument --coverage-dir: expected one argument" };
50
- }
51
- parsed.coverageDir = value;
52
- i += 1;
53
- }
54
- else if (arg?.startsWith("--coverage-dir=")) {
55
- parsed.coverageDir = arg.slice("--coverage-dir=".length);
56
- }
57
- else if (arg === "--min-headroom-pp") {
58
- const value = argv[i + 1];
59
- if (value === undefined) {
60
- return { ...parsed, error: "argument --min-headroom-pp: expected one argument" };
61
- }
62
- const num = parseNumber(value);
63
- if (num === null) {
64
- return { ...parsed, error: "argument --min-headroom-pp: expected a number" };
65
- }
66
- parsed.minHeadroomPp = num;
67
- i += 1;
68
- }
69
- else if (arg?.startsWith("--min-headroom-pp=")) {
70
- const num = parseNumber(arg.slice("--min-headroom-pp=".length));
71
- if (num === null) {
72
- return { ...parsed, error: "argument --min-headroom-pp: expected a number" };
73
- }
74
- parsed.minHeadroomPp = num;
75
- }
76
- else if (arg === "--base-ref") {
77
- const value = argv[i + 1];
78
- if (value === undefined) {
79
- return { ...parsed, error: "argument --base-ref: expected one argument" };
80
- }
81
- parsed.baseRef = value;
82
- i += 1;
83
- }
84
- else if (arg?.startsWith("--base-ref=")) {
85
- parsed.baseRef = arg.slice("--base-ref=".length);
86
- }
87
- else if (arg === "--path" || arg === "--paths") {
88
- const value = argv[i + 1];
89
- if (value === undefined) {
90
- return { ...parsed, error: `argument ${arg}: expected one argument` };
91
- }
92
- parsed.pathFilter.push(...value
93
- .split(",")
94
- .map((part) => part.trim())
95
- .filter(Boolean));
96
- parsed.useDiffPaths = false;
97
- i += 1;
98
- }
99
- else if (arg?.startsWith("--path=") || arg?.startsWith("--paths=")) {
100
- const prefix = arg.startsWith("--path=") ? "--path=" : "--paths=";
101
- parsed.pathFilter.push(...arg
102
- .slice(prefix.length)
103
- .split(",")
104
- .map((part) => part.trim())
105
- .filter(Boolean));
106
- parsed.useDiffPaths = false;
107
- }
108
- else {
109
- return { ...parsed, error: `unrecognized argument: ${arg}` };
110
- }
111
- }
112
- return parsed;
113
- }
114
- /** Run coverage-hotspots and return the process exit code. */
115
- export function run(argv) {
116
- const args = parseArgs(argv);
117
- if (args.error !== undefined) {
118
- process.stderr.write(`coverage-hotspots: ${args.error}\n`);
119
- return 2;
120
- }
121
- const projectRoot = resolve(args.projectRoot);
122
- const result = evaluateCoverageHotspots({
123
- projectRoot,
124
- coverageDir: args.coverageDir ?? undefined,
125
- minHeadroomPp: args.minHeadroomPp ?? undefined,
126
- baseRef: args.baseRef,
127
- pathFilter: args.pathFilter.length > 0 ? args.pathFilter : null,
128
- useDiffPaths: args.useDiffPaths,
129
- });
130
- // Exit 3 = authorized coverage N/A (#5421); keep machine-readable artifact on stdout for --json.
131
- if (result.exitCode === 3) {
132
- if (args.json && result.applicability) {
133
- process.stdout.write(`${JSON.stringify(result.applicability, null, 2)}\n`);
134
- }
135
- else if (!args.quiet) {
136
- process.stderr.write(`${result.message}\n`);
137
- }
138
- return result.exitCode;
139
- }
140
- if (result.exitCode === 2 || result.report === null) {
141
- process.stderr.write(`${result.message}\n`);
142
- return result.exitCode;
143
- }
144
- const payload = args.json ? formatJsonReport(result.report) : result.message;
145
- if (result.exitCode === 0) {
146
- if (!args.quiet) {
147
- process.stdout.write(payload);
148
- }
149
- }
150
- else {
151
- process.stderr.write(payload);
152
- }
153
- return result.exitCode;
154
- }
155
- if (process.argv[1] !== undefined && fileURLToPath(import.meta.url) === process.argv[1]) {
156
- process.exit(run(process.argv.slice(2)));
157
- }
158
- //# sourceMappingURL=coverage-hotspots.js.map
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env node
2
- export declare const DESIGN_CRITIQUE_SPEND_RESOLVE_HELP = "design-critique:spend-resolve \u2014 record spend-recommend then resolve (#5466)\n\nUsage:\n deft design-critique:spend-resolve --utterance <text> --recommend N=1|N\u22653 [--project-root PATH] [--session-id ID] [--json]\n deft design-critique:spend-resolve --open-gate [--utterance <text>] [--project-root PATH] [--session-id ID]\n deft design-critique:spend-resolve --clear [--project-root PATH] [--session-id ID]\n deft design-critique:spend-resolve --utterance <text> --unclosable-recommend [--project-root PATH] [--session-id ID]\n\nOptions:\n --utterance TEXT Operator chat utterance (required except --open-gate/--clear)\n --recommend N=1|N\u22653 Closed Dual-stop recommendation (required on bare arc)\n --unclosable-recommend Parent-declared unclosable recommend; permit lawful ask\n --open-gate Open deny-default session-scoped arc-spend-state at arc start\n --clear Clear session arc-spend-state when the arc ends or is abandoned\n --session-id ID Session that owns arc-spend-state (default: DEFT_SESSION_ID / env)\n --project-root PATH Project root for arc-spend-state scratch (default: cwd)\n --json Emit structured result\n\nExit codes:\n 0 Resolved / gate opened / cleared\n 1 Refused (missing/invalid recommend, ambiguous, or unclosable ask path)\n 2 Config / usage error\n";
3
- export interface DesignCritiqueSpendResolveArgs {
4
- utterance: string | null;
5
- recommend: string | null;
6
- projectRoot: string;
7
- sessionId: string | null;
8
- emitJson: boolean;
9
- help: boolean;
10
- openGate: boolean;
11
- clear: boolean;
12
- unclosableRecommend: boolean;
13
- error?: string;
14
- }
15
- export declare function parseDesignCritiqueSpendResolveArgs(argv: readonly string[]): DesignCritiqueSpendResolveArgs;
16
- export declare function run(argv: readonly string[]): number;
17
- export declare function main(argv: readonly string[]): number;
18
- //# sourceMappingURL=design-critique-spend-resolve.d.ts.map
@@ -1,191 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * design-critique:spend-resolve — callable spend front door (#5466 Prefer-A).
4
- * Records closed spend-recommend: + resolved spend:/spend-ask: via
5
- * parseOperatorSpend / evaluateSpendRecord. Bare arc requires --recommend;
6
- * never asks; never defaults N=1. Does not copy run-posture missing-token
7
- * auto-resolve onto spend.
8
- */
9
- import { resolve } from "node:path";
10
- import { fileURLToPath } from "node:url";
11
- import { clearArcSpendState, openArcSpendGate, resolveDesignCritiqueSpend, } from "@deftai/directive-core/dist/design-critique/spend.js";
12
- export const DESIGN_CRITIQUE_SPEND_RESOLVE_HELP = `design-critique:spend-resolve — record spend-recommend then resolve (#5466)
13
-
14
- Usage:
15
- deft design-critique:spend-resolve --utterance <text> --recommend N=1|N≥3 [--project-root PATH] [--session-id ID] [--json]
16
- deft design-critique:spend-resolve --open-gate [--utterance <text>] [--project-root PATH] [--session-id ID]
17
- deft design-critique:spend-resolve --clear [--project-root PATH] [--session-id ID]
18
- deft design-critique:spend-resolve --utterance <text> --unclosable-recommend [--project-root PATH] [--session-id ID]
19
-
20
- Options:
21
- --utterance TEXT Operator chat utterance (required except --open-gate/--clear)
22
- --recommend N=1|N≥3 Closed Dual-stop recommendation (required on bare arc)
23
- --unclosable-recommend Parent-declared unclosable recommend; permit lawful ask
24
- --open-gate Open deny-default session-scoped arc-spend-state at arc start
25
- --clear Clear session arc-spend-state when the arc ends or is abandoned
26
- --session-id ID Session that owns arc-spend-state (default: DEFT_SESSION_ID / env)
27
- --project-root PATH Project root for arc-spend-state scratch (default: cwd)
28
- --json Emit structured result
29
-
30
- Exit codes:
31
- 0 Resolved / gate opened / cleared
32
- 1 Refused (missing/invalid recommend, ambiguous, or unclosable ask path)
33
- 2 Config / usage error
34
- `;
35
- export function parseDesignCritiqueSpendResolveArgs(argv) {
36
- const acc = {
37
- utterance: null,
38
- recommend: null,
39
- projectRoot: ".",
40
- sessionId: null,
41
- emitJson: false,
42
- help: false,
43
- openGate: false,
44
- clear: false,
45
- unclosableRecommend: false,
46
- };
47
- for (let i = 0; i < argv.length; i += 1) {
48
- const arg = argv[i];
49
- // Accept a lone go-task / deft separator so documented `-- --utterance` forms work.
50
- if (arg === "--") {
51
- continue;
52
- }
53
- if (arg === "--help" || arg === "-h") {
54
- return { ...acc, help: true };
55
- }
56
- if (arg === "--json") {
57
- acc.emitJson = true;
58
- continue;
59
- }
60
- if (arg === "--open-gate") {
61
- acc.openGate = true;
62
- continue;
63
- }
64
- if (arg === "--clear") {
65
- acc.clear = true;
66
- continue;
67
- }
68
- if (arg === "--unclosable-recommend") {
69
- acc.unclosableRecommend = true;
70
- continue;
71
- }
72
- if (arg === "--utterance") {
73
- const value = argv[i + 1];
74
- if (value === undefined) {
75
- return { ...acc, error: "argument --utterance: expected one argument" };
76
- }
77
- acc.utterance = value;
78
- i += 1;
79
- continue;
80
- }
81
- if (arg?.startsWith("--utterance=")) {
82
- acc.utterance = arg.slice("--utterance=".length);
83
- continue;
84
- }
85
- if (arg === "--recommend") {
86
- const value = argv[i + 1];
87
- if (value === undefined) {
88
- return { ...acc, error: "argument --recommend: expected one argument" };
89
- }
90
- acc.recommend = value;
91
- i += 1;
92
- continue;
93
- }
94
- if (arg?.startsWith("--recommend=")) {
95
- acc.recommend = arg.slice("--recommend=".length);
96
- continue;
97
- }
98
- if (arg === "--session-id") {
99
- const value = argv[i + 1];
100
- if (value === undefined || value.startsWith("--")) {
101
- return { ...acc, error: "argument --session-id: expected one argument" };
102
- }
103
- acc.sessionId = value;
104
- i += 1;
105
- continue;
106
- }
107
- if (arg?.startsWith("--session-id=")) {
108
- acc.sessionId = arg.slice("--session-id=".length);
109
- continue;
110
- }
111
- if (arg === "--project-root") {
112
- const value = argv[i + 1];
113
- if (value === undefined) {
114
- return { ...acc, error: "argument --project-root: expected one argument" };
115
- }
116
- acc.projectRoot = value;
117
- i += 1;
118
- continue;
119
- }
120
- if (arg?.startsWith("--project-root=")) {
121
- acc.projectRoot = arg.slice("--project-root=".length);
122
- continue;
123
- }
124
- return { ...acc, error: `unknown argument: ${arg}` };
125
- }
126
- return acc;
127
- }
128
- export function run(argv) {
129
- const args = parseDesignCritiqueSpendResolveArgs(argv);
130
- if (args.help) {
131
- process.stdout.write(`${DESIGN_CRITIQUE_SPEND_RESOLVE_HELP}\n`);
132
- return 0;
133
- }
134
- if (args.error !== undefined) {
135
- process.stderr.write(`design-critique:spend-resolve: ${args.error}\n`);
136
- return 2;
137
- }
138
- const projectRoot = resolve(args.projectRoot);
139
- const sessionId = args.sessionId;
140
- if (args.clear) {
141
- const removed = clearArcSpendState(projectRoot, { sessionId });
142
- if (args.emitJson) {
143
- process.stdout.write(`${JSON.stringify({ ok: true, cleared: removed }, null, 2)}\n`);
144
- }
145
- else {
146
- process.stdout.write(removed
147
- ? "design-critique:spend-resolve: cleared arc-spend-state\n"
148
- : "design-critique:spend-resolve: no arc-spend-state to clear\n");
149
- }
150
- return 0;
151
- }
152
- if (args.openGate) {
153
- const state = openArcSpendGate(projectRoot, { utterance: args.utterance, sessionId });
154
- if (args.emitJson) {
155
- process.stdout.write(`${JSON.stringify({ ok: true, opened: true, state }, null, 2)}\n`);
156
- }
157
- else {
158
- process.stdout.write("design-critique:spend-resolve: opened arc spend gate (ask denied until --recommend or lawful ask)\n");
159
- }
160
- return 0;
161
- }
162
- if (args.utterance === null || args.utterance.trim().length === 0) {
163
- process.stderr.write("design-critique:spend-resolve: --utterance is required\n" +
164
- "Remediation: deft design-critique:spend-resolve --utterance <text> --recommend N=1|N≥3\n");
165
- return 2;
166
- }
167
- const result = resolveDesignCritiqueSpend({
168
- utterance: args.utterance,
169
- recommendRaw: args.recommend,
170
- unclosableRecommend: args.unclosableRecommend,
171
- projectRoot,
172
- sessionId,
173
- });
174
- if (args.emitJson) {
175
- process.stdout.write(`${JSON.stringify(result, null, 2)}\n`);
176
- }
177
- else if (result.ok) {
178
- process.stdout.write(`${result.lines.join("\n")}\n`);
179
- }
180
- else {
181
- process.stderr.write(`${result.message}\n`);
182
- }
183
- return result.ok ? 0 : 1;
184
- }
185
- export function main(argv) {
186
- return run(argv);
187
- }
188
- if (process.argv[1] !== undefined && fileURLToPath(import.meta.url) === process.argv[1]) {
189
- process.exit(run(process.argv.slice(2)));
190
- }
191
- //# sourceMappingURL=design-critique-spend-resolve.js.map
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env node
2
- export declare function run(argv: string[]): number;
3
- //# sourceMappingURL=directive-finish-loop.d.ts.map
@@ -1,10 +0,0 @@
1
- #!/usr/bin/env node
2
- import { fileURLToPath } from "node:url";
3
- import { cmdDirectiveFinishLoop } from "@deftai/directive-core/dist/finish-loop/main.js";
4
- export function run(argv) {
5
- return cmdDirectiveFinishLoop(argv);
6
- }
7
- if (process.argv[1] !== undefined && fileURLToPath(import.meta.url) === process.argv[1]) {
8
- process.exit(run(process.argv.slice(2)));
9
- }
10
- //# sourceMappingURL=directive-finish-loop.js.map
@@ -1,193 +0,0 @@
1
- /**
2
- * Unified `directive <verb> [args]` dispatcher (#1828 s0).
3
- * Routes to ported command modules in packages/cli and packages/core.
4
- */
5
- import { spawnSync } from "node:child_process";
6
- import { type WhichFn } from "@deftai/directive-core/scm";
7
- export type CommandHandler = (argv: string[]) => number | Promise<number>;
8
- export interface DispatchIo {
9
- writeOut: (text: string) => void;
10
- writeErr: (text: string) => void;
11
- }
12
- /** CLI modules in packages/cli/src (excluding parity harnesses and bin/index). */
13
- export declare const CLI_MODULE_VERBS: readonly ["agents-refresh", "cache", "check", "capacity-backfill", "capacity-show", "codebase-default-extractor", "codebase-map", "codebase-map-fresh", "codebase-projection-registry", "codebase-provider", "doctor", "ownership-doctor", "ownership-fix", "verify-ownership", "install-upgrade", "install-uninstall", "migrate-preflight", "migrate-xbrief", "migrate-category-b", "framework-check-updates", "hook-dispatch", "umbrella-current-shape", "changelog-check", "change-init", "commit-lint", "coverage-hotspots", "policy", "authz", "escalation-cli", "pr-closing-keywords", "pr-merge-readiness", "pr-monitor", "pr-protected-issues", "pr-wait-mergeable", "pr-watch", "pr-finish-loop", "directive-finish-loop", "pre-pr-run", "preflight-cache", "preflight-gh", "probe-session", "release", "release-e2e", "release-publish", "release-rollback", "release-wait-npm", "scope-lifecycle", "scope-record-approved-scope", "scope-record-observable-scope", "scope-record-intent-constraint", "scm-sync-default", "lifecycle-event", "lifecycle-stats", "session-start", "session-ready", "occupancy-steal", "occupancy-release", "occupancy-heartbeat", "occupancy-grant", "plan-sequence", "slice", "subagent-monitor", "toolchain-check", "triage-actions", "triage-bootstrap", "triage-bulk", "triage-classify", "triage-strip-withdrawn", "triage-evaluate", "triage-help", "triage-queue", "triage-reconcile", "triage-refresh", "triage-scope", "triage-scope-drift", "triage-smoketest", "triage-subscribe", "triage-summary", "triage-welcome", "ts-check-lane", "vbrief-activate", "vbrief-build", "vbrief-preflight", "vbrief-reconcile", "vbrief-validate", "vbrief-validation", "xbrief-create", "xbrief-verify", "xbrief-adopt-stored-plan-id", "verify-branch", "verify-encoding", "verify-forward-coverage", "verify-test-boundary", "verify-class-checks", "verify-presentation-coverage", "verify-scope-provenance", "verify-consumer-check-contract", "verify-hooks-installed", "verify-investigation", "verify-judgment-gates", "verify-no-task-runtime", "validate-links", "validate-strategy-output", "verify-biome-config", "verify-bridge-drift", "verify-capacity", "verify-contained-writes", "verify-telemetry-coverage", "verify-content-manifest", "verify-deposit-closure", "verify-consumer-hard-stops", "verify-closing-keywords", "verify-skill-external-fetch-gate", "verify-semantic-single-source", "verify-contract-drift", "verify-cursor-tier1", "verify-openclaw-tier1", "verify-go-freeze", "verify-scm-boundary", "verify-session-ritual", "verify-plan-sequence", "verify-stubs", "verify-xbrief-drift", "verify-spec-prd-fresh", "verify-spec-drift", "rule-ownership-lint", "verify-story-ready", "verify-review-monitor", "verify-cohort-review-monitors", "verify-l4-owner", "verify-subagent-alive", "verify-subagent-steer", "subagent-pre-cancel", "subagent-steer-write", "design-critique-spend-resolve", "review-monitor-register", "review-monitor-release", "verify-tools", "verify-wip-cap", "verify-orphan-active", "verify-pr-closeout-attestable", "verify-lifecycle-visible", "verify-completed-tracked", "verify-completed-write-guard", "verify-literal-ac", "verify-ac", "verify-agents-md-budget", "verify-consumer-header-placeholder", "verify-agents-md-advisory", "verify-persisted-planning-narratives", "verify-eval-health-relocation", "verify-eval-triggers-relocation", "verify-evaluator-surface", "verify-observable-scope", "verify-operator-scope-limit", "verify-presentation-ceiling", "verify-intent-constraint", "verify-durable-effect-acquisition", "verify-consumer-test-lane", "eval-health", "eval-run", "eval-report", "eval-triggers"];
14
- /** Core-only CLI entrypoints without a packages/cli wrapper. */
15
- export declare const CORE_MODULE_VERBS: readonly ["scm", "scm-readiness", "github-auth-modes", "github-body", "issue-emit", "issue-ingest", "issue-sync-from-xbrief", "reconcile-issues", "swarm-launch", "swarm-complete-cohort", "swarm-finalize-cohort", "swarm-finalize-owed", "swarm-pre-dispatch", "swarm-readiness", "swarm-routing-verify", "swarm-routing-set", "swarm-verify-review-clean", "swarm-worktrees", "framework-commands", "pack-render", "packs-slice", "prd-render", "export-spec", "project-render", "project-write-narratives", "roadmap-render", "rule-map", "spec-render", "spec-reconstruct", "spec-validate", "code-structure-validate", "pack-migrate-skills", "pack-migrate-rules", "pack-migrate-strategies", "pack-migrate-patterns", "pack-migrate-swarm-spec", "policy-set", "setup-ghx", "scope-undo", "scope-demote", "scope-decompose", "changelog-resolve-unreleased", "architecture-preflight-sor", "feedback-file", "value-readback", "product-signal", "freshness-report", "decision-write", "decision-list", "docs-impact", "tutorial", "migrate-clause-ids", "migrate-confidence", "rule-to-verb-parity"];
16
- /** Colon aliases for triage-actions (mirrors cli-router SUBCOMMAND_ROUTES). */
17
- export declare const TRIAGE_ACTION_ALIAS_SUBCOMMANDS: Readonly<Record<string, string>>;
18
- /** Colon aliases for policy subcommands (mirrors cli-router SUBCOMMAND_ROUTES). */
19
- export declare const POLICY_ACTION_ALIAS_SUBCOMMANDS: Readonly<Record<string, string>>;
20
- /** Colon aliases for authz subcommands (#2944). */
21
- export declare const AUTHZ_ACTION_ALIAS_SUBCOMMANDS: Readonly<Record<string, string>>;
22
- /** Colon aliases for escalation subcommands (#518). */
23
- export declare const ESCALATION_ACTION_ALIAS_SUBCOMMANDS: Readonly<Record<string, string>>;
24
- /** Colon aliases for plan-sequence subcommands (#2402). */
25
- export declare const PLAN_SEQUENCE_ALIAS_SUBCOMMANDS: Readonly<Record<string, string>>;
26
- /** Colon aliases for the Directive Tutorial (#4981). */
27
- export declare const TUTORIAL_ALIAS_SUBCOMMANDS: Readonly<Record<string, string>>;
28
- /** Colon aliases for product-signal subcommands (#2693). */
29
- export declare const PRODUCT_SIGNAL_ALIAS_SUBCOMMANDS: Readonly<Record<string, string>>;
30
- /** Colon aliases for freshness subcommands (#3117). */
31
- export declare const FRESHNESS_ALIAS_SUBCOMMANDS: Readonly<Record<string, string>>;
32
- /** Task-style aliases (framework_commands / Taskfile names). */
33
- export declare const VERB_ALIASES: Readonly<Record<string, string>>;
34
- /** Pinned ghx version (display only) — keep in lockstep with .github/workflows/ci.yml env.GHX_VERSION. */
35
- export declare const GHX_VERSION = "v1.5.1";
36
- /**
37
- * Immutable commit SHA the GHX_VERSION tag resolved to at vendor time
38
- * (2026-07-02, via `gh api repos/brunoborges/ghx/git/refs/tags/v1.5.1`).
39
- * Fetch URLs pin to this SHA rather than the mutable tag name so a future
40
- * tag force-move on brunoborges/ghx cannot silently swap the fetched bytes
41
- * out from under the vendored SHA-256 hashes below (#2178).
42
- */
43
- export declare const GHX_COMMIT_SHA = "aa4a2786660e27392b0d3e8886f140e0a0261a0c";
44
- export declare const INSTALL_PS1_URL = "https://raw.githubusercontent.com/brunoborges/ghx/aa4a2786660e27392b0d3e8886f140e0a0261a0c/install.ps1";
45
- export declare const INSTALL_SH_URL = "https://raw.githubusercontent.com/brunoborges/ghx/aa4a2786660e27392b0d3e8886f140e0a0261a0c/install.sh";
46
- /**
47
- * SHA-256 of the installer scripts at GHX_COMMIT_SHA, vendored so the
48
- * download-verify-execute pipeline below can refuse to run tampered bytes.
49
- * Matches `.github/workflows/ci.yml` env.GHX_INSTALL_SH_SHA256 /
50
- * GHX_INSTALL_PS1_SHA256 (#1070 / #1328) — keep both in lockstep (#2178).
51
- */
52
- export declare const GHX_INSTALL_SH_SHA256 = "08c768feb6d2bc485079898f7e76c2b07576cbb1188a356acf99dac0fc55d1cb";
53
- export declare const GHX_INSTALL_PS1_SHA256 = "5f67eab68970ecc55bb0fc1b8399ba6f3ce4b2aadeee39255d628e96d187a5ed";
54
- export type SetupGhxHost = "windows" | "darwin" | "linux" | string;
55
- /** Downloads a URL and resolves to its raw bytes. Injectable so tests never hit the network. */
56
- export type GhxDownloadFn = (url: string) => Promise<Buffer>;
57
- /** True when `buf`'s SHA-256 (hex) matches `expectedHex`, case- and whitespace-insensitive. */
58
- export declare function verifyGhxSha256(buf: Buffer, expectedHex: string): boolean;
59
- export interface GhxInstallerAsset {
60
- url: string;
61
- sha256: string;
62
- fileExt: "sh" | "ps1";
63
- }
64
- export declare function resolveGhxInstallerAsset(host: SetupGhxHost): GhxInstallerAsset;
65
- export interface SetupGhxDeps {
66
- whichFn?: WhichFn;
67
- readConsentLine?: () => string;
68
- runInstall?: (host: SetupGhxHost) => number | Promise<number>;
69
- downloadFn?: GhxDownloadFn;
70
- runner?: typeof spawnSync;
71
- }
72
- export declare function ghxPresent(whichFn?: WhichFn): boolean;
73
- export declare function detectSetupGhxHost(): SetupGhxHost;
74
- export declare function promptSetupGhxConsent(io: DispatchIo, readLine?: () => string): boolean;
75
- /**
76
- * Downloads `asset`, verifies it against its vendored SHA-256, and writes it
77
- * to a private local temp file. Returns the local path, ready for direct
78
- * local-file execution (never piped into a shell). Throws -- without
79
- * writing or executing anything -- on a hash mismatch (#2178). Split out
80
- * from `fetchAndVerifyGhxInstaller` so tests can exercise the download ->
81
- * verify -> write pipeline against a synthetic asset/hash without depending
82
- * on the real vendored constants or the network.
83
- */
84
- export declare function fetchAndVerifyGhxInstallerAsset(asset: GhxInstallerAsset, downloadFn?: GhxDownloadFn): Promise<string>;
85
- /**
86
- * Downloads the pinned installer for `host`, verifies it against the
87
- * vendored SHA-256, and writes it to a private local temp file. Returns the
88
- * local path, ready for direct local-file execution (never piped into a
89
- * shell). Throws -- without writing or executing anything -- on a hash
90
- * mismatch (#2178).
91
- */
92
- export declare function fetchAndVerifyGhxInstaller(host: SetupGhxHost, downloadFn?: GhxDownloadFn): Promise<string>;
93
- /**
94
- * Executes an already-downloaded, hash-verified installer from its local
95
- * temp path. No live pipe (`curl | bash` / `irm | iex`) and no
96
- * `-ExecutionPolicy Bypass` -- the file is written by Node, so it never
97
- * carries a Windows Mark-of-the-Web zone identifier the way a browser or
98
- * `Invoke-WebRequest` download would; `RemoteSigned` treats it as a local,
99
- * unsigned-but-trusted script (#2178).
100
- */
101
- export declare function executeVerifiedGhxInstaller(host: SetupGhxHost, installerPath: string, whichFn?: WhichFn, runner?: typeof spawnSync): number;
102
- /**
103
- * Downloads, hash-verifies, and executes `asset` for `host`. Cleans up the
104
- * temp file (and its containing directory) regardless of outcome. Split out
105
- * from `installSetupGhx` so tests can exercise the full download -> verify
106
- * -> execute -> cleanup pipeline against a synthetic asset without depending
107
- * on the real vendored constants or the network (#2178).
108
- */
109
- export declare function installVerifiedGhxAsset(asset: GhxInstallerAsset, host: SetupGhxHost, whichFn?: WhichFn, runner?: typeof spawnSync, downloadFn?: GhxDownloadFn): Promise<number>;
110
- /**
111
- * Downloads, hash-verifies, and executes the ghx installer for `host`.
112
- * Cleans up the temp file (and its containing directory) regardless of
113
- * outcome (#2178).
114
- */
115
- export declare function installSetupGhx(host: SetupGhxHost, whichFn?: WhichFn, runner?: typeof spawnSync, downloadFn?: GhxDownloadFn): Promise<number>;
116
- /** Native `setup:ghx` handler (replaces scripts/setup_ghx.py shell-out, #2022 Phase 1). */
117
- export declare function runSetupGhx(argv: string[], io: DispatchIo, deps?: SetupGhxDeps): Promise<number>;
118
- export declare const SETUP_SKILL_REL_PATH = ".deft/core/skills/deft-directive-setup/SKILL.md";
119
- export type BootstrapPhaseLabel = "user" | "project" | "spec";
120
- export type BootstrapReEntry = "none" | "prompt" | "reconfigure" | "force";
121
- export interface DirectiveBootstrapArgs {
122
- projectRoot: string;
123
- jumpProject: boolean;
124
- strategy: string | null;
125
- reconfigure: boolean;
126
- force: boolean;
127
- json: boolean;
128
- error?: string;
129
- }
130
- export interface DirectiveBootstrapPlan {
131
- phase: 1 | 2 | 3;
132
- phaseLabel: BootstrapPhaseLabel;
133
- reEntry: BootstrapReEntry;
134
- strategy: string | null;
135
- }
136
- export interface DirectiveBootstrapHandoff {
137
- handoff: "deft-directive-setup";
138
- skill_path: string;
139
- project_root: string;
140
- deposited: boolean;
141
- phase: 1 | 2 | 3;
142
- phase_label: BootstrapPhaseLabel;
143
- re_entry: BootstrapReEntry;
144
- strategy: string | null;
145
- }
146
- export interface DirectiveBootstrapDeps {
147
- deftCorePresent?: (projectRoot: string) => boolean;
148
- userMdPresent?: (projectRoot: string) => boolean;
149
- projectDefPresent?: (projectRoot: string) => boolean;
150
- runInitDeposit?: (projectRoot: string, io: DispatchIo) => Promise<number>;
151
- }
152
- /** Parse `directive bootstrap` argv (#2022 Phase 4). */
153
- export declare function parseDirectiveBootstrapArgs(argv: readonly string[]): DirectiveBootstrapArgs;
154
- /** Resolve phase intent and deliberate re-entry signal from parsed args + on-disk state. */
155
- export declare function resolveDirectiveBootstrapPlan(args: DirectiveBootstrapArgs, deps: Required<DirectiveBootstrapDeps>): DirectiveBootstrapPlan;
156
- /** Native `directive bootstrap` handler (#2022 Phase 4). */
157
- export declare function runDirectiveBootstrap(argv: string[], io: DispatchIo, deps?: DirectiveBootstrapDeps): Promise<number>;
158
- /** Native `policy-set` dispatcher (replaces the policy_set.py shell-out, #2022 Phase 1). */
159
- export declare function runPolicySet(argv: string[], io: DispatchIo): number;
160
- /** Resolve a user-facing verb to its canonical handler key. */
161
- export declare function resolveCanonicalVerb(verb: string): string | null;
162
- /** Sorted list of all registered verb names (canonical + aliases). */
163
- export declare function registeredVerbs(): readonly string[];
164
- /**
165
- * Deduplicated command names for `directive commands`, preferring colon-style
166
- * task verbs over dash-style canonical stems when both exist (#2172).
167
- */
168
- export declare function preferredCommandNames(): readonly string[];
169
- /** Major.minor label for the curated help title (#2172). */
170
- export declare function helpVersionLabel(): string;
171
- /**
172
- * Print the exhaustive registered-command list for `directive commands` (#2172).
173
- * Lists deduplicated preferred names (colon-style when available).
174
- */
175
- export declare function printCommandsList(io?: DispatchIo): void;
176
- /**
177
- * Print curated top-level help: title/version, usage, common options, grouped
178
- * common commands, and a pointer to `directive commands` for the full list
179
- * (#2172). Preserves the init/update/doctor first-run guidance from #2273.
180
- */
181
- export declare function printHelp(io?: DispatchIo): void;
182
- export type UnknownColonHintContext = "framework" | "include-only" | "no-taskfile" | "unknown";
183
- /**
184
- * Unknown-colon-verb remediation (#3439 / #2652 / #5521).
185
- * Never re-suggest the failing `deft <verb>` spelling. Prefer Taskfile
186
- * dual-invoke forms when known; demote hyphen stems; no `task --list` shell-out.
187
- */
188
- export declare function unknownColonVerbHint(verb: string, context?: UnknownColonHintContext): string;
189
- /** Dispatch argv to a registered verb; returns the handler exit code. */
190
- export declare function dispatch(argv: string[], io?: DispatchIo): Promise<number>;
191
- /** Test seam: reset lazy handler cache between cases. */
192
- export declare function resetHandlerCacheForTests(): void;
193
- //# sourceMappingURL=dispatch.d.ts.map