@shrkcrft/cli 0.1.0-alpha.29 → 0.1.0-alpha.31

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 (510) hide show
  1. package/dist/asset-preview/apply-asset-preview.js +1 -1
  2. package/dist/authoring/authoring-kit.d.ts +9 -1
  3. package/dist/authoring/authoring-kit.d.ts.map +1 -1
  4. package/dist/authoring/authoring-kit.js +26 -13
  5. package/dist/bootstrap/unlinked-workspace-dependency.d.ts +11 -0
  6. package/dist/bootstrap/unlinked-workspace-dependency.d.ts.map +1 -0
  7. package/dist/bootstrap/unlinked-workspace-dependency.js +99 -0
  8. package/dist/command-registry.d.ts +100 -1
  9. package/dist/command-registry.d.ts.map +1 -1
  10. package/dist/command-registry.js +130 -3
  11. package/dist/commands/api-diff.command.d.ts.map +1 -1
  12. package/dist/commands/api-diff.command.js +12 -0
  13. package/dist/commands/apply.command.d.ts.map +1 -1
  14. package/dist/commands/apply.command.js +3 -0
  15. package/dist/commands/arch.command.d.ts.map +1 -1
  16. package/dist/commands/arch.command.js +26 -7
  17. package/dist/commands/architecture.command.d.ts.map +1 -1
  18. package/dist/commands/architecture.command.js +8 -2
  19. package/dist/commands/baseline.command.d.ts +76 -0
  20. package/dist/commands/baseline.command.d.ts.map +1 -1
  21. package/dist/commands/baseline.command.js +599 -75
  22. package/dist/commands/biome.command.d.ts.map +1 -1
  23. package/dist/commands/biome.command.js +20 -0
  24. package/dist/commands/boundaries.command.d.ts +9 -1
  25. package/dist/commands/boundaries.command.d.ts.map +1 -1
  26. package/dist/commands/boundaries.command.js +88 -20
  27. package/dist/commands/bundle.command.d.ts.map +1 -1
  28. package/dist/commands/bundle.command.js +57 -11
  29. package/dist/commands/cache-align.command.d.ts.map +1 -1
  30. package/dist/commands/cache-align.command.js +3 -1
  31. package/dist/commands/changelog-data.d.ts.map +1 -1
  32. package/dist/commands/changelog-data.js +164 -0
  33. package/dist/commands/changes.command.d.ts.map +1 -1
  34. package/dist/commands/changes.command.js +15 -0
  35. package/dist/commands/check.command.d.ts.map +1 -1
  36. package/dist/commands/check.command.js +1260 -324
  37. package/dist/commands/checks.command.d.ts.map +1 -1
  38. package/dist/commands/checks.command.js +188 -40
  39. package/dist/commands/ci.command.d.ts.map +1 -1
  40. package/dist/commands/ci.command.js +35 -2
  41. package/dist/commands/code-intel.command.d.ts.map +1 -1
  42. package/dist/commands/code-intel.command.js +8 -1
  43. package/dist/commands/command-catalog.d.ts +23 -1
  44. package/dist/commands/command-catalog.d.ts.map +1 -1
  45. package/dist/commands/command-catalog.js +152 -35
  46. package/dist/commands/commands.command.d.ts +21 -3
  47. package/dist/commands/commands.command.d.ts.map +1 -1
  48. package/dist/commands/commands.command.js +172 -27
  49. package/dist/commands/compress.command.d.ts.map +1 -1
  50. package/dist/commands/compress.command.js +4 -0
  51. package/dist/commands/constructs.command.d.ts.map +1 -1
  52. package/dist/commands/constructs.command.js +50 -12
  53. package/dist/commands/context.command.d.ts.map +1 -1
  54. package/dist/commands/context.command.js +40 -5
  55. package/dist/commands/contract-templates.command.d.ts.map +1 -1
  56. package/dist/commands/contract-templates.command.js +9 -1
  57. package/dist/commands/contract.command.d.ts.map +1 -1
  58. package/dist/commands/contract.command.js +35 -0
  59. package/dist/commands/conventions.command.d.ts.map +1 -1
  60. package/dist/commands/conventions.command.js +189 -29
  61. package/dist/commands/coverage.command.d.ts.map +1 -1
  62. package/dist/commands/coverage.command.js +9 -0
  63. package/dist/commands/daily.commands.d.ts +0 -1
  64. package/dist/commands/daily.commands.d.ts.map +1 -1
  65. package/dist/commands/daily.commands.js +12 -76
  66. package/dist/commands/dashboard.command.d.ts.map +1 -1
  67. package/dist/commands/dashboard.command.js +10 -0
  68. package/dist/commands/dev.command.d.ts.map +1 -1
  69. package/dist/commands/dev.command.js +45 -2
  70. package/dist/commands/diagnostics.command.d.ts +0 -2
  71. package/dist/commands/diagnostics.command.d.ts.map +1 -1
  72. package/dist/commands/diagnostics.command.js +5 -78
  73. package/dist/commands/diff-check.command.d.ts +6 -4
  74. package/dist/commands/diff-check.command.d.ts.map +1 -1
  75. package/dist/commands/diff-check.command.js +190 -103
  76. package/dist/commands/docs-references.command.d.ts +20 -0
  77. package/dist/commands/docs-references.command.d.ts.map +1 -0
  78. package/dist/commands/docs-references.command.js +520 -0
  79. package/dist/commands/doctor.command.d.ts.map +1 -1
  80. package/dist/commands/doctor.command.js +60 -5
  81. package/dist/commands/drift.command.d.ts.map +1 -1
  82. package/dist/commands/drift.command.js +17 -4
  83. package/dist/commands/eslint.command.d.ts.map +1 -1
  84. package/dist/commands/eslint.command.js +20 -0
  85. package/dist/commands/export.command.d.ts.map +1 -1
  86. package/dist/commands/export.command.js +23 -1
  87. package/dist/commands/feedback-dispatch.command.d.ts.map +1 -1
  88. package/dist/commands/feedback-dispatch.command.js +29 -0
  89. package/dist/commands/feedback.command.d.ts.map +1 -1
  90. package/dist/commands/feedback.command.js +6 -1
  91. package/dist/commands/finish.command.d.ts.map +1 -1
  92. package/dist/commands/finish.command.js +32 -8
  93. package/dist/commands/fix.command.d.ts.map +1 -1
  94. package/dist/commands/fix.command.js +19 -0
  95. package/dist/commands/gate.command.d.ts +6 -1
  96. package/dist/commands/gate.command.d.ts.map +1 -1
  97. package/dist/commands/gate.command.js +50 -124
  98. package/dist/commands/gates.command.d.ts +54 -0
  99. package/dist/commands/gates.command.d.ts.map +1 -1
  100. package/dist/commands/gates.command.js +1314 -64
  101. package/dist/commands/gen.command.d.ts.map +1 -1
  102. package/dist/commands/gen.command.js +4 -0
  103. package/dist/commands/generated.command.d.ts +62 -0
  104. package/dist/commands/generated.command.d.ts.map +1 -1
  105. package/dist/commands/generated.command.js +639 -156
  106. package/dist/commands/graph-code-subverbs.d.ts +15 -0
  107. package/dist/commands/graph-code-subverbs.d.ts.map +1 -1
  108. package/dist/commands/graph-code-subverbs.js +203 -25
  109. package/dist/commands/graph.command.d.ts.map +1 -1
  110. package/dist/commands/graph.command.js +79 -37
  111. package/dist/commands/help.command.d.ts +30 -6
  112. package/dist/commands/help.command.d.ts.map +1 -1
  113. package/dist/commands/help.command.js +323 -199
  114. package/dist/commands/helper.command.d.ts +1 -0
  115. package/dist/commands/helper.command.d.ts.map +1 -1
  116. package/dist/commands/helper.command.js +195 -56
  117. package/dist/commands/impact.command.d.ts.map +1 -1
  118. package/dist/commands/impact.command.js +115 -12
  119. package/dist/commands/infer.command.d.ts.map +1 -1
  120. package/dist/commands/infer.command.js +20 -45
  121. package/dist/commands/ingest.command.d.ts +0 -1
  122. package/dist/commands/ingest.command.d.ts.map +1 -1
  123. package/dist/commands/ingest.command.js +25 -41
  124. package/dist/commands/knowledge-author.command.d.ts +0 -3
  125. package/dist/commands/knowledge-author.command.d.ts.map +1 -1
  126. package/dist/commands/knowledge-author.command.js +10 -23
  127. package/dist/commands/knowledge.command.d.ts.map +1 -1
  128. package/dist/commands/knowledge.command.js +469 -129
  129. package/dist/commands/languages.command.d.ts.map +1 -1
  130. package/dist/commands/languages.command.js +27 -0
  131. package/dist/commands/lint.command.d.ts.map +1 -1
  132. package/dist/commands/lint.command.js +3 -0
  133. package/dist/commands/mcp.command.d.ts +18 -0
  134. package/dist/commands/mcp.command.d.ts.map +1 -1
  135. package/dist/commands/mcp.command.js +33 -8
  136. package/dist/commands/onboard.command.d.ts.map +1 -1
  137. package/dist/commands/onboard.command.js +20 -0
  138. package/dist/commands/owners.command.d.ts.map +1 -1
  139. package/dist/commands/owners.command.js +14 -2
  140. package/dist/commands/packs-new.d.ts +13 -1
  141. package/dist/commands/packs-new.d.ts.map +1 -1
  142. package/dist/commands/packs-new.js +500 -335
  143. package/dist/commands/packs.command.d.ts.map +1 -1
  144. package/dist/commands/packs.command.js +378 -36
  145. package/dist/commands/paths.command.d.ts.map +1 -1
  146. package/dist/commands/paths.command.js +9 -1
  147. package/dist/commands/pipelines.command.d.ts.map +1 -1
  148. package/dist/commands/pipelines.command.js +7 -1
  149. package/dist/commands/plan-check.command.d.ts.map +1 -1
  150. package/dist/commands/plan-check.command.js +3 -0
  151. package/dist/commands/plan.command.d.ts.map +1 -1
  152. package/dist/commands/plan.command.js +3 -0
  153. package/dist/commands/playbooks.command.d.ts.map +1 -1
  154. package/dist/commands/playbooks.command.js +7 -2
  155. package/dist/commands/policy-lint.command.d.ts +19 -2
  156. package/dist/commands/policy-lint.command.d.ts.map +1 -1
  157. package/dist/commands/policy-lint.command.js +224 -65
  158. package/dist/commands/policy.command.d.ts.map +1 -1
  159. package/dist/commands/policy.command.js +6 -1
  160. package/dist/commands/pr.command.d.ts.map +1 -1
  161. package/dist/commands/pr.command.js +14 -0
  162. package/dist/commands/presets.command.d.ts.map +1 -1
  163. package/dist/commands/presets.command.js +12 -27
  164. package/dist/commands/profiles.command.d.ts.map +1 -1
  165. package/dist/commands/profiles.command.js +94 -26
  166. package/dist/commands/provenance.command.js +1 -1
  167. package/dist/commands/quality.command.d.ts.map +1 -1
  168. package/dist/commands/quality.command.js +129 -33
  169. package/dist/commands/recommend.command.d.ts +20 -4
  170. package/dist/commands/recommend.command.d.ts.map +1 -1
  171. package/dist/commands/recommend.command.js +172 -278
  172. package/dist/commands/registrations.command.d.ts.map +1 -1
  173. package/dist/commands/registrations.command.js +138 -13
  174. package/dist/commands/registry-lifecycle-run.d.ts +14 -0
  175. package/dist/commands/registry-lifecycle-run.d.ts.map +1 -0
  176. package/dist/commands/registry-lifecycle-run.js +336 -0
  177. package/dist/commands/registry.command.d.ts.map +1 -1
  178. package/dist/commands/registry.command.js +235 -62
  179. package/dist/commands/release.command.d.ts.map +1 -1
  180. package/dist/commands/release.command.js +99 -20
  181. package/dist/commands/report.command.d.ts.map +1 -1
  182. package/dist/commands/report.command.js +38 -2
  183. package/dist/commands/reuse-coverage.command.d.ts +23 -0
  184. package/dist/commands/reuse-coverage.command.d.ts.map +1 -0
  185. package/dist/commands/reuse-coverage.command.js +536 -0
  186. package/dist/commands/reuse.command.d.ts +3 -18
  187. package/dist/commands/reuse.command.d.ts.map +1 -1
  188. package/dist/commands/reuse.command.js +395 -244
  189. package/dist/commands/review.command.d.ts.map +1 -1
  190. package/dist/commands/review.command.js +33 -1
  191. package/dist/commands/rounds.command.d.ts.map +1 -1
  192. package/dist/commands/rounds.command.js +5 -0
  193. package/dist/commands/safety.command.d.ts.map +1 -1
  194. package/dist/commands/safety.command.js +9 -0
  195. package/dist/commands/scaffolds.command.d.ts.map +1 -1
  196. package/dist/commands/scaffolds.command.js +97 -25
  197. package/dist/commands/search.command.d.ts +0 -8
  198. package/dist/commands/search.command.d.ts.map +1 -1
  199. package/dist/commands/search.command.js +136 -28
  200. package/dist/commands/self-config-xrefs.command.d.ts +24 -0
  201. package/dist/commands/self-config-xrefs.command.d.ts.map +1 -0
  202. package/dist/commands/self-config-xrefs.command.js +170 -0
  203. package/dist/commands/self-config.command.d.ts.map +1 -1
  204. package/dist/commands/self-config.command.js +261 -65
  205. package/dist/commands/smart-context.command.d.ts.map +1 -1
  206. package/dist/commands/smart-context.command.js +39 -3
  207. package/dist/commands/spec.command.d.ts.map +1 -1
  208. package/dist/commands/spec.command.js +3 -0
  209. package/dist/commands/stats.command.d.ts.map +1 -1
  210. package/dist/commands/stats.command.js +3 -0
  211. package/dist/commands/surface.command.d.ts +6 -1
  212. package/dist/commands/surface.command.d.ts.map +1 -1
  213. package/dist/commands/surface.command.js +256 -54
  214. package/dist/commands/task-context.command.js +1 -1
  215. package/dist/commands/task.command.d.ts.map +1 -1
  216. package/dist/commands/task.command.js +22 -1
  217. package/dist/commands/templates.command.d.ts +4 -0
  218. package/dist/commands/templates.command.d.ts.map +1 -1
  219. package/dist/commands/templates.command.js +109 -22
  220. package/dist/commands/test.command.d.ts.map +1 -1
  221. package/dist/commands/test.command.js +161 -33
  222. package/dist/commands/tests.command.d.ts.map +1 -1
  223. package/dist/commands/tests.command.js +29 -3
  224. package/dist/commands/trace.command.d.ts.map +1 -1
  225. package/dist/commands/trace.command.js +29 -4
  226. package/dist/commands/watch.command.d.ts.map +1 -1
  227. package/dist/commands/watch.command.js +3 -0
  228. package/dist/commands/why.command.d.ts.map +1 -1
  229. package/dist/commands/why.command.js +3 -0
  230. package/dist/commands/wiring.command.d.ts +18 -4
  231. package/dist/commands/wiring.command.d.ts.map +1 -1
  232. package/dist/commands/wiring.command.js +362 -74
  233. package/dist/dashboard/code-intelligence-data.js +4 -4
  234. package/dist/diff/deleted-orphan-coverage.d.ts +32 -0
  235. package/dist/diff/deleted-orphan-coverage.d.ts.map +1 -0
  236. package/dist/diff/deleted-orphan-coverage.js +107 -0
  237. package/dist/diff/deleted-orphan-scope-notes.d.ts +23 -0
  238. package/dist/diff/deleted-orphan-scope-notes.d.ts.map +1 -0
  239. package/dist/diff/deleted-orphan-scope-notes.js +49 -0
  240. package/dist/diff/deleted-orphans.d.ts +32 -0
  241. package/dist/diff/deleted-orphans.d.ts.map +1 -1
  242. package/dist/diff/deleted-orphans.js +42 -2
  243. package/dist/dispatch/closest-match.d.ts +15 -0
  244. package/dist/dispatch/closest-match.d.ts.map +1 -0
  245. package/dist/dispatch/closest-match.js +47 -0
  246. package/dist/dispatch/global-flags.d.ts +94 -0
  247. package/dist/dispatch/global-flags.d.ts.map +1 -0
  248. package/dist/dispatch/global-flags.js +123 -0
  249. package/dist/dispatch/guard-invocation-input.d.ts +24 -0
  250. package/dist/dispatch/guard-invocation-input.d.ts.map +1 -0
  251. package/dist/dispatch/guard-invocation-input.js +1 -0
  252. package/dist/dispatch/guard-invocation.d.ts +33 -0
  253. package/dist/dispatch/guard-invocation.d.ts.map +1 -0
  254. package/dist/dispatch/guard-invocation.js +183 -0
  255. package/dist/dispatch/help-intercept.d.ts +22 -0
  256. package/dist/dispatch/help-intercept.d.ts.map +1 -0
  257. package/dist/dispatch/help-intercept.js +42 -0
  258. package/dist/dispatch/i-declared-invocation.d.ts +17 -0
  259. package/dist/dispatch/i-declared-invocation.d.ts.map +1 -0
  260. package/dist/dispatch/i-declared-invocation.js +1 -0
  261. package/dist/dispatch/i-unknown-flag-refusal-input.d.ts +28 -0
  262. package/dist/dispatch/i-unknown-flag-refusal-input.d.ts.map +1 -0
  263. package/dist/dispatch/i-unknown-flag-refusal-input.js +1 -0
  264. package/dist/dispatch/invocation-rejection-kind.d.ts +15 -0
  265. package/dist/dispatch/invocation-rejection-kind.d.ts.map +1 -0
  266. package/dist/dispatch/invocation-rejection-kind.js +15 -0
  267. package/dist/dispatch/invocation-rejection.d.ts +18 -0
  268. package/dist/dispatch/invocation-rejection.d.ts.map +1 -0
  269. package/dist/dispatch/invocation-rejection.js +1 -0
  270. package/dist/dispatch/judge-invocation.d.ts +24 -0
  271. package/dist/dispatch/judge-invocation.d.ts.map +1 -0
  272. package/dist/dispatch/judge-invocation.js +50 -0
  273. package/dist/dispatch/positional-mode.d.ts +18 -0
  274. package/dist/dispatch/positional-mode.d.ts.map +1 -0
  275. package/dist/dispatch/positional-mode.js +18 -0
  276. package/dist/dispatch/read-tracking-map.d.ts +28 -0
  277. package/dist/dispatch/read-tracking-map.d.ts.map +1 -0
  278. package/dist/dispatch/read-tracking-map.js +58 -0
  279. package/dist/dispatch/refuse-sibling-valve-flags.d.ts +30 -0
  280. package/dist/dispatch/refuse-sibling-valve-flags.d.ts.map +1 -0
  281. package/dist/dispatch/refuse-sibling-valve-flags.js +65 -0
  282. package/dist/dispatch/subverb-spec.d.ts +26 -0
  283. package/dist/dispatch/subverb-spec.d.ts.map +1 -0
  284. package/dist/dispatch/subverb-spec.js +1 -0
  285. package/dist/dispatch/undocumented-flag-reads.d.ts +22 -0
  286. package/dist/dispatch/undocumented-flag-reads.d.ts.map +1 -0
  287. package/dist/dispatch/undocumented-flag-reads.js +283 -0
  288. package/dist/dispatch/unknown-flag-refusal-mode.d.ts +13 -0
  289. package/dist/dispatch/unknown-flag-refusal-mode.d.ts.map +1 -0
  290. package/dist/dispatch/unknown-flag-refusal-mode.js +13 -0
  291. package/dist/dispatch/unknown-flag-refusal.d.ts +22 -0
  292. package/dist/dispatch/unknown-flag-refusal.d.ts.map +1 -0
  293. package/dist/dispatch/unknown-flag-refusal.js +57 -0
  294. package/dist/dispatch/unread-flags.d.ts +152 -0
  295. package/dist/dispatch/unread-flags.d.ts.map +1 -0
  296. package/dist/dispatch/unread-flags.js +295 -0
  297. package/dist/dispatch/verdict-valve-flag.d.ts +21 -0
  298. package/dist/dispatch/verdict-valve-flag.d.ts.map +1 -0
  299. package/dist/dispatch/verdict-valve-flag.js +21 -0
  300. package/dist/dispatch/walk-declared-subverbs.d.ts +14 -0
  301. package/dist/dispatch/walk-declared-subverbs.d.ts.map +1 -0
  302. package/dist/dispatch/walk-declared-subverbs.js +28 -0
  303. package/dist/exit-codes.d.ts +41 -3
  304. package/dist/exit-codes.d.ts.map +1 -1
  305. package/dist/exit-codes.js +153 -14
  306. package/dist/finish/run-finish.d.ts +72 -5
  307. package/dist/finish/run-finish.d.ts.map +1 -1
  308. package/dist/finish/run-finish.js +453 -104
  309. package/dist/gates/accepted-empty-note.d.ts +10 -0
  310. package/dist/gates/accepted-empty-note.d.ts.map +1 -0
  311. package/dist/gates/accepted-empty-note.js +11 -0
  312. package/dist/gates/allow-empty.d.ts +25 -0
  313. package/dist/gates/allow-empty.d.ts.map +1 -0
  314. package/dist/gates/allow-empty.js +27 -0
  315. package/dist/gates/asset-doctor-failing-units.d.ts +16 -0
  316. package/dist/gates/asset-doctor-failing-units.d.ts.map +1 -0
  317. package/dist/gates/asset-doctor-failing-units.js +14 -0
  318. package/dist/gates/asset-doctor-failure-line.d.ts +16 -0
  319. package/dist/gates/asset-doctor-failure-line.d.ts.map +1 -0
  320. package/dist/gates/asset-doctor-failure-line.js +28 -0
  321. package/dist/gates/empty-rule-advice-lines.d.ts +15 -0
  322. package/dist/gates/empty-rule-advice-lines.d.ts.map +1 -0
  323. package/dist/gates/empty-rule-advice-lines.js +20 -0
  324. package/dist/gates/gate-envelope.d.ts +85 -8
  325. package/dist/gates/gate-envelope.d.ts.map +1 -1
  326. package/dist/gates/gate-envelope.js +56 -7
  327. package/dist/gates/gate-rule-globs.d.ts +67 -0
  328. package/dist/gates/gate-rule-globs.d.ts.map +1 -0
  329. package/dist/gates/gate-rule-globs.js +139 -0
  330. package/dist/gates/gate-rule-view.d.ts +25 -6
  331. package/dist/gates/gate-rule-view.d.ts.map +1 -1
  332. package/dist/gates/gate-rule-view.js +105 -77
  333. package/dist/gates/i-coverage-dead-glob.d.ts +19 -0
  334. package/dist/gates/i-coverage-dead-glob.d.ts.map +1 -0
  335. package/dist/gates/i-coverage-dead-glob.js +1 -0
  336. package/dist/gates/i-coverage-negation.d.ts +13 -0
  337. package/dist/gates/i-coverage-negation.d.ts.map +1 -0
  338. package/dist/gates/i-coverage-negation.js +1 -0
  339. package/dist/gates/i-registration-query-settle-input.d.ts +18 -0
  340. package/dist/gates/i-registration-query-settle-input.d.ts.map +1 -0
  341. package/dist/gates/i-registration-query-settle-input.js +1 -0
  342. package/dist/gates/i-unit-state-note-row.d.ts +16 -0
  343. package/dist/gates/i-unit-state-note-row.d.ts.map +1 -0
  344. package/dist/gates/i-unit-state-note-row.js +1 -0
  345. package/dist/gates/i-unit-state-notes.d.ts +32 -0
  346. package/dist/gates/i-unit-state-notes.d.ts.map +1 -0
  347. package/dist/gates/i-unit-state-notes.js +1 -0
  348. package/dist/gates/incomplete-registry-inventory.d.ts +19 -0
  349. package/dist/gates/incomplete-registry-inventory.d.ts.map +1 -0
  350. package/dist/gates/incomplete-registry-inventory.js +63 -0
  351. package/dist/gates/measure-registration-roles.d.ts +10 -0
  352. package/dist/gates/measure-registration-roles.d.ts.map +1 -0
  353. package/dist/gates/measure-registration-roles.js +9 -0
  354. package/dist/gates/plane-verdict.d.ts +14 -0
  355. package/dist/gates/plane-verdict.d.ts.map +1 -0
  356. package/dist/gates/plane-verdict.js +22 -0
  357. package/dist/gates/qualify-clean-for-units.d.ts +12 -0
  358. package/dist/gates/qualify-clean-for-units.d.ts.map +1 -0
  359. package/dist/gates/qualify-clean-for-units.js +18 -0
  360. package/dist/gates/registration-graph-verdict.d.ts +34 -0
  361. package/dist/gates/registration-graph-verdict.d.ts.map +1 -0
  362. package/dist/gates/registration-graph-verdict.js +70 -0
  363. package/dist/gates/registration-roles.d.ts +9 -0
  364. package/dist/gates/registration-roles.d.ts.map +1 -0
  365. package/dist/gates/registration-roles.js +1 -0
  366. package/dist/gates/registry-liveness.d.ts +11 -0
  367. package/dist/gates/registry-liveness.d.ts.map +1 -0
  368. package/dist/gates/registry-liveness.js +13 -0
  369. package/dist/gates/rule-coverage.d.ts +225 -4
  370. package/dist/gates/rule-coverage.d.ts.map +1 -1
  371. package/dist/gates/rule-coverage.js +610 -43
  372. package/dist/gates/run-gate-planes.d.ts +58 -0
  373. package/dist/gates/run-gate-planes.d.ts.map +1 -0
  374. package/dist/gates/run-gate-planes.js +403 -0
  375. package/dist/gates/scaffold-selftest.d.ts +56 -0
  376. package/dist/gates/scaffold-selftest.d.ts.map +1 -0
  377. package/dist/gates/scaffold-selftest.js +119 -0
  378. package/dist/gates/seam-rejected-rules.d.ts +28 -0
  379. package/dist/gates/seam-rejected-rules.d.ts.map +1 -0
  380. package/dist/gates/seam-rejected-rules.js +95 -0
  381. package/dist/gates/self-test-check.d.ts +29 -0
  382. package/dist/gates/self-test-check.d.ts.map +1 -0
  383. package/dist/gates/self-test-check.js +1 -0
  384. package/dist/gates/self-test-subject.d.ts +28 -0
  385. package/dist/gates/self-test-subject.d.ts.map +1 -0
  386. package/dist/gates/self-test-subject.js +1 -0
  387. package/dist/gates/self-test.d.ts +20 -0
  388. package/dist/gates/self-test.d.ts.map +1 -0
  389. package/dist/gates/self-test.js +82 -0
  390. package/dist/gates/settle-verdict.d.ts +14 -0
  391. package/dist/gates/settle-verdict.d.ts.map +1 -0
  392. package/dist/gates/settle-verdict.js +13 -0
  393. package/dist/gates/settled-verdict.d.ts +8 -0
  394. package/dist/gates/settled-verdict.d.ts.map +1 -0
  395. package/dist/gates/settled-verdict.js +1 -0
  396. package/dist/gates/template-registry-coverage.d.ts +18 -0
  397. package/dist/gates/template-registry-coverage.d.ts.map +1 -0
  398. package/dist/gates/template-registry-coverage.js +24 -0
  399. package/dist/gates/unit-state-notes.d.ts +40 -0
  400. package/dist/gates/unit-state-notes.d.ts.map +1 -0
  401. package/dist/gates/unit-state-notes.js +71 -0
  402. package/dist/gates/verdict-line.d.ts +18 -0
  403. package/dist/gates/verdict-line.d.ts.map +1 -0
  404. package/dist/gates/verdict-line.js +40 -0
  405. package/dist/graph/graph-reuse-lookup.d.ts +10 -0
  406. package/dist/graph/graph-reuse-lookup.d.ts.map +1 -0
  407. package/dist/graph/graph-reuse-lookup.js +41 -0
  408. package/dist/graph/index-behind-hint.d.ts +11 -0
  409. package/dist/graph/index-behind-hint.d.ts.map +1 -0
  410. package/dist/graph/index-behind-hint.js +27 -0
  411. package/dist/knowledge/knowledge-stale-gate-flags.d.ts +3 -0
  412. package/dist/knowledge/knowledge-stale-gate-flags.d.ts.map +1 -0
  413. package/dist/knowledge/knowledge-stale-gate-flags.js +1 -0
  414. package/dist/knowledge/knowledge-stale-gate-input.d.ts +3 -0
  415. package/dist/knowledge/knowledge-stale-gate-input.d.ts.map +1 -0
  416. package/dist/knowledge/knowledge-stale-gate-input.js +1 -0
  417. package/dist/knowledge/knowledge-stale-gate-result.d.ts +3 -0
  418. package/dist/knowledge/knowledge-stale-gate-result.d.ts.map +1 -0
  419. package/dist/knowledge/knowledge-stale-gate-result.js +1 -0
  420. package/dist/knowledge/knowledge-stale-gate.d.ts +10 -0
  421. package/dist/knowledge/knowledge-stale-gate.d.ts.map +1 -0
  422. package/dist/knowledge/knowledge-stale-gate.js +9 -0
  423. package/dist/main.d.ts.map +1 -1
  424. package/dist/main.js +204 -83
  425. package/dist/output/failure-hints.d.ts.map +1 -1
  426. package/dist/output/failure-hints.js +11 -9
  427. package/dist/output/rejected-entries-note.d.ts +57 -0
  428. package/dist/output/rejected-entries-note.d.ts.map +1 -0
  429. package/dist/output/rejected-entries-note.js +103 -0
  430. package/dist/output/stdout-is-pipe.d.ts +13 -0
  431. package/dist/output/stdout-is-pipe.d.ts.map +1 -0
  432. package/dist/output/stdout-is-pipe.js +21 -0
  433. package/dist/packs/stale-build-warning.d.ts +11 -0
  434. package/dist/packs/stale-build-warning.d.ts.map +1 -0
  435. package/dist/packs/stale-build-warning.js +23 -0
  436. package/dist/quality/run-quality.d.ts +123 -0
  437. package/dist/quality/run-quality.d.ts.map +1 -0
  438. package/dist/quality/run-quality.js +442 -0
  439. package/dist/schemas/json-schemas.d.ts +184 -3
  440. package/dist/schemas/json-schemas.d.ts.map +1 -1
  441. package/dist/schemas/json-schemas.js +113 -2
  442. package/dist/shrk.d.ts +3 -0
  443. package/dist/shrk.d.ts.map +1 -0
  444. package/dist/shrk.js +30 -0
  445. package/dist/surface/audience-applicability.d.ts +26 -0
  446. package/dist/surface/audience-applicability.d.ts.map +1 -0
  447. package/dist/surface/audience-applicability.js +60 -0
  448. package/dist/surface/catalog-command-safety.d.ts +18 -0
  449. package/dist/surface/catalog-command-safety.d.ts.map +1 -0
  450. package/dist/surface/catalog-command-safety.js +62 -0
  451. package/dist/surface/cli-command-resolver.d.ts +21 -0
  452. package/dist/surface/cli-command-resolver.d.ts.map +1 -0
  453. package/dist/surface/cli-command-resolver.js +87 -0
  454. package/dist/surface/command-dispatch-kind.d.ts +20 -0
  455. package/dist/surface/command-dispatch-kind.d.ts.map +1 -0
  456. package/dist/surface/command-dispatch-kind.js +20 -0
  457. package/dist/surface/command-index-entry.d.ts +40 -0
  458. package/dist/surface/command-index-entry.d.ts.map +1 -0
  459. package/dist/surface/command-index-entry.js +1 -0
  460. package/dist/surface/command-index.d.ts +77 -0
  461. package/dist/surface/command-index.d.ts.map +1 -0
  462. package/dist/surface/command-index.js +323 -0
  463. package/dist/surface/i-command-index.d.ts +22 -0
  464. package/dist/surface/i-command-index.d.ts.map +1 -0
  465. package/dist/surface/i-command-index.js +1 -0
  466. package/dist/surface/i-command-string-context.d.ts +20 -0
  467. package/dist/surface/i-command-string-context.d.ts.map +1 -0
  468. package/dist/surface/i-command-string-context.js +1 -0
  469. package/dist/surface/i-surface-denial.d.ts +13 -0
  470. package/dist/surface/i-surface-denial.d.ts.map +1 -0
  471. package/dist/surface/i-surface-denial.js +1 -0
  472. package/dist/surface/load-surface-context.d.ts +17 -1
  473. package/dist/surface/load-surface-context.d.ts.map +1 -1
  474. package/dist/surface/load-surface-context.js +48 -10
  475. package/dist/surface/not-enabled-error.d.ts +38 -4
  476. package/dist/surface/not-enabled-error.d.ts.map +1 -1
  477. package/dist/surface/not-enabled-error.js +96 -6
  478. package/dist/surface/profiles.d.ts +7 -0
  479. package/dist/surface/profiles.d.ts.map +1 -1
  480. package/dist/surface/resolve-command-string.d.ts +10 -0
  481. package/dist/surface/resolve-command-string.d.ts.map +1 -0
  482. package/dist/surface/resolve-command-string.js +572 -0
  483. package/dist/surface/surface-config-writer.d.ts +7 -2
  484. package/dist/surface/surface-config-writer.d.ts.map +1 -1
  485. package/dist/surface/surface-config-writer.js +25 -6
  486. package/dist/surface/surface-layer.d.ts +11 -0
  487. package/dist/surface/surface-layer.d.ts.map +1 -0
  488. package/dist/surface/surface-layer.js +11 -0
  489. package/dist/surface/surface-refusal-reason.d.ts +16 -0
  490. package/dist/surface/surface-refusal-reason.d.ts.map +1 -0
  491. package/dist/surface/surface-refusal-reason.js +16 -0
  492. package/dist/surface/surface-selector.d.ts +26 -0
  493. package/dist/surface/surface-selector.d.ts.map +1 -0
  494. package/dist/surface/surface-selector.js +42 -0
  495. package/dist/surface/surface-summary.d.ts +61 -18
  496. package/dist/surface/surface-summary.d.ts.map +1 -1
  497. package/dist/surface/surface-summary.js +147 -60
  498. package/dist/surface/tier.d.ts +85 -22
  499. package/dist/surface/tier.d.ts.map +1 -1
  500. package/dist/surface/tier.js +132 -30
  501. package/dist/usage/usage-log.d.ts +6 -1
  502. package/dist/usage/usage-log.d.ts.map +1 -1
  503. package/dist/usage/usage-log.js +7 -2
  504. package/dist/validation/run-validation-loop.d.ts +9 -0
  505. package/dist/validation/run-validation-loop.d.ts.map +1 -1
  506. package/dist/validation/run-validation-loop.js +14 -11
  507. package/dist/validation/typecheck-emitted.d.ts +8 -9
  508. package/dist/validation/typecheck-emitted.d.ts.map +1 -1
  509. package/dist/validation/typecheck-emitted.js +17 -97
  510. package/package.json +34 -34
@@ -1 +1 @@
1
- {"version":3,"file":"checks.command.d.ts","sourceRoot":"","sources":["../../src/commands/checks.command.ts"],"names":[],"mappings":"AAiCA,OAAO,EAIL,KAAK,eAAe,EAErB,MAAM,wBAAwB,CAAC;AAKhC,eAAO,MAAM,iBAAiB,EAAE,eA6C/B,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,eA+BjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,eAgD9B,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,eAkCtC,CAAC;AAwCF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,eA8DjC,CAAC;AAUF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,eA0CpC,CAAC;AAyBF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,eAsCjC,CAAC;AA0EF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,eA6ClC,CAAC"}
1
+ {"version":3,"file":"checks.command.d.ts","sourceRoot":"","sources":["../../src/commands/checks.command.ts"],"names":[],"mappings":"AA2CA,OAAO,EAIL,KAAK,eAAe,EAErB,MAAM,wBAAwB,CAAC;AA2EhC,eAAO,MAAM,iBAAiB,EAAE,eAoF/B,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,eAyEjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,eAiE9B,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,eAoCtC,CAAC;AAwCF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,eAgEjC,CAAC;AAUF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,eA0CpC,CAAC;AAyBF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,eAsCjC,CAAC;AA0EF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,eA6ClC,CAAC"}
@@ -13,33 +13,123 @@
13
13
  */
14
14
  import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from 'node:fs';
15
15
  import * as nodePath from 'node:path';
16
- import { buildCheckAggregate, buildCheckResult, buildCustomChecksRegistry, CHECK_AGGREGATE_SCHEMA, CHECK_RESULT_SCHEMA, CheckResultStatus, convertBiomeToCheckResult, convertEslintToCheckResult, CustomCheckScope, doctorCustomChecks, inspectSharkcraft, parseCheckResult, parseCustomCheckReportFromFile, runCustomCheck, } from '@shrkcrft/inspector';
16
+ import { buildCheckAggregate, buildCheckResult, buildCustomChecksRegistry, CHECK_AGGREGATE_SCHEMA, CHECK_RESULT_SCHEMA, CheckResultStatus, convertBiomeToCheckResult, convertEslintToCheckResult, CustomCheckKind, CustomCheckScope, customCheckScanSurface, doctorCustomChecks, inspectSharkcraft, nearestIds, parseCheckResult, parseCustomCheckReportFromFile, referenceIdExists, referenceIdPool, referenceKindsOf, runCustomCheck, } from '@shrkcrft/inspector';
17
17
  import { flagBool, flagString, resolveCwd, } from "../command-registry.js";
18
+ import { PositionalMode } from "../dispatch/positional-mode.js";
19
+ import { ExitCode } from "../exit-codes.js";
20
+ import { ALLOW_EMPTY_FLAG, allowEmptyValve } from "../gates/allow-empty.js";
21
+ import { settleVerdict } from "../gates/settle-verdict.js";
22
+ import { verdictLine } from "../gates/verdict-line.js";
18
23
  import { asJson, header } from "../output/format-output.js";
19
24
  const CHECKS_DIR_REL = '.sharkcraft/checks';
25
+ /** THE registry build for every `checks` verb — sources project-relative. */
26
+ function loadCustomChecks(inspection) {
27
+ return buildCustomChecksRegistry(inspection.knowledgeEntries, { projectRoot: inspection.projectRoot });
28
+ }
29
+ /** Every declaration that can never run, one line each, with its file and why. */
30
+ function droppedDeclarationLines(registry) {
31
+ const lines = [];
32
+ for (const i of registry.invalid) {
33
+ const check = i.checkId ? ` [${i.checkId}]` : '';
34
+ lines.push(` ✗ ${i.ruleId}${check}${i.source ? ` (${i.source})` : ''} — ${i.reason}`);
35
+ }
36
+ for (const i of registry.ignored) {
37
+ const checks = i.checkIds.length > 0 ? ` checks: ${i.checkIds.join(', ')}` : '';
38
+ lines.push(` ✗ ${i.entryId} [type:${i.entryType}]${checks}${i.source ? ` (${i.source})` : ''} — ${i.reason}`);
39
+ }
40
+ return lines;
41
+ }
42
+ /** The concrete surface the registry scans — what an empty state names. */
43
+ function scanSurfaceLines(surface, scannedRules) {
44
+ const lines = [
45
+ " Custom checks are read from metadata.checks[] on type:'rule' entries in TypeScript rule / knowledge files:",
46
+ ];
47
+ if (surface.files.length === 0) {
48
+ lines.push(' (none — no TypeScript ruleFiles / knowledgeFiles in sharkcraft.config.ts, and no pack contributes one)');
49
+ }
50
+ for (const f of surface.files)
51
+ lines.push(` ${f.via.padEnd(16)} ${f.file}`);
52
+ const md = surface.markdownRules > 0
53
+ ? ` — ${surface.markdownRules} of the rules scanned are Markdown`
54
+ : surface.markdownFiles.length > 0
55
+ ? ` (Markdown sources: ${surface.markdownFiles.join(', ')})`
56
+ : '';
57
+ lines.push(` Scanned ${scannedRules} type:'rule' ${scannedRules === 1 ? 'entry' : 'entries'}. Markdown rules cannot carry metadata${md}.`);
58
+ return lines;
59
+ }
60
+ /**
61
+ * `--rule` must name a RULE — resolved through the one reference registry, so
62
+ * a typo is a usage error with a did-you-mean, never an empty listing that
63
+ * reads as "nothing declared".
64
+ */
65
+ function unknownRuleFilter(inspection, id, usage, wantJson) {
66
+ const kinds = referenceKindsOf(inspection, id).filter((k) => k !== 'rule');
67
+ const near = nearestIds(id, referenceIdPool(inspection, ['rule'])).map((n) => n.id);
68
+ const why = kinds.length > 0
69
+ ? `"${id}" is a ${kinds.join(' | ')} id, not a type:'rule' entry — custom checks are declared on rules only.`
70
+ : `no type:'rule' entry has the id "${id}".`;
71
+ process.stderr.write(`--rule ${id}: ${why}${near.length > 0 ? ` Did you mean: ${near.join(', ')}?` : ''}\nUsage: ${usage}\n`);
72
+ if (wantJson) {
73
+ process.stdout.write(asJson({ error: 'unknown-rule', rule: id, resolvedAs: kinds, didYouMean: near, exitCode: ExitCode.UsageError }) + '\n');
74
+ }
75
+ return ExitCode.UsageError;
76
+ }
77
+ const CHECKS_LIST_USAGE = 'shrk checks list [--rule <ruleId>] [--kind <k>] [--json]';
20
78
  export const checksListCommand = {
21
79
  name: 'list',
22
- description: 'List custom checks declared by rules (metadata.checks[]). Read-only.',
23
- usage: 'shrk checks list [--rule <ruleId>] [--kind <k>] [--json]',
80
+ description: "List custom checks declared on type:'rule' entries (metadata.checks[] in TypeScript rule / knowledge files, local or pack). Every declaration that can never run (on a non-rule entry, in a Markdown rule, a non-array value) is named with its file and reason. Exit 0 · 1 a dropped declaration · 3 --rule names no rule. Read-only.",
81
+ usage: CHECKS_LIST_USAGE,
82
+ booleanFlags: new Set(['json']),
24
83
  async run(args) {
25
84
  const cwd = resolveCwd(args);
26
85
  const inspection = await inspectSharkcraft({ cwd });
27
- const registry = buildCustomChecksRegistry(inspection.knowledgeEntries);
86
+ const registry = loadCustomChecks(inspection);
28
87
  const ruleFilter = flagString(args, 'rule');
29
88
  const kindFilter = flagString(args, 'kind');
89
+ const wantJson = flagBool(args, 'json');
90
+ if (ruleFilter && !referenceIdExists(inspection, 'rule', ruleFilter)) {
91
+ return unknownRuleFilter(inspection, ruleFilter, CHECKS_LIST_USAGE, wantJson);
92
+ }
30
93
  let entries = registry.entries;
31
94
  if (ruleFilter)
32
95
  entries = entries.filter((e) => e.ruleId === ruleFilter);
33
96
  if (kindFilter)
34
97
  entries = entries.filter((e) => e.descriptor.kind === kindFilter);
35
- if (flagBool(args, 'json')) {
36
- process.stdout.write(asJson({ ...registry, entries }) + '\n');
37
- return 0;
98
+ const filterLabel = [ruleFilter ? `--rule ${ruleFilter}` : '', kindFilter ? `--kind ${kindFilter}` : '']
99
+ .filter(Boolean)
100
+ .join(' ');
101
+ const dropped = registry.invalid.length + registry.ignored.length;
102
+ // One data path: the exit, the JSON and the text all read these numbers.
103
+ const exit = dropped > 0 ? ExitCode.Failure : ExitCode.VerifiedPass;
104
+ const surface = customCheckScanSurface(inspection);
105
+ if (wantJson) {
106
+ process.stdout.write(asJson({
107
+ ...registry,
108
+ entries,
109
+ declared: registry.entries.length,
110
+ ...(filterLabel ? { filters: { rule: ruleFilter ?? null, kind: kindFilter ?? null } } : {}),
111
+ surface,
112
+ exitCode: exit,
113
+ }) + '\n');
114
+ return exit;
115
+ }
116
+ process.stdout.write(header(`Custom checks (${entries.length}${filterLabel ? ` of ${registry.entries.length}` : ''})`));
117
+ if (entries.length === 0 && registry.entries.length > 0) {
118
+ // Filters excluded everything — which is not "nothing declared".
119
+ const n = registry.entries.length;
120
+ process.stdout.write(` ${n} ${n === 1 ? 'check' : 'checks'} declared, 0 match ${filterLabel}\n`);
121
+ const knownKinds = Object.values(CustomCheckKind);
122
+ if (kindFilter && !knownKinds.includes(kindFilter)) {
123
+ process.stdout.write(` (known kinds: ${knownKinds.join(', ')})\n`);
124
+ }
38
125
  }
39
- process.stdout.write(header(`Custom checks (${entries.length})`));
40
- if (entries.length === 0) {
41
- process.stdout.write(' (no checks declared add metadata.checks[] to a rule)\n');
42
- return 0;
126
+ else if (entries.length === 0 && dropped === 0) {
127
+ process.stdout.write(' No checks declared.\n');
128
+ for (const line of scanSurfaceLines(surface, registry.scannedRules))
129
+ process.stdout.write(`${line}\n`);
130
+ }
131
+ else if (entries.length === 0) {
132
+ process.stdout.write(` 0 checks registered — every declaration below was dropped.\n`);
43
133
  }
44
134
  for (const e of entries) {
45
135
  const d = e.descriptor;
@@ -65,60 +155,114 @@ export const checksListCommand = {
65
155
  process.stdout.write(` ${d.id}: ${d.ruleIds.join(', ')}\n`);
66
156
  }
67
157
  }
68
- return 0;
158
+ if (dropped > 0) {
159
+ process.stdout.write(`\n Dropped declarations (${dropped}) — declared, but can never run:\n`);
160
+ for (const line of droppedDeclarationLines(registry))
161
+ process.stdout.write(`${line}\n`);
162
+ process.stdout.write('\n Fix each declaration above (`shrk checks doctor` validates the rest).\n');
163
+ }
164
+ return exit;
69
165
  },
70
166
  };
71
167
  export const checksDoctorCommand = {
72
168
  name: 'doctor',
73
- description: 'Validate custom-check descriptors. Reports missing fields, duplicate ids, etc.',
74
- usage: 'shrk checks doctor [--json] [--strict]',
169
+ description: 'Validate custom-check descriptors missing fields, duplicate ids, and every declaration that can never run (on a non-rule entry, in a Markdown rule, a non-array value). Exit 0 validated · 1 errors (or warnings under --strict) · 2 nothing declared (--allow-empty accepts that explicitly). Read-only.',
170
+ usage: 'shrk checks doctor [--strict] [--allow-empty] [--json]',
171
+ booleanFlags: new Set(['json', 'strict', ALLOW_EMPTY_FLAG]),
75
172
  async run(args) {
76
173
  const cwd = resolveCwd(args);
77
174
  const inspection = await inspectSharkcraft({ cwd });
78
- const registry = buildCustomChecksRegistry(inspection.knowledgeEntries);
175
+ const registry = loadCustomChecks(inspection);
79
176
  const report = doctorCustomChecks(registry);
177
+ const surface = customCheckScanSurface(inspection);
178
+ const expected = report.declaredChecks;
179
+ const ignoredLabels = registry.ignored.map((i) => `${i.entryId}${i.source ? ` (${i.source})` : ''}`);
180
+ // Declared checks are the unit: registered and invalid ones were validated
181
+ // (an invalid one failed); an ignored one was never read. Nothing declared
182
+ // is expected 0 — "validated nothing" is never a ✓.
183
+ const coverage = {
184
+ unit: 'declared checks',
185
+ expected,
186
+ examined: registry.entries.length + registry.invalid.length,
187
+ root: inspection.projectRoot,
188
+ reason: expected === 0
189
+ ? `no type:'rule' entry declares metadata.checks[] (${registry.scannedRules} rule${registry.scannedRules === 1 ? '' : 's'} scanned)`
190
+ : 'declared where the registry does not read them, so never validated',
191
+ ...(ignoredLabels.length > 0 ? { unexamined: ignoredLabels.slice(0, 20), unexaminedTotal: ignoredLabels.length } : {}),
192
+ ...allowEmptyValve(args, expected),
193
+ };
194
+ const strict = flagBool(args, 'strict');
195
+ const settled = settleVerdict(report.errors > 0 || (strict && report.warnings > 0) ? 1 : 0, [coverage]);
80
196
  if (flagBool(args, 'json')) {
81
- process.stdout.write(asJson(report) + '\n');
82
- }
83
- else {
84
- process.stdout.write(header('Custom checks doctor'));
85
- process.stdout.write(` total ${report.totalChecks}\n`);
86
- process.stdout.write(` errors ${report.errors}\n`);
87
- process.stdout.write(` warnings ${report.warnings}\n`);
88
- if (report.details.length === 0) {
89
- process.stdout.write('\nNo descriptor issues. ✓\n');
90
- }
91
- else {
92
- process.stdout.write('\nDetails:\n');
93
- for (const d of report.details) {
94
- process.stdout.write(` ${d.severity.padEnd(7)} [${d.checkId}] (${d.ruleId}) — ${d.message}\n`);
95
- }
197
+ process.stdout.write(asJson({
198
+ ...report,
199
+ coverage,
200
+ surface,
201
+ exitCode: settled.exit,
202
+ verdict: settled.verdict,
203
+ shortfalls: settled.shortfalls,
204
+ accepted: settled.accepted,
205
+ }) + '\n');
206
+ return settled.exit;
207
+ }
208
+ process.stdout.write(header('Custom checks doctor'));
209
+ process.stdout.write(` declared ${report.declaredChecks}\n`);
210
+ process.stdout.write(` registered ${report.totalChecks}\n`);
211
+ process.stdout.write(` errors ${report.errors}\n`);
212
+ process.stdout.write(` warnings ${report.warnings}\n`);
213
+ process.stdout.write(` scanned ${report.scannedRules} type:'rule' ${report.scannedRules === 1 ? 'entry' : 'entries'}\n`);
214
+ if (report.details.length > 0) {
215
+ process.stdout.write('\nDetails:\n');
216
+ for (const d of report.details) {
217
+ process.stdout.write(` ${d.severity.padEnd(7)} [${d.checkId}] (${d.ruleId})${d.source ? ` ${d.source}` : ''} — ${d.message}\n`);
96
218
  }
97
219
  }
98
- if (report.errors > 0)
99
- return 1;
100
- if (flagBool(args, 'strict') && report.warnings > 0)
101
- return 1;
102
- return 0;
220
+ const clean = expected === 0
221
+ ? 'No checks declared — accepted.'
222
+ : report.warnings > 0
223
+ ? `No blocking descriptor issues — ${report.warnings} warning(s) reported above.`
224
+ : `${report.totalChecks} check descriptor(s) validated — no issues. ✓`;
225
+ const line = verdictLine(settled, clean, expected === 0 ? 'No checks declared — nothing validated.' : undefined);
226
+ if (line)
227
+ process.stdout.write(`\n${line}\n`);
228
+ if (settled.exit === ExitCode.NotVerified && expected === 0) {
229
+ for (const l of scanSurfaceLines(surface, registry.scannedRules))
230
+ process.stdout.write(`${l}\n`);
231
+ process.stdout.write('Pass --allow-empty to accept a project with no custom checks explicitly.\n');
232
+ }
233
+ return settled.exit;
103
234
  },
104
235
  };
105
236
  export const checksRunCommand = {
106
237
  name: 'run',
107
- description: 'Run a custom check. Read-only by default — pass --execute to actually invoke the command.',
238
+ description: 'Run a custom check. Read-only by default — pass --execute to actually invoke the command. A check declared where the registry does not read it (a non-rule entry, a Markdown rule) is named, with why.',
108
239
  usage: 'shrk checks run <checkId> [--execute] [--report-path <path>] [--changed-only|--staged|--all] [--json]',
109
240
  async run(args) {
110
241
  const checkId = args.positional[0];
111
242
  if (!checkId) {
112
243
  process.stderr.write('Usage: shrk checks run <checkId> [--execute]\n');
113
- return 2;
244
+ return ExitCode.UsageError;
114
245
  }
115
246
  const cwd = resolveCwd(args);
116
247
  const inspection = await inspectSharkcraft({ cwd });
117
- const registry = buildCustomChecksRegistry(inspection.knowledgeEntries);
248
+ const registry = loadCustomChecks(inspection);
118
249
  const entry = registry.entries.find((e) => e.descriptor.id === checkId);
119
250
  if (!entry) {
120
- process.stderr.write(`No custom check with id "${checkId}".\n`);
121
- return 1;
251
+ // Declared but not registered: say where it is and why, instead of
252
+ // "no such check" next to a declaration the author can see.
253
+ const ignored = registry.ignored.find((i) => i.checkIds.includes(checkId));
254
+ const invalid = registry.invalid.find((i) => i.checkId === checkId);
255
+ if (ignored) {
256
+ process.stderr.write(`Custom check "${checkId}" is declared on ${ignored.entryId} (type:'${ignored.entryType}'${ignored.source ? `, ${ignored.source}` : ''}) but is not registered: ${ignored.reason}.\n`);
257
+ }
258
+ else if (invalid) {
259
+ process.stderr.write(`Custom check "${checkId}" is declared on rule ${invalid.ruleId}${invalid.source ? ` (${invalid.source})` : ''} but is invalid: ${invalid.reason}.\n`);
260
+ }
261
+ else {
262
+ const near = nearestIds(checkId, registry.entries.map((e) => e.descriptor.id)).map((n) => n.id);
263
+ process.stderr.write(`No custom check with id "${checkId}".${near.length > 0 ? ` Did you mean: ${near.join(', ')}?` : ''} (\`shrk checks list\` shows every declared check.)\n`);
264
+ }
265
+ return ExitCode.Failure;
122
266
  }
123
267
  const result = runCustomCheck(entry.descriptor, {
124
268
  cwd,
@@ -155,6 +299,8 @@ export const checksRunCommand = {
155
299
  };
156
300
  export const checksParseReportCommand = {
157
301
  name: 'parse-report',
302
+ // positional[0] is the report FILE; a verb-shaped non-file is refused.
303
+ positionals: PositionalMode.Path,
158
304
  description: 'Parse a sharkcraft.custom-check/v1 JSON report file (or text fallback) and validate its shape.',
159
305
  usage: 'shrk checks parse-report <path> [--check-id <id>] [--json]',
160
306
  async run(args) {
@@ -230,6 +376,8 @@ function listImportedResults(cwd) {
230
376
  */
231
377
  export const checksImportCommand = {
232
378
  name: 'import',
379
+ // positional[0] is the result FILE; a verb-shaped non-file is refused.
380
+ positionals: PositionalMode.Path,
233
381
  description: 'Import a sharkcraft.check-result/v1 JSON file (or auto-convert from ESLint JSON) and store it under .sharkcraft/checks/.',
234
382
  usage: 'shrk checks import <file> [--tool <name>] [--as eslint|biome|v1] [--json] [--dry-run]',
235
383
  async run(args) {
@@ -1 +1 @@
1
- {"version":3,"file":"ci.command.d.ts","sourceRoot":"","sources":["../../src/commands/ci.command.ts"],"names":[],"mappings":"AAeA,OAAO,EAKL,KAAK,eAAe,EAErB,MAAM,wBAAwB,CAAC;AAsehC,eAAO,MAAM,SAAS,EAAE,eAsKvB,CAAC"}
1
+ {"version":3,"file":"ci.command.d.ts","sourceRoot":"","sources":["../../src/commands/ci.command.ts"],"names":[],"mappings":"AAgBA,OAAO,EAKL,KAAK,eAAe,EAErB,MAAM,wBAAwB,CAAC;AAyehC,eAAO,MAAM,SAAS,EAAE,eAuMvB,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import { existsSync, mkdirSync, writeFileSync } from 'node:fs';
2
2
  import * as nodePath from 'node:path';
3
- import { auditCiWorkflow, buildCiIntegrityReport, GateStatus, renderAzureCiWorkflow, renderBitbucketCiWorkflow, renderCiIntegrityHtml, renderCiIntegrityMarkdown, renderGitlabCiWorkflow, renderJenkinsCiWorkflow, } from '@shrkcrft/inspector';
3
+ import { auditCiWorkflow, buildCiIntegrityReport, detectSharkcraftRepo, GateStatus, renderAzureCiWorkflow, renderBitbucketCiWorkflow, renderCiIntegrityHtml, renderCiIntegrityMarkdown, renderGitlabCiWorkflow, renderJenkinsCiWorkflow, } from '@shrkcrft/inspector';
4
4
  import { flagBool, flagString, flagList, resolveCwd, } from "../command-registry.js";
5
+ import { PositionalMode } from "../dispatch/positional-mode.js";
5
6
  import { asJson, header, kv } from "../output/format-output.js";
6
7
  function detectRepoAssetState(cwd) {
7
8
  const dir = nodePath.join(cwd, 'sharkcraft');
@@ -46,7 +47,9 @@ function buildSteps(inputs) {
46
47
  steps.push({ name: 'Drift report', command: 'bun run shrk drift --json > drift.json', artifact: 'drift.json' });
47
48
  }
48
49
  if (inputs.withBaseline) {
49
- steps.push({ name: 'Quality baseline compare', command: 'bun run shrk quality baseline-compare --fail-on-regression --json > baseline-compare.json', artifact: 'baseline-compare.json' });
50
+ // `quality baseline …` was removed; the committed-ledger drift gate is
51
+ // `baseline check` (two-way: a lost entry fails like a gained one).
52
+ steps.push({ name: 'Baseline check', command: 'bun run shrk baseline check --json > baseline-check.json', artifact: 'baseline-check.json' });
50
53
  }
51
54
  if (inputs.withPolicy) {
52
55
  steps.push({ name: 'Policy check', command: 'bun run shrk policy check --json > policy.json', artifact: 'policy.json' });
@@ -404,6 +407,26 @@ function buildGateExplanations(inputs, state) {
404
407
  }
405
408
  export const ciCommand = {
406
409
  name: 'ci',
410
+ positionals: PositionalMode.None,
411
+ subverbs: [
412
+ {
413
+ name: 'scaffold',
414
+ description: 'Scaffold a CI workflow for a provider (dry-run unless --write).',
415
+ usage: 'shrk ci scaffold <provider> [--with-quality] [--with-review] [--with-boundaries] [--with-coverage] [--with-drift-gate] [--with-drift] [--with-baseline] [--with-policy] [--with-owners] [--with-test-impact] [--with-dashboard-e2e] [--with-node-compat] [--with-safety-audit] [--with-command-doctor] [--with-pack-tests --pack-paths <p1,p2>] [--with-knowledge-check] [--with-template-drift] [--with-integrity] [--output <path>] [--write] [--force] [--json]',
416
+ positionals: PositionalMode.Free,
417
+ },
418
+ {
419
+ name: 'permissions',
420
+ description: 'Audit a CI workflow file’s permissions.',
421
+ usage: 'shrk ci permissions <workflow-file> [--provider github-actions|gitlab|bitbucket|azure|jenkins] [--json]',
422
+ positionals: PositionalMode.Path,
423
+ },
424
+ {
425
+ name: 'report',
426
+ description: 'Aggregate CI reports into one verdict.',
427
+ usage: 'shrk ci report [--reports-dir <dir>] [--format text|markdown|html|json] [--fail-on error|warning|none]',
428
+ },
429
+ ],
407
430
  description: 'Scaffold CI configurations for SharkCraft (github-actions, gitlab, circleci, bitbucket, azure-pipelines, jenkins, azure). `shrk ci permissions` audits a workflow file. Supports --with-knowledge-check / --with-template-drift / --with-integrity.',
408
431
  usage: 'shrk ci scaffold <provider> [--with-quality] [--with-review] [--with-boundaries] [--with-coverage] [--with-drift-gate] [--with-drift] [--with-baseline] [--with-policy] [--with-owners] [--with-test-impact] [--with-dashboard-e2e] [--with-node-compat] [--with-safety-audit] [--with-command-doctor] [--with-pack-tests --pack-paths <p1,p2>] [--with-knowledge-check] [--with-template-drift] [--with-integrity] [--output <path>] [--write] [--force] [--json]\n shrk ci permissions <workflow-file> [--provider github-actions|gitlab|bitbucket|azure|jenkins] [--json]',
409
432
  async run(args) {
@@ -425,6 +448,16 @@ export const ciCommand = {
425
448
  return 2;
426
449
  }
427
450
  const cwd = resolveCwd(args);
451
+ // `--with-command-doctor` emits `shrk commands doctor`, which maintains
452
+ // SharkCraft itself: outside SharkCraft's own repository it exits 78 through
453
+ // the surface gate, so the generated step would fail every CI run. THE host
454
+ // authority (`detectSharkcraftRepo`, the one the surface gate reads) decides.
455
+ if (flagBool(args, 'with-command-doctor') && !detectSharkcraftRepo(cwd)) {
456
+ process.stderr.write('--with-command-doctor adds `shrk commands doctor`, which maintains SharkCraft itself and does not apply to ' +
457
+ 'this repository — it exits 78 here, so the generated step would fail every CI run. Drop the flag ' +
458
+ '(it is for the SharkCraft repository only).\n');
459
+ return 2;
460
+ }
428
461
  const packPathsList = flagList(args, 'pack-paths');
429
462
  const withIntegrity = flagBool(args, 'with-integrity');
430
463
  // Quickstart / preset auto / pr-checks all expand into the
@@ -1 +1 @@
1
- {"version":3,"file":"code-intel.command.d.ts","sourceRoot":"","sources":["../../src/commands/code-intel.command.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,eAAe,EAErB,MAAM,wBAAwB,CAAC;AAGhC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,gBAAgB,EAAE,eAuE9B,CAAC"}
1
+ {"version":3,"file":"code-intel.command.d.ts","sourceRoot":"","sources":["../../src/commands/code-intel.command.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,eAAe,EAErB,MAAM,wBAAwB,CAAC;AAKhC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,gBAAgB,EAAE,eA+E9B,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import { buildCodeIntelligenceChecks, DoctorSeverity, } from '@shrkcrft/inspector';
2
2
  import { flagBool, flagString, resolveCwd, } from "../command-registry.js";
3
+ import { PositionalMode } from "../dispatch/positional-mode.js";
4
+ import { detectGraphFreshness } from '@shrkcrft/graph';
3
5
  import { asJson, header, kv } from "../output/format-output.js";
4
6
  /**
5
7
  * `shrk code-intel` — one-shot view of the 14 code-intelligence
@@ -18,6 +20,8 @@ import { asJson, header, kv } from "../output/format-output.js";
18
20
  */
19
21
  export const codeIntelCommand = {
20
22
  name: 'code-intel',
23
+ // Flag-driven: a bare token used to be ignored at exit 0.
24
+ positionals: PositionalMode.None,
21
25
  description: 'One-shot view of code-intelligence doctor checks (graph, rule-graph, api-surface, quality-gate, migrations, architecture, impact, framework, structural-search, context-planner). Read-only.',
22
26
  usage: 'shrk [--cwd <dir>] code-intel [--json] [--markdown] [--only ok,warning,error,info] [--check <id>] [--stale-days N]',
23
27
  async run(args) {
@@ -28,7 +32,10 @@ export const codeIntelCommand = {
28
32
  const checkId = flagString(args, 'check');
29
33
  const staleDaysRaw = flagString(args, 'stale-days');
30
34
  const staleDays = staleDaysRaw ? Number.parseInt(staleDaysRaw, 10) : undefined;
31
- const options = {};
35
+ // Divergence against the working tree — the SAME check `shrk graph status`
36
+ // reports, so the two surfaces cannot contradict each other. Injected
37
+ // because `@shrkcrft/graph` sits above inspector in the layer order.
38
+ const options = { graphDivergence: detectGraphFreshness(cwd) };
32
39
  if (typeof staleDays === 'number' && Number.isFinite(staleDays) && staleDays > 0) {
33
40
  options.staleThresholdDays = staleDays;
34
41
  }
@@ -27,7 +27,17 @@ export declare enum CommandAudience {
27
27
  Agent = "agent",
28
28
  Ci = "ci",
29
29
  PackAuthor = "pack-author",
30
- Maintainer = "maintainer"
30
+ Maintainer = "maintainer",
31
+ /**
32
+ * The command's OBJECT is SharkCraft itself — its own docs set, examples
33
+ * tree, release artifacts, command catalog, round snapshots (round 11
34
+ * §5.1). Outside SharkCraft's own repository (`detectSharkcraftRepo`, the
35
+ * one host authority) such a command is gated: tier source
36
+ * `tool-maintenance`, hidden from `--help`, and invoking it exits 78 through
37
+ * the surface gate — never a check failure. `surface.enabled` is the escape
38
+ * hatch.
39
+ */
40
+ ToolMaintenance = "tool-maintenance"
31
41
  }
32
42
  /**
33
43
  * User-journey role. Distinct from {@link SafetyLevel} and from the
@@ -220,6 +230,11 @@ export declare function r46Overlay(command: string): IR46OverlayEntry | undefine
220
230
  export declare function commandSurface(e: ICommandCatalogEntry): CommandSurface;
221
231
  /** Default audience: humans, plus agents if `mcpAvailable`. */
222
232
  export declare function commandAudience(e: ICommandCatalogEntry): readonly CommandAudience[];
233
+ /**
234
+ * True when the row maintains SharkCraft itself ({@link CommandAudience.ToolMaintenance}).
235
+ * The tier resolver gates such a row outside the tool's own repository.
236
+ */
237
+ export declare function isToolMaintenance(e: ICommandCatalogEntry): boolean;
223
238
  /** Task role (or `undefined` when not classified). */
224
239
  export declare function commandTaskRole(e: ICommandCatalogEntry): CommandTaskRole | undefined;
225
240
  /**
@@ -256,6 +271,13 @@ export declare function defaultShowInHelp(e: ICommandCatalogEntry): boolean;
256
271
  * R46-pruned are excluded), sorted by command.
257
272
  */
258
273
  export declare function listExplainFamily(): readonly ICommandCatalogEntry[];
274
+ /**
275
+ * Membership in the explain / dry-run family ({@link listExplainFamily}).
276
+ * `--full-help` lists the family in its own section, so the surface summary's
277
+ * `visibleInHelp` counts it too: the one visibility authority and the help
278
+ * renderer must answer "is X in --help" identically.
279
+ */
280
+ export declare function isExplainFamily(e: ICommandCatalogEntry): boolean;
259
281
  /**
260
282
  * Short "Use this when…" line derived from `surface`, `taskRole`,
261
283
  * `preferredCommand`, `replacedBy`, and `machineOnly`. Empty string when
@@ -1 +1 @@
1
- {"version":3,"file":"command-catalog.d.ts","sourceRoot":"","sources":["../../src/commands/command-catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-catalog.d.ts","sourceRoot":"","sources":["../../src/commands/command-catalog.ts"],"names":[],"mappings":"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"}