kibi-cli 0.19.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (672) hide show
  1. package/dist/cli-errors.d.ts +3 -1
  2. package/dist/cli-errors.d.ts.map +1 -1
  3. package/dist/cli-errors.js +4 -1
  4. package/dist/cli-json-command.d.ts +1 -0
  5. package/dist/cli-json-command.d.ts.map +1 -1
  6. package/dist/cli-json-command.js +13 -4
  7. package/dist/cli-operation-loader.d.ts.map +1 -1
  8. package/dist/cli-operation-loader.js +53 -20
  9. package/dist/cli-operation-metadata.d.ts +21 -8
  10. package/dist/cli-operation-metadata.d.ts.map +1 -1
  11. package/dist/cli-operation-metadata.js +27 -10
  12. package/dist/cli-protocol.d.ts.map +1 -1
  13. package/dist/cli-protocol.js +38 -8
  14. package/dist/cli-register-foundation.d.ts.map +1 -1
  15. package/dist/cli-register-foundation.js +14 -2
  16. package/dist/cli-register-maintenance.d.ts.map +1 -1
  17. package/dist/cli-register-maintenance.js +33 -4
  18. package/dist/cli-register-proof.d.ts +3 -0
  19. package/dist/cli-register-proof.d.ts.map +1 -0
  20. package/dist/cli-register-proof.js +103 -0
  21. package/dist/cli-register-reporting.d.ts.map +1 -1
  22. package/dist/cli-register-reporting.js +11 -0
  23. package/dist/cli.d.ts +4 -0
  24. package/dist/cli.d.ts.map +1 -1
  25. package/dist/cli.js +17 -8
  26. package/dist/commands/aggregated-checks.d.ts +1 -2
  27. package/dist/commands/aggregated-checks.d.ts.map +1 -1
  28. package/dist/commands/aggregated-checks.js +14 -9
  29. package/dist/commands/branch.d.ts +37 -0
  30. package/dist/commands/branch.d.ts.map +1 -1
  31. package/dist/commands/branch.js +375 -40
  32. package/dist/commands/check.d.ts +14 -0
  33. package/dist/commands/check.d.ts.map +1 -1
  34. package/dist/commands/check.js +209 -110
  35. package/dist/commands/coverage.d.ts +1 -0
  36. package/dist/commands/coverage.d.ts.map +1 -1
  37. package/dist/commands/coverage.js +6 -0
  38. package/dist/commands/discovery-shared.d.ts.map +1 -1
  39. package/dist/commands/discovery-shared.js +10 -19
  40. package/dist/commands/doctor.d.ts +26 -1
  41. package/dist/commands/doctor.d.ts.map +1 -1
  42. package/dist/commands/doctor.js +291 -30
  43. package/dist/commands/engine.d.ts +12 -0
  44. package/dist/commands/engine.d.ts.map +1 -1
  45. package/dist/commands/engine.js +50 -7
  46. package/dist/commands/gc.d.ts +5 -2
  47. package/dist/commands/gc.d.ts.map +1 -1
  48. package/dist/commands/gc.js +140 -71
  49. package/dist/commands/github-init.d.ts +57 -0
  50. package/dist/commands/github-init.d.ts.map +1 -0
  51. package/dist/commands/github-init.js +314 -0
  52. package/dist/commands/init-helpers.d.ts +1 -1
  53. package/dist/commands/init-helpers.d.ts.map +1 -1
  54. package/dist/commands/init-helpers.js +109 -28
  55. package/dist/commands/init.d.ts +2 -0
  56. package/dist/commands/init.d.ts.map +1 -1
  57. package/dist/commands/init.js +79 -24
  58. package/dist/commands/legacy-storage-migration.d.ts +54 -0
  59. package/dist/commands/legacy-storage-migration.d.ts.map +1 -0
  60. package/dist/commands/legacy-storage-migration.js +277 -0
  61. package/dist/commands/migrate.d.ts +11 -0
  62. package/dist/commands/migrate.d.ts.map +1 -1
  63. package/dist/commands/migrate.js +249 -96
  64. package/dist/commands/proof-migrate-legacy.d.ts +7 -0
  65. package/dist/commands/proof-migrate-legacy.d.ts.map +1 -0
  66. package/dist/commands/proof-migrate-legacy.js +45 -0
  67. package/dist/commands/proof-prune.d.ts +8 -0
  68. package/dist/commands/proof-prune.d.ts.map +1 -0
  69. package/dist/commands/proof-prune.js +53 -0
  70. package/dist/commands/prove.d.ts +37 -0
  71. package/dist/commands/prove.d.ts.map +1 -0
  72. package/dist/commands/prove.js +470 -0
  73. package/dist/commands/report.d.ts +24 -0
  74. package/dist/commands/report.d.ts.map +1 -0
  75. package/dist/commands/report.js +191 -0
  76. package/dist/commands/sync/cache.d.ts +16 -3
  77. package/dist/commands/sync/cache.d.ts.map +1 -1
  78. package/dist/commands/sync/cache.js +111 -4
  79. package/dist/commands/sync/discovery.d.ts +26 -2
  80. package/dist/commands/sync/discovery.d.ts.map +1 -1
  81. package/dist/commands/sync/discovery.js +204 -15
  82. package/dist/commands/sync/extraction.d.ts +8 -1
  83. package/dist/commands/sync/extraction.d.ts.map +1 -1
  84. package/dist/commands/sync/extraction.js +38 -4
  85. package/dist/commands/sync/manifest.d.ts +9 -6
  86. package/dist/commands/sync/manifest.d.ts.map +1 -1
  87. package/dist/commands/sync/manifest.js +195 -60
  88. package/dist/commands/sync/persistence.d.ts +4 -1
  89. package/dist/commands/sync/persistence.d.ts.map +1 -1
  90. package/dist/commands/sync/persistence.js +26 -12
  91. package/dist/commands/sync/staging.d.ts +1 -0
  92. package/dist/commands/sync/staging.d.ts.map +1 -1
  93. package/dist/commands/sync/staging.js +5 -2
  94. package/dist/commands/sync/untracked-targets.d.ts +24 -0
  95. package/dist/commands/sync/untracked-targets.d.ts.map +1 -0
  96. package/dist/commands/sync/untracked-targets.js +108 -0
  97. package/dist/commands/sync.d.ts +17 -1
  98. package/dist/commands/sync.d.ts.map +1 -1
  99. package/dist/commands/sync.js +375 -106
  100. package/dist/diagnostics.d.ts +1 -1
  101. package/dist/diagnostics.d.ts.map +1 -1
  102. package/dist/engine-daemon.d.ts +3 -1
  103. package/dist/engine-daemon.d.ts.map +1 -1
  104. package/dist/engine-daemon.js +49 -20
  105. package/dist/engine.d.ts +34 -3
  106. package/dist/engine.d.ts.map +1 -1
  107. package/dist/engine.js +578 -42
  108. package/dist/env.d.ts.map +1 -1
  109. package/dist/env.js +5 -6
  110. package/dist/extractors/manifest.d.ts +13 -1
  111. package/dist/extractors/manifest.d.ts.map +1 -1
  112. package/dist/extractors/manifest.js +97 -10
  113. package/dist/extractors/markdown.d.ts +5 -2
  114. package/dist/extractors/markdown.d.ts.map +1 -1
  115. package/dist/extractors/markdown.js +47 -12
  116. package/dist/extractors/playwright-cases.d.ts +24 -0
  117. package/dist/extractors/playwright-cases.d.ts.map +1 -0
  118. package/dist/extractors/playwright-cases.js +126 -0
  119. package/dist/extractors/relationships.d.ts +6 -0
  120. package/dist/extractors/relationships.d.ts.map +1 -1
  121. package/dist/extractors/relationships.js +2 -1
  122. package/dist/extractors/symbol-coordinates.d.ts +81 -3
  123. package/dist/extractors/symbol-coordinates.d.ts.map +1 -1
  124. package/dist/extractors/symbol-coordinates.js +389 -51
  125. package/dist/extractors/symbols-coordinator.js +11 -1
  126. package/dist/extractors/symbols-ts.d.ts +1 -0
  127. package/dist/extractors/symbols-ts.d.ts.map +1 -1
  128. package/dist/extractors/symbols-ts.js +142 -67
  129. package/dist/intent-search.d.ts +61 -0
  130. package/dist/intent-search.d.ts.map +1 -0
  131. package/dist/intent-search.js +437 -0
  132. package/dist/logic/ir.d.ts +1 -0
  133. package/dist/logic/ir.d.ts.map +1 -1
  134. package/dist/logic/ir.js +1 -1
  135. package/dist/operations/bootstrap/activation.d.ts +5 -0
  136. package/dist/operations/bootstrap/activation.d.ts.map +1 -0
  137. package/dist/operations/{autopilot → bootstrap}/activation.js +58 -33
  138. package/dist/operations/{autopilot → bootstrap}/candidate-helpers.d.ts.map +1 -1
  139. package/dist/operations/bootstrap/candidates.d.ts +4 -0
  140. package/dist/operations/{autopilot → bootstrap}/candidates.d.ts.map +1 -1
  141. package/dist/operations/{autopilot → bootstrap}/candidates.js +22 -8
  142. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.d.ts +2 -2
  143. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.d.ts.map +1 -1
  144. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.js +46 -6
  145. package/dist/operations/{autopilot → bootstrap}/discovery.d.ts +1 -1
  146. package/dist/operations/bootstrap/discovery.d.ts.map +1 -0
  147. package/dist/operations/{autopilot → bootstrap}/discovery.js +21 -14
  148. package/dist/operations/bootstrap/generate.d.ts +9 -0
  149. package/dist/operations/bootstrap/generate.d.ts.map +1 -0
  150. package/dist/operations/bootstrap/generate.js +207 -0
  151. package/dist/operations/{autopilot → bootstrap}/guidance-actions.d.ts +2 -2
  152. package/dist/operations/{autopilot → bootstrap}/guidance-actions.d.ts.map +1 -1
  153. package/dist/operations/{autopilot → bootstrap}/guidance-actions.js +4 -4
  154. package/dist/operations/{autopilot → bootstrap}/guidance.d.ts +3 -2
  155. package/dist/operations/bootstrap/guidance.d.ts.map +1 -0
  156. package/dist/operations/{autopilot → bootstrap}/guidance.js +3 -1
  157. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.d.ts +2 -2
  158. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.d.ts.map +1 -1
  159. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.js +4 -3
  160. package/dist/operations/bootstrap/presentation.d.ts +15 -0
  161. package/dist/operations/bootstrap/presentation.d.ts.map +1 -0
  162. package/dist/operations/bootstrap/presentation.js +177 -0
  163. package/dist/operations/{autopilot → bootstrap}/requirement-claims.d.ts.map +1 -1
  164. package/dist/operations/{autopilot → bootstrap}/types.d.ts +63 -21
  165. package/dist/operations/bootstrap/types.d.ts.map +1 -0
  166. package/dist/operations/bootstrap/types.js +25 -0
  167. package/dist/operations/modeling/model-requirement.d.ts +5 -0
  168. package/dist/operations/modeling/model-requirement.d.ts.map +1 -1
  169. package/dist/operations/modeling/model-requirement.js +57 -63
  170. package/dist/operations/modeling/predicate-applicability.d.ts +16 -0
  171. package/dist/operations/modeling/predicate-applicability.d.ts.map +1 -0
  172. package/dist/operations/modeling/predicate-applicability.js +375 -0
  173. package/dist/operations/modeling/predicate-applyplan.d.ts +13 -2
  174. package/dist/operations/modeling/predicate-applyplan.d.ts.map +1 -1
  175. package/dist/operations/modeling/predicate-applyplan.js +100 -3
  176. package/dist/operations/modeling/predicate-bindings.d.ts +6 -0
  177. package/dist/operations/modeling/predicate-bindings.d.ts.map +1 -0
  178. package/dist/operations/modeling/predicate-bindings.js +122 -0
  179. package/dist/operations/modeling/predicate-catalog-2.d.ts.map +1 -1
  180. package/dist/operations/modeling/predicate-catalog-2.js +18 -2
  181. package/dist/operations/modeling/predicate-catalog-3.d.ts.map +1 -1
  182. package/dist/operations/modeling/predicate-catalog-3.js +17 -1
  183. package/dist/operations/modeling/predicate-catalog-4.d.ts.map +1 -1
  184. package/dist/operations/modeling/predicate-catalog-4.js +155 -0
  185. package/dist/operations/modeling/predicate-catalog-5.d.ts +10 -0
  186. package/dist/operations/modeling/predicate-catalog-5.d.ts.map +1 -0
  187. package/dist/operations/modeling/predicate-catalog-5.js +291 -0
  188. package/dist/operations/modeling/predicate-catalog.d.ts.map +1 -1
  189. package/dist/operations/modeling/predicate-catalog.js +4 -0
  190. package/dist/operations/modeling/predicate-inference-1.d.ts.map +1 -1
  191. package/dist/operations/modeling/predicate-inference-1.js +8 -0
  192. package/dist/operations/modeling/predicate-inference-launcher.d.ts +10 -0
  193. package/dist/operations/modeling/predicate-inference-launcher.d.ts.map +1 -0
  194. package/dist/operations/modeling/predicate-inference-launcher.js +13 -0
  195. package/dist/operations/modeling/predicate-inference.d.ts.map +1 -1
  196. package/dist/operations/modeling/predicate-inference.js +4 -0
  197. package/dist/operations/modeling/predicate-loader.d.ts +1 -0
  198. package/dist/operations/modeling/predicate-loader.d.ts.map +1 -1
  199. package/dist/operations/modeling/predicate-loader.js +11 -3
  200. package/dist/operations/modeling/predicate-ranker.d.ts +8 -1
  201. package/dist/operations/modeling/predicate-ranker.d.ts.map +1 -1
  202. package/dist/operations/modeling/predicate-ranker.js +159 -24
  203. package/dist/operations/modeling/predicate-score-3.d.ts.map +1 -1
  204. package/dist/operations/modeling/predicate-score-3.js +6 -0
  205. package/dist/operations/modeling/predicate-types.d.ts +35 -1
  206. package/dist/operations/modeling/predicate-types.d.ts.map +1 -1
  207. package/dist/operations/modeling/predicate-usage-hints-3.d.ts.map +1 -1
  208. package/dist/operations/modeling/predicate-usage-hints-3.js +40 -0
  209. package/dist/operations/modeling/predicate-usage-hints-4.d.ts +3 -0
  210. package/dist/operations/modeling/predicate-usage-hints-4.d.ts.map +1 -0
  211. package/dist/operations/modeling/predicate-usage-hints-4.js +84 -0
  212. package/dist/operations/modeling/predicate-utils.d.ts.map +1 -1
  213. package/dist/operations/modeling/predicate-utils.js +2 -0
  214. package/dist/operations/modeling/suggest-predicates.d.ts +4 -2
  215. package/dist/operations/modeling/suggest-predicates.d.ts.map +1 -1
  216. package/dist/operations/modeling/suggest-predicates.js +203 -32
  217. package/dist/operations/mutation/contradictions.d.ts +2 -1
  218. package/dist/operations/mutation/contradictions.d.ts.map +1 -1
  219. package/dist/operations/mutation/contradictions.js +26 -5
  220. package/dist/operations/mutation/delete.d.ts +3 -0
  221. package/dist/operations/mutation/delete.d.ts.map +1 -1
  222. package/dist/operations/mutation/delete.js +483 -19
  223. package/dist/operations/mutation/entity-projection.d.ts +11 -0
  224. package/dist/operations/mutation/entity-projection.d.ts.map +1 -0
  225. package/dist/operations/mutation/entity-projection.js +14 -0
  226. package/dist/operations/mutation/relationships.d.ts +11 -0
  227. package/dist/operations/mutation/relationships.d.ts.map +1 -1
  228. package/dist/operations/mutation/relationships.js +77 -5
  229. package/dist/operations/mutation/saga.d.ts +51 -0
  230. package/dist/operations/mutation/saga.d.ts.map +1 -0
  231. package/dist/operations/mutation/saga.js +67 -0
  232. package/dist/operations/mutation/serialization.d.ts.map +1 -1
  233. package/dist/operations/mutation/serialization.js +3 -1
  234. package/dist/operations/mutation/source-authoring.d.ts +65 -0
  235. package/dist/operations/mutation/source-authoring.d.ts.map +1 -0
  236. package/dist/operations/mutation/source-authoring.js +576 -0
  237. package/dist/operations/mutation/strict-fact.d.ts +1 -0
  238. package/dist/operations/mutation/strict-fact.d.ts.map +1 -1
  239. package/dist/operations/mutation/strict-fact.js +8 -5
  240. package/dist/operations/mutation/symbol-compiler-lock.d.ts +54 -0
  241. package/dist/operations/mutation/symbol-compiler-lock.d.ts.map +1 -0
  242. package/dist/operations/mutation/symbol-compiler-lock.js +337 -0
  243. package/dist/operations/mutation/symbol-granularity.d.ts.map +1 -1
  244. package/dist/operations/mutation/symbol-granularity.js +35 -4
  245. package/dist/operations/mutation/symbol-refresh.d.ts +19 -1
  246. package/dist/operations/mutation/symbol-refresh.d.ts.map +1 -1
  247. package/dist/operations/mutation/symbol-refresh.js +227 -63
  248. package/dist/operations/mutation/types.d.ts +57 -1
  249. package/dist/operations/mutation/types.d.ts.map +1 -1
  250. package/dist/operations/mutation/upsert.d.ts +18 -2
  251. package/dist/operations/mutation/upsert.d.ts.map +1 -1
  252. package/dist/operations/mutation/upsert.js +403 -32
  253. package/dist/operations/mutation/validate-upsert.js +2 -2
  254. package/dist/operations/mutation/validation.d.ts.map +1 -1
  255. package/dist/operations/mutation/validation.js +47 -4
  256. package/dist/operations/mutation/warnings.d.ts +1 -0
  257. package/dist/operations/mutation/warnings.d.ts.map +1 -1
  258. package/dist/operations/mutation/warnings.js +7 -5
  259. package/dist/operations/mutation/workspace-mutation-lock.d.ts +60 -0
  260. package/dist/operations/mutation/workspace-mutation-lock.d.ts.map +1 -0
  261. package/dist/operations/mutation/workspace-mutation-lock.js +362 -0
  262. package/dist/operations/planning/apply-plan.d.ts +19 -0
  263. package/dist/operations/planning/apply-plan.d.ts.map +1 -0
  264. package/dist/operations/planning/apply-plan.js +1514 -0
  265. package/dist/operations/planning/compile-intent.d.ts +108 -0
  266. package/dist/operations/planning/compile-intent.d.ts.map +1 -0
  267. package/dist/operations/planning/compile-intent.js +618 -0
  268. package/dist/operations/proof/ingest-proof.d.ts +34 -0
  269. package/dist/operations/proof/ingest-proof.d.ts.map +1 -0
  270. package/dist/operations/proof/ingest-proof.js +307 -0
  271. package/dist/operations/proof/migrate-legacy-receipts.d.ts +30 -0
  272. package/dist/operations/proof/migrate-legacy-receipts.d.ts.map +1 -0
  273. package/dist/operations/proof/migrate-legacy-receipts.js +88 -0
  274. package/dist/operations/proof/prune-receipts.d.ts +35 -0
  275. package/dist/operations/proof/prune-receipts.d.ts.map +1 -0
  276. package/dist/operations/proof/prune-receipts.js +91 -0
  277. package/dist/operations/proof/receipt-document.d.ts +29 -0
  278. package/dist/operations/proof/receipt-document.d.ts.map +1 -0
  279. package/dist/operations/proof/receipt-document.js +117 -0
  280. package/dist/operations/semantic-advisor/analyze-prose.d.ts +1 -0
  281. package/dist/operations/semantic-advisor/analyze-prose.d.ts.map +1 -1
  282. package/dist/operations/semantic-advisor/analyze-prose.js +52 -28
  283. package/dist/operations/semantic-advisor/clauses.d.ts.map +1 -1
  284. package/dist/operations/semantic-advisor/clauses.js +35 -9
  285. package/dist/operations/semantic-advisor/ingestion-boundary.d.ts.map +1 -1
  286. package/dist/operations/semantic-advisor/ingestion-boundary.js +7 -3
  287. package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts +51 -0
  288. package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts.map +1 -0
  289. package/dist/operations/semantic-advisor/predicate-rules-launcher.js +96 -0
  290. package/dist/operations/semantic-advisor/strict-count-rules.d.ts +2 -0
  291. package/dist/operations/semantic-advisor/strict-count-rules.d.ts.map +1 -1
  292. package/dist/operations/semantic-advisor/strict-count-rules.js +40 -25
  293. package/dist/operations/semantic-advisor/types.d.ts +13 -5
  294. package/dist/operations/semantic-advisor/types.d.ts.map +1 -1
  295. package/dist/prolog/codec.d.ts +13 -1
  296. package/dist/prolog/codec.d.ts.map +1 -1
  297. package/dist/prolog/codec.js +269 -153
  298. package/dist/prolog/error-terms.d.ts +47 -0
  299. package/dist/prolog/error-terms.d.ts.map +1 -0
  300. package/dist/prolog/error-terms.js +334 -0
  301. package/dist/prolog/janitor.d.ts +50 -0
  302. package/dist/prolog/janitor.d.ts.map +1 -0
  303. package/dist/prolog/janitor.js +154 -0
  304. package/dist/prolog/store-lock.d.ts +45 -0
  305. package/dist/prolog/store-lock.d.ts.map +1 -0
  306. package/dist/prolog/store-lock.js +195 -0
  307. package/dist/prolog.d.ts +7 -0
  308. package/dist/prolog.d.ts.map +1 -1
  309. package/dist/prolog.js +82 -25
  310. package/dist/proof/evaluate.d.ts +27 -0
  311. package/dist/proof/evaluate.d.ts.map +1 -0
  312. package/dist/proof/evaluate.js +151 -0
  313. package/dist/proof/inspect.d.ts +12 -0
  314. package/dist/proof/inspect.d.ts.map +1 -0
  315. package/dist/proof/inspect.js +236 -0
  316. package/dist/proof/integrations.d.ts +35 -0
  317. package/dist/proof/integrations.d.ts.map +1 -0
  318. package/dist/proof/integrations.js +123 -0
  319. package/dist/proof/producers/junit-adapter.d.ts +26 -0
  320. package/dist/proof/producers/junit-adapter.d.ts.map +1 -0
  321. package/dist/proof/producers/junit-adapter.js +186 -0
  322. package/dist/proof/producers/playwright-case-id.d.ts +8 -0
  323. package/dist/proof/producers/playwright-case-id.d.ts.map +1 -0
  324. package/dist/proof/producers/playwright-case-id.js +25 -0
  325. package/dist/proof/producers/playwright-reporter.d.ts +27 -0
  326. package/dist/proof/producers/playwright-reporter.d.ts.map +1 -0
  327. package/dist/proof/producers/playwright-reporter.js +138 -0
  328. package/dist/proof/producers/tap-adapter.d.ts +10 -0
  329. package/dist/proof/producers/tap-adapter.d.ts.map +1 -0
  330. package/dist/proof/producers/tap-adapter.js +200 -0
  331. package/dist/proof/receipt-outcome.d.ts +2 -0
  332. package/dist/proof/receipt-outcome.d.ts.map +1 -0
  333. package/dist/proof/receipt-outcome.js +1 -0
  334. package/dist/public/branch-resolver.d.ts +1 -0
  335. package/dist/public/branch-resolver.d.ts.map +1 -1
  336. package/dist/public/branch-resolver.js +1 -0
  337. package/dist/public/check-types.d.ts +2 -2
  338. package/dist/public/check-types.d.ts.map +1 -1
  339. package/dist/public/check-types.js +16 -16
  340. package/dist/public/diagnostic-usage.d.ts.map +1 -1
  341. package/dist/public/diagnostic-usage.js +74 -6
  342. package/dist/public/distribution-parity.d.ts +7 -1
  343. package/dist/public/distribution-parity.d.ts.map +1 -1
  344. package/dist/public/distribution-parity.js +15 -9
  345. package/dist/public/ignore-policy.d.ts.map +1 -1
  346. package/dist/public/ignore-policy.js +16 -4
  347. package/dist/public/impact/coverage-depth-quality.d.ts +7 -1
  348. package/dist/public/impact/coverage-depth-quality.d.ts.map +1 -1
  349. package/dist/public/impact/coverage-depth-quality.js +22 -4
  350. package/dist/public/impact/diagnostics.d.ts.map +1 -1
  351. package/dist/public/impact/diagnostics.js +2 -2
  352. package/dist/public/impact/diff-meaning.d.ts +1 -0
  353. package/dist/public/impact/diff-meaning.d.ts.map +1 -1
  354. package/dist/public/impact/diff-meaning.js +5 -2
  355. package/dist/public/impact/full-kb-quality.d.ts +7 -2
  356. package/dist/public/impact/full-kb-quality.d.ts.map +1 -1
  357. package/dist/public/impact/full-kb-quality.js +364 -39
  358. package/dist/public/impact/manifest.d.ts.map +1 -1
  359. package/dist/public/impact/manifest.js +2 -5
  360. package/dist/public/operational-artifacts.d.ts.map +1 -1
  361. package/dist/public/operational-artifacts.js +7 -1
  362. package/dist/public/operations/catalog.d.ts +900 -34
  363. package/dist/public/operations/catalog.d.ts.map +1 -1
  364. package/dist/public/operations/catalog.js +130 -6
  365. package/dist/public/operations/check-executor.d.ts +2 -2
  366. package/dist/public/operations/check-executor.d.ts.map +1 -1
  367. package/dist/public/operations/check-executor.js +68 -13
  368. package/dist/public/operations/check-format-shared.d.ts +3 -0
  369. package/dist/public/operations/check-format-shared.d.ts.map +1 -1
  370. package/dist/public/operations/check-format-shared.js +3 -0
  371. package/dist/public/operations/check-helpers.d.ts +27 -2
  372. package/dist/public/operations/check-helpers.d.ts.map +1 -1
  373. package/dist/public/operations/check-helpers.js +62 -26
  374. package/dist/public/operations/contracts.d.ts +18 -0
  375. package/dist/public/operations/contracts.d.ts.map +1 -0
  376. package/dist/public/operations/contracts.js +334 -0
  377. package/dist/public/operations/discovery-entities.d.ts +3 -0
  378. package/dist/public/operations/discovery-entities.d.ts.map +1 -1
  379. package/dist/public/operations/discovery-entities.js +4 -0
  380. package/dist/public/operations/discovery-executors.d.ts +43 -7
  381. package/dist/public/operations/discovery-executors.d.ts.map +1 -1
  382. package/dist/public/operations/discovery-executors.js +216 -13
  383. package/dist/public/operations/index.d.ts +9 -4
  384. package/dist/public/operations/index.d.ts.map +1 -1
  385. package/dist/public/operations/index.js +8 -3
  386. package/dist/public/operations/migration-plan.d.ts +102 -0
  387. package/dist/public/operations/migration-plan.d.ts.map +1 -0
  388. package/dist/public/operations/migration-plan.js +539 -0
  389. package/dist/public/operations/node-ports.d.ts.map +1 -1
  390. package/dist/public/operations/node-ports.js +71 -11
  391. package/dist/public/operations/prolog-json.d.ts +14 -0
  392. package/dist/public/operations/prolog-json.d.ts.map +1 -1
  393. package/dist/public/operations/prolog-json.js +44 -5
  394. package/dist/public/operations/repair-plan.d.ts +3 -3
  395. package/dist/public/operations/repair-plan.d.ts.map +1 -1
  396. package/dist/public/operations/repair-plan.js +49 -18
  397. package/dist/public/operations/result-envelope.d.ts +14 -0
  398. package/dist/public/operations/result-envelope.d.ts.map +1 -0
  399. package/dist/public/operations/result-envelope.js +106 -0
  400. package/dist/public/operations/runtime-types.d.ts +102 -7
  401. package/dist/public/operations/runtime-types.d.ts.map +1 -1
  402. package/dist/public/operations/source-relationship-parity.d.ts +13 -0
  403. package/dist/public/operations/source-relationship-parity.d.ts.map +1 -0
  404. package/dist/public/operations/source-relationship-parity.js +162 -0
  405. package/dist/public/operations/specs/{autopilot.d.ts → bootstrap.d.ts} +9 -9
  406. package/dist/public/operations/specs/bootstrap.d.ts.map +1 -0
  407. package/dist/public/operations/specs/{autopilot.js → bootstrap.js} +8 -7
  408. package/dist/public/operations/specs/check-rules.generated.d.ts +5 -0
  409. package/dist/public/operations/specs/check-rules.generated.d.ts.map +1 -0
  410. package/dist/public/operations/specs/check-rules.generated.js +34 -0
  411. package/dist/public/operations/specs/check.d.ts +9 -4
  412. package/dist/public/operations/specs/check.d.ts.map +1 -1
  413. package/dist/public/operations/specs/check.js +10 -21
  414. package/dist/public/operations/specs/discovery.d.ts +87 -3
  415. package/dist/public/operations/specs/discovery.d.ts.map +1 -1
  416. package/dist/public/operations/specs/discovery.js +53 -3
  417. package/dist/public/operations/specs/modeling.d.ts +3 -3
  418. package/dist/public/operations/specs/modeling.js +3 -3
  419. package/dist/public/operations/specs/mutation-schemas.d.ts +251 -14
  420. package/dist/public/operations/specs/mutation-schemas.d.ts.map +1 -1
  421. package/dist/public/operations/specs/mutation-schemas.js +16 -6
  422. package/dist/public/operations/specs/mutation.d.ts +42 -2
  423. package/dist/public/operations/specs/mutation.d.ts.map +1 -1
  424. package/dist/public/operations/specs/mutation.js +26 -2
  425. package/dist/public/operations/specs/planning.d.ts +279 -0
  426. package/dist/public/operations/specs/planning.d.ts.map +1 -0
  427. package/dist/public/operations/specs/planning.js +197 -0
  428. package/dist/public/operations/specs/proof.d.ts +212 -0
  429. package/dist/public/operations/specs/proof.d.ts.map +1 -0
  430. package/dist/public/operations/specs/proof.js +30 -0
  431. package/dist/public/operations/specs/reporting.d.ts +23 -1
  432. package/dist/public/operations/specs/reporting.d.ts.map +1 -1
  433. package/dist/public/operations/specs/reporting.js +156 -11
  434. package/dist/public/operations/specs/upsert.d.ts +265 -14
  435. package/dist/public/operations/specs/upsert.d.ts.map +1 -1
  436. package/dist/public/operations/specs/upsert.js +9 -0
  437. package/dist/public/operations/symbol-repair-plan.d.ts +22 -0
  438. package/dist/public/operations/symbol-repair-plan.d.ts.map +1 -0
  439. package/dist/public/operations/symbol-repair-plan.js +238 -0
  440. package/dist/public/operations/types.d.ts +52 -1
  441. package/dist/public/operations/types.d.ts.map +1 -1
  442. package/dist/public/proof-fingerprint.d.ts +54 -0
  443. package/dist/public/proof-fingerprint.d.ts.map +1 -0
  444. package/dist/public/proof-fingerprint.js +141 -0
  445. package/dist/public/proof-protocol.d.ts +354 -0
  446. package/dist/public/proof-protocol.d.ts.map +1 -0
  447. package/dist/public/proof-protocol.js +454 -0
  448. package/dist/public/proof-receipt.d.ts +279 -0
  449. package/dist/public/proof-receipt.d.ts.map +1 -0
  450. package/dist/public/proof-receipt.js +377 -0
  451. package/dist/public/schemas/entity.d.ts.map +1 -1
  452. package/dist/public/schemas/entity.js +22 -6
  453. package/dist/public/skills/kibi-bootstrap/SKILL.md +58 -0
  454. package/dist/public/skills/kibi-bootstrap/resources/bootstrap.md +11 -0
  455. package/dist/public/skills/kibi-bootstrap/resources/branch-lifecycle.md +7 -0
  456. package/dist/public/skills/kibi-bootstrap/resources/operation-access.md +5 -0
  457. package/dist/public/skills/kibi-bootstrap/resources/source-authoring.md +8 -0
  458. package/dist/public/skills/kibi-freshness/SKILL.md +39 -9
  459. package/dist/public/skills/kibi-freshness/resources/branch-lifecycle.md +7 -0
  460. package/dist/public/skills/kibi-freshness/resources/operation-access.md +6 -0
  461. package/dist/public/skills/kibi-freshness/resources/source-authoring.md +7 -0
  462. package/dist/public/skills/kibi-traceability/SKILL.md +47 -47
  463. package/dist/public/skills/kibi-traceability/resources/branch-lifecycle.md +7 -0
  464. package/dist/public/skills/kibi-traceability/resources/operation-access.md +5 -0
  465. package/dist/public/skills/kibi-traceability/resources/source-authoring.md +6 -0
  466. package/dist/public/skills/kibi-traceability/resources/traceability.md +8 -0
  467. package/dist/public/skills/kibi-usage/SKILL.md +136 -231
  468. package/dist/public/skills/kibi-usage/resources/branch-lifecycle.md +31 -0
  469. package/dist/public/skills/kibi-usage/resources/kb-improvement.md +38 -0
  470. package/dist/public/skills/kibi-usage/resources/operation-access.md +36 -38
  471. package/dist/public/skills/kibi-usage/resources/proof.md +105 -0
  472. package/dist/public/skills/kibi-usage/resources/relationship-directions.md +3 -3
  473. package/dist/public/skills/kibi-usage/resources/source-authoring.md +31 -0
  474. package/dist/public/skills/kibi-usage/resources/workflows.md +57 -4
  475. package/dist/public/symbol-granularity.d.ts +3 -14
  476. package/dist/public/symbol-granularity.d.ts.map +1 -1
  477. package/dist/public/symbol-granularity.generated.d.ts +16 -0
  478. package/dist/public/symbol-granularity.generated.d.ts.map +1 -0
  479. package/dist/public/symbol-granularity.generated.js +20 -0
  480. package/dist/public/symbol-granularity.js +6 -46
  481. package/dist/public/telemetry-acceptance.d.ts +3 -70
  482. package/dist/public/telemetry-acceptance.d.ts.map +1 -1
  483. package/dist/public/telemetry-acceptance.js +11 -2
  484. package/dist/public/telemetry-remediation.js +1 -1
  485. package/dist/relationships/shards.d.ts +16 -0
  486. package/dist/relationships/shards.d.ts.map +1 -1
  487. package/dist/relationships/shards.js +87 -2
  488. package/dist/report/brand.d.ts +19 -0
  489. package/dist/report/brand.d.ts.map +1 -0
  490. package/dist/report/brand.js +112 -0
  491. package/dist/report/html-report.css +282 -0
  492. package/dist/report/html-report.d.ts +21 -0
  493. package/dist/report/html-report.d.ts.map +1 -0
  494. package/dist/report/html-report.js +700 -0
  495. package/dist/report/relative-time.d.ts +4 -0
  496. package/dist/report/relative-time.d.ts.map +1 -0
  497. package/dist/report/relative-time.js +46 -0
  498. package/dist/report/report-view.d.ts +17 -0
  499. package/dist/report/report-view.d.ts.map +1 -0
  500. package/dist/report/report-view.js +33 -0
  501. package/dist/report/repository.d.ts +35 -0
  502. package/dist/report/repository.d.ts.map +1 -0
  503. package/dist/report/repository.js +151 -0
  504. package/dist/runtime/cli-runtime.d.ts +2 -0
  505. package/dist/runtime/cli-runtime.d.ts.map +1 -1
  506. package/dist/runtime/cli-runtime.js +90 -23
  507. package/dist/schemas/entity.schema.json +1254 -239
  508. package/dist/search-ranking.d.ts +1 -0
  509. package/dist/search-ranking.d.ts.map +1 -1
  510. package/dist/search-ranking.js +3 -0
  511. package/dist/traceability/evidence-model.d.ts +30 -2
  512. package/dist/traceability/evidence-model.d.ts.map +1 -1
  513. package/dist/traceability/evidence-model.js +2 -2
  514. package/dist/traceability/git-staged.d.ts +20 -0
  515. package/dist/traceability/git-staged.d.ts.map +1 -1
  516. package/dist/traceability/git-staged.js +156 -37
  517. package/dist/traceability/markdown-validate.d.ts.map +1 -1
  518. package/dist/traceability/markdown-validate.js +12 -7
  519. package/dist/traceability/staged-diagnostics.d.ts +7 -0
  520. package/dist/traceability/staged-diagnostics.d.ts.map +1 -1
  521. package/dist/traceability/staged-diagnostics.js +78 -7
  522. package/dist/traceability/staged-file-coverage.d.ts +33 -0
  523. package/dist/traceability/staged-file-coverage.d.ts.map +1 -0
  524. package/dist/traceability/staged-file-coverage.js +284 -0
  525. package/dist/traceability/staged-impact-contract.d.ts +3 -3
  526. package/dist/traceability/staged-impact-contract.d.ts.map +1 -1
  527. package/dist/traceability/staged-impact-contract.js +12 -40
  528. package/dist/traceability/staged-symbols-manifest.d.ts +13 -0
  529. package/dist/traceability/staged-symbols-manifest.d.ts.map +1 -1
  530. package/dist/traceability/staged-symbols-manifest.js +142 -26
  531. package/dist/traceability/symbol-extract.d.ts +5 -0
  532. package/dist/traceability/symbol-extract.d.ts.map +1 -1
  533. package/dist/traceability/symbol-extract.js +1 -1
  534. package/dist/traceability/temp-kb.d.ts +2 -0
  535. package/dist/traceability/temp-kb.d.ts.map +1 -1
  536. package/dist/traceability/temp-kb.js +14 -2
  537. package/dist/types/entities.d.ts +5 -0
  538. package/dist/types/entities.d.ts.map +1 -1
  539. package/dist/utils/branch-resolver.d.ts +25 -10
  540. package/dist/utils/branch-resolver.d.ts.map +1 -1
  541. package/dist/utils/branch-resolver.js +124 -38
  542. package/dist/utils/branch-store-locator.d.ts +23 -0
  543. package/dist/utils/branch-store-locator.d.ts.map +1 -0
  544. package/dist/utils/branch-store-locator.js +90 -0
  545. package/dist/utils/branch-store.d.ts +21 -0
  546. package/dist/utils/branch-store.d.ts.map +1 -0
  547. package/dist/utils/branch-store.js +157 -0
  548. package/dist/utils/config.d.ts +39 -37
  549. package/dist/utils/config.d.ts.map +1 -1
  550. package/dist/utils/config.js +107 -119
  551. package/dist/utils/kb-manifest.d.ts +35 -0
  552. package/dist/utils/kb-manifest.d.ts.map +1 -0
  553. package/dist/utils/kb-manifest.js +154 -0
  554. package/dist/utils/kb-paths.d.ts +54 -0
  555. package/dist/utils/kb-paths.d.ts.map +1 -0
  556. package/dist/utils/kb-paths.js +125 -0
  557. package/dist/utils/manifest-paths.d.ts +4 -4
  558. package/dist/utils/manifest-paths.d.ts.map +1 -1
  559. package/dist/utils/manifest-paths.js +8 -56
  560. package/dist/utils/rule-registry.d.ts +42 -24
  561. package/dist/utils/rule-registry.d.ts.map +1 -1
  562. package/dist/utils/rule-registry.generated.d.ts +97 -0
  563. package/dist/utils/rule-registry.generated.d.ts.map +1 -0
  564. package/dist/utils/rule-registry.generated.js +125 -0
  565. package/dist/utils/rule-registry.js +52 -148
  566. package/dist/utils/schema-version.d.ts +5 -5
  567. package/dist/utils/schema-version.d.ts.map +1 -1
  568. package/dist/utils/schema-version.js +26 -6
  569. package/dist/utils/strict-modeling.d.ts +1 -4
  570. package/dist/utils/strict-modeling.d.ts.map +1 -1
  571. package/dist/utils/strict-modeling.js +8 -9
  572. package/package.json +47 -11
  573. package/schema/config.json +2 -2
  574. package/schema/manifest.json +26 -0
  575. package/src/public/branch-resolver.ts +1 -0
  576. package/src/public/check-types.ts +22 -19
  577. package/src/public/diagnostic-usage.ts +84 -6
  578. package/src/public/distribution-parity.ts +17 -9
  579. package/src/public/ignore-policy.ts +16 -10
  580. package/src/public/impact/coverage-depth-quality.ts +37 -1
  581. package/src/public/impact/diagnostics.ts +2 -1
  582. package/src/public/impact/diff-meaning.ts +11 -4
  583. package/src/public/impact/full-kb-quality.ts +545 -41
  584. package/src/public/impact/manifest.ts +2 -4
  585. package/src/public/operational-artifacts.ts +9 -1
  586. package/src/public/operations/catalog.ts +153 -10
  587. package/src/public/operations/check-executor.ts +98 -15
  588. package/src/public/operations/check-format-shared.ts +6 -0
  589. package/src/public/operations/check-helpers.ts +74 -35
  590. package/src/public/operations/contracts.ts +382 -0
  591. package/src/public/operations/discovery-entities.ts +7 -0
  592. package/src/public/operations/discovery-executors.ts +315 -25
  593. package/src/public/operations/index.ts +9 -4
  594. package/src/public/operations/migration-plan.ts +747 -0
  595. package/src/public/operations/node-ports.ts +87 -13
  596. package/src/public/operations/prolog-json.ts +60 -5
  597. package/src/public/operations/repair-plan.ts +60 -22
  598. package/src/public/operations/result-envelope.ts +141 -0
  599. package/src/public/operations/runtime-types.ts +96 -5
  600. package/src/public/operations/source-relationship-parity.ts +226 -0
  601. package/src/public/operations/specs/{autopilot.ts → bootstrap.ts} +17 -16
  602. package/src/public/operations/specs/check-rules.generated.ts +37 -0
  603. package/src/public/operations/specs/check.ts +14 -22
  604. package/src/public/operations/specs/discovery.ts +57 -3
  605. package/src/public/operations/specs/modeling.ts +3 -3
  606. package/src/public/operations/specs/mutation-schemas.ts +24 -6
  607. package/src/public/operations/specs/mutation.ts +27 -2
  608. package/src/public/operations/specs/planning.ts +241 -0
  609. package/src/public/operations/specs/proof.ts +43 -0
  610. package/src/public/operations/specs/reporting.ts +193 -12
  611. package/src/public/operations/specs/upsert.ts +10 -0
  612. package/src/public/operations/symbol-repair-plan.ts +324 -0
  613. package/src/public/operations/types.ts +62 -1
  614. package/src/public/proof-fingerprint.ts +216 -0
  615. package/src/public/proof-protocol-types.d.ts +96 -0
  616. package/src/public/proof-protocol.ts +589 -0
  617. package/src/public/proof-receipt.ts +499 -0
  618. package/src/public/schemas/entity.ts +27 -6
  619. package/src/public/skills/kibi-bootstrap/SKILL.md +58 -0
  620. package/src/public/skills/kibi-bootstrap/resources/bootstrap.md +11 -0
  621. package/src/public/skills/kibi-bootstrap/resources/branch-lifecycle.md +7 -0
  622. package/src/public/skills/kibi-bootstrap/resources/operation-access.md +5 -0
  623. package/src/public/skills/kibi-bootstrap/resources/source-authoring.md +8 -0
  624. package/src/public/skills/kibi-freshness/SKILL.md +39 -9
  625. package/src/public/skills/kibi-freshness/resources/branch-lifecycle.md +7 -0
  626. package/src/public/skills/kibi-freshness/resources/operation-access.md +6 -0
  627. package/src/public/skills/kibi-freshness/resources/source-authoring.md +7 -0
  628. package/src/public/skills/kibi-traceability/SKILL.md +47 -47
  629. package/src/public/skills/kibi-traceability/resources/branch-lifecycle.md +7 -0
  630. package/src/public/skills/kibi-traceability/resources/operation-access.md +5 -0
  631. package/src/public/skills/kibi-traceability/resources/source-authoring.md +6 -0
  632. package/src/public/skills/kibi-traceability/resources/traceability.md +8 -0
  633. package/src/public/skills/kibi-usage/SKILL.md +136 -231
  634. package/src/public/skills/kibi-usage/resources/branch-lifecycle.md +31 -0
  635. package/src/public/skills/kibi-usage/resources/kb-improvement.md +38 -0
  636. package/src/public/skills/kibi-usage/resources/operation-access.md +36 -38
  637. package/src/public/skills/kibi-usage/resources/proof.md +105 -0
  638. package/src/public/skills/kibi-usage/resources/relationship-directions.md +3 -3
  639. package/src/public/skills/kibi-usage/resources/source-authoring.md +31 -0
  640. package/src/public/skills/kibi-usage/resources/workflows.md +57 -4
  641. package/src/public/symbol-granularity.generated.ts +41 -0
  642. package/src/public/symbol-granularity.ts +35 -59
  643. package/src/public/telemetry-acceptance-types.d.ts +98 -0
  644. package/src/public/telemetry-acceptance.ts +30 -93
  645. package/src/public/telemetry-remediation.ts +1 -1
  646. package/src/schemas/entity.schema.json +1254 -239
  647. package/templates/github/kibi-badge.yml +86 -0
  648. package/templates/github/kibi-report.yml +84 -0
  649. package/dist/operations/autopilot/activation.d.ts +0 -4
  650. package/dist/operations/autopilot/activation.d.ts.map +0 -1
  651. package/dist/operations/autopilot/candidates.d.ts +0 -4
  652. package/dist/operations/autopilot/discovery.d.ts.map +0 -1
  653. package/dist/operations/autopilot/generate.d.ts +0 -8
  654. package/dist/operations/autopilot/generate.d.ts.map +0 -1
  655. package/dist/operations/autopilot/generate.js +0 -112
  656. package/dist/operations/autopilot/guidance.d.ts.map +0 -1
  657. package/dist/operations/autopilot/presentation.d.ts +0 -13
  658. package/dist/operations/autopilot/presentation.d.ts.map +0 -1
  659. package/dist/operations/autopilot/presentation.js +0 -91
  660. package/dist/operations/autopilot/types.d.ts.map +0 -1
  661. package/dist/operations/autopilot/types.js +0 -8
  662. package/dist/public/operations/specs/autopilot.d.ts.map +0 -1
  663. package/dist/public/skills/init-kibi/SKILL.md +0 -62
  664. package/dist/public/verification-receipt.d.ts +0 -75
  665. package/dist/public/verification-receipt.d.ts.map +0 -1
  666. package/dist/public/verification-receipt.js +0 -129
  667. package/src/public/skills/init-kibi/SKILL.md +0 -62
  668. package/src/public/verification-receipt.ts +0 -170
  669. /package/dist/operations/{autopilot → bootstrap}/candidate-helpers.d.ts +0 -0
  670. /package/dist/operations/{autopilot → bootstrap}/candidate-helpers.js +0 -0
  671. /package/dist/operations/{autopilot → bootstrap}/requirement-claims.d.ts +0 -0
  672. /package/dist/operations/{autopilot → bootstrap}/requirement-claims.js +0 -0
@@ -18,25 +18,26 @@
18
18
  import { existsSync } from "node:fs";
19
19
  import * as path from "node:path";
20
20
  import { EngineClient } from "../engine.js";
21
- import { getBranchOverride, isCliTraceOrDebugEnabled } from "../env.js";
21
+ import { isCliTraceOrDebugEnabled } from "../env.js";
22
22
  import { extractFromManifest, extractFromManifestString, } from "../extractors/manifest.js";
23
23
  import { extractFromMarkdownString, } from "../extractors/markdown.js";
24
24
  import { PrologProcess } from "../prolog.js";
25
- import { escapeAtom, parseTriples, parseViolationRows, } from "../prolog/codec.js";
25
+ import { escapeAtom, normalizeEntityId, parseTriples, parseViolationRows, } from "../prolog/codec.js";
26
26
  import { createSemanticReviewDiagnostics, createSymbolGranularityDiagnostics, createSymbolQualityDiagnostics, hasBlockingImpactDiagnostics, } from "../public/impact-diagnostics.js";
27
27
  import { executeCheck } from "../public/operations/check-executor.js";
28
- import { KIBI_NO_IMPACT_DECLARATION, KIBI_SYMBOLS_MANIFEST_PATH, } from "../traceability/evidence-model.js";
29
- import { getStagedFiles } from "../traceability/git-staged.js";
28
+ import { KIBI_NO_IMPACT_DECLARATION, KIBI_SYMBOLS_MANIFEST_PATH, KIBI_SYMBOL_COORDINATES_PATH, } from "../traceability/evidence-model.js";
29
+ import { getStagedInventory, supportedStagedFiles, } from "../traceability/git-staged.js";
30
30
  import { validateStagedMarkdown } from "../traceability/markdown-validate.js";
31
31
  import { collectStagedKibiDiagnostics, } from "../traceability/staged-diagnostics.js";
32
+ import { analyzeStagedFileCoverage, } from "../traceability/staged-file-coverage.js";
32
33
  import { classifyKibiImpactEvidence, isBehaviorSourceEdit, parseKibiImpactOverride, } from "../traceability/staged-impact-contract.js";
33
34
  import { assessStagedSymbolsManifest, collectStagedAuthoredSymbolsManifestEvidence, } from "../traceability/staged-symbols-manifest.js";
34
35
  import { createManifestLookupSentinelKey, extractSymbolsFromStagedFile, } from "../traceability/symbol-extract.js";
35
36
  import { cleanupTempKb, consultOverlay, createOverlayFacts, createTempKb, projectStagedEntities, } from "../traceability/temp-kb.js";
36
37
  import { formatViolations as formatStagedViolations, validateStagedSymbols, } from "../traceability/validate.js";
37
- import { loadConfig } from "../utils/config.js";
38
+ import { resolveBranchAttachment } from "../utils/branch-resolver.js";
39
+ import { CANONICAL_ENTITY_PATHS, isEntityLanePath } from "../utils/kb-paths.js";
38
40
  import { safeCleanupProlog } from "../utils/prolog-cleanup.js";
39
- import { getCurrentBranch } from "./init-helpers.js";
40
41
  function getMatchGroup(match, index = 1) {
41
42
  const value = match?.[index];
42
43
  return typeof value === "string" ? value : null;
@@ -70,9 +71,8 @@ function buildManifestLookup(stagedFiles) {
70
71
  // Pre-populate lookup from working-tree manifests so that code-only changes
71
72
  // (where symbols.yaml is not staged) still resolve to the correct symbol IDs
72
73
  // and relationships already defined on disk.
73
- const config = loadConfig(process.cwd());
74
- const symbolsRelPath = config.paths.symbols;
75
- if (symbolsRelPath) {
74
+ const symbolsRelPath = CANONICAL_ENTITY_PATHS.symbols;
75
+ {
76
76
  const absSymbolsPath = path.resolve(process.cwd(), symbolsRelPath);
77
77
  if (existsSync(absSymbolsPath)) {
78
78
  try {
@@ -104,10 +104,8 @@ function buildManifestLookup(stagedFiles) {
104
104
  }
105
105
  }
106
106
  const stagedManifestFiles = stagedFiles.filter((file) => file.content !== undefined &&
107
- (file.path.endsWith("/symbols.yaml") ||
108
- file.path.endsWith("/symbols.yml") ||
109
- file.path === "symbols.yaml" ||
110
- file.path === "symbols.yml"));
107
+ (file.path === CANONICAL_ENTITY_PATHS.symbols ||
108
+ file.path === ".kb/symbols.yml"));
111
109
  for (const manifestFile of stagedManifestFiles) {
112
110
  manifestLookup.set(createManifestLookupSentinelKey(manifestFile.path), {
113
111
  id: manifestFile.path,
@@ -173,29 +171,9 @@ function isKibiEntityType(value) {
173
171
  return KIBI_ENTITY_TYPES.has(value);
174
172
  }
175
173
  function isStagedManifestPath(filePath) {
176
- if (filePath.endsWith("/symbols.yaml") ||
177
- filePath.endsWith("/symbols.yml") ||
178
- filePath.endsWith("/symbol-coordinates.yaml") ||
179
- filePath === "symbols.yaml" ||
180
- filePath === "symbols.yml" ||
181
- filePath === "symbol-coordinates.yaml") {
182
- return true;
183
- }
184
- try {
185
- const config = loadConfig(process.cwd());
186
- if (config.paths.symbols) {
187
- const relSymbols = config.paths.symbols;
188
- const configuredBase = relSymbols.split(/[\\/]/).pop();
189
- if (filePath === relSymbols ||
190
- (configuredBase && filePath.endsWith(`/${configuredBase}`))) {
191
- return true;
192
- }
193
- }
194
- }
195
- catch {
196
- // ignore config read errors
197
- }
198
- return false;
174
+ return (filePath === CANONICAL_ENTITY_PATHS.symbols ||
175
+ filePath === ".kb/symbols.yml" ||
176
+ filePath === KIBI_SYMBOL_COORDINATES_PATH);
199
177
  }
200
178
  function isTestOnlySourcePath(filePath) {
201
179
  return (filePath.startsWith("tests/") ||
@@ -221,6 +199,9 @@ function formatStagedKibiDiagnostics(diagnostics) {
221
199
  if (diagnostic.files.length > 0) {
222
200
  lines.push(` Files: ${diagnostic.files.join(", ")}`);
223
201
  }
202
+ for (const detail of diagnostic.details ?? []) {
203
+ lines.push(` Detail: ${detail}`);
204
+ }
224
205
  if (diagnostic.docs.length > 0) {
225
206
  lines.push(` Docs: ${diagnostic.docs.join(", ")}`);
226
207
  }
@@ -262,6 +243,66 @@ function printStructuredCheckResult(input) {
262
243
  },
263
244
  }));
264
245
  }
246
+ function formatStagedCoverage(result) {
247
+ const counts = {
248
+ symbol: result.files.filter((file) => file.analysisDepth === "symbol")
249
+ .length,
250
+ metadata: result.files.filter((file) => file.analysisDepth === "metadata")
251
+ .length,
252
+ file: result.files.filter((file) => file.analysisDepth === "file").length,
253
+ skipped: result.files.filter((file) => file.disposition === "skipped")
254
+ .length,
255
+ };
256
+ const lines = [
257
+ `Staged files: ${result.files.length} total; ${counts.symbol} symbol-level; ${counts.metadata} metadata; ${counts.file} file-level; ${counts.skipped} skipped.`,
258
+ ];
259
+ for (const file of result.files) {
260
+ const details = [file.analysisDepth, file.disposition];
261
+ if (file.reason)
262
+ details.push(file.reason);
263
+ if (file.requirementIds.length > 0) {
264
+ details.push(`requirements: ${file.requirementIds.join(", ")}`);
265
+ }
266
+ if (file.evidencePaths.length > 0) {
267
+ details.push(`evidence: ${file.evidencePaths.join(", ")}`);
268
+ }
269
+ lines.push(` ${file.status} ${file.path} [${details.join("; ")}]`);
270
+ }
271
+ if (result.diagnostics.length > 0) {
272
+ lines.push("", `Advisory staged-file diagnostics (${result.diagnostics.length}):`);
273
+ for (const diagnostic of result.diagnostics) {
274
+ lines.push(` [${diagnostic.id}] ${diagnostic.message}`);
275
+ lines.push(` Suggestion: ${diagnostic.suggestion}`);
276
+ }
277
+ }
278
+ return lines.join("\n");
279
+ }
280
+ function printStagedResult(input) {
281
+ const violations = input.violations ?? [];
282
+ const qualityDiagnostics = input.qualityDiagnostics ?? [];
283
+ if (input.format === "json") {
284
+ console.log(JSON.stringify({
285
+ structuredContent: {
286
+ violations,
287
+ count: violations.length,
288
+ diagnostics: input.coverage?.diagnostics ?? [],
289
+ qualityDiagnostics,
290
+ staged: input.coverage,
291
+ messages: input.messages ?? [],
292
+ ...(input.operationalError
293
+ ? { operationalError: input.operationalError }
294
+ : {}),
295
+ },
296
+ }));
297
+ return;
298
+ }
299
+ if (input.coverage)
300
+ console.log(formatStagedCoverage(input.coverage));
301
+ for (const message of input.messages ?? [])
302
+ console.log(message);
303
+ if (input.operationalError)
304
+ console.error(input.operationalError);
305
+ }
265
306
  function uniqueSorted(values) {
266
307
  return Array.from(new Set(values)).sort();
267
308
  }
@@ -350,6 +391,9 @@ function buildStagedKibiImpactEvidence(options) {
350
391
  path: stagedSymbolsManifest.path,
351
392
  state: stagedSymbolsManifest.state,
352
393
  sourcePaths: stagedSymbolsManifest.sourcePaths,
394
+ ...(stagedSymbolsManifest.fileDetails
395
+ ? { fileDetails: stagedSymbolsManifest.fileDetails }
396
+ : {}),
353
397
  },
354
398
  mode: resolvedKbArtifacts.length > 0
355
399
  ? { kind: "kb_changes", kbArtifacts: resolvedKbArtifacts }
@@ -358,47 +402,57 @@ function buildStagedKibiImpactEvidence(options) {
358
402
  : { kind: "missing" },
359
403
  };
360
404
  }
405
+ export function requireActiveProlog(engine, prolog) {
406
+ const activeProlog = engine ?? prolog;
407
+ if (activeProlog == null) {
408
+ throw new Error("Prolog runtime not initialized");
409
+ }
410
+ return activeProlog;
411
+ }
361
412
  // implements REQ-006
362
413
  export async function checkCommand(options) {
363
414
  let prolog = null;
364
415
  let engine = null;
365
416
  let attached = false;
366
- let resolvedBranch = "develop";
417
+ let resolvedBranch = "";
367
418
  try {
368
419
  let resolvedKbPath = "";
369
420
  if (options.kbPath) {
370
421
  resolvedKbPath = options.kbPath;
371
422
  }
372
423
  else {
373
- const envBranch = getBranchOverride();
374
- let branch = envBranch || undefined;
375
- if (!branch) {
376
- try {
377
- branch = await getCurrentBranch(process.cwd());
378
- }
379
- catch {
380
- branch = undefined;
381
- }
424
+ const attachment = resolveBranchAttachment(process.cwd());
425
+ if ("error" in attachment)
426
+ throw new Error(attachment.error);
427
+ resolvedBranch = attachment.kbBranch;
428
+ if (attachment.migrationRequired) {
429
+ console.warn(`Warning: reading legacy KB attachment ${attachment.gitBranch} -> ${attachment.kbBranch}; migrate before writes or sync.`);
382
430
  }
383
- if (!branch)
384
- branch = envBranch || "develop";
385
- resolvedBranch = branch;
386
- // fallback to main if develop isn't present? keep path consistent
387
- resolvedKbPath = path.join(process.cwd(), ".kb/branches", branch || "main");
431
+ resolvedKbPath = attachment.storePath;
388
432
  }
389
433
  if (options.staged) {
390
434
  const minLinks = options.minLinks ? Number(options.minLinks) : 1;
435
+ let stagedCoverage = null;
391
436
  let tempCtx = null;
392
437
  try {
393
- const stagedFiles = getStagedFiles();
394
- if (!stagedFiles || stagedFiles.length === 0) {
395
- console.log("No staged files found.");
438
+ const stagedInventory = getStagedInventory();
439
+ stagedCoverage = analyzeStagedFileCoverage(stagedInventory);
440
+ const stagedFiles = supportedStagedFiles(stagedInventory);
441
+ if (stagedInventory.length === 0) {
442
+ printStagedResult({
443
+ format: options.format,
444
+ coverage: stagedCoverage,
445
+ messages: ["No staged files found."],
446
+ });
396
447
  return { exitCode: 0 };
397
448
  }
398
449
  const { manifestLookup, manifestResults, authoredSymbolResults, stagedAuthoredSymbolResults, } = buildManifestLookup(stagedFiles);
399
- const symbolsManifestPath = loadConfig(process.cwd()).paths.symbols ?? KIBI_SYMBOLS_MANIFEST_PATH;
400
- const sourceFiles = stagedFiles.filter((file) => !file.path.endsWith(".md") && !isStagedManifestPath(file.path));
401
- const markdownFiles = stagedFiles.filter((f) => f.path.endsWith(".md"));
450
+ const symbolsManifestPath = KIBI_SYMBOLS_MANIFEST_PATH;
451
+ const symbolPaths = new Set(stagedInventory
452
+ .filter((file) => file.analysisDepth === "symbol")
453
+ .map((file) => file.path));
454
+ const sourceFiles = stagedFiles.filter((file) => symbolPaths.has(file.path));
455
+ const markdownFiles = stagedFiles.filter((file) => file.path.endsWith(".md") && isEntityLanePath(file.path));
402
456
  const markdownErrors = [];
403
457
  for (const f of markdownFiles) {
404
458
  const result = validateStagedMarkdown(f.path, f.content || "");
@@ -407,11 +461,18 @@ export async function checkCommand(options) {
407
461
  }
408
462
  }
409
463
  if (markdownErrors.length > 0) {
410
- console.log("Found embedded entity violations in staged markdown files:");
411
- for (const err of markdownErrors) {
412
- console.log(err);
413
- console.log();
414
- }
464
+ printStagedResult({
465
+ format: options.format,
466
+ coverage: stagedCoverage,
467
+ violations: markdownErrors.map((message) => ({
468
+ rule: "staged-markdown",
469
+ message,
470
+ })),
471
+ messages: [
472
+ "Found embedded entity violations in staged markdown files:",
473
+ ...markdownErrors,
474
+ ],
475
+ });
415
476
  if (options.dryRun) {
416
477
  return { exitCode: 0 };
417
478
  }
@@ -432,7 +493,9 @@ export async function checkCommand(options) {
432
493
  }
433
494
  }
434
495
  catch (e) {
435
- console.error(`Error extracting symbols from staged file ${f.path}: ${e instanceof Error ? e.message : String(e)}`);
496
+ const message = `Error extracting symbols from staged file ${f.path}: ${e instanceof Error ? e.message : String(e)}`;
497
+ if (options.format !== "json")
498
+ console.error(message);
436
499
  }
437
500
  }
438
501
  const markdownResultsByPath = new Map();
@@ -483,7 +546,12 @@ export async function checkCommand(options) {
483
546
  }), ...createSemanticReviewDiagnostics({ symbolsByFile }));
484
547
  if (allSymbols.length === 0 && stagedEntityResults.length === 0) {
485
548
  if (stagedKibiDiagnostics.length > 0) {
486
- console.log(formatStagedKibiDiagnostics(stagedKibiDiagnostics));
549
+ printStagedResult({
550
+ format: options.format,
551
+ coverage: stagedCoverage,
552
+ qualityDiagnostics: stagedKibiDiagnostics,
553
+ messages: [formatStagedKibiDiagnostics(stagedKibiDiagnostics)],
554
+ });
487
555
  if (options.dryRun) {
488
556
  return { exitCode: 0 };
489
557
  }
@@ -493,12 +561,23 @@ export async function checkCommand(options) {
493
561
  : 0,
494
562
  };
495
563
  }
496
- console.log("No exported symbols or staged entities found in staged files.");
564
+ printStagedResult({
565
+ format: options.format,
566
+ coverage: stagedCoverage,
567
+ messages: [
568
+ "No exported symbols or staged entities found in staged files.",
569
+ ],
570
+ });
497
571
  return { exitCode: 0 };
498
572
  }
499
573
  if (allSymbols.length === 0) {
500
574
  if (stagedKibiDiagnostics.length > 0) {
501
- console.log(formatStagedKibiDiagnostics(stagedKibiDiagnostics));
575
+ printStagedResult({
576
+ format: options.format,
577
+ coverage: stagedCoverage,
578
+ qualityDiagnostics: stagedKibiDiagnostics,
579
+ messages: [formatStagedKibiDiagnostics(stagedKibiDiagnostics)],
580
+ });
502
581
  if (options.dryRun) {
503
582
  return { exitCode: 0 };
504
583
  }
@@ -508,7 +587,11 @@ export async function checkCommand(options) {
508
587
  : 0,
509
588
  };
510
589
  }
511
- console.log("✓ No violations found in staged files.");
590
+ printStagedResult({
591
+ format: options.format,
592
+ coverage: stagedCoverage,
593
+ messages: ["✓ No violations found in staged files."],
594
+ });
512
595
  return { exitCode: 0 };
513
596
  }
514
597
  // Create temp KB
@@ -526,12 +609,19 @@ export async function checkCommand(options) {
526
609
  prolog: tempCtx.prolog,
527
610
  });
528
611
  const violationsFormatted = formatStagedViolations(violationsRaw);
529
- if (stagedKibiDiagnostics.length > 0) {
530
- console.log(formatStagedKibiDiagnostics(stagedKibiDiagnostics));
531
- console.log();
532
- }
533
612
  if (violationsRaw && violationsRaw.length > 0) {
534
- console.log(violationsFormatted);
613
+ printStagedResult({
614
+ format: options.format,
615
+ coverage: stagedCoverage,
616
+ violations: violationsRaw,
617
+ qualityDiagnostics: stagedKibiDiagnostics,
618
+ messages: [
619
+ ...(stagedKibiDiagnostics.length > 0
620
+ ? [formatStagedKibiDiagnostics(stagedKibiDiagnostics)]
621
+ : []),
622
+ violationsFormatted,
623
+ ],
624
+ });
535
625
  await cleanupTempKb(tempCtx.tempDir);
536
626
  if (options.dryRun) {
537
627
  return { exitCode: 0 };
@@ -540,23 +630,38 @@ export async function checkCommand(options) {
540
630
  }
541
631
  if (stagedKibiDiagnostics.length > 0) {
542
632
  await cleanupTempKb(tempCtx.tempDir);
633
+ const blocking = hasBlockingImpactDiagnostics(stagedKibiDiagnostics);
634
+ printStagedResult({
635
+ format: options.format,
636
+ coverage: stagedCoverage,
637
+ qualityDiagnostics: stagedKibiDiagnostics,
638
+ messages: [
639
+ formatStagedKibiDiagnostics(stagedKibiDiagnostics),
640
+ ...(!blocking
641
+ ? ["✓ No violations found in staged symbols."]
642
+ : []),
643
+ ],
644
+ });
543
645
  if (options.dryRun) {
544
646
  return { exitCode: 0 };
545
647
  }
546
- if (!hasBlockingImpactDiagnostics(stagedKibiDiagnostics)) {
547
- console.log("✓ No violations found in staged symbols.");
648
+ if (!blocking) {
548
649
  return { exitCode: 0 };
549
650
  }
550
651
  return {
551
652
  exitCode: 1,
552
653
  };
553
654
  }
554
- console.log("✓ No violations found in staged symbols.");
655
+ printStagedResult({
656
+ format: options.format,
657
+ coverage: stagedCoverage,
658
+ messages: ["✓ No violations found in staged symbols."],
659
+ });
555
660
  await cleanupTempKb(tempCtx.tempDir);
556
661
  return { exitCode: 0 };
557
662
  }
558
663
  catch (err) {
559
- console.error(`Error running staged validation: ${err instanceof Error ? err.message : String(err)}`);
664
+ const message = `Error running staged validation: ${err instanceof Error ? err.message : String(err)}`;
560
665
  if (tempCtx) {
561
666
  try {
562
667
  await cleanupTempKb(tempCtx.tempDir);
@@ -565,6 +670,11 @@ export async function checkCommand(options) {
565
670
  // best-effort: temp directory may already be cleaned up
566
671
  }
567
672
  }
673
+ printStagedResult({
674
+ format: options.format,
675
+ coverage: stagedCoverage,
676
+ operationalError: message,
677
+ });
568
678
  return { exitCode: 1 };
569
679
  }
570
680
  }
@@ -591,10 +701,7 @@ export async function checkCommand(options) {
591
701
  }
592
702
  attached = true;
593
703
  }
594
- const activeProlog = engine ?? prolog;
595
- if (!activeProlog) {
596
- throw new Error("Prolog runtime not initialized");
597
- }
704
+ const activeProlog = requireActiveProlog(engine, prolog);
598
705
  const rules = options.rules
599
706
  ?.split(",")
600
707
  .map((rule) => rule.trim())
@@ -605,6 +712,9 @@ export async function checkCommand(options) {
605
712
  clock: () => new Date(),
606
713
  prolog: {
607
714
  query: (goal) => activeProlog.query(goal),
715
+ ...(activeProlog instanceof EngineClient
716
+ ? { queryEntities: activeProlog.queryEntities.bind(activeProlog) }
717
+ : {}),
608
718
  nextSolution: async () => null,
609
719
  invalidateCache: () => activeProlog.invalidateCache(),
610
720
  save: () => activeProlog.query("kb_save"),
@@ -658,7 +768,7 @@ export async function checkCommand(options) {
658
768
  await safeCleanupProlog(prolog);
659
769
  }
660
770
  }
661
- async function checkMustPriorityCoverage(prolog) {
771
+ export async function checkMustPriorityCoverage(prolog) {
662
772
  const violations = [];
663
773
  const mustReqs = await findMustPriorityReqs(prolog);
664
774
  for (const reqId of mustReqs) {
@@ -697,7 +807,9 @@ async function checkMustPriorityCoverage(prolog) {
697
807
  }
698
808
  return violations;
699
809
  }
700
- async function findMustPriorityReqs(prolog) {
810
+ // implements REQ-cli-check
811
+ // covered_by TEST-004
812
+ export async function findMustPriorityReqs(prolog) {
701
813
  const query = `findall(Id, (kb_entity(Id, req, Props), memberchk(priority=P, Props), (P = ^^("must", _) ; P = "must" ; P = 'must' ; (atom(P), atom_string(P, PS), sub_string(PS, _, 4, 0, "must")))), Ids)`;
702
814
  const result = await prolog.query(query);
703
815
  if (!result.success || !result.bindings.Ids) {
@@ -711,7 +823,7 @@ async function findMustPriorityReqs(prolog) {
711
823
  }
712
824
  return content.split(",").map((id) => id.trim().replace(/^'|'$/g, ""));
713
825
  }
714
- async function getAllEntityIds(prolog, type) {
826
+ export async function getAllEntityIds(prolog, type) {
715
827
  const typeFilter = type ? `, Type = ${type}` : "";
716
828
  const query = `findall(Id, (kb_entity(Id, Type, _)${typeFilter}), Ids)`;
717
829
  const result = await prolog.query(query);
@@ -726,7 +838,7 @@ async function getAllEntityIds(prolog, type) {
726
838
  }
727
839
  return content.split(",").map((id) => id.trim().replace(/^'|'$/g, ""));
728
840
  }
729
- async function checkNoDanglingRefs(prolog) {
841
+ export async function checkNoDanglingRefs(prolog) {
730
842
  const violations = [];
731
843
  const allEntityIds = new Set(await getAllEntityIds(prolog));
732
844
  const relTypes = [
@@ -781,7 +893,9 @@ async function checkNoDanglingRefs(prolog) {
781
893
  }
782
894
  return violations;
783
895
  }
784
- async function checkNoCycles(prolog) {
896
+ // implements REQ-cli-check
897
+ // covered_by TEST-cli-check-integrity
898
+ export async function checkNoCycles(prolog) {
785
899
  const violations = [];
786
900
  const depsResult = await prolog.query("findall([From,To], kb_relationship(depends_on, From, To), Deps)");
787
901
  if (!depsResult.success || !depsResult.bindings.Deps) {
@@ -865,7 +979,7 @@ async function checkNoCycles(prolog) {
865
979
  }
866
980
  return violations;
867
981
  }
868
- async function checkRequiredFields(prolog, allEntityIds) {
982
+ export async function checkRequiredFields(prolog, allEntityIds) {
869
983
  const violations = [];
870
984
  const required = [
871
985
  "id",
@@ -901,7 +1015,7 @@ async function checkRequiredFields(prolog, allEntityIds) {
901
1015
  }
902
1016
  return violations;
903
1017
  }
904
- async function checkDeprecatedAdrs(prolog) {
1018
+ export async function checkDeprecatedAdrs(prolog) {
905
1019
  const violations = [];
906
1020
  // Use Prolog predicate to find deprecated ADRs without successors
907
1021
  const result = await prolog.query("setof(Id, deprecated_no_successor(Id), Ids)");
@@ -938,14 +1052,16 @@ async function checkDeprecatedAdrs(prolog) {
938
1052
  }
939
1053
  return violations;
940
1054
  }
941
- async function checkDomainContradictions(prolog) {
1055
+ export async function checkDomainContradictions(prolog) {
942
1056
  const violations = [];
943
1057
  const result = await prolog.query("setof([A,B,Reason], contradicting_reqs(A, B, Reason), Rows)");
944
1058
  if (!result.success || !result.bindings.Rows) {
945
1059
  return violations;
946
1060
  }
947
1061
  const rows = parseTriples(result.bindings.Rows);
948
- for (const [reqA, reqB, reason] of rows) {
1062
+ for (const [rawReqA, rawReqB, reason] of rows) {
1063
+ const reqA = normalizeEntityId(rawReqA);
1064
+ const reqB = normalizeEntityId(rawReqB);
949
1065
  violations.push({
950
1066
  rule: "domain-contradictions",
951
1067
  entityId: `${reqA}/${reqB}`,
@@ -955,7 +1071,7 @@ async function checkDomainContradictions(prolog) {
955
1071
  }
956
1072
  return violations;
957
1073
  }
958
- async function checkStrictFactShape(prolog) {
1074
+ export async function checkStrictFactShape(prolog) {
959
1075
  const violations = [];
960
1076
  const result = await prolog.query(`findall(violation(Rule, EntityId, Desc, Sugg, Src),
961
1077
  checks:strict_fact_shape_violation(violation(Rule, EntityId, Desc, Sugg, Src)),
@@ -971,7 +1087,7 @@ async function checkStrictFactShape(prolog) {
971
1087
  }
972
1088
  return violations;
973
1089
  }
974
- async function checkStrictReqFactPairing(prolog) {
1090
+ export async function checkStrictReqFactPairing(prolog) {
975
1091
  const violations = [];
976
1092
  const result = await prolog.query(`findall(violation(Rule, EntityId, Desc, Sugg, Src),
977
1093
  checks:strict_req_fact_pairing_violation(violation(Rule, EntityId, Desc, Sugg, Src)),
@@ -987,7 +1103,7 @@ async function checkStrictReqFactPairing(prolog) {
987
1103
  }
988
1104
  return violations;
989
1105
  }
990
- async function checkStrictReadiness(prolog) {
1106
+ export async function checkStrictReadiness(prolog) {
991
1107
  const violations = [];
992
1108
  const result = await prolog.query(`findall(violation(Rule, EntityId, Desc, Sugg, Src),
993
1109
  checks:strict_readiness_violation(violation(Rule, EntityId, Desc, Sugg, Src)),
@@ -1003,7 +1119,7 @@ async function checkStrictReadiness(prolog) {
1003
1119
  }
1004
1120
  return violations;
1005
1121
  }
1006
- async function checkSymbolCoverage(prolog) {
1122
+ export async function checkSymbolCoverage(prolog) {
1007
1123
  const violations = [];
1008
1124
  const uncoveredResult = await prolog.query("setof(Symbol, symbol_no_req_coverage(Symbol, _), Symbols)");
1009
1125
  if (uncoveredResult.success && uncoveredResult.bindings.Symbols) {
@@ -1027,20 +1143,3 @@ async function checkSymbolCoverage(prolog) {
1027
1143
  }
1028
1144
  return violations;
1029
1145
  }
1030
- async function checkSymbolTraceability(prolog, requireAdr) {
1031
- const violations = [];
1032
- const requireAdrStr = requireAdr ? "true" : "false";
1033
- const result = await prolog.query(`findall(violation(Rule, EntityId, Desc, Sugg, Src),
1034
- checks:symbol_traceability_violation(${requireAdrStr}, violation(Rule, EntityId, Desc, Sugg, Src)),
1035
- Violations)`);
1036
- if (!result.success || !result.bindings.Violations) {
1037
- return violations;
1038
- }
1039
- const violationsStr = result.bindings.Violations;
1040
- if (violationsStr && violationsStr !== "[]") {
1041
- for (const v of parseViolationRows(violationsStr)) {
1042
- violations.push(v);
1043
- }
1044
- }
1045
- return violations;
1046
- }
@@ -2,6 +2,7 @@ interface CoverageOptions {
2
2
  by?: "req" | "symbol" | "type";
3
3
  tag?: string;
4
4
  includePassing?: boolean;
5
+ status?: string;
5
6
  includeTransitive?: boolean;
6
7
  limit?: string;
7
8
  offset?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"coverage.d.ts","sourceRoot":"","sources":["../../src/commands/coverage.ts"],"names":[],"mappings":"AAMA,UAAU,eAAe;IACvB,EAAE,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3B;AAGD,wBAAsB,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CA6B7E"}
1
+ {"version":3,"file":"coverage.d.ts","sourceRoot":"","sources":["../../src/commands/coverage.ts"],"names":[],"mappings":"AAMA,UAAU,eAAe;IACvB,EAAE,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3B;AAGD,wBAAsB,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAmC7E"}
@@ -11,6 +11,12 @@ export async function coverageCommand(options) {
11
11
  .filter(Boolean)
12
12
  : [],
13
13
  includePassing: options.includePassing ?? false,
14
+ statuses: options.status
15
+ ? options.status
16
+ .split(",")
17
+ .map((item) => item.trim())
18
+ .filter(Boolean)
19
+ : [],
14
20
  includeTransitive: options.includeTransitive ?? true,
15
21
  limit: Number.parseInt(options.limit || "100", 10),
16
22
  offset: Number.parseInt(options.offset || "0", 10),
@@ -1 +1 @@
1
- {"version":3,"file":"discovery-shared.d.ts","sourceRoot":"","sources":["../../src/commands/discovery-shared.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE9D,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAMnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3B;AAED,qDAAqD;AACrD,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,aAAa,CAAC;IAC3D,WAAW,EAAE,OAAO,eAAe,CAAC;CACrC;AAGD,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,OAAO,EACxD,IAAI,EAAE,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,cAAmB,6EAG7B;AAGD,wBAAsB,wBAAwB,CAAC,CAAC,EAC9C,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,EAC/C,IAAI,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAC5B,OAAO,CAAC,CAAC,CAAC,CAsDZ;AAID,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAS5D;AAGD,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAC5B,MAAM,CAGR;AAGD,wBAAsB,kBAAkB,CAAC,CAAC,EACxC,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAC5B,OAAO,CAAC,CAAC,CAAC,CAwBZ;AAGD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,EACpC,UAAU,EAAE,OAAO,EACnB,YAAY,EAAE,MAAM,GACnB,IAAI,CAQN"}
1
+ {"version":3,"file":"discovery-shared.d.ts","sourceRoot":"","sources":["../../src/commands/discovery-shared.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE9D,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAMnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3B;AAED,qDAAqD;AACrD,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,aAAa,CAAC;IAC3D,WAAW,EAAE,OAAO,eAAe,CAAC;CACrC;AAGD,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,OAAO,EACxD,IAAI,EAAE,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,cAAmB,6EAG7B;AAGD,wBAAsB,wBAAwB,CAAC,CAAC,EAC9C,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,EAC/C,IAAI,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAC5B,OAAO,CAAC,CAAC,CAAC,CA+CZ;AAID,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAI5D;AAGD,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAC5B,MAAM,CAGR;AAGD,wBAAsB,kBAAkB,CAAC,CAAC,EACxC,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAC5B,OAAO,CAAC,CAAC,CAAC,CAwBZ;AAGD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,EACpC,UAAU,EAAE,OAAO,EACnB,YAAY,EAAE,MAAM,GACnB,IAAI,CAQN"}