kibi-cli 0.19.0 → 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 (506) hide show
  1. package/dist/cli-operation-loader.d.ts.map +1 -1
  2. package/dist/cli-operation-loader.js +53 -20
  3. package/dist/cli-operation-metadata.d.ts +20 -8
  4. package/dist/cli-operation-metadata.d.ts.map +1 -1
  5. package/dist/cli-operation-metadata.js +23 -8
  6. package/dist/cli-protocol.d.ts.map +1 -1
  7. package/dist/cli-protocol.js +38 -8
  8. package/dist/cli-register-foundation.d.ts.map +1 -1
  9. package/dist/cli-register-foundation.js +14 -2
  10. package/dist/cli-register-maintenance.d.ts.map +1 -1
  11. package/dist/cli-register-maintenance.js +26 -4
  12. package/dist/cli-register-reporting.d.ts.map +1 -1
  13. package/dist/cli-register-reporting.js +10 -0
  14. package/dist/cli-register-verification.d.ts +3 -0
  15. package/dist/cli-register-verification.d.ts.map +1 -0
  16. package/dist/cli-register-verification.js +16 -0
  17. package/dist/cli.d.ts.map +1 -1
  18. package/dist/cli.js +2 -0
  19. package/dist/commands/aggregated-checks.d.ts +1 -2
  20. package/dist/commands/aggregated-checks.d.ts.map +1 -1
  21. package/dist/commands/aggregated-checks.js +14 -9
  22. package/dist/commands/branch.d.ts +36 -0
  23. package/dist/commands/branch.d.ts.map +1 -1
  24. package/dist/commands/branch.js +371 -40
  25. package/dist/commands/check.d.ts.map +1 -1
  26. package/dist/commands/check.js +20 -67
  27. package/dist/commands/discovery-shared.d.ts.map +1 -1
  28. package/dist/commands/discovery-shared.js +10 -19
  29. package/dist/commands/doctor.d.ts +4 -1
  30. package/dist/commands/doctor.d.ts.map +1 -1
  31. package/dist/commands/doctor.js +259 -24
  32. package/dist/commands/engine.d.ts.map +1 -1
  33. package/dist/commands/engine.js +10 -7
  34. package/dist/commands/gc.d.ts +5 -2
  35. package/dist/commands/gc.d.ts.map +1 -1
  36. package/dist/commands/gc.js +140 -71
  37. package/dist/commands/github-init.d.ts +56 -0
  38. package/dist/commands/github-init.d.ts.map +1 -0
  39. package/dist/commands/github-init.js +310 -0
  40. package/dist/commands/init-helpers.d.ts +1 -1
  41. package/dist/commands/init-helpers.d.ts.map +1 -1
  42. package/dist/commands/init-helpers.js +73 -25
  43. package/dist/commands/init.d.ts +2 -0
  44. package/dist/commands/init.d.ts.map +1 -1
  45. package/dist/commands/init.js +79 -24
  46. package/dist/commands/legacy-storage-migration.d.ts +54 -0
  47. package/dist/commands/legacy-storage-migration.d.ts.map +1 -0
  48. package/dist/commands/legacy-storage-migration.js +277 -0
  49. package/dist/commands/migrate.d.ts +7 -0
  50. package/dist/commands/migrate.d.ts.map +1 -1
  51. package/dist/commands/migrate.js +244 -91
  52. package/dist/commands/report.d.ts +24 -0
  53. package/dist/commands/report.d.ts.map +1 -0
  54. package/dist/commands/report.js +191 -0
  55. package/dist/commands/sync/cache.d.ts +16 -3
  56. package/dist/commands/sync/cache.d.ts.map +1 -1
  57. package/dist/commands/sync/cache.js +111 -4
  58. package/dist/commands/sync/discovery.d.ts +23 -2
  59. package/dist/commands/sync/discovery.d.ts.map +1 -1
  60. package/dist/commands/sync/discovery.js +196 -15
  61. package/dist/commands/sync/extraction.d.ts +8 -1
  62. package/dist/commands/sync/extraction.d.ts.map +1 -1
  63. package/dist/commands/sync/extraction.js +38 -4
  64. package/dist/commands/sync/manifest.d.ts +8 -5
  65. package/dist/commands/sync/manifest.d.ts.map +1 -1
  66. package/dist/commands/sync/manifest.js +142 -39
  67. package/dist/commands/sync/persistence.d.ts.map +1 -1
  68. package/dist/commands/sync/persistence.js +3 -0
  69. package/dist/commands/sync.d.ts +6 -0
  70. package/dist/commands/sync.d.ts.map +1 -1
  71. package/dist/commands/sync.js +304 -79
  72. package/dist/commands/verify.d.ts +10 -0
  73. package/dist/commands/verify.d.ts.map +1 -0
  74. package/dist/commands/verify.js +126 -0
  75. package/dist/diagnostics.d.ts +1 -1
  76. package/dist/diagnostics.d.ts.map +1 -1
  77. package/dist/engine.d.ts +96 -3
  78. package/dist/engine.d.ts.map +1 -1
  79. package/dist/engine.js +392 -23
  80. package/dist/env.d.ts.map +1 -1
  81. package/dist/env.js +5 -6
  82. package/dist/extractors/manifest.d.ts +8 -1
  83. package/dist/extractors/manifest.d.ts.map +1 -1
  84. package/dist/extractors/manifest.js +51 -9
  85. package/dist/extractors/markdown.d.ts +2 -1
  86. package/dist/extractors/markdown.d.ts.map +1 -1
  87. package/dist/extractors/markdown.js +21 -3
  88. package/dist/extractors/playwright-cases.d.ts +24 -0
  89. package/dist/extractors/playwright-cases.d.ts.map +1 -0
  90. package/dist/extractors/playwright-cases.js +126 -0
  91. package/dist/extractors/relationships.d.ts.map +1 -1
  92. package/dist/extractors/relationships.js +1 -0
  93. package/dist/extractors/symbol-coordinates.d.ts +81 -3
  94. package/dist/extractors/symbol-coordinates.d.ts.map +1 -1
  95. package/dist/extractors/symbol-coordinates.js +389 -51
  96. package/dist/extractors/symbols-coordinator.js +11 -1
  97. package/dist/intent-search.d.ts +60 -0
  98. package/dist/intent-search.d.ts.map +1 -0
  99. package/dist/intent-search.js +433 -0
  100. package/dist/operations/bootstrap/activation.d.ts.map +1 -0
  101. package/dist/operations/{autopilot → bootstrap}/activation.js +48 -31
  102. package/dist/operations/{autopilot → bootstrap}/candidate-helpers.d.ts.map +1 -1
  103. package/dist/operations/bootstrap/candidates.d.ts +4 -0
  104. package/dist/operations/{autopilot → bootstrap}/candidates.d.ts.map +1 -1
  105. package/dist/operations/{autopilot → bootstrap}/candidates.js +22 -8
  106. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.d.ts +2 -2
  107. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.d.ts.map +1 -1
  108. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.js +46 -6
  109. package/dist/operations/{autopilot → bootstrap}/discovery.d.ts +1 -1
  110. package/dist/operations/bootstrap/discovery.d.ts.map +1 -0
  111. package/dist/operations/{autopilot → bootstrap}/discovery.js +21 -14
  112. package/dist/operations/bootstrap/generate.d.ts +8 -0
  113. package/dist/operations/bootstrap/generate.d.ts.map +1 -0
  114. package/dist/operations/bootstrap/generate.js +204 -0
  115. package/dist/operations/{autopilot → bootstrap}/guidance-actions.d.ts +2 -2
  116. package/dist/operations/{autopilot → bootstrap}/guidance-actions.d.ts.map +1 -1
  117. package/dist/operations/{autopilot → bootstrap}/guidance-actions.js +4 -4
  118. package/dist/operations/{autopilot → bootstrap}/guidance.d.ts +2 -2
  119. package/dist/operations/{autopilot → bootstrap}/guidance.d.ts.map +1 -1
  120. package/dist/operations/{autopilot → bootstrap}/guidance.js +2 -0
  121. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.d.ts +2 -2
  122. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.d.ts.map +1 -1
  123. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.js +4 -3
  124. package/dist/operations/bootstrap/presentation.d.ts +15 -0
  125. package/dist/operations/bootstrap/presentation.d.ts.map +1 -0
  126. package/dist/operations/bootstrap/presentation.js +177 -0
  127. package/dist/operations/{autopilot → bootstrap}/requirement-claims.d.ts.map +1 -1
  128. package/dist/operations/{autopilot → bootstrap}/types.d.ts +63 -21
  129. package/dist/operations/bootstrap/types.d.ts.map +1 -0
  130. package/dist/operations/bootstrap/types.js +25 -0
  131. package/dist/operations/modeling/model-requirement.d.ts.map +1 -1
  132. package/dist/operations/modeling/model-requirement.js +4 -17
  133. package/dist/operations/modeling/predicate-applicability.d.ts +16 -0
  134. package/dist/operations/modeling/predicate-applicability.d.ts.map +1 -0
  135. package/dist/operations/modeling/predicate-applicability.js +276 -0
  136. package/dist/operations/modeling/predicate-applyplan.d.ts +13 -2
  137. package/dist/operations/modeling/predicate-applyplan.d.ts.map +1 -1
  138. package/dist/operations/modeling/predicate-applyplan.js +100 -3
  139. package/dist/operations/modeling/predicate-bindings.d.ts +6 -0
  140. package/dist/operations/modeling/predicate-bindings.d.ts.map +1 -0
  141. package/dist/operations/modeling/predicate-bindings.js +122 -0
  142. package/dist/operations/modeling/predicate-catalog-4.d.ts.map +1 -1
  143. package/dist/operations/modeling/predicate-catalog-4.js +155 -0
  144. package/dist/operations/modeling/predicate-inference-1.d.ts.map +1 -1
  145. package/dist/operations/modeling/predicate-inference-1.js +8 -0
  146. package/dist/operations/modeling/predicate-inference-launcher.d.ts +10 -0
  147. package/dist/operations/modeling/predicate-inference-launcher.d.ts.map +1 -0
  148. package/dist/operations/modeling/predicate-inference-launcher.js +13 -0
  149. package/dist/operations/modeling/predicate-inference.d.ts.map +1 -1
  150. package/dist/operations/modeling/predicate-inference.js +4 -0
  151. package/dist/operations/modeling/predicate-loader.d.ts.map +1 -1
  152. package/dist/operations/modeling/predicate-loader.js +7 -0
  153. package/dist/operations/modeling/predicate-ranker.d.ts +8 -1
  154. package/dist/operations/modeling/predicate-ranker.d.ts.map +1 -1
  155. package/dist/operations/modeling/predicate-ranker.js +156 -24
  156. package/dist/operations/modeling/predicate-score-3.d.ts.map +1 -1
  157. package/dist/operations/modeling/predicate-score-3.js +6 -0
  158. package/dist/operations/modeling/predicate-types.d.ts +34 -0
  159. package/dist/operations/modeling/predicate-types.d.ts.map +1 -1
  160. package/dist/operations/modeling/predicate-usage-hints-3.d.ts.map +1 -1
  161. package/dist/operations/modeling/predicate-usage-hints-3.js +40 -0
  162. package/dist/operations/modeling/predicate-utils.d.ts.map +1 -1
  163. package/dist/operations/modeling/predicate-utils.js +2 -0
  164. package/dist/operations/modeling/suggest-predicates.d.ts +1 -1
  165. package/dist/operations/modeling/suggest-predicates.d.ts.map +1 -1
  166. package/dist/operations/modeling/suggest-predicates.js +170 -32
  167. package/dist/operations/mutation/delete.d.ts.map +1 -1
  168. package/dist/operations/mutation/delete.js +415 -19
  169. package/dist/operations/mutation/entity-projection.d.ts +11 -0
  170. package/dist/operations/mutation/entity-projection.d.ts.map +1 -0
  171. package/dist/operations/mutation/entity-projection.js +14 -0
  172. package/dist/operations/mutation/relationships.d.ts +10 -0
  173. package/dist/operations/mutation/relationships.d.ts.map +1 -1
  174. package/dist/operations/mutation/relationships.js +71 -1
  175. package/dist/operations/mutation/serialization.d.ts.map +1 -1
  176. package/dist/operations/mutation/serialization.js +1 -0
  177. package/dist/operations/mutation/source-authoring.d.ts +61 -0
  178. package/dist/operations/mutation/source-authoring.d.ts.map +1 -0
  179. package/dist/operations/mutation/source-authoring.js +543 -0
  180. package/dist/operations/mutation/symbol-compiler-lock.d.ts +51 -0
  181. package/dist/operations/mutation/symbol-compiler-lock.d.ts.map +1 -0
  182. package/dist/operations/mutation/symbol-compiler-lock.js +274 -0
  183. package/dist/operations/mutation/symbol-granularity.d.ts.map +1 -1
  184. package/dist/operations/mutation/symbol-granularity.js +34 -3
  185. package/dist/operations/mutation/symbol-refresh.d.ts +18 -1
  186. package/dist/operations/mutation/symbol-refresh.d.ts.map +1 -1
  187. package/dist/operations/mutation/symbol-refresh.js +225 -63
  188. package/dist/operations/mutation/types.d.ts +57 -1
  189. package/dist/operations/mutation/types.d.ts.map +1 -1
  190. package/dist/operations/mutation/upsert.d.ts.map +1 -1
  191. package/dist/operations/mutation/upsert.js +363 -24
  192. package/dist/operations/mutation/validation.d.ts.map +1 -1
  193. package/dist/operations/mutation/validation.js +1 -0
  194. package/dist/operations/planning/apply-plan.d.ts +117 -0
  195. package/dist/operations/planning/apply-plan.d.ts.map +1 -0
  196. package/dist/operations/planning/apply-plan.js +1437 -0
  197. package/dist/operations/planning/compile-intent.d.ts +106 -0
  198. package/dist/operations/planning/compile-intent.d.ts.map +1 -0
  199. package/dist/operations/planning/compile-intent.js +562 -0
  200. package/dist/operations/semantic-advisor/analyze-prose.d.ts.map +1 -1
  201. package/dist/operations/semantic-advisor/analyze-prose.js +6 -2
  202. package/dist/operations/semantic-advisor/clauses.d.ts.map +1 -1
  203. package/dist/operations/semantic-advisor/clauses.js +15 -2
  204. package/dist/operations/semantic-advisor/ingestion-boundary.d.ts.map +1 -1
  205. package/dist/operations/semantic-advisor/ingestion-boundary.js +7 -3
  206. package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts +51 -0
  207. package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts.map +1 -0
  208. package/dist/operations/semantic-advisor/predicate-rules-launcher.js +96 -0
  209. package/dist/operations/semantic-advisor/types.d.ts +13 -5
  210. package/dist/operations/semantic-advisor/types.d.ts.map +1 -1
  211. package/dist/operations/verification/ingest-verification.d.ts +29 -0
  212. package/dist/operations/verification/ingest-verification.d.ts.map +1 -0
  213. package/dist/operations/verification/ingest-verification.js +192 -0
  214. package/dist/prolog/codec.d.ts.map +1 -1
  215. package/dist/prolog/codec.js +2 -1
  216. package/dist/prolog.d.ts.map +1 -1
  217. package/dist/prolog.js +27 -8
  218. package/dist/public/branch-resolver.d.ts +1 -0
  219. package/dist/public/branch-resolver.d.ts.map +1 -1
  220. package/dist/public/branch-resolver.js +1 -0
  221. package/dist/public/check-types.d.ts +2 -2
  222. package/dist/public/check-types.d.ts.map +1 -1
  223. package/dist/public/check-types.js +16 -16
  224. package/dist/public/diagnostic-usage.d.ts.map +1 -1
  225. package/dist/public/diagnostic-usage.js +69 -1
  226. package/dist/public/distribution-parity.d.ts +1 -1
  227. package/dist/public/distribution-parity.d.ts.map +1 -1
  228. package/dist/public/distribution-parity.js +1 -0
  229. package/dist/public/ignore-policy.d.ts.map +1 -1
  230. package/dist/public/ignore-policy.js +16 -4
  231. package/dist/public/impact/coverage-depth-quality.d.ts +6 -1
  232. package/dist/public/impact/coverage-depth-quality.d.ts.map +1 -1
  233. package/dist/public/impact/coverage-depth-quality.js +21 -3
  234. package/dist/public/impact/full-kb-quality.d.ts +4 -2
  235. package/dist/public/impact/full-kb-quality.d.ts.map +1 -1
  236. package/dist/public/impact/full-kb-quality.js +61 -1
  237. package/dist/public/impact/manifest.d.ts.map +1 -1
  238. package/dist/public/impact/manifest.js +2 -5
  239. package/dist/public/operational-artifacts.d.ts.map +1 -1
  240. package/dist/public/operational-artifacts.js +7 -1
  241. package/dist/public/operations/catalog.d.ts +682 -67
  242. package/dist/public/operations/catalog.d.ts.map +1 -1
  243. package/dist/public/operations/catalog.js +126 -4
  244. package/dist/public/operations/check-executor.d.ts +2 -2
  245. package/dist/public/operations/check-executor.d.ts.map +1 -1
  246. package/dist/public/operations/check-executor.js +72 -13
  247. package/dist/public/operations/check-format-shared.d.ts +3 -0
  248. package/dist/public/operations/check-format-shared.d.ts.map +1 -1
  249. package/dist/public/operations/check-format-shared.js +3 -0
  250. package/dist/public/operations/check-helpers.d.ts +27 -2
  251. package/dist/public/operations/check-helpers.d.ts.map +1 -1
  252. package/dist/public/operations/check-helpers.js +62 -26
  253. package/dist/public/operations/contracts.d.ts +11 -0
  254. package/dist/public/operations/contracts.d.ts.map +1 -0
  255. package/dist/public/operations/contracts.js +325 -0
  256. package/dist/public/operations/discovery-executors.d.ts +37 -1
  257. package/dist/public/operations/discovery-executors.d.ts.map +1 -1
  258. package/dist/public/operations/discovery-executors.js +206 -6
  259. package/dist/public/operations/index.d.ts +9 -4
  260. package/dist/public/operations/index.d.ts.map +1 -1
  261. package/dist/public/operations/index.js +8 -3
  262. package/dist/public/operations/migration-plan.d.ts +101 -0
  263. package/dist/public/operations/migration-plan.d.ts.map +1 -0
  264. package/dist/public/operations/migration-plan.js +537 -0
  265. package/dist/public/operations/node-ports.d.ts.map +1 -1
  266. package/dist/public/operations/node-ports.js +68 -8
  267. package/dist/public/operations/prolog-json.d.ts +14 -0
  268. package/dist/public/operations/prolog-json.d.ts.map +1 -1
  269. package/dist/public/operations/prolog-json.js +44 -5
  270. package/dist/public/operations/repair-plan.d.ts.map +1 -1
  271. package/dist/public/operations/repair-plan.js +1 -0
  272. package/dist/public/operations/result-envelope.d.ts +13 -0
  273. package/dist/public/operations/result-envelope.d.ts.map +1 -0
  274. package/dist/public/operations/result-envelope.js +104 -0
  275. package/dist/public/operations/runtime-types.d.ts +97 -7
  276. package/dist/public/operations/runtime-types.d.ts.map +1 -1
  277. package/dist/public/operations/source-relationship-parity.d.ts +13 -0
  278. package/dist/public/operations/source-relationship-parity.d.ts.map +1 -0
  279. package/dist/public/operations/source-relationship-parity.js +162 -0
  280. package/dist/public/operations/specs/{autopilot.d.ts → bootstrap.d.ts} +9 -9
  281. package/dist/public/operations/specs/bootstrap.d.ts.map +1 -0
  282. package/dist/public/operations/specs/{autopilot.js → bootstrap.js} +8 -7
  283. package/dist/public/operations/specs/check.d.ts +4 -4
  284. package/dist/public/operations/specs/check.d.ts.map +1 -1
  285. package/dist/public/operations/specs/check.js +4 -3
  286. package/dist/public/operations/specs/discovery.d.ts +87 -3
  287. package/dist/public/operations/specs/discovery.d.ts.map +1 -1
  288. package/dist/public/operations/specs/discovery.js +53 -3
  289. package/dist/public/operations/specs/modeling.d.ts +3 -3
  290. package/dist/public/operations/specs/modeling.js +3 -3
  291. package/dist/public/operations/specs/mutation-schemas.d.ts +190 -47
  292. package/dist/public/operations/specs/mutation-schemas.d.ts.map +1 -1
  293. package/dist/public/operations/specs/mutation-schemas.js +3 -1
  294. package/dist/public/operations/specs/mutation.d.ts +42 -2
  295. package/dist/public/operations/specs/mutation.d.ts.map +1 -1
  296. package/dist/public/operations/specs/mutation.js +26 -2
  297. package/dist/public/operations/specs/planning.d.ts +270 -0
  298. package/dist/public/operations/specs/planning.d.ts.map +1 -0
  299. package/dist/public/operations/specs/planning.js +191 -0
  300. package/dist/public/operations/specs/reporting.d.ts +4 -1
  301. package/dist/public/operations/specs/reporting.d.ts.map +1 -1
  302. package/dist/public/operations/specs/reporting.js +46 -1
  303. package/dist/public/operations/specs/upsert.d.ts +204 -47
  304. package/dist/public/operations/specs/upsert.d.ts.map +1 -1
  305. package/dist/public/operations/specs/upsert.js +9 -0
  306. package/dist/public/operations/specs/verification.d.ts +78 -0
  307. package/dist/public/operations/specs/verification.d.ts.map +1 -0
  308. package/dist/public/operations/specs/verification.js +62 -0
  309. package/dist/public/operations/symbol-repair-plan.d.ts +11 -0
  310. package/dist/public/operations/symbol-repair-plan.d.ts.map +1 -0
  311. package/dist/public/operations/symbol-repair-plan.js +123 -0
  312. package/dist/public/operations/types.d.ts +52 -1
  313. package/dist/public/operations/types.d.ts.map +1 -1
  314. package/dist/public/playwright-case-id.d.ts +8 -0
  315. package/dist/public/playwright-case-id.d.ts.map +1 -0
  316. package/dist/public/playwright-case-id.js +25 -0
  317. package/dist/public/schemas/entity.d.ts.map +1 -1
  318. package/dist/public/schemas/entity.js +4 -2
  319. package/dist/public/skills/kibi-bootstrap/SKILL.md +58 -0
  320. package/dist/public/skills/kibi-bootstrap/resources/bootstrap.md +11 -0
  321. package/dist/public/skills/kibi-bootstrap/resources/branch-lifecycle.md +7 -0
  322. package/dist/public/skills/kibi-bootstrap/resources/operation-access.md +5 -0
  323. package/dist/public/skills/kibi-bootstrap/resources/source-authoring.md +8 -0
  324. package/dist/public/skills/kibi-freshness/SKILL.md +39 -9
  325. package/dist/public/skills/kibi-freshness/resources/branch-lifecycle.md +7 -0
  326. package/dist/public/skills/kibi-freshness/resources/operation-access.md +6 -0
  327. package/dist/public/skills/kibi-freshness/resources/source-authoring.md +7 -0
  328. package/dist/public/skills/kibi-traceability/SKILL.md +47 -47
  329. package/dist/public/skills/kibi-traceability/resources/branch-lifecycle.md +7 -0
  330. package/dist/public/skills/kibi-traceability/resources/operation-access.md +5 -0
  331. package/dist/public/skills/kibi-traceability/resources/source-authoring.md +6 -0
  332. package/dist/public/skills/kibi-traceability/resources/traceability.md +8 -0
  333. package/dist/public/skills/kibi-usage/SKILL.md +115 -239
  334. package/dist/public/skills/kibi-usage/resources/branch-lifecycle.md +31 -0
  335. package/dist/public/skills/kibi-usage/resources/kb-improvement.md +38 -0
  336. package/dist/public/skills/kibi-usage/resources/operation-access.md +36 -38
  337. package/dist/public/skills/kibi-usage/resources/relationship-directions.md +3 -3
  338. package/dist/public/skills/kibi-usage/resources/source-authoring.md +31 -0
  339. package/dist/public/skills/kibi-usage/resources/workflows.md +56 -3
  340. package/dist/public/symbol-granularity.d.ts +1 -1
  341. package/dist/public/symbol-granularity.d.ts.map +1 -1
  342. package/dist/public/symbol-granularity.js +1 -0
  343. package/dist/public/telemetry-acceptance.d.ts +7 -0
  344. package/dist/public/telemetry-acceptance.d.ts.map +1 -1
  345. package/dist/public/telemetry-acceptance.js +8 -1
  346. package/dist/public/telemetry-remediation.js +1 -1
  347. package/dist/public/verification-receipt.d.ts +206 -39
  348. package/dist/public/verification-receipt.d.ts.map +1 -1
  349. package/dist/public/verification-receipt.js +171 -4
  350. package/dist/relationships/shards.d.ts +16 -0
  351. package/dist/relationships/shards.d.ts.map +1 -1
  352. package/dist/relationships/shards.js +87 -2
  353. package/dist/report/brand.d.ts +19 -0
  354. package/dist/report/brand.d.ts.map +1 -0
  355. package/dist/report/brand.js +112 -0
  356. package/dist/report/html-report.d.ts +19 -0
  357. package/dist/report/html-report.d.ts.map +1 -0
  358. package/dist/report/html-report.js +963 -0
  359. package/dist/report/relative-time.d.ts +4 -0
  360. package/dist/report/relative-time.d.ts.map +1 -0
  361. package/dist/report/relative-time.js +46 -0
  362. package/dist/report/report-view.d.ts +17 -0
  363. package/dist/report/report-view.d.ts.map +1 -0
  364. package/dist/report/report-view.js +33 -0
  365. package/dist/report/repository.d.ts +35 -0
  366. package/dist/report/repository.d.ts.map +1 -0
  367. package/dist/report/repository.js +151 -0
  368. package/dist/runtime/cli-runtime.d.ts.map +1 -1
  369. package/dist/runtime/cli-runtime.js +82 -22
  370. package/dist/schemas/entity.schema.json +1148 -273
  371. package/dist/traceability/evidence-model.d.ts +2 -2
  372. package/dist/traceability/evidence-model.d.ts.map +1 -1
  373. package/dist/traceability/evidence-model.js +2 -2
  374. package/dist/traceability/git-staged.d.ts.map +1 -1
  375. package/dist/traceability/git-staged.js +15 -40
  376. package/dist/traceability/markdown-validate.d.ts.map +1 -1
  377. package/dist/traceability/markdown-validate.js +12 -7
  378. package/dist/traceability/staged-impact-contract.d.ts +3 -3
  379. package/dist/traceability/staged-impact-contract.d.ts.map +1 -1
  380. package/dist/traceability/staged-impact-contract.js +10 -38
  381. package/dist/traceability/staged-symbols-manifest.d.ts.map +1 -1
  382. package/dist/traceability/staged-symbols-manifest.js +8 -3
  383. package/dist/traceability/temp-kb.d.ts.map +1 -1
  384. package/dist/traceability/temp-kb.js +3 -0
  385. package/dist/types/entities.d.ts +3 -0
  386. package/dist/types/entities.d.ts.map +1 -1
  387. package/dist/utils/branch-resolver.d.ts +24 -10
  388. package/dist/utils/branch-resolver.d.ts.map +1 -1
  389. package/dist/utils/branch-resolver.js +121 -38
  390. package/dist/utils/branch-store-locator.d.ts +23 -0
  391. package/dist/utils/branch-store-locator.d.ts.map +1 -0
  392. package/dist/utils/branch-store-locator.js +90 -0
  393. package/dist/utils/branch-store.d.ts +15 -0
  394. package/dist/utils/branch-store.d.ts.map +1 -0
  395. package/dist/utils/branch-store.js +130 -0
  396. package/dist/utils/config.d.ts +39 -37
  397. package/dist/utils/config.d.ts.map +1 -1
  398. package/dist/utils/config.js +107 -119
  399. package/dist/utils/kb-manifest.d.ts +35 -0
  400. package/dist/utils/kb-manifest.d.ts.map +1 -0
  401. package/dist/utils/kb-manifest.js +154 -0
  402. package/dist/utils/kb-paths.d.ts +54 -0
  403. package/dist/utils/kb-paths.d.ts.map +1 -0
  404. package/dist/utils/kb-paths.js +125 -0
  405. package/dist/utils/manifest-paths.d.ts +4 -4
  406. package/dist/utils/manifest-paths.d.ts.map +1 -1
  407. package/dist/utils/manifest-paths.js +8 -56
  408. package/dist/utils/rule-registry.d.ts +48 -20
  409. package/dist/utils/rule-registry.d.ts.map +1 -1
  410. package/dist/utils/rule-registry.js +82 -77
  411. package/dist/utils/schema-version.d.ts +5 -5
  412. package/dist/utils/schema-version.d.ts.map +1 -1
  413. package/dist/utils/schema-version.js +26 -6
  414. package/dist/utils/strict-modeling.d.ts +0 -4
  415. package/dist/utils/strict-modeling.d.ts.map +1 -1
  416. package/dist/utils/strict-modeling.js +7 -8
  417. package/dist/verification/playwright-reporter.d.ts +21 -0
  418. package/dist/verification/playwright-reporter.d.ts.map +1 -0
  419. package/dist/verification/playwright-reporter.js +114 -0
  420. package/package.json +46 -7
  421. package/schema/config.json +2 -2
  422. package/schema/manifest.json +26 -0
  423. package/src/public/branch-resolver.ts +1 -0
  424. package/src/public/check-types.ts +22 -19
  425. package/src/public/diagnostic-usage.ts +79 -1
  426. package/src/public/distribution-parity.ts +1 -0
  427. package/src/public/ignore-policy.ts +16 -10
  428. package/src/public/impact/coverage-depth-quality.ts +36 -0
  429. package/src/public/impact/full-kb-quality.ts +118 -5
  430. package/src/public/impact/manifest.ts +2 -4
  431. package/src/public/operational-artifacts.ts +9 -1
  432. package/src/public/operations/catalog.ts +146 -9
  433. package/src/public/operations/check-executor.ts +102 -15
  434. package/src/public/operations/check-format-shared.ts +6 -0
  435. package/src/public/operations/check-helpers.ts +74 -35
  436. package/src/public/operations/contracts.ts +366 -0
  437. package/src/public/operations/discovery-executors.ts +299 -12
  438. package/src/public/operations/index.ts +9 -4
  439. package/src/public/operations/migration-plan.ts +740 -0
  440. package/src/public/operations/node-ports.ts +84 -10
  441. package/src/public/operations/prolog-json.ts +60 -5
  442. package/src/public/operations/repair-plan.ts +1 -0
  443. package/src/public/operations/result-envelope.ts +136 -0
  444. package/src/public/operations/runtime-types.ts +91 -5
  445. package/src/public/operations/source-relationship-parity.ts +226 -0
  446. package/src/public/operations/specs/{autopilot.ts → bootstrap.ts} +17 -16
  447. package/src/public/operations/specs/check.ts +4 -3
  448. package/src/public/operations/specs/discovery.ts +57 -3
  449. package/src/public/operations/specs/modeling.ts +3 -3
  450. package/src/public/operations/specs/mutation-schemas.ts +6 -1
  451. package/src/public/operations/specs/mutation.ts +27 -2
  452. package/src/public/operations/specs/planning.ts +234 -0
  453. package/src/public/operations/specs/reporting.ts +55 -1
  454. package/src/public/operations/specs/upsert.ts +10 -0
  455. package/src/public/operations/specs/verification.ts +78 -0
  456. package/src/public/operations/symbol-repair-plan.ts +164 -0
  457. package/src/public/operations/types.ts +62 -1
  458. package/src/public/playwright-case-id.ts +35 -0
  459. package/src/public/schemas/entity.ts +7 -2
  460. package/src/public/skills/kibi-bootstrap/SKILL.md +58 -0
  461. package/src/public/skills/kibi-bootstrap/resources/bootstrap.md +11 -0
  462. package/src/public/skills/kibi-bootstrap/resources/branch-lifecycle.md +7 -0
  463. package/src/public/skills/kibi-bootstrap/resources/operation-access.md +5 -0
  464. package/src/public/skills/kibi-bootstrap/resources/source-authoring.md +8 -0
  465. package/src/public/skills/kibi-freshness/SKILL.md +39 -9
  466. package/src/public/skills/kibi-freshness/resources/branch-lifecycle.md +7 -0
  467. package/src/public/skills/kibi-freshness/resources/operation-access.md +6 -0
  468. package/src/public/skills/kibi-freshness/resources/source-authoring.md +7 -0
  469. package/src/public/skills/kibi-traceability/SKILL.md +47 -47
  470. package/src/public/skills/kibi-traceability/resources/branch-lifecycle.md +7 -0
  471. package/src/public/skills/kibi-traceability/resources/operation-access.md +5 -0
  472. package/src/public/skills/kibi-traceability/resources/source-authoring.md +6 -0
  473. package/src/public/skills/kibi-traceability/resources/traceability.md +8 -0
  474. package/src/public/skills/kibi-usage/SKILL.md +115 -239
  475. package/src/public/skills/kibi-usage/resources/branch-lifecycle.md +31 -0
  476. package/src/public/skills/kibi-usage/resources/kb-improvement.md +38 -0
  477. package/src/public/skills/kibi-usage/resources/operation-access.md +36 -38
  478. package/src/public/skills/kibi-usage/resources/relationship-directions.md +3 -3
  479. package/src/public/skills/kibi-usage/resources/source-authoring.md +31 -0
  480. package/src/public/skills/kibi-usage/resources/workflows.md +56 -3
  481. package/src/public/symbol-granularity.ts +1 -0
  482. package/src/public/telemetry-acceptance.ts +16 -1
  483. package/src/public/telemetry-remediation.ts +1 -1
  484. package/src/public/verification-receipt.ts +248 -6
  485. package/src/schemas/entity.schema.json +1148 -273
  486. package/templates/github/kibi-badge.yml +86 -0
  487. package/templates/github/kibi-report.yml +84 -0
  488. package/dist/operations/autopilot/activation.d.ts.map +0 -1
  489. package/dist/operations/autopilot/candidates.d.ts +0 -4
  490. package/dist/operations/autopilot/discovery.d.ts.map +0 -1
  491. package/dist/operations/autopilot/generate.d.ts +0 -8
  492. package/dist/operations/autopilot/generate.d.ts.map +0 -1
  493. package/dist/operations/autopilot/generate.js +0 -112
  494. package/dist/operations/autopilot/presentation.d.ts +0 -13
  495. package/dist/operations/autopilot/presentation.d.ts.map +0 -1
  496. package/dist/operations/autopilot/presentation.js +0 -91
  497. package/dist/operations/autopilot/types.d.ts.map +0 -1
  498. package/dist/operations/autopilot/types.js +0 -8
  499. package/dist/public/operations/specs/autopilot.d.ts.map +0 -1
  500. package/dist/public/skills/init-kibi/SKILL.md +0 -62
  501. package/src/public/skills/init-kibi/SKILL.md +0 -62
  502. /package/dist/operations/{autopilot → bootstrap}/activation.d.ts +0 -0
  503. /package/dist/operations/{autopilot → bootstrap}/candidate-helpers.d.ts +0 -0
  504. /package/dist/operations/{autopilot → bootstrap}/candidate-helpers.js +0 -0
  505. /package/dist/operations/{autopilot → bootstrap}/requirement-claims.d.ts +0 -0
  506. /package/dist/operations/{autopilot → bootstrap}/requirement-claims.js +0 -0
@@ -1,13 +1,12 @@
1
1
  import path from "node:path";
2
2
  import { EngineClient } from "../engine.js";
3
- import { getBranchOverride } from "../env.js";
4
3
  import { PrologProcess, resolveKbPlPath } from "../prolog.js";
5
4
  import { escapeAtom } from "../prolog/codec.js";
6
5
  import { executeOperation, } from "../public/operations/runtime-types.js";
7
6
  import { createCliRuntime } from "../runtime/cli-runtime.js";
7
+ import { resolveBranchAttachment } from "../utils/branch-resolver.js";
8
8
  import { safeCleanupProlog } from "../utils/prolog-cleanup.js";
9
9
  import { renderDiscoveryTable } from "./discovery-table.js";
10
- import { getCurrentBranch } from "./init-helpers.js";
11
10
  export { renderCoverageTable } from "./discovery-table.js";
12
11
  // implements REQ-kibi-operation-interface-parity
13
12
  export async function executeReportingSpec(spec, input, options = {}) {
@@ -22,13 +21,10 @@ export async function withAttachedBranchProlog(callback, deps) {
22
21
  let attached = false;
23
22
  let branchName;
24
23
  try {
25
- try {
26
- branchName =
27
- getBranchOverride() || (await getCurrentBranch(process.cwd()));
28
- }
29
- catch {
30
- branchName = getBranchOverride() || "main";
31
- }
24
+ const attachment = resolveBranchAttachment(process.cwd());
25
+ if ("error" in attachment)
26
+ throw new Error(attachment.error);
27
+ branchName = attachment.kbBranch;
32
28
  if (usesEngine) {
33
29
  engine = new EngineClient({
34
30
  workspaceRoot: process.cwd(),
@@ -42,9 +38,8 @@ export async function withAttachedBranchProlog(callback, deps) {
42
38
  prolog = createProlog({ timeout: 120000 });
43
39
  await prolog.start();
44
40
  }
45
- await prolog.query("set_prolog_flag(answer_write_options, [max_depth(0), spacing(next_argument)])");
46
41
  if (!usesEngine) {
47
- const kbPath = path.join(process.cwd(), ".kb/branches", branchName);
42
+ const kbPath = attachment.storePath;
48
43
  const attachResult = await prolog.query(`kb_attach('${escapeAtom(kbPath)}')`);
49
44
  if (!attachResult.success) {
50
45
  throw new Error(`Failed to attach KB: ${attachResult.error || "Unknown error"}`);
@@ -65,14 +60,10 @@ export async function withAttachedBranchProlog(callback, deps) {
65
60
  // implements REQ-003
66
61
  // implements REQ-003
67
62
  export async function resolveCurrentKbPath() {
68
- let branch;
69
- try {
70
- branch = getBranchOverride() || (await getCurrentBranch(process.cwd()));
71
- }
72
- catch {
73
- branch = getBranchOverride() || "main";
74
- }
75
- 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;
76
67
  }
77
68
  // implements REQ-003
78
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 {
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/commands/engine.ts"],"names":[],"mappings":"AAwCA,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,CAU3D;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE;IAClD,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,IAAI,CAAC,CAWhB"}
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"}
@@ -1,16 +1,12 @@
1
1
  import path from "node:path";
2
2
  import { EngineClient } from "../engine.js";
3
- import { resolveActiveBranch } from "../utils/branch-resolver.js";
3
+ import { resolveBranchAttachment } from "../utils/branch-resolver.js";
4
4
  function currentBranch(root) {
5
- const resolved = resolveActiveBranch(root);
5
+ const resolved = resolveBranchAttachment(root);
6
6
  if ("error" in resolved) {
7
- if (resolved.code === "NOT_A_GIT_REPO" ||
8
- resolved.code === "GIT_NOT_AVAILABLE") {
9
- return "main";
10
- }
11
7
  throw new Error(resolved.error);
12
8
  }
13
- return resolved.branch;
9
+ return resolved.kbBranch;
14
10
  }
15
11
  function client() {
16
12
  const workspaceRoot = path.resolve(process.env.KIBI_WORKSPACE ??
@@ -74,6 +70,13 @@ export async function storageStatusCommand() {
74
70
  await engineStatusCommand();
75
71
  }
76
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
+ }
77
80
  const engine = client();
78
81
  try {
79
82
  const result = await engine.compact();
@@ -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"}