kibi-cli 0.18.1 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (539) hide show
  1. package/dist/cli-json-command.d.ts +1 -2
  2. package/dist/cli-json-command.d.ts.map +1 -1
  3. package/dist/cli-json-command.js +2 -34
  4. package/dist/cli-operation-loader.d.ts +3 -0
  5. package/dist/cli-operation-loader.d.ts.map +1 -0
  6. package/dist/cli-operation-loader.js +91 -0
  7. package/dist/cli-operation-metadata.d.ts +94 -0
  8. package/dist/cli-operation-metadata.d.ts.map +1 -0
  9. package/dist/cli-operation-metadata.js +121 -0
  10. package/dist/cli-protocol.d.ts +1 -1
  11. package/dist/cli-protocol.d.ts.map +1 -1
  12. package/dist/cli-protocol.js +42 -11
  13. package/dist/cli-register-foundation.d.ts.map +1 -1
  14. package/dist/cli-register-foundation.js +28 -19
  15. package/dist/cli-register-json.d.ts +3 -0
  16. package/dist/cli-register-json.d.ts.map +1 -0
  17. package/dist/cli-register-json.js +35 -0
  18. package/dist/cli-register-maintenance.d.ts.map +1 -1
  19. package/dist/cli-register-maintenance.js +60 -13
  20. package/dist/cli-register-reporting.d.ts.map +1 -1
  21. package/dist/cli-register-reporting.js +23 -14
  22. package/dist/cli-register-skills.d.ts.map +1 -1
  23. package/dist/cli-register-skills.js +8 -6
  24. package/dist/cli-register-verification.d.ts +3 -0
  25. package/dist/cli-register-verification.d.ts.map +1 -0
  26. package/dist/cli-register-verification.js +16 -0
  27. package/dist/cli.d.ts.map +1 -1
  28. package/dist/cli.js +3 -1
  29. package/dist/commands/aggregated-checks.d.ts +1 -2
  30. package/dist/commands/aggregated-checks.d.ts.map +1 -1
  31. package/dist/commands/aggregated-checks.js +14 -9
  32. package/dist/commands/branch.d.ts +36 -0
  33. package/dist/commands/branch.d.ts.map +1 -1
  34. package/dist/commands/branch.js +371 -40
  35. package/dist/commands/check.d.ts.map +1 -1
  36. package/dist/commands/check.js +48 -77
  37. package/dist/commands/coverage.js +1 -1
  38. package/dist/commands/discovery-shared.d.ts +2 -1
  39. package/dist/commands/discovery-shared.d.ts.map +1 -1
  40. package/dist/commands/discovery-shared.js +38 -25
  41. package/dist/commands/doctor.d.ts +4 -1
  42. package/dist/commands/doctor.d.ts.map +1 -1
  43. package/dist/commands/doctor.js +259 -24
  44. package/dist/commands/engine.d.ts +8 -0
  45. package/dist/commands/engine.d.ts.map +1 -0
  46. package/dist/commands/engine.js +103 -0
  47. package/dist/commands/gaps.js +1 -1
  48. package/dist/commands/gc.d.ts +5 -2
  49. package/dist/commands/gc.d.ts.map +1 -1
  50. package/dist/commands/gc.js +140 -71
  51. package/dist/commands/github-init.d.ts +56 -0
  52. package/dist/commands/github-init.d.ts.map +1 -0
  53. package/dist/commands/github-init.js +310 -0
  54. package/dist/commands/graph.js +1 -1
  55. package/dist/commands/init-helpers.d.ts +1 -1
  56. package/dist/commands/init-helpers.d.ts.map +1 -1
  57. package/dist/commands/init-helpers.js +73 -25
  58. package/dist/commands/init.d.ts +2 -0
  59. package/dist/commands/init.d.ts.map +1 -1
  60. package/dist/commands/init.js +79 -24
  61. package/dist/commands/legacy-storage-migration.d.ts +54 -0
  62. package/dist/commands/legacy-storage-migration.d.ts.map +1 -0
  63. package/dist/commands/legacy-storage-migration.js +277 -0
  64. package/dist/commands/migrate.d.ts +7 -0
  65. package/dist/commands/migrate.d.ts.map +1 -1
  66. package/dist/commands/migrate.js +244 -91
  67. package/dist/commands/query.d.ts.map +1 -1
  68. package/dist/commands/query.js +3 -1
  69. package/dist/commands/report.d.ts +24 -0
  70. package/dist/commands/report.d.ts.map +1 -0
  71. package/dist/commands/report.js +191 -0
  72. package/dist/commands/search.d.ts.map +1 -1
  73. package/dist/commands/search.js +3 -1
  74. package/dist/commands/status.d.ts.map +1 -1
  75. package/dist/commands/status.js +2 -1
  76. package/dist/commands/sync/cache.d.ts +26 -3
  77. package/dist/commands/sync/cache.d.ts.map +1 -1
  78. package/dist/commands/sync/cache.js +141 -5
  79. package/dist/commands/sync/discovery.d.ts +23 -2
  80. package/dist/commands/sync/discovery.d.ts.map +1 -1
  81. package/dist/commands/sync/discovery.js +196 -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 +8 -5
  86. package/dist/commands/sync/manifest.d.ts.map +1 -1
  87. package/dist/commands/sync/manifest.js +142 -39
  88. package/dist/commands/sync/persistence.d.ts +10 -1
  89. package/dist/commands/sync/persistence.d.ts.map +1 -1
  90. package/dist/commands/sync/persistence.js +223 -44
  91. package/dist/commands/sync/staging.d.ts +10 -1
  92. package/dist/commands/sync/staging.d.ts.map +1 -1
  93. package/dist/commands/sync/staging.js +84 -1
  94. package/dist/commands/sync.d.ts +6 -0
  95. package/dist/commands/sync.d.ts.map +1 -1
  96. package/dist/commands/sync.js +710 -48
  97. package/dist/commands/verify.d.ts +10 -0
  98. package/dist/commands/verify.d.ts.map +1 -0
  99. package/dist/commands/verify.js +126 -0
  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 -0
  103. package/dist/engine-daemon.d.ts.map +1 -0
  104. package/dist/engine-daemon.js +34 -0
  105. package/dist/engine.d.ts +156 -0
  106. package/dist/engine.d.ts.map +1 -0
  107. package/dist/engine.js +1625 -0
  108. package/dist/env.d.ts.map +1 -1
  109. package/dist/env.js +5 -6
  110. package/dist/extractors/manifest.d.ts +8 -1
  111. package/dist/extractors/manifest.d.ts.map +1 -1
  112. package/dist/extractors/manifest.js +51 -9
  113. package/dist/extractors/markdown.d.ts +2 -1
  114. package/dist/extractors/markdown.d.ts.map +1 -1
  115. package/dist/extractors/markdown.js +21 -3
  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 +2 -0
  120. package/dist/extractors/relationships.d.ts.map +1 -1
  121. package/dist/extractors/relationships.js +16 -17
  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/intent-search.d.ts +60 -0
  127. package/dist/intent-search.d.ts.map +1 -0
  128. package/dist/intent-search.js +433 -0
  129. package/dist/operations/bootstrap/activation.d.ts.map +1 -0
  130. package/dist/operations/{autopilot → bootstrap}/activation.js +48 -31
  131. package/dist/operations/{autopilot → bootstrap}/candidate-helpers.d.ts.map +1 -1
  132. package/dist/operations/bootstrap/candidates.d.ts +4 -0
  133. package/dist/operations/{autopilot → bootstrap}/candidates.d.ts.map +1 -1
  134. package/dist/operations/{autopilot → bootstrap}/candidates.js +22 -8
  135. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.d.ts +2 -2
  136. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.d.ts.map +1 -1
  137. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.js +46 -6
  138. package/dist/operations/{autopilot → bootstrap}/discovery.d.ts +1 -1
  139. package/dist/operations/bootstrap/discovery.d.ts.map +1 -0
  140. package/dist/operations/{autopilot → bootstrap}/discovery.js +21 -14
  141. package/dist/operations/bootstrap/generate.d.ts +8 -0
  142. package/dist/operations/bootstrap/generate.d.ts.map +1 -0
  143. package/dist/operations/bootstrap/generate.js +204 -0
  144. package/dist/operations/{autopilot → bootstrap}/guidance-actions.d.ts +2 -2
  145. package/dist/operations/{autopilot → bootstrap}/guidance-actions.d.ts.map +1 -1
  146. package/dist/operations/{autopilot → bootstrap}/guidance-actions.js +4 -4
  147. package/dist/operations/{autopilot → bootstrap}/guidance.d.ts +2 -2
  148. package/dist/operations/{autopilot → bootstrap}/guidance.d.ts.map +1 -1
  149. package/dist/operations/{autopilot → bootstrap}/guidance.js +2 -0
  150. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.d.ts +2 -2
  151. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.d.ts.map +1 -1
  152. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.js +4 -3
  153. package/dist/operations/bootstrap/presentation.d.ts +15 -0
  154. package/dist/operations/bootstrap/presentation.d.ts.map +1 -0
  155. package/dist/operations/bootstrap/presentation.js +177 -0
  156. package/dist/operations/{autopilot → bootstrap}/requirement-claims.d.ts.map +1 -1
  157. package/dist/operations/{autopilot → bootstrap}/types.d.ts +63 -21
  158. package/dist/operations/bootstrap/types.d.ts.map +1 -0
  159. package/dist/operations/bootstrap/types.js +25 -0
  160. package/dist/operations/modeling/model-requirement.d.ts.map +1 -1
  161. package/dist/operations/modeling/model-requirement.js +4 -17
  162. package/dist/operations/modeling/predicate-applicability.d.ts +16 -0
  163. package/dist/operations/modeling/predicate-applicability.d.ts.map +1 -0
  164. package/dist/operations/modeling/predicate-applicability.js +276 -0
  165. package/dist/operations/modeling/predicate-applyplan.d.ts +13 -2
  166. package/dist/operations/modeling/predicate-applyplan.d.ts.map +1 -1
  167. package/dist/operations/modeling/predicate-applyplan.js +100 -3
  168. package/dist/operations/modeling/predicate-bindings.d.ts +6 -0
  169. package/dist/operations/modeling/predicate-bindings.d.ts.map +1 -0
  170. package/dist/operations/modeling/predicate-bindings.js +122 -0
  171. package/dist/operations/modeling/predicate-catalog-4.d.ts.map +1 -1
  172. package/dist/operations/modeling/predicate-catalog-4.js +155 -0
  173. package/dist/operations/modeling/predicate-inference-1.d.ts.map +1 -1
  174. package/dist/operations/modeling/predicate-inference-1.js +8 -0
  175. package/dist/operations/modeling/predicate-inference-launcher.d.ts +10 -0
  176. package/dist/operations/modeling/predicate-inference-launcher.d.ts.map +1 -0
  177. package/dist/operations/modeling/predicate-inference-launcher.js +13 -0
  178. package/dist/operations/modeling/predicate-inference.d.ts.map +1 -1
  179. package/dist/operations/modeling/predicate-inference.js +4 -0
  180. package/dist/operations/modeling/predicate-loader.d.ts.map +1 -1
  181. package/dist/operations/modeling/predicate-loader.js +7 -0
  182. package/dist/operations/modeling/predicate-ranker.d.ts +8 -1
  183. package/dist/operations/modeling/predicate-ranker.d.ts.map +1 -1
  184. package/dist/operations/modeling/predicate-ranker.js +156 -24
  185. package/dist/operations/modeling/predicate-score-3.d.ts.map +1 -1
  186. package/dist/operations/modeling/predicate-score-3.js +6 -0
  187. package/dist/operations/modeling/predicate-types.d.ts +34 -0
  188. package/dist/operations/modeling/predicate-types.d.ts.map +1 -1
  189. package/dist/operations/modeling/predicate-usage-hints-3.d.ts.map +1 -1
  190. package/dist/operations/modeling/predicate-usage-hints-3.js +40 -0
  191. package/dist/operations/modeling/predicate-utils.d.ts.map +1 -1
  192. package/dist/operations/modeling/predicate-utils.js +2 -0
  193. package/dist/operations/modeling/suggest-predicates.d.ts +1 -1
  194. package/dist/operations/modeling/suggest-predicates.d.ts.map +1 -1
  195. package/dist/operations/modeling/suggest-predicates.js +170 -32
  196. package/dist/operations/mutation/delete.d.ts.map +1 -1
  197. package/dist/operations/mutation/delete.js +415 -19
  198. package/dist/operations/mutation/entity-projection.d.ts +11 -0
  199. package/dist/operations/mutation/entity-projection.d.ts.map +1 -0
  200. package/dist/operations/mutation/entity-projection.js +14 -0
  201. package/dist/operations/mutation/relationships.d.ts +10 -0
  202. package/dist/operations/mutation/relationships.d.ts.map +1 -1
  203. package/dist/operations/mutation/relationships.js +71 -1
  204. package/dist/operations/mutation/serialization.d.ts.map +1 -1
  205. package/dist/operations/mutation/serialization.js +1 -0
  206. package/dist/operations/mutation/source-authoring.d.ts +61 -0
  207. package/dist/operations/mutation/source-authoring.d.ts.map +1 -0
  208. package/dist/operations/mutation/source-authoring.js +543 -0
  209. package/dist/operations/mutation/symbol-compiler-lock.d.ts +51 -0
  210. package/dist/operations/mutation/symbol-compiler-lock.d.ts.map +1 -0
  211. package/dist/operations/mutation/symbol-compiler-lock.js +274 -0
  212. package/dist/operations/mutation/symbol-granularity.d.ts.map +1 -1
  213. package/dist/operations/mutation/symbol-granularity.js +34 -3
  214. package/dist/operations/mutation/symbol-refresh.d.ts +18 -1
  215. package/dist/operations/mutation/symbol-refresh.d.ts.map +1 -1
  216. package/dist/operations/mutation/symbol-refresh.js +225 -63
  217. package/dist/operations/mutation/types.d.ts +57 -1
  218. package/dist/operations/mutation/types.d.ts.map +1 -1
  219. package/dist/operations/mutation/upsert.d.ts.map +1 -1
  220. package/dist/operations/mutation/upsert.js +363 -24
  221. package/dist/operations/mutation/validation.d.ts.map +1 -1
  222. package/dist/operations/mutation/validation.js +1 -0
  223. package/dist/operations/planning/apply-plan.d.ts +117 -0
  224. package/dist/operations/planning/apply-plan.d.ts.map +1 -0
  225. package/dist/operations/planning/apply-plan.js +1437 -0
  226. package/dist/operations/planning/compile-intent.d.ts +106 -0
  227. package/dist/operations/planning/compile-intent.d.ts.map +1 -0
  228. package/dist/operations/planning/compile-intent.js +562 -0
  229. package/dist/operations/semantic-advisor/analyze-prose.d.ts.map +1 -1
  230. package/dist/operations/semantic-advisor/analyze-prose.js +6 -2
  231. package/dist/operations/semantic-advisor/clauses.d.ts.map +1 -1
  232. package/dist/operations/semantic-advisor/clauses.js +15 -2
  233. package/dist/operations/semantic-advisor/ingestion-boundary.d.ts.map +1 -1
  234. package/dist/operations/semantic-advisor/ingestion-boundary.js +7 -3
  235. package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts +51 -0
  236. package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts.map +1 -0
  237. package/dist/operations/semantic-advisor/predicate-rules-launcher.js +96 -0
  238. package/dist/operations/semantic-advisor/types.d.ts +13 -5
  239. package/dist/operations/semantic-advisor/types.d.ts.map +1 -1
  240. package/dist/operations/verification/ingest-verification.d.ts +29 -0
  241. package/dist/operations/verification/ingest-verification.d.ts.map +1 -0
  242. package/dist/operations/verification/ingest-verification.js +192 -0
  243. package/dist/prolog/codec.d.ts.map +1 -1
  244. package/dist/prolog/codec.js +2 -1
  245. package/dist/prolog.d.ts +8 -0
  246. package/dist/prolog.d.ts.map +1 -1
  247. package/dist/prolog.js +66 -16
  248. package/dist/public/branch-resolver.d.ts +1 -0
  249. package/dist/public/branch-resolver.d.ts.map +1 -1
  250. package/dist/public/branch-resolver.js +1 -0
  251. package/dist/public/check-types.d.ts +2 -2
  252. package/dist/public/check-types.d.ts.map +1 -1
  253. package/dist/public/check-types.js +16 -16
  254. package/dist/public/diagnostic-usage.d.ts.map +1 -1
  255. package/dist/public/diagnostic-usage.js +69 -1
  256. package/dist/public/distribution-parity.d.ts +1 -1
  257. package/dist/public/distribution-parity.d.ts.map +1 -1
  258. package/dist/public/distribution-parity.js +1 -0
  259. package/dist/public/ignore-policy.d.ts.map +1 -1
  260. package/dist/public/ignore-policy.js +16 -4
  261. package/dist/public/impact/coverage-depth-quality.d.ts +6 -1
  262. package/dist/public/impact/coverage-depth-quality.d.ts.map +1 -1
  263. package/dist/public/impact/coverage-depth-quality.js +21 -3
  264. package/dist/public/impact/full-kb-quality.d.ts +4 -2
  265. package/dist/public/impact/full-kb-quality.d.ts.map +1 -1
  266. package/dist/public/impact/full-kb-quality.js +61 -1
  267. package/dist/public/impact/manifest.d.ts.map +1 -1
  268. package/dist/public/impact/manifest.js +2 -5
  269. package/dist/public/operational-artifacts.d.ts.map +1 -1
  270. package/dist/public/operational-artifacts.js +7 -1
  271. package/dist/public/operations/catalog.d.ts +682 -67
  272. package/dist/public/operations/catalog.d.ts.map +1 -1
  273. package/dist/public/operations/catalog.js +126 -4
  274. package/dist/public/operations/check-executor.d.ts +2 -2
  275. package/dist/public/operations/check-executor.d.ts.map +1 -1
  276. package/dist/public/operations/check-executor.js +72 -13
  277. package/dist/public/operations/check-format-shared.d.ts +3 -0
  278. package/dist/public/operations/check-format-shared.d.ts.map +1 -1
  279. package/dist/public/operations/check-format-shared.js +3 -0
  280. package/dist/public/operations/check-helpers.d.ts +27 -2
  281. package/dist/public/operations/check-helpers.d.ts.map +1 -1
  282. package/dist/public/operations/check-helpers.js +62 -26
  283. package/dist/public/operations/contracts.d.ts +11 -0
  284. package/dist/public/operations/contracts.d.ts.map +1 -0
  285. package/dist/public/operations/contracts.js +325 -0
  286. package/dist/public/operations/discovery-entities.d.ts.map +1 -1
  287. package/dist/public/operations/discovery-entities.js +3 -2
  288. package/dist/public/operations/discovery-executors.d.ts +37 -1
  289. package/dist/public/operations/discovery-executors.d.ts.map +1 -1
  290. package/dist/public/operations/discovery-executors.js +246 -9
  291. package/dist/public/operations/index.d.ts +9 -4
  292. package/dist/public/operations/index.d.ts.map +1 -1
  293. package/dist/public/operations/index.js +8 -3
  294. package/dist/public/operations/migration-plan.d.ts +101 -0
  295. package/dist/public/operations/migration-plan.d.ts.map +1 -0
  296. package/dist/public/operations/migration-plan.js +537 -0
  297. package/dist/public/operations/node-ports.d.ts.map +1 -1
  298. package/dist/public/operations/node-ports.js +68 -8
  299. package/dist/public/operations/prolog-json.d.ts +14 -0
  300. package/dist/public/operations/prolog-json.d.ts.map +1 -1
  301. package/dist/public/operations/prolog-json.js +55 -6
  302. package/dist/public/operations/repair-plan.d.ts.map +1 -1
  303. package/dist/public/operations/repair-plan.js +1 -0
  304. package/dist/public/operations/result-envelope.d.ts +13 -0
  305. package/dist/public/operations/result-envelope.d.ts.map +1 -0
  306. package/dist/public/operations/result-envelope.js +104 -0
  307. package/dist/public/operations/runtime-types.d.ts +126 -5
  308. package/dist/public/operations/runtime-types.d.ts.map +1 -1
  309. package/dist/public/operations/source-relationship-parity.d.ts +13 -0
  310. package/dist/public/operations/source-relationship-parity.d.ts.map +1 -0
  311. package/dist/public/operations/source-relationship-parity.js +162 -0
  312. package/dist/public/operations/specs/{autopilot.d.ts → bootstrap.d.ts} +9 -9
  313. package/dist/public/operations/specs/bootstrap.d.ts.map +1 -0
  314. package/dist/public/operations/specs/{autopilot.js → bootstrap.js} +8 -7
  315. package/dist/public/operations/specs/check.d.ts +4 -4
  316. package/dist/public/operations/specs/check.d.ts.map +1 -1
  317. package/dist/public/operations/specs/check.js +4 -3
  318. package/dist/public/operations/specs/discovery.d.ts +87 -3
  319. package/dist/public/operations/specs/discovery.d.ts.map +1 -1
  320. package/dist/public/operations/specs/discovery.js +53 -3
  321. package/dist/public/operations/specs/modeling.d.ts +3 -3
  322. package/dist/public/operations/specs/modeling.js +3 -3
  323. package/dist/public/operations/specs/mutation-schemas.d.ts +190 -47
  324. package/dist/public/operations/specs/mutation-schemas.d.ts.map +1 -1
  325. package/dist/public/operations/specs/mutation-schemas.js +3 -1
  326. package/dist/public/operations/specs/mutation.d.ts +42 -2
  327. package/dist/public/operations/specs/mutation.d.ts.map +1 -1
  328. package/dist/public/operations/specs/mutation.js +26 -2
  329. package/dist/public/operations/specs/planning.d.ts +270 -0
  330. package/dist/public/operations/specs/planning.d.ts.map +1 -0
  331. package/dist/public/operations/specs/planning.js +191 -0
  332. package/dist/public/operations/specs/reporting.d.ts +4 -1
  333. package/dist/public/operations/specs/reporting.d.ts.map +1 -1
  334. package/dist/public/operations/specs/reporting.js +46 -1
  335. package/dist/public/operations/specs/upsert.d.ts +204 -47
  336. package/dist/public/operations/specs/upsert.d.ts.map +1 -1
  337. package/dist/public/operations/specs/upsert.js +9 -0
  338. package/dist/public/operations/specs/verification.d.ts +78 -0
  339. package/dist/public/operations/specs/verification.d.ts.map +1 -0
  340. package/dist/public/operations/specs/verification.js +62 -0
  341. package/dist/public/operations/symbol-repair-plan.d.ts +11 -0
  342. package/dist/public/operations/symbol-repair-plan.d.ts.map +1 -0
  343. package/dist/public/operations/symbol-repair-plan.js +123 -0
  344. package/dist/public/operations/types.d.ts +52 -1
  345. package/dist/public/operations/types.d.ts.map +1 -1
  346. package/dist/public/playwright-case-id.d.ts +8 -0
  347. package/dist/public/playwright-case-id.d.ts.map +1 -0
  348. package/dist/public/playwright-case-id.js +25 -0
  349. package/dist/public/schemas/entity.d.ts.map +1 -1
  350. package/dist/public/schemas/entity.js +4 -2
  351. package/dist/public/skills/kibi-bootstrap/SKILL.md +58 -0
  352. package/dist/public/skills/kibi-bootstrap/resources/bootstrap.md +11 -0
  353. package/dist/public/skills/kibi-bootstrap/resources/branch-lifecycle.md +7 -0
  354. package/dist/public/skills/kibi-bootstrap/resources/operation-access.md +5 -0
  355. package/dist/public/skills/kibi-bootstrap/resources/source-authoring.md +8 -0
  356. package/dist/public/skills/kibi-freshness/SKILL.md +40 -10
  357. package/dist/public/skills/kibi-freshness/resources/branch-lifecycle.md +7 -0
  358. package/dist/public/skills/kibi-freshness/resources/operation-access.md +6 -0
  359. package/dist/public/skills/kibi-freshness/resources/source-authoring.md +7 -0
  360. package/dist/public/skills/kibi-traceability/SKILL.md +47 -47
  361. package/dist/public/skills/kibi-traceability/resources/branch-lifecycle.md +7 -0
  362. package/dist/public/skills/kibi-traceability/resources/operation-access.md +5 -0
  363. package/dist/public/skills/kibi-traceability/resources/source-authoring.md +6 -0
  364. package/dist/public/skills/kibi-traceability/resources/traceability.md +8 -0
  365. package/dist/public/skills/kibi-usage/SKILL.md +115 -239
  366. package/dist/public/skills/kibi-usage/resources/branch-lifecycle.md +31 -0
  367. package/dist/public/skills/kibi-usage/resources/kb-improvement.md +38 -0
  368. package/dist/public/skills/kibi-usage/resources/operation-access.md +36 -38
  369. package/dist/public/skills/kibi-usage/resources/relationship-directions.md +3 -3
  370. package/dist/public/skills/kibi-usage/resources/source-authoring.md +31 -0
  371. package/dist/public/skills/kibi-usage/resources/workflows.md +56 -3
  372. package/dist/public/symbol-granularity.d.ts +1 -1
  373. package/dist/public/symbol-granularity.d.ts.map +1 -1
  374. package/dist/public/symbol-granularity.js +1 -0
  375. package/dist/public/telemetry-acceptance.d.ts +7 -0
  376. package/dist/public/telemetry-acceptance.d.ts.map +1 -1
  377. package/dist/public/telemetry-acceptance.js +8 -1
  378. package/dist/public/telemetry-remediation.js +1 -1
  379. package/dist/public/verification-receipt.d.ts +206 -39
  380. package/dist/public/verification-receipt.d.ts.map +1 -1
  381. package/dist/public/verification-receipt.js +171 -4
  382. package/dist/relationships/shards.d.ts +16 -0
  383. package/dist/relationships/shards.d.ts.map +1 -1
  384. package/dist/relationships/shards.js +87 -2
  385. package/dist/report/brand.d.ts +19 -0
  386. package/dist/report/brand.d.ts.map +1 -0
  387. package/dist/report/brand.js +112 -0
  388. package/dist/report/html-report.d.ts +19 -0
  389. package/dist/report/html-report.d.ts.map +1 -0
  390. package/dist/report/html-report.js +963 -0
  391. package/dist/report/relative-time.d.ts +4 -0
  392. package/dist/report/relative-time.d.ts.map +1 -0
  393. package/dist/report/relative-time.js +46 -0
  394. package/dist/report/report-view.d.ts +17 -0
  395. package/dist/report/report-view.d.ts.map +1 -0
  396. package/dist/report/report-view.js +33 -0
  397. package/dist/report/repository.d.ts +35 -0
  398. package/dist/report/repository.d.ts.map +1 -0
  399. package/dist/report/repository.js +151 -0
  400. package/dist/runtime/cli-runtime.d.ts.map +1 -1
  401. package/dist/runtime/cli-runtime.js +98 -42
  402. package/dist/schemas/entity.schema.json +1148 -273
  403. package/dist/traceability/evidence-model.d.ts +2 -2
  404. package/dist/traceability/evidence-model.d.ts.map +1 -1
  405. package/dist/traceability/evidence-model.js +2 -2
  406. package/dist/traceability/git-staged.d.ts.map +1 -1
  407. package/dist/traceability/git-staged.js +15 -40
  408. package/dist/traceability/markdown-validate.d.ts.map +1 -1
  409. package/dist/traceability/markdown-validate.js +12 -7
  410. package/dist/traceability/staged-impact-contract.d.ts +3 -3
  411. package/dist/traceability/staged-impact-contract.d.ts.map +1 -1
  412. package/dist/traceability/staged-impact-contract.js +10 -38
  413. package/dist/traceability/staged-symbols-manifest.d.ts.map +1 -1
  414. package/dist/traceability/staged-symbols-manifest.js +8 -3
  415. package/dist/traceability/temp-kb.d.ts.map +1 -1
  416. package/dist/traceability/temp-kb.js +3 -0
  417. package/dist/types/entities.d.ts +3 -0
  418. package/dist/types/entities.d.ts.map +1 -1
  419. package/dist/utils/branch-resolver.d.ts +24 -10
  420. package/dist/utils/branch-resolver.d.ts.map +1 -1
  421. package/dist/utils/branch-resolver.js +121 -38
  422. package/dist/utils/branch-store-locator.d.ts +23 -0
  423. package/dist/utils/branch-store-locator.d.ts.map +1 -0
  424. package/dist/utils/branch-store-locator.js +90 -0
  425. package/dist/utils/branch-store.d.ts +15 -0
  426. package/dist/utils/branch-store.d.ts.map +1 -0
  427. package/dist/utils/branch-store.js +130 -0
  428. package/dist/utils/config.d.ts +39 -37
  429. package/dist/utils/config.d.ts.map +1 -1
  430. package/dist/utils/config.js +107 -119
  431. package/dist/utils/kb-manifest.d.ts +35 -0
  432. package/dist/utils/kb-manifest.d.ts.map +1 -0
  433. package/dist/utils/kb-manifest.js +154 -0
  434. package/dist/utils/kb-paths.d.ts +54 -0
  435. package/dist/utils/kb-paths.d.ts.map +1 -0
  436. package/dist/utils/kb-paths.js +125 -0
  437. package/dist/utils/manifest-paths.d.ts +4 -4
  438. package/dist/utils/manifest-paths.d.ts.map +1 -1
  439. package/dist/utils/manifest-paths.js +8 -56
  440. package/dist/utils/rule-registry.d.ts +48 -20
  441. package/dist/utils/rule-registry.d.ts.map +1 -1
  442. package/dist/utils/rule-registry.js +82 -77
  443. package/dist/utils/schema-version.d.ts +5 -5
  444. package/dist/utils/schema-version.d.ts.map +1 -1
  445. package/dist/utils/schema-version.js +26 -6
  446. package/dist/utils/strict-modeling.d.ts +0 -4
  447. package/dist/utils/strict-modeling.d.ts.map +1 -1
  448. package/dist/utils/strict-modeling.js +7 -8
  449. package/dist/verification/playwright-reporter.d.ts +21 -0
  450. package/dist/verification/playwright-reporter.d.ts.map +1 -0
  451. package/dist/verification/playwright-reporter.js +114 -0
  452. package/package.json +51 -8
  453. package/schema/config.json +2 -2
  454. package/schema/manifest.json +26 -0
  455. package/src/public/branch-resolver.ts +1 -0
  456. package/src/public/check-types.ts +22 -19
  457. package/src/public/diagnostic-usage.ts +79 -1
  458. package/src/public/distribution-parity.ts +1 -0
  459. package/src/public/ignore-policy.ts +16 -10
  460. package/src/public/impact/coverage-depth-quality.ts +36 -0
  461. package/src/public/impact/full-kb-quality.ts +118 -5
  462. package/src/public/impact/manifest.ts +2 -4
  463. package/src/public/operational-artifacts.ts +9 -1
  464. package/src/public/operations/catalog.ts +146 -9
  465. package/src/public/operations/check-executor.ts +102 -15
  466. package/src/public/operations/check-format-shared.ts +6 -0
  467. package/src/public/operations/check-helpers.ts +74 -35
  468. package/src/public/operations/contracts.ts +366 -0
  469. package/src/public/operations/discovery-entities.ts +3 -2
  470. package/src/public/operations/discovery-executors.ts +343 -15
  471. package/src/public/operations/index.ts +9 -4
  472. package/src/public/operations/migration-plan.ts +740 -0
  473. package/src/public/operations/node-ports.ts +84 -10
  474. package/src/public/operations/prolog-json.ts +73 -6
  475. package/src/public/operations/repair-plan.ts +1 -0
  476. package/src/public/operations/result-envelope.ts +136 -0
  477. package/src/public/operations/runtime-types.ts +130 -5
  478. package/src/public/operations/source-relationship-parity.ts +226 -0
  479. package/src/public/operations/specs/{autopilot.ts → bootstrap.ts} +17 -16
  480. package/src/public/operations/specs/check.ts +4 -3
  481. package/src/public/operations/specs/discovery.ts +57 -3
  482. package/src/public/operations/specs/modeling.ts +3 -3
  483. package/src/public/operations/specs/mutation-schemas.ts +6 -1
  484. package/src/public/operations/specs/mutation.ts +27 -2
  485. package/src/public/operations/specs/planning.ts +234 -0
  486. package/src/public/operations/specs/reporting.ts +55 -1
  487. package/src/public/operations/specs/upsert.ts +10 -0
  488. package/src/public/operations/specs/verification.ts +78 -0
  489. package/src/public/operations/symbol-repair-plan.ts +164 -0
  490. package/src/public/operations/types.ts +62 -1
  491. package/src/public/playwright-case-id.ts +35 -0
  492. package/src/public/schemas/entity.ts +7 -2
  493. package/src/public/skills/kibi-bootstrap/SKILL.md +58 -0
  494. package/src/public/skills/kibi-bootstrap/resources/bootstrap.md +11 -0
  495. package/src/public/skills/kibi-bootstrap/resources/branch-lifecycle.md +7 -0
  496. package/src/public/skills/kibi-bootstrap/resources/operation-access.md +5 -0
  497. package/src/public/skills/kibi-bootstrap/resources/source-authoring.md +8 -0
  498. package/src/public/skills/kibi-freshness/SKILL.md +40 -10
  499. package/src/public/skills/kibi-freshness/resources/branch-lifecycle.md +7 -0
  500. package/src/public/skills/kibi-freshness/resources/operation-access.md +6 -0
  501. package/src/public/skills/kibi-freshness/resources/source-authoring.md +7 -0
  502. package/src/public/skills/kibi-traceability/SKILL.md +47 -47
  503. package/src/public/skills/kibi-traceability/resources/branch-lifecycle.md +7 -0
  504. package/src/public/skills/kibi-traceability/resources/operation-access.md +5 -0
  505. package/src/public/skills/kibi-traceability/resources/source-authoring.md +6 -0
  506. package/src/public/skills/kibi-traceability/resources/traceability.md +8 -0
  507. package/src/public/skills/kibi-usage/SKILL.md +115 -239
  508. package/src/public/skills/kibi-usage/resources/branch-lifecycle.md +31 -0
  509. package/src/public/skills/kibi-usage/resources/kb-improvement.md +38 -0
  510. package/src/public/skills/kibi-usage/resources/operation-access.md +36 -38
  511. package/src/public/skills/kibi-usage/resources/relationship-directions.md +3 -3
  512. package/src/public/skills/kibi-usage/resources/source-authoring.md +31 -0
  513. package/src/public/skills/kibi-usage/resources/workflows.md +56 -3
  514. package/src/public/symbol-granularity.ts +1 -0
  515. package/src/public/telemetry-acceptance.ts +16 -1
  516. package/src/public/telemetry-remediation.ts +1 -1
  517. package/src/public/verification-receipt.ts +248 -6
  518. package/src/schemas/entity.schema.json +1148 -273
  519. package/templates/github/kibi-badge.yml +86 -0
  520. package/templates/github/kibi-report.yml +84 -0
  521. package/dist/operations/autopilot/activation.d.ts.map +0 -1
  522. package/dist/operations/autopilot/candidates.d.ts +0 -4
  523. package/dist/operations/autopilot/discovery.d.ts.map +0 -1
  524. package/dist/operations/autopilot/generate.d.ts +0 -8
  525. package/dist/operations/autopilot/generate.d.ts.map +0 -1
  526. package/dist/operations/autopilot/generate.js +0 -112
  527. package/dist/operations/autopilot/presentation.d.ts +0 -13
  528. package/dist/operations/autopilot/presentation.d.ts.map +0 -1
  529. package/dist/operations/autopilot/presentation.js +0 -91
  530. package/dist/operations/autopilot/types.d.ts.map +0 -1
  531. package/dist/operations/autopilot/types.js +0 -8
  532. package/dist/public/operations/specs/autopilot.d.ts.map +0 -1
  533. package/dist/public/skills/init-kibi/SKILL.md +0 -62
  534. package/src/public/skills/init-kibi/SKILL.md +0 -62
  535. /package/dist/operations/{autopilot → bootstrap}/activation.d.ts +0 -0
  536. /package/dist/operations/{autopilot → bootstrap}/candidate-helpers.d.ts +0 -0
  537. /package/dist/operations/{autopilot → bootstrap}/candidate-helpers.js +0 -0
  538. /package/dist/operations/{autopilot → bootstrap}/requirement-claims.d.ts +0 -0
  539. /package/dist/operations/{autopilot → bootstrap}/requirement-claims.js +0 -0
@@ -1 +1 @@
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,aAAa,EAClB,KAAK,cAAc,EAEpB,MAAM,+BAA+B,CAAC;AAMvC,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,CAmCZ;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"}
@@ -1,12 +1,12 @@
1
1
  import path from "node:path";
2
- import { getBranchOverride } from "../env.js";
2
+ import { EngineClient } from "../engine.js";
3
3
  import { PrologProcess, resolveKbPlPath } from "../prolog.js";
4
4
  import { escapeAtom } from "../prolog/codec.js";
5
- import { executeOperation, } from "../public/operations/index.js";
5
+ import { executeOperation, } from "../public/operations/runtime-types.js";
6
6
  import { createCliRuntime } from "../runtime/cli-runtime.js";
7
+ import { resolveBranchAttachment } from "../utils/branch-resolver.js";
7
8
  import { safeCleanupProlog } from "../utils/prolog-cleanup.js";
8
9
  import { renderDiscoveryTable } from "./discovery-table.js";
9
- import { getCurrentBranch } from "./init-helpers.js";
10
10
  export { renderCoverageTable } from "./discovery-table.js";
11
11
  // implements REQ-kibi-operation-interface-parity
12
12
  export async function executeReportingSpec(spec, input, options = {}) {
@@ -14,43 +14,56 @@ export async function executeReportingSpec(spec, input, options = {}) {
14
14
  }
15
15
  // implements REQ-003
16
16
  export async function withAttachedBranchProlog(callback, deps) {
17
+ const usesEngine = deps?.createProlog === undefined;
17
18
  const createProlog = deps?.createProlog ?? ((opts) => new PrologProcess(opts));
18
19
  let prolog = null;
20
+ let engine = null;
19
21
  let attached = false;
22
+ let branchName;
20
23
  try {
21
- prolog = createProlog({ timeout: 120000 });
22
- await prolog.start();
23
- await prolog.query("set_prolog_flag(answer_write_options, [max_depth(0), spacing(next_argument)])");
24
- let branch;
25
- try {
26
- branch = getBranchOverride() || (await getCurrentBranch(process.cwd()));
24
+ const attachment = resolveBranchAttachment(process.cwd());
25
+ if ("error" in attachment)
26
+ throw new Error(attachment.error);
27
+ branchName = attachment.kbBranch;
28
+ if (usesEngine) {
29
+ engine = new EngineClient({
30
+ workspaceRoot: process.cwd(),
31
+ branch: branchName,
32
+ timeout: 120_000,
33
+ });
34
+ await engine.start();
35
+ prolog = engine;
27
36
  }
28
- catch {
29
- branch = getBranchOverride() || "main";
37
+ else {
38
+ prolog = createProlog({ timeout: 120000 });
39
+ await prolog.start();
30
40
  }
31
- const kbPath = path.join(process.cwd(), ".kb/branches", branch);
32
- const attachResult = await prolog.query(`kb_attach('${escapeAtom(kbPath)}')`);
33
- if (!attachResult.success) {
34
- throw new Error(`Failed to attach KB: ${attachResult.error || "Unknown error"}`);
41
+ if (!usesEngine) {
42
+ const kbPath = attachment.storePath;
43
+ const attachResult = await prolog.query(`kb_attach('${escapeAtom(kbPath)}')`);
44
+ if (!attachResult.success) {
45
+ throw new Error(`Failed to attach KB: ${attachResult.error || "Unknown error"}`);
46
+ }
47
+ attached = true;
35
48
  }
36
- attached = true;
37
49
  return await callback(prolog);
38
50
  }
39
51
  finally {
40
- await safeCleanupProlog(prolog);
52
+ if (usesEngine) {
53
+ await engine?.terminate();
54
+ }
55
+ else {
56
+ await safeCleanupProlog(prolog);
57
+ }
41
58
  }
42
59
  }
43
60
  // implements REQ-003
44
61
  // implements REQ-003
45
62
  export async function resolveCurrentKbPath() {
46
- let branch;
47
- try {
48
- branch = getBranchOverride() || (await getCurrentBranch(process.cwd()));
49
- }
50
- catch {
51
- branch = getBranchOverride() || "main";
52
- }
53
- return path.join(process.cwd(), ".kb/branches", branch);
63
+ const attachment = resolveBranchAttachment(process.cwd());
64
+ if ("error" in attachment)
65
+ throw new Error(attachment.error);
66
+ return attachment.storePath;
54
67
  }
55
68
  // implements REQ-003
56
69
  export function resolveCoreModulePath(fileName, deps) {
@@ -1,4 +1,7 @@
1
- export declare function doctorCommand(): Promise<{
1
+ export interface DoctorOptions {
2
+ format?: "json" | "table";
3
+ }
4
+ export declare function doctorCommand(options?: DoctorOptions): Promise<{
2
5
  exitCode: number;
3
6
  }>;
4
7
  //# sourceMappingURL=doctor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AA4BA,wBAAsB,aAAa,IAAI,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAyDnE"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAmCA,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3B;AAGD,wBAAsB,aAAa,CACjC,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAiF/B"}
@@ -17,9 +17,14 @@
17
17
  */
18
18
  import { execSync } from "node:child_process";
19
19
  import { existsSync, readFileSync, statSync } from "node:fs";
20
+ import { createRequire } from "node:module";
20
21
  import * as path from "node:path";
22
+ import { fileURLToPath } from "node:url";
23
+ import { buildMigrationPlan, migrationAction, } from "../public/operations/migration-plan.js";
24
+ import { readKbManifestStatus } from "../utils/kb-manifest.js";
25
+ import { planLegacyStorageMigration } from "./legacy-storage-migration.js";
21
26
  // implements REQ-003
22
- export async function doctorCommand() {
27
+ export async function doctorCommand(options = {}) {
23
28
  const checks = [
24
29
  {
25
30
  name: "SWI-Prolog",
@@ -30,8 +35,12 @@ export async function doctorCommand() {
30
35
  check: checkKbDirectory,
31
36
  },
32
37
  {
33
- name: "config.json",
34
- check: checkConfigJson,
38
+ name: ".kb/ manifest",
39
+ check: checkKbManifest,
40
+ },
41
+ {
42
+ name: "Canonical storage",
43
+ check: checkLegacyStorage,
35
44
  },
36
45
  {
37
46
  name: "Git repository",
@@ -50,18 +59,35 @@ export async function doctorCommand() {
50
59
  check: checkPostRewriteHook,
51
60
  },
52
61
  ];
62
+ const results = checks.map(({ name, check }) => ({ name, ...check() }));
63
+ const allPassed = results.every((result) => result.passed);
64
+ const runtime = await runtimeProvenance();
65
+ const packageActions = await packageMigrationActions(runtime);
66
+ const migrationPlan = buildMigrationPlan({
67
+ expected: {
68
+ branch: null,
69
+ kbBranch: null,
70
+ configHash: null,
71
+ },
72
+ evaluatedDomains: ["package"],
73
+ actions: packageActions,
74
+ });
75
+ if (options.format === "json") {
76
+ console.log(JSON.stringify({
77
+ version: "kibi.doctor.v1",
78
+ passed: allPassed,
79
+ runtime,
80
+ checks: results,
81
+ migrationPlan,
82
+ }, null, 2));
83
+ return { exitCode: allPassed ? 0 : 1 };
84
+ }
53
85
  console.log("Kibi Environment Diagnostics\n");
54
- let allPassed = true;
55
- for (const { name, check } of checks) {
56
- const result = check();
86
+ for (const result of results) {
57
87
  const status = result.passed ? "✓" : "✗";
58
- console.log(`${status} ${name}: ${result.message}`);
59
- if (!result.passed) {
60
- allPassed = false;
61
- if (result.remediation) {
62
- console.log(` → ${result.remediation}`);
63
- }
64
- }
88
+ console.log(`${status} ${result.name}: ${result.message}`);
89
+ if (!result.passed && result.remediation)
90
+ console.log(` → ${result.remediation}`);
65
91
  }
66
92
  console.log();
67
93
  if (allPassed) {
@@ -71,6 +97,195 @@ export async function doctorCommand() {
71
97
  console.log("Some checks failed. Please address the issues above.");
72
98
  return { exitCode: 1 };
73
99
  }
100
+ async function packageMigrationActions(runtime) {
101
+ const actions = [];
102
+ const versions = ["cliVersion", "coreVersion", "mcpVersion"].filter((key) => runtime[key] === "unresolved" || runtime[key] === "unknown");
103
+ if (versions.length > 0) {
104
+ actions.push(migrationAction({
105
+ id: "package-provenance-unresolved",
106
+ code: "package_provenance_unresolved",
107
+ category: "package",
108
+ safety: "operator",
109
+ invocation: {
110
+ kind: "review",
111
+ instruction: "Install one coordinated Kibi artifact set and rerun kibi doctor; Kibi never selects a package manager or rewrites dependency configuration.",
112
+ },
113
+ evidence: { unresolvedVersions: versions },
114
+ dispositionRequired: true,
115
+ }));
116
+ }
117
+ const cliVersion = typeof runtime.cliVersion === "string" ? runtime.cliVersion : "unknown";
118
+ const mcpCliRange = typeof runtime.mcpCliRange === "string" ? runtime.mcpCliRange : "unknown";
119
+ if (cliVersion !== "unknown" &&
120
+ mcpCliRange !== "unknown" &&
121
+ !satisfiesCaretRange(cliVersion, mcpCliRange)) {
122
+ actions.push(migrationAction({
123
+ id: "package-mcp-cli-range-mismatch",
124
+ code: "package_dependency_range_mismatch",
125
+ category: "package",
126
+ safety: "operator",
127
+ invocation: {
128
+ kind: "review",
129
+ instruction: "Install a newly versioned coordinated Kibi package set whose MCP CLI dependency range includes the installed CLI; project-local overrides are temporary and Kibi never edits dependency configuration.",
130
+ },
131
+ evidence: { cliVersion, mcpCliRange },
132
+ dispositionRequired: true,
133
+ }));
134
+ }
135
+ if (runtime.executeApplyPlanExported === false) {
136
+ actions.push(migrationAction({
137
+ id: "package-cli-export-surface-drift",
138
+ code: "package_export_surface_drift",
139
+ category: "package",
140
+ safety: "operator",
141
+ invocation: {
142
+ kind: "review",
143
+ instruction: "Treat same-version artifacts with different exports as a release defect: obtain a newly versioned CLI/MCP pair and do not downgrade receipts or hand-edit package metadata.",
144
+ },
145
+ evidence: { executeApplyPlanExported: false },
146
+ dispositionRequired: true,
147
+ }));
148
+ }
149
+ return actions;
150
+ }
151
+ function satisfiesCaretRange(version, range) {
152
+ const match = range.trim().match(/^\^(\d+)\.(\d+)\.(\d+)/);
153
+ if (!match)
154
+ return true;
155
+ const major = Number(match[1]);
156
+ const minor = Number(match[2]);
157
+ const patch = Number(match[3]);
158
+ const actual = version.match(/^(\d+)\.(\d+)\.(\d+)/);
159
+ if (!actual)
160
+ return false;
161
+ const aMajor = Number(actual[1]);
162
+ const aMinor = Number(actual[2]);
163
+ const aPatch = Number(actual[3]);
164
+ return (aMajor === major &&
165
+ (aMinor > minor || (aMinor === minor && aPatch >= patch)));
166
+ }
167
+ async function runtimeProvenance() {
168
+ const packagePath = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..", "..", "package.json");
169
+ let cli = {};
170
+ try {
171
+ cli = JSON.parse(readFileSync(packagePath, "utf8"));
172
+ }
173
+ catch {
174
+ // Keep doctor JSON useful even from an unusual packed entrypoint.
175
+ }
176
+ const core = resolveInstalledPackageInfo("kibi-core");
177
+ const mcp = resolveInstalledPackageInfo("kibi-mcp");
178
+ let executeApplyPlanExported;
179
+ try {
180
+ const operations = await import("../public/operations/index.js");
181
+ executeApplyPlanExported =
182
+ typeof operations.executeApplyPlan === "function";
183
+ }
184
+ catch {
185
+ executeApplyPlanExported = false;
186
+ }
187
+ return {
188
+ cliVersion: typeof cli.version === "string" ? cli.version : "unknown",
189
+ coreVersion: core.version,
190
+ mcpVersion: mcp.version,
191
+ coreRange: cli.dependencies && typeof cli.dependencies === "object"
192
+ ? (cli.dependencies["kibi-core"] ??
193
+ "unknown")
194
+ : "unknown",
195
+ mcpCliRange: mcp.dependencies?.["kibi-cli"] ?? "unknown",
196
+ executeApplyPlanExported,
197
+ entrypoint: process.argv[1] ?? "unknown",
198
+ packageVersions: process.env.KIBI_PACKAGE_VERSIONS ?? "unknown",
199
+ locations: {
200
+ cli: packagePath,
201
+ cliEntrypoint: process.argv[1] ?? "unknown",
202
+ core: core.path,
203
+ coreEntrypoint: core.entrypoint,
204
+ mcp: mcp.path,
205
+ mcpEntrypoint: mcp.entrypoint,
206
+ },
207
+ };
208
+ }
209
+ function packageInfoFromManifest(manifestPath) {
210
+ let metadata;
211
+ try {
212
+ metadata = JSON.parse(readFileSync(manifestPath, "utf8"));
213
+ }
214
+ catch {
215
+ // Missing or unreadable manifest is not usable provenance.
216
+ return undefined;
217
+ }
218
+ return {
219
+ version: typeof metadata.version === "string" ? metadata.version : "unknown",
220
+ path: manifestPath,
221
+ entrypoint: typeof metadata.main === "string"
222
+ ? path.resolve(path.dirname(manifestPath), metadata.main)
223
+ : "unknown",
224
+ dependencies: metadata.dependencies && typeof metadata.dependencies === "object"
225
+ ? metadata.dependencies
226
+ : undefined,
227
+ };
228
+ }
229
+ function nearestNamedPackageManifest(startDir, name) {
230
+ let current = startDir;
231
+ while (true) {
232
+ const candidate = path.join(current, "package.json");
233
+ try {
234
+ const metadata = JSON.parse(readFileSync(candidate, "utf8"));
235
+ if (metadata.name === name)
236
+ return candidate;
237
+ }
238
+ catch {
239
+ // Keep walking; an unrelated or absent manifest is not a match.
240
+ }
241
+ const parent = path.dirname(current);
242
+ if (parent === current)
243
+ return undefined;
244
+ current = parent;
245
+ }
246
+ }
247
+ function resolveInstalledPackageInfo(name) {
248
+ const require = createRequire(import.meta.url);
249
+ // Preferred: direct manifest subpath. Works when the package exports
250
+ // "./package.json" or has no restrictive exports map at all.
251
+ try {
252
+ const info = packageInfoFromManifest(require.resolve(`${name}/package.json`));
253
+ if (info)
254
+ return info;
255
+ }
256
+ catch {
257
+ // Fall through to entrypoint-based resolution below.
258
+ }
259
+ // Fallback: a tight exports map may hide ./package.json while the package
260
+ // itself is installed and runnable. Resolve the entrypoint, then walk up to
261
+ // the nearest manifest that actually names the target package so doctor
262
+ // never reports a coordinated install as unresolved.
263
+ try {
264
+ const entrypoint = require.resolve(name);
265
+ const manifestPath = nearestNamedPackageManifest(path.dirname(entrypoint), name);
266
+ const info = manifestPath
267
+ ? packageInfoFromManifest(manifestPath)
268
+ : undefined;
269
+ if (info)
270
+ return info;
271
+ }
272
+ catch {
273
+ // The package is genuinely absent from this install graph.
274
+ }
275
+ // Last resort: sibling workspace package inside the Kibi monorepo.
276
+ const local = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..", "..", "..", name.replace(/^kibi-/, ""), "package.json");
277
+ if (existsSync(local)) {
278
+ const info = packageInfoFromManifest(local);
279
+ if (info)
280
+ return info;
281
+ }
282
+ return {
283
+ version: "unresolved",
284
+ path: "unresolved",
285
+ entrypoint: "unresolved",
286
+ dependencies: undefined,
287
+ };
288
+ }
74
289
  function checkSWIProlog() {
75
290
  try {
76
291
  const output = execSync("swipl --version", { encoding: "utf-8" });
@@ -125,30 +340,50 @@ function checkKbDirectory() {
125
340
  message: "Found",
126
341
  };
127
342
  }
128
- function checkConfigJson() {
129
- const configPath = path.join(process.cwd(), ".kb/config.json");
130
- if (!existsSync(configPath)) {
343
+ function checkKbManifest() {
344
+ const status = readKbManifestStatus(process.cwd());
345
+ if (status.state === "missing") {
131
346
  return {
132
347
  passed: false,
133
348
  message: "Not found",
134
349
  remediation: "Run: kibi init",
135
350
  };
136
351
  }
137
- try {
138
- const content = readFileSync(configPath, "utf-8");
139
- JSON.parse(content);
352
+ if (status.state !== "ok") {
140
353
  return {
141
- passed: true,
142
- message: "Valid JSON",
354
+ passed: false,
355
+ message: status.state === "invalid" ? "Invalid manifest" : "Future version",
356
+ remediation: `Repair .kb/manifest.json: ${status.warning}`,
143
357
  };
144
358
  }
145
- catch (error) {
359
+ return {
360
+ passed: true,
361
+ message: `schemaVersion ${status.manifest.schemaVersion}`,
362
+ };
363
+ }
364
+ function checkLegacyStorage() {
365
+ const plan = planLegacyStorageMigration(process.cwd());
366
+ if (plan.legacyConfig === "malformed") {
146
367
  return {
147
368
  passed: false,
148
- message: "Invalid JSON",
149
- remediation: "Fix .kb/config.json syntax or run: kibi init",
369
+ message: "Legacy .kb/config.json is malformed",
370
+ remediation: plan.legacyConfigError ??
371
+ "Repair or remove the legacy .kb/config.json, then run: kibi migrate --yes",
150
372
  };
151
373
  }
374
+ if (plan.legacyConfig === "present" || plan.moves.length > 0) {
375
+ return {
376
+ passed: false,
377
+ message: plan.moves.length > 0
378
+ ? `${plan.moves.length} legacy knowledge file(s) still outside .kb/`
379
+ : "Legacy .kb/config.json still present",
380
+ remediation: "Run: kibi migrate --yes",
381
+ };
382
+ }
383
+ return {
384
+ passed: true,
385
+ message: "Canonical .kb/ layout",
386
+ };
152
387
  }
153
388
  function checkGitRepository() {
154
389
  try {
@@ -0,0 +1,8 @@
1
+ export declare function engineStatusCommand(): Promise<void>;
2
+ export declare function engineStopCommand(): Promise<void>;
3
+ export declare function storageStatusCommand(): Promise<void>;
4
+ export declare function storageCompactCommand(): Promise<void>;
5
+ export declare function storageExportCommand(options: {
6
+ output: string;
7
+ }): Promise<void>;
8
+ //# sourceMappingURL=engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/commands/engine.ts"],"names":[],"mappings":"AAkCA,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CA4BzD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAWvD;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE1D;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAkB3D;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE;IAClD,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,IAAI,CAAC,CAWhB"}
@@ -0,0 +1,103 @@
1
+ import path from "node:path";
2
+ import { EngineClient } from "../engine.js";
3
+ import { resolveBranchAttachment } from "../utils/branch-resolver.js";
4
+ function currentBranch(root) {
5
+ const resolved = resolveBranchAttachment(root);
6
+ if ("error" in resolved) {
7
+ throw new Error(resolved.error);
8
+ }
9
+ return resolved.kbBranch;
10
+ }
11
+ function client() {
12
+ const workspaceRoot = path.resolve(process.env.KIBI_WORKSPACE ??
13
+ process.env.KIBI_PROJECT_ROOT ??
14
+ process.env.KIBI_ROOT ??
15
+ process.cwd());
16
+ return new EngineClient({
17
+ workspaceRoot,
18
+ branch: currentBranch(workspaceRoot),
19
+ });
20
+ }
21
+ function workspaceRoot() {
22
+ return path.resolve(process.env.KIBI_WORKSPACE ??
23
+ process.env.KIBI_PROJECT_ROOT ??
24
+ process.env.KIBI_ROOT ??
25
+ process.cwd());
26
+ }
27
+ export async function engineStatusCommand() {
28
+ const engine = client();
29
+ try {
30
+ const result = await engine.storageStatus();
31
+ if (!result.success)
32
+ throw new Error(result.error ?? "Engine status failed");
33
+ let status = result.bindings.Status ?? null;
34
+ const encoded = result.bindings.Json;
35
+ if (encoded !== undefined) {
36
+ try {
37
+ const decoded = JSON.parse(encoded);
38
+ status = typeof decoded === "string" ? JSON.parse(decoded) : decoded;
39
+ }
40
+ catch {
41
+ // Preserve the raw Prolog dict text for diagnostics when a mismatched
42
+ // engine version cannot provide the negotiated JSON binding.
43
+ }
44
+ }
45
+ console.log(JSON.stringify({
46
+ pid: engine.getPid(),
47
+ running: engine.isRunning(),
48
+ branch: currentBranch(workspaceRoot()),
49
+ status,
50
+ }));
51
+ }
52
+ finally {
53
+ await engine.terminate();
54
+ }
55
+ }
56
+ export async function engineStopCommand() {
57
+ const engine = client();
58
+ try {
59
+ // Stopping an absent daemon must remain a no-op. Starting SWI merely to
60
+ // shut it down defeats the maintenance command and can unexpectedly
61
+ // migrate a legacy branch during an operator status check.
62
+ await engine.stop(false);
63
+ console.log("Kibi engine stopped");
64
+ }
65
+ finally {
66
+ await engine.terminate();
67
+ }
68
+ }
69
+ export async function storageStatusCommand() {
70
+ await engineStatusCommand();
71
+ }
72
+ export async function storageCompactCommand() {
73
+ const root = workspaceRoot();
74
+ const attachment = resolveBranchAttachment(root);
75
+ if ("error" in attachment)
76
+ throw new Error(attachment.error);
77
+ if (attachment.migrationRequired) {
78
+ throw new Error(`Storage compaction blocked by legacy attachment (${attachment.gitBranch} -> ${attachment.kbBranch}); migrate the branch KB first.`);
79
+ }
80
+ const engine = client();
81
+ try {
82
+ const result = await engine.compact();
83
+ if (!result.success)
84
+ throw new Error(result.error ?? "Storage compaction failed");
85
+ console.log("Kibi storage compacted");
86
+ }
87
+ finally {
88
+ await engine.terminate();
89
+ }
90
+ }
91
+ export async function storageExportCommand(options) {
92
+ const output = path.resolve(options.output);
93
+ const engine = client();
94
+ try {
95
+ const result = await engine.exportStorage(output);
96
+ if (!result.success)
97
+ throw new Error(result.error ?? "Storage export failed");
98
+ console.log(`Exported Kibi storage to ${output}`);
99
+ }
100
+ finally {
101
+ await engine.terminate();
102
+ }
103
+ }
@@ -1,4 +1,4 @@
1
- import { findGapsSpec } from "../public/operations/index.js";
1
+ import { findGapsSpec } from "../public/operations/specs/reporting.js";
2
2
  import { executeReportingSpec, printDiscoveryResult, } from "./discovery-shared.js";
3
3
  // implements REQ-002, REQ-003
4
4
  export async function gapsCommand(type, options) {
@@ -1,6 +1,9 @@
1
- export declare function gcCommand(options: {
1
+ type GcOptions = {
2
2
  dryRun?: boolean;
3
3
  force?: boolean;
4
- }): Promise<void>;
4
+ purge?: boolean;
5
+ retentionDays?: number;
6
+ };
7
+ export declare function gcCommand(options?: GcOptions): Promise<void>;
5
8
  export default gcCommand;
6
9
  //# sourceMappingURL=gc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gc.d.ts","sourceRoot":"","sources":["../../src/commands/gc.ts"],"names":[],"mappings":"AAsBA,wBAAsB,SAAS,CAAC,OAAO,EAAE;IACvC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,iBAiFA;AAED,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"gc.d.ts","sourceRoot":"","sources":["../../src/commands/gc.ts"],"names":[],"mappings":"AAWA,KAAK,SAAS,GAAG;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AA0GF,wBAAsB,SAAS,CAAC,OAAO,GAAE,SAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAgFtE;AAED,eAAe,SAAS,CAAC"}