kibi-cli 0.19.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (672) hide show
  1. package/dist/cli-errors.d.ts +3 -1
  2. package/dist/cli-errors.d.ts.map +1 -1
  3. package/dist/cli-errors.js +4 -1
  4. package/dist/cli-json-command.d.ts +1 -0
  5. package/dist/cli-json-command.d.ts.map +1 -1
  6. package/dist/cli-json-command.js +13 -4
  7. package/dist/cli-operation-loader.d.ts.map +1 -1
  8. package/dist/cli-operation-loader.js +53 -20
  9. package/dist/cli-operation-metadata.d.ts +21 -8
  10. package/dist/cli-operation-metadata.d.ts.map +1 -1
  11. package/dist/cli-operation-metadata.js +27 -10
  12. package/dist/cli-protocol.d.ts.map +1 -1
  13. package/dist/cli-protocol.js +38 -8
  14. package/dist/cli-register-foundation.d.ts.map +1 -1
  15. package/dist/cli-register-foundation.js +14 -2
  16. package/dist/cli-register-maintenance.d.ts.map +1 -1
  17. package/dist/cli-register-maintenance.js +33 -4
  18. package/dist/cli-register-proof.d.ts +3 -0
  19. package/dist/cli-register-proof.d.ts.map +1 -0
  20. package/dist/cli-register-proof.js +103 -0
  21. package/dist/cli-register-reporting.d.ts.map +1 -1
  22. package/dist/cli-register-reporting.js +11 -0
  23. package/dist/cli.d.ts +4 -0
  24. package/dist/cli.d.ts.map +1 -1
  25. package/dist/cli.js +17 -8
  26. package/dist/commands/aggregated-checks.d.ts +1 -2
  27. package/dist/commands/aggregated-checks.d.ts.map +1 -1
  28. package/dist/commands/aggregated-checks.js +14 -9
  29. package/dist/commands/branch.d.ts +37 -0
  30. package/dist/commands/branch.d.ts.map +1 -1
  31. package/dist/commands/branch.js +375 -40
  32. package/dist/commands/check.d.ts +14 -0
  33. package/dist/commands/check.d.ts.map +1 -1
  34. package/dist/commands/check.js +209 -110
  35. package/dist/commands/coverage.d.ts +1 -0
  36. package/dist/commands/coverage.d.ts.map +1 -1
  37. package/dist/commands/coverage.js +6 -0
  38. package/dist/commands/discovery-shared.d.ts.map +1 -1
  39. package/dist/commands/discovery-shared.js +10 -19
  40. package/dist/commands/doctor.d.ts +26 -1
  41. package/dist/commands/doctor.d.ts.map +1 -1
  42. package/dist/commands/doctor.js +291 -30
  43. package/dist/commands/engine.d.ts +12 -0
  44. package/dist/commands/engine.d.ts.map +1 -1
  45. package/dist/commands/engine.js +50 -7
  46. package/dist/commands/gc.d.ts +5 -2
  47. package/dist/commands/gc.d.ts.map +1 -1
  48. package/dist/commands/gc.js +140 -71
  49. package/dist/commands/github-init.d.ts +57 -0
  50. package/dist/commands/github-init.d.ts.map +1 -0
  51. package/dist/commands/github-init.js +314 -0
  52. package/dist/commands/init-helpers.d.ts +1 -1
  53. package/dist/commands/init-helpers.d.ts.map +1 -1
  54. package/dist/commands/init-helpers.js +109 -28
  55. package/dist/commands/init.d.ts +2 -0
  56. package/dist/commands/init.d.ts.map +1 -1
  57. package/dist/commands/init.js +79 -24
  58. package/dist/commands/legacy-storage-migration.d.ts +54 -0
  59. package/dist/commands/legacy-storage-migration.d.ts.map +1 -0
  60. package/dist/commands/legacy-storage-migration.js +277 -0
  61. package/dist/commands/migrate.d.ts +11 -0
  62. package/dist/commands/migrate.d.ts.map +1 -1
  63. package/dist/commands/migrate.js +249 -96
  64. package/dist/commands/proof-migrate-legacy.d.ts +7 -0
  65. package/dist/commands/proof-migrate-legacy.d.ts.map +1 -0
  66. package/dist/commands/proof-migrate-legacy.js +45 -0
  67. package/dist/commands/proof-prune.d.ts +8 -0
  68. package/dist/commands/proof-prune.d.ts.map +1 -0
  69. package/dist/commands/proof-prune.js +53 -0
  70. package/dist/commands/prove.d.ts +37 -0
  71. package/dist/commands/prove.d.ts.map +1 -0
  72. package/dist/commands/prove.js +470 -0
  73. package/dist/commands/report.d.ts +24 -0
  74. package/dist/commands/report.d.ts.map +1 -0
  75. package/dist/commands/report.js +191 -0
  76. package/dist/commands/sync/cache.d.ts +16 -3
  77. package/dist/commands/sync/cache.d.ts.map +1 -1
  78. package/dist/commands/sync/cache.js +111 -4
  79. package/dist/commands/sync/discovery.d.ts +26 -2
  80. package/dist/commands/sync/discovery.d.ts.map +1 -1
  81. package/dist/commands/sync/discovery.js +204 -15
  82. package/dist/commands/sync/extraction.d.ts +8 -1
  83. package/dist/commands/sync/extraction.d.ts.map +1 -1
  84. package/dist/commands/sync/extraction.js +38 -4
  85. package/dist/commands/sync/manifest.d.ts +9 -6
  86. package/dist/commands/sync/manifest.d.ts.map +1 -1
  87. package/dist/commands/sync/manifest.js +195 -60
  88. package/dist/commands/sync/persistence.d.ts +4 -1
  89. package/dist/commands/sync/persistence.d.ts.map +1 -1
  90. package/dist/commands/sync/persistence.js +26 -12
  91. package/dist/commands/sync/staging.d.ts +1 -0
  92. package/dist/commands/sync/staging.d.ts.map +1 -1
  93. package/dist/commands/sync/staging.js +5 -2
  94. package/dist/commands/sync/untracked-targets.d.ts +24 -0
  95. package/dist/commands/sync/untracked-targets.d.ts.map +1 -0
  96. package/dist/commands/sync/untracked-targets.js +108 -0
  97. package/dist/commands/sync.d.ts +17 -1
  98. package/dist/commands/sync.d.ts.map +1 -1
  99. package/dist/commands/sync.js +375 -106
  100. package/dist/diagnostics.d.ts +1 -1
  101. package/dist/diagnostics.d.ts.map +1 -1
  102. package/dist/engine-daemon.d.ts +3 -1
  103. package/dist/engine-daemon.d.ts.map +1 -1
  104. package/dist/engine-daemon.js +49 -20
  105. package/dist/engine.d.ts +34 -3
  106. package/dist/engine.d.ts.map +1 -1
  107. package/dist/engine.js +578 -42
  108. package/dist/env.d.ts.map +1 -1
  109. package/dist/env.js +5 -6
  110. package/dist/extractors/manifest.d.ts +13 -1
  111. package/dist/extractors/manifest.d.ts.map +1 -1
  112. package/dist/extractors/manifest.js +97 -10
  113. package/dist/extractors/markdown.d.ts +5 -2
  114. package/dist/extractors/markdown.d.ts.map +1 -1
  115. package/dist/extractors/markdown.js +47 -12
  116. package/dist/extractors/playwright-cases.d.ts +24 -0
  117. package/dist/extractors/playwright-cases.d.ts.map +1 -0
  118. package/dist/extractors/playwright-cases.js +126 -0
  119. package/dist/extractors/relationships.d.ts +6 -0
  120. package/dist/extractors/relationships.d.ts.map +1 -1
  121. package/dist/extractors/relationships.js +2 -1
  122. package/dist/extractors/symbol-coordinates.d.ts +81 -3
  123. package/dist/extractors/symbol-coordinates.d.ts.map +1 -1
  124. package/dist/extractors/symbol-coordinates.js +389 -51
  125. package/dist/extractors/symbols-coordinator.js +11 -1
  126. package/dist/extractors/symbols-ts.d.ts +1 -0
  127. package/dist/extractors/symbols-ts.d.ts.map +1 -1
  128. package/dist/extractors/symbols-ts.js +142 -67
  129. package/dist/intent-search.d.ts +61 -0
  130. package/dist/intent-search.d.ts.map +1 -0
  131. package/dist/intent-search.js +437 -0
  132. package/dist/logic/ir.d.ts +1 -0
  133. package/dist/logic/ir.d.ts.map +1 -1
  134. package/dist/logic/ir.js +1 -1
  135. package/dist/operations/bootstrap/activation.d.ts +5 -0
  136. package/dist/operations/bootstrap/activation.d.ts.map +1 -0
  137. package/dist/operations/{autopilot → bootstrap}/activation.js +58 -33
  138. package/dist/operations/{autopilot → bootstrap}/candidate-helpers.d.ts.map +1 -1
  139. package/dist/operations/bootstrap/candidates.d.ts +4 -0
  140. package/dist/operations/{autopilot → bootstrap}/candidates.d.ts.map +1 -1
  141. package/dist/operations/{autopilot → bootstrap}/candidates.js +22 -8
  142. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.d.ts +2 -2
  143. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.d.ts.map +1 -1
  144. package/dist/operations/{autopilot → bootstrap}/discovery-evidence.js +46 -6
  145. package/dist/operations/{autopilot → bootstrap}/discovery.d.ts +1 -1
  146. package/dist/operations/bootstrap/discovery.d.ts.map +1 -0
  147. package/dist/operations/{autopilot → bootstrap}/discovery.js +21 -14
  148. package/dist/operations/bootstrap/generate.d.ts +9 -0
  149. package/dist/operations/bootstrap/generate.d.ts.map +1 -0
  150. package/dist/operations/bootstrap/generate.js +207 -0
  151. package/dist/operations/{autopilot → bootstrap}/guidance-actions.d.ts +2 -2
  152. package/dist/operations/{autopilot → bootstrap}/guidance-actions.d.ts.map +1 -1
  153. package/dist/operations/{autopilot → bootstrap}/guidance-actions.js +4 -4
  154. package/dist/operations/{autopilot → bootstrap}/guidance.d.ts +3 -2
  155. package/dist/operations/bootstrap/guidance.d.ts.map +1 -0
  156. package/dist/operations/{autopilot → bootstrap}/guidance.js +3 -1
  157. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.d.ts +2 -2
  158. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.d.ts.map +1 -1
  159. package/dist/operations/{autopilot → bootstrap}/markdown-candidates.js +4 -3
  160. package/dist/operations/bootstrap/presentation.d.ts +15 -0
  161. package/dist/operations/bootstrap/presentation.d.ts.map +1 -0
  162. package/dist/operations/bootstrap/presentation.js +177 -0
  163. package/dist/operations/{autopilot → bootstrap}/requirement-claims.d.ts.map +1 -1
  164. package/dist/operations/{autopilot → bootstrap}/types.d.ts +63 -21
  165. package/dist/operations/bootstrap/types.d.ts.map +1 -0
  166. package/dist/operations/bootstrap/types.js +25 -0
  167. package/dist/operations/modeling/model-requirement.d.ts +5 -0
  168. package/dist/operations/modeling/model-requirement.d.ts.map +1 -1
  169. package/dist/operations/modeling/model-requirement.js +57 -63
  170. package/dist/operations/modeling/predicate-applicability.d.ts +16 -0
  171. package/dist/operations/modeling/predicate-applicability.d.ts.map +1 -0
  172. package/dist/operations/modeling/predicate-applicability.js +375 -0
  173. package/dist/operations/modeling/predicate-applyplan.d.ts +13 -2
  174. package/dist/operations/modeling/predicate-applyplan.d.ts.map +1 -1
  175. package/dist/operations/modeling/predicate-applyplan.js +100 -3
  176. package/dist/operations/modeling/predicate-bindings.d.ts +6 -0
  177. package/dist/operations/modeling/predicate-bindings.d.ts.map +1 -0
  178. package/dist/operations/modeling/predicate-bindings.js +122 -0
  179. package/dist/operations/modeling/predicate-catalog-2.d.ts.map +1 -1
  180. package/dist/operations/modeling/predicate-catalog-2.js +18 -2
  181. package/dist/operations/modeling/predicate-catalog-3.d.ts.map +1 -1
  182. package/dist/operations/modeling/predicate-catalog-3.js +17 -1
  183. package/dist/operations/modeling/predicate-catalog-4.d.ts.map +1 -1
  184. package/dist/operations/modeling/predicate-catalog-4.js +155 -0
  185. package/dist/operations/modeling/predicate-catalog-5.d.ts +10 -0
  186. package/dist/operations/modeling/predicate-catalog-5.d.ts.map +1 -0
  187. package/dist/operations/modeling/predicate-catalog-5.js +291 -0
  188. package/dist/operations/modeling/predicate-catalog.d.ts.map +1 -1
  189. package/dist/operations/modeling/predicate-catalog.js +4 -0
  190. package/dist/operations/modeling/predicate-inference-1.d.ts.map +1 -1
  191. package/dist/operations/modeling/predicate-inference-1.js +8 -0
  192. package/dist/operations/modeling/predicate-inference-launcher.d.ts +10 -0
  193. package/dist/operations/modeling/predicate-inference-launcher.d.ts.map +1 -0
  194. package/dist/operations/modeling/predicate-inference-launcher.js +13 -0
  195. package/dist/operations/modeling/predicate-inference.d.ts.map +1 -1
  196. package/dist/operations/modeling/predicate-inference.js +4 -0
  197. package/dist/operations/modeling/predicate-loader.d.ts +1 -0
  198. package/dist/operations/modeling/predicate-loader.d.ts.map +1 -1
  199. package/dist/operations/modeling/predicate-loader.js +11 -3
  200. package/dist/operations/modeling/predicate-ranker.d.ts +8 -1
  201. package/dist/operations/modeling/predicate-ranker.d.ts.map +1 -1
  202. package/dist/operations/modeling/predicate-ranker.js +159 -24
  203. package/dist/operations/modeling/predicate-score-3.d.ts.map +1 -1
  204. package/dist/operations/modeling/predicate-score-3.js +6 -0
  205. package/dist/operations/modeling/predicate-types.d.ts +35 -1
  206. package/dist/operations/modeling/predicate-types.d.ts.map +1 -1
  207. package/dist/operations/modeling/predicate-usage-hints-3.d.ts.map +1 -1
  208. package/dist/operations/modeling/predicate-usage-hints-3.js +40 -0
  209. package/dist/operations/modeling/predicate-usage-hints-4.d.ts +3 -0
  210. package/dist/operations/modeling/predicate-usage-hints-4.d.ts.map +1 -0
  211. package/dist/operations/modeling/predicate-usage-hints-4.js +84 -0
  212. package/dist/operations/modeling/predicate-utils.d.ts.map +1 -1
  213. package/dist/operations/modeling/predicate-utils.js +2 -0
  214. package/dist/operations/modeling/suggest-predicates.d.ts +4 -2
  215. package/dist/operations/modeling/suggest-predicates.d.ts.map +1 -1
  216. package/dist/operations/modeling/suggest-predicates.js +203 -32
  217. package/dist/operations/mutation/contradictions.d.ts +2 -1
  218. package/dist/operations/mutation/contradictions.d.ts.map +1 -1
  219. package/dist/operations/mutation/contradictions.js +26 -5
  220. package/dist/operations/mutation/delete.d.ts +3 -0
  221. package/dist/operations/mutation/delete.d.ts.map +1 -1
  222. package/dist/operations/mutation/delete.js +483 -19
  223. package/dist/operations/mutation/entity-projection.d.ts +11 -0
  224. package/dist/operations/mutation/entity-projection.d.ts.map +1 -0
  225. package/dist/operations/mutation/entity-projection.js +14 -0
  226. package/dist/operations/mutation/relationships.d.ts +11 -0
  227. package/dist/operations/mutation/relationships.d.ts.map +1 -1
  228. package/dist/operations/mutation/relationships.js +77 -5
  229. package/dist/operations/mutation/saga.d.ts +51 -0
  230. package/dist/operations/mutation/saga.d.ts.map +1 -0
  231. package/dist/operations/mutation/saga.js +67 -0
  232. package/dist/operations/mutation/serialization.d.ts.map +1 -1
  233. package/dist/operations/mutation/serialization.js +3 -1
  234. package/dist/operations/mutation/source-authoring.d.ts +65 -0
  235. package/dist/operations/mutation/source-authoring.d.ts.map +1 -0
  236. package/dist/operations/mutation/source-authoring.js +576 -0
  237. package/dist/operations/mutation/strict-fact.d.ts +1 -0
  238. package/dist/operations/mutation/strict-fact.d.ts.map +1 -1
  239. package/dist/operations/mutation/strict-fact.js +8 -5
  240. package/dist/operations/mutation/symbol-compiler-lock.d.ts +54 -0
  241. package/dist/operations/mutation/symbol-compiler-lock.d.ts.map +1 -0
  242. package/dist/operations/mutation/symbol-compiler-lock.js +337 -0
  243. package/dist/operations/mutation/symbol-granularity.d.ts.map +1 -1
  244. package/dist/operations/mutation/symbol-granularity.js +35 -4
  245. package/dist/operations/mutation/symbol-refresh.d.ts +19 -1
  246. package/dist/operations/mutation/symbol-refresh.d.ts.map +1 -1
  247. package/dist/operations/mutation/symbol-refresh.js +227 -63
  248. package/dist/operations/mutation/types.d.ts +57 -1
  249. package/dist/operations/mutation/types.d.ts.map +1 -1
  250. package/dist/operations/mutation/upsert.d.ts +18 -2
  251. package/dist/operations/mutation/upsert.d.ts.map +1 -1
  252. package/dist/operations/mutation/upsert.js +403 -32
  253. package/dist/operations/mutation/validate-upsert.js +2 -2
  254. package/dist/operations/mutation/validation.d.ts.map +1 -1
  255. package/dist/operations/mutation/validation.js +47 -4
  256. package/dist/operations/mutation/warnings.d.ts +1 -0
  257. package/dist/operations/mutation/warnings.d.ts.map +1 -1
  258. package/dist/operations/mutation/warnings.js +7 -5
  259. package/dist/operations/mutation/workspace-mutation-lock.d.ts +60 -0
  260. package/dist/operations/mutation/workspace-mutation-lock.d.ts.map +1 -0
  261. package/dist/operations/mutation/workspace-mutation-lock.js +362 -0
  262. package/dist/operations/planning/apply-plan.d.ts +19 -0
  263. package/dist/operations/planning/apply-plan.d.ts.map +1 -0
  264. package/dist/operations/planning/apply-plan.js +1514 -0
  265. package/dist/operations/planning/compile-intent.d.ts +108 -0
  266. package/dist/operations/planning/compile-intent.d.ts.map +1 -0
  267. package/dist/operations/planning/compile-intent.js +618 -0
  268. package/dist/operations/proof/ingest-proof.d.ts +34 -0
  269. package/dist/operations/proof/ingest-proof.d.ts.map +1 -0
  270. package/dist/operations/proof/ingest-proof.js +307 -0
  271. package/dist/operations/proof/migrate-legacy-receipts.d.ts +30 -0
  272. package/dist/operations/proof/migrate-legacy-receipts.d.ts.map +1 -0
  273. package/dist/operations/proof/migrate-legacy-receipts.js +88 -0
  274. package/dist/operations/proof/prune-receipts.d.ts +35 -0
  275. package/dist/operations/proof/prune-receipts.d.ts.map +1 -0
  276. package/dist/operations/proof/prune-receipts.js +91 -0
  277. package/dist/operations/proof/receipt-document.d.ts +29 -0
  278. package/dist/operations/proof/receipt-document.d.ts.map +1 -0
  279. package/dist/operations/proof/receipt-document.js +117 -0
  280. package/dist/operations/semantic-advisor/analyze-prose.d.ts +1 -0
  281. package/dist/operations/semantic-advisor/analyze-prose.d.ts.map +1 -1
  282. package/dist/operations/semantic-advisor/analyze-prose.js +52 -28
  283. package/dist/operations/semantic-advisor/clauses.d.ts.map +1 -1
  284. package/dist/operations/semantic-advisor/clauses.js +35 -9
  285. package/dist/operations/semantic-advisor/ingestion-boundary.d.ts.map +1 -1
  286. package/dist/operations/semantic-advisor/ingestion-boundary.js +7 -3
  287. package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts +51 -0
  288. package/dist/operations/semantic-advisor/predicate-rules-launcher.d.ts.map +1 -0
  289. package/dist/operations/semantic-advisor/predicate-rules-launcher.js +96 -0
  290. package/dist/operations/semantic-advisor/strict-count-rules.d.ts +2 -0
  291. package/dist/operations/semantic-advisor/strict-count-rules.d.ts.map +1 -1
  292. package/dist/operations/semantic-advisor/strict-count-rules.js +40 -25
  293. package/dist/operations/semantic-advisor/types.d.ts +13 -5
  294. package/dist/operations/semantic-advisor/types.d.ts.map +1 -1
  295. package/dist/prolog/codec.d.ts +13 -1
  296. package/dist/prolog/codec.d.ts.map +1 -1
  297. package/dist/prolog/codec.js +269 -153
  298. package/dist/prolog/error-terms.d.ts +47 -0
  299. package/dist/prolog/error-terms.d.ts.map +1 -0
  300. package/dist/prolog/error-terms.js +334 -0
  301. package/dist/prolog/janitor.d.ts +50 -0
  302. package/dist/prolog/janitor.d.ts.map +1 -0
  303. package/dist/prolog/janitor.js +154 -0
  304. package/dist/prolog/store-lock.d.ts +45 -0
  305. package/dist/prolog/store-lock.d.ts.map +1 -0
  306. package/dist/prolog/store-lock.js +195 -0
  307. package/dist/prolog.d.ts +7 -0
  308. package/dist/prolog.d.ts.map +1 -1
  309. package/dist/prolog.js +82 -25
  310. package/dist/proof/evaluate.d.ts +27 -0
  311. package/dist/proof/evaluate.d.ts.map +1 -0
  312. package/dist/proof/evaluate.js +151 -0
  313. package/dist/proof/inspect.d.ts +12 -0
  314. package/dist/proof/inspect.d.ts.map +1 -0
  315. package/dist/proof/inspect.js +236 -0
  316. package/dist/proof/integrations.d.ts +35 -0
  317. package/dist/proof/integrations.d.ts.map +1 -0
  318. package/dist/proof/integrations.js +123 -0
  319. package/dist/proof/producers/junit-adapter.d.ts +26 -0
  320. package/dist/proof/producers/junit-adapter.d.ts.map +1 -0
  321. package/dist/proof/producers/junit-adapter.js +186 -0
  322. package/dist/proof/producers/playwright-case-id.d.ts +8 -0
  323. package/dist/proof/producers/playwright-case-id.d.ts.map +1 -0
  324. package/dist/proof/producers/playwright-case-id.js +25 -0
  325. package/dist/proof/producers/playwright-reporter.d.ts +27 -0
  326. package/dist/proof/producers/playwright-reporter.d.ts.map +1 -0
  327. package/dist/proof/producers/playwright-reporter.js +138 -0
  328. package/dist/proof/producers/tap-adapter.d.ts +10 -0
  329. package/dist/proof/producers/tap-adapter.d.ts.map +1 -0
  330. package/dist/proof/producers/tap-adapter.js +200 -0
  331. package/dist/proof/receipt-outcome.d.ts +2 -0
  332. package/dist/proof/receipt-outcome.d.ts.map +1 -0
  333. package/dist/proof/receipt-outcome.js +1 -0
  334. package/dist/public/branch-resolver.d.ts +1 -0
  335. package/dist/public/branch-resolver.d.ts.map +1 -1
  336. package/dist/public/branch-resolver.js +1 -0
  337. package/dist/public/check-types.d.ts +2 -2
  338. package/dist/public/check-types.d.ts.map +1 -1
  339. package/dist/public/check-types.js +16 -16
  340. package/dist/public/diagnostic-usage.d.ts.map +1 -1
  341. package/dist/public/diagnostic-usage.js +74 -6
  342. package/dist/public/distribution-parity.d.ts +7 -1
  343. package/dist/public/distribution-parity.d.ts.map +1 -1
  344. package/dist/public/distribution-parity.js +15 -9
  345. package/dist/public/ignore-policy.d.ts.map +1 -1
  346. package/dist/public/ignore-policy.js +16 -4
  347. package/dist/public/impact/coverage-depth-quality.d.ts +7 -1
  348. package/dist/public/impact/coverage-depth-quality.d.ts.map +1 -1
  349. package/dist/public/impact/coverage-depth-quality.js +22 -4
  350. package/dist/public/impact/diagnostics.d.ts.map +1 -1
  351. package/dist/public/impact/diagnostics.js +2 -2
  352. package/dist/public/impact/diff-meaning.d.ts +1 -0
  353. package/dist/public/impact/diff-meaning.d.ts.map +1 -1
  354. package/dist/public/impact/diff-meaning.js +5 -2
  355. package/dist/public/impact/full-kb-quality.d.ts +7 -2
  356. package/dist/public/impact/full-kb-quality.d.ts.map +1 -1
  357. package/dist/public/impact/full-kb-quality.js +364 -39
  358. package/dist/public/impact/manifest.d.ts.map +1 -1
  359. package/dist/public/impact/manifest.js +2 -5
  360. package/dist/public/operational-artifacts.d.ts.map +1 -1
  361. package/dist/public/operational-artifacts.js +7 -1
  362. package/dist/public/operations/catalog.d.ts +900 -34
  363. package/dist/public/operations/catalog.d.ts.map +1 -1
  364. package/dist/public/operations/catalog.js +130 -6
  365. package/dist/public/operations/check-executor.d.ts +2 -2
  366. package/dist/public/operations/check-executor.d.ts.map +1 -1
  367. package/dist/public/operations/check-executor.js +68 -13
  368. package/dist/public/operations/check-format-shared.d.ts +3 -0
  369. package/dist/public/operations/check-format-shared.d.ts.map +1 -1
  370. package/dist/public/operations/check-format-shared.js +3 -0
  371. package/dist/public/operations/check-helpers.d.ts +27 -2
  372. package/dist/public/operations/check-helpers.d.ts.map +1 -1
  373. package/dist/public/operations/check-helpers.js +62 -26
  374. package/dist/public/operations/contracts.d.ts +18 -0
  375. package/dist/public/operations/contracts.d.ts.map +1 -0
  376. package/dist/public/operations/contracts.js +334 -0
  377. package/dist/public/operations/discovery-entities.d.ts +3 -0
  378. package/dist/public/operations/discovery-entities.d.ts.map +1 -1
  379. package/dist/public/operations/discovery-entities.js +4 -0
  380. package/dist/public/operations/discovery-executors.d.ts +43 -7
  381. package/dist/public/operations/discovery-executors.d.ts.map +1 -1
  382. package/dist/public/operations/discovery-executors.js +216 -13
  383. package/dist/public/operations/index.d.ts +9 -4
  384. package/dist/public/operations/index.d.ts.map +1 -1
  385. package/dist/public/operations/index.js +8 -3
  386. package/dist/public/operations/migration-plan.d.ts +102 -0
  387. package/dist/public/operations/migration-plan.d.ts.map +1 -0
  388. package/dist/public/operations/migration-plan.js +539 -0
  389. package/dist/public/operations/node-ports.d.ts.map +1 -1
  390. package/dist/public/operations/node-ports.js +71 -11
  391. package/dist/public/operations/prolog-json.d.ts +14 -0
  392. package/dist/public/operations/prolog-json.d.ts.map +1 -1
  393. package/dist/public/operations/prolog-json.js +44 -5
  394. package/dist/public/operations/repair-plan.d.ts +3 -3
  395. package/dist/public/operations/repair-plan.d.ts.map +1 -1
  396. package/dist/public/operations/repair-plan.js +49 -18
  397. package/dist/public/operations/result-envelope.d.ts +14 -0
  398. package/dist/public/operations/result-envelope.d.ts.map +1 -0
  399. package/dist/public/operations/result-envelope.js +106 -0
  400. package/dist/public/operations/runtime-types.d.ts +102 -7
  401. package/dist/public/operations/runtime-types.d.ts.map +1 -1
  402. package/dist/public/operations/source-relationship-parity.d.ts +13 -0
  403. package/dist/public/operations/source-relationship-parity.d.ts.map +1 -0
  404. package/dist/public/operations/source-relationship-parity.js +162 -0
  405. package/dist/public/operations/specs/{autopilot.d.ts → bootstrap.d.ts} +9 -9
  406. package/dist/public/operations/specs/bootstrap.d.ts.map +1 -0
  407. package/dist/public/operations/specs/{autopilot.js → bootstrap.js} +8 -7
  408. package/dist/public/operations/specs/check-rules.generated.d.ts +5 -0
  409. package/dist/public/operations/specs/check-rules.generated.d.ts.map +1 -0
  410. package/dist/public/operations/specs/check-rules.generated.js +34 -0
  411. package/dist/public/operations/specs/check.d.ts +9 -4
  412. package/dist/public/operations/specs/check.d.ts.map +1 -1
  413. package/dist/public/operations/specs/check.js +10 -21
  414. package/dist/public/operations/specs/discovery.d.ts +87 -3
  415. package/dist/public/operations/specs/discovery.d.ts.map +1 -1
  416. package/dist/public/operations/specs/discovery.js +53 -3
  417. package/dist/public/operations/specs/modeling.d.ts +3 -3
  418. package/dist/public/operations/specs/modeling.js +3 -3
  419. package/dist/public/operations/specs/mutation-schemas.d.ts +251 -14
  420. package/dist/public/operations/specs/mutation-schemas.d.ts.map +1 -1
  421. package/dist/public/operations/specs/mutation-schemas.js +16 -6
  422. package/dist/public/operations/specs/mutation.d.ts +42 -2
  423. package/dist/public/operations/specs/mutation.d.ts.map +1 -1
  424. package/dist/public/operations/specs/mutation.js +26 -2
  425. package/dist/public/operations/specs/planning.d.ts +279 -0
  426. package/dist/public/operations/specs/planning.d.ts.map +1 -0
  427. package/dist/public/operations/specs/planning.js +197 -0
  428. package/dist/public/operations/specs/proof.d.ts +212 -0
  429. package/dist/public/operations/specs/proof.d.ts.map +1 -0
  430. package/dist/public/operations/specs/proof.js +30 -0
  431. package/dist/public/operations/specs/reporting.d.ts +23 -1
  432. package/dist/public/operations/specs/reporting.d.ts.map +1 -1
  433. package/dist/public/operations/specs/reporting.js +156 -11
  434. package/dist/public/operations/specs/upsert.d.ts +265 -14
  435. package/dist/public/operations/specs/upsert.d.ts.map +1 -1
  436. package/dist/public/operations/specs/upsert.js +9 -0
  437. package/dist/public/operations/symbol-repair-plan.d.ts +22 -0
  438. package/dist/public/operations/symbol-repair-plan.d.ts.map +1 -0
  439. package/dist/public/operations/symbol-repair-plan.js +238 -0
  440. package/dist/public/operations/types.d.ts +52 -1
  441. package/dist/public/operations/types.d.ts.map +1 -1
  442. package/dist/public/proof-fingerprint.d.ts +54 -0
  443. package/dist/public/proof-fingerprint.d.ts.map +1 -0
  444. package/dist/public/proof-fingerprint.js +141 -0
  445. package/dist/public/proof-protocol.d.ts +354 -0
  446. package/dist/public/proof-protocol.d.ts.map +1 -0
  447. package/dist/public/proof-protocol.js +454 -0
  448. package/dist/public/proof-receipt.d.ts +279 -0
  449. package/dist/public/proof-receipt.d.ts.map +1 -0
  450. package/dist/public/proof-receipt.js +377 -0
  451. package/dist/public/schemas/entity.d.ts.map +1 -1
  452. package/dist/public/schemas/entity.js +22 -6
  453. package/dist/public/skills/kibi-bootstrap/SKILL.md +58 -0
  454. package/dist/public/skills/kibi-bootstrap/resources/bootstrap.md +11 -0
  455. package/dist/public/skills/kibi-bootstrap/resources/branch-lifecycle.md +7 -0
  456. package/dist/public/skills/kibi-bootstrap/resources/operation-access.md +5 -0
  457. package/dist/public/skills/kibi-bootstrap/resources/source-authoring.md +8 -0
  458. package/dist/public/skills/kibi-freshness/SKILL.md +39 -9
  459. package/dist/public/skills/kibi-freshness/resources/branch-lifecycle.md +7 -0
  460. package/dist/public/skills/kibi-freshness/resources/operation-access.md +6 -0
  461. package/dist/public/skills/kibi-freshness/resources/source-authoring.md +7 -0
  462. package/dist/public/skills/kibi-traceability/SKILL.md +47 -47
  463. package/dist/public/skills/kibi-traceability/resources/branch-lifecycle.md +7 -0
  464. package/dist/public/skills/kibi-traceability/resources/operation-access.md +5 -0
  465. package/dist/public/skills/kibi-traceability/resources/source-authoring.md +6 -0
  466. package/dist/public/skills/kibi-traceability/resources/traceability.md +8 -0
  467. package/dist/public/skills/kibi-usage/SKILL.md +136 -231
  468. package/dist/public/skills/kibi-usage/resources/branch-lifecycle.md +31 -0
  469. package/dist/public/skills/kibi-usage/resources/kb-improvement.md +38 -0
  470. package/dist/public/skills/kibi-usage/resources/operation-access.md +36 -38
  471. package/dist/public/skills/kibi-usage/resources/proof.md +105 -0
  472. package/dist/public/skills/kibi-usage/resources/relationship-directions.md +3 -3
  473. package/dist/public/skills/kibi-usage/resources/source-authoring.md +31 -0
  474. package/dist/public/skills/kibi-usage/resources/workflows.md +57 -4
  475. package/dist/public/symbol-granularity.d.ts +3 -14
  476. package/dist/public/symbol-granularity.d.ts.map +1 -1
  477. package/dist/public/symbol-granularity.generated.d.ts +16 -0
  478. package/dist/public/symbol-granularity.generated.d.ts.map +1 -0
  479. package/dist/public/symbol-granularity.generated.js +20 -0
  480. package/dist/public/symbol-granularity.js +6 -46
  481. package/dist/public/telemetry-acceptance.d.ts +3 -70
  482. package/dist/public/telemetry-acceptance.d.ts.map +1 -1
  483. package/dist/public/telemetry-acceptance.js +11 -2
  484. package/dist/public/telemetry-remediation.js +1 -1
  485. package/dist/relationships/shards.d.ts +16 -0
  486. package/dist/relationships/shards.d.ts.map +1 -1
  487. package/dist/relationships/shards.js +87 -2
  488. package/dist/report/brand.d.ts +19 -0
  489. package/dist/report/brand.d.ts.map +1 -0
  490. package/dist/report/brand.js +112 -0
  491. package/dist/report/html-report.css +282 -0
  492. package/dist/report/html-report.d.ts +21 -0
  493. package/dist/report/html-report.d.ts.map +1 -0
  494. package/dist/report/html-report.js +700 -0
  495. package/dist/report/relative-time.d.ts +4 -0
  496. package/dist/report/relative-time.d.ts.map +1 -0
  497. package/dist/report/relative-time.js +46 -0
  498. package/dist/report/report-view.d.ts +17 -0
  499. package/dist/report/report-view.d.ts.map +1 -0
  500. package/dist/report/report-view.js +33 -0
  501. package/dist/report/repository.d.ts +35 -0
  502. package/dist/report/repository.d.ts.map +1 -0
  503. package/dist/report/repository.js +151 -0
  504. package/dist/runtime/cli-runtime.d.ts +2 -0
  505. package/dist/runtime/cli-runtime.d.ts.map +1 -1
  506. package/dist/runtime/cli-runtime.js +90 -23
  507. package/dist/schemas/entity.schema.json +1254 -239
  508. package/dist/search-ranking.d.ts +1 -0
  509. package/dist/search-ranking.d.ts.map +1 -1
  510. package/dist/search-ranking.js +3 -0
  511. package/dist/traceability/evidence-model.d.ts +30 -2
  512. package/dist/traceability/evidence-model.d.ts.map +1 -1
  513. package/dist/traceability/evidence-model.js +2 -2
  514. package/dist/traceability/git-staged.d.ts +20 -0
  515. package/dist/traceability/git-staged.d.ts.map +1 -1
  516. package/dist/traceability/git-staged.js +156 -37
  517. package/dist/traceability/markdown-validate.d.ts.map +1 -1
  518. package/dist/traceability/markdown-validate.js +12 -7
  519. package/dist/traceability/staged-diagnostics.d.ts +7 -0
  520. package/dist/traceability/staged-diagnostics.d.ts.map +1 -1
  521. package/dist/traceability/staged-diagnostics.js +78 -7
  522. package/dist/traceability/staged-file-coverage.d.ts +33 -0
  523. package/dist/traceability/staged-file-coverage.d.ts.map +1 -0
  524. package/dist/traceability/staged-file-coverage.js +284 -0
  525. package/dist/traceability/staged-impact-contract.d.ts +3 -3
  526. package/dist/traceability/staged-impact-contract.d.ts.map +1 -1
  527. package/dist/traceability/staged-impact-contract.js +12 -40
  528. package/dist/traceability/staged-symbols-manifest.d.ts +13 -0
  529. package/dist/traceability/staged-symbols-manifest.d.ts.map +1 -1
  530. package/dist/traceability/staged-symbols-manifest.js +142 -26
  531. package/dist/traceability/symbol-extract.d.ts +5 -0
  532. package/dist/traceability/symbol-extract.d.ts.map +1 -1
  533. package/dist/traceability/symbol-extract.js +1 -1
  534. package/dist/traceability/temp-kb.d.ts +2 -0
  535. package/dist/traceability/temp-kb.d.ts.map +1 -1
  536. package/dist/traceability/temp-kb.js +14 -2
  537. package/dist/types/entities.d.ts +5 -0
  538. package/dist/types/entities.d.ts.map +1 -1
  539. package/dist/utils/branch-resolver.d.ts +25 -10
  540. package/dist/utils/branch-resolver.d.ts.map +1 -1
  541. package/dist/utils/branch-resolver.js +124 -38
  542. package/dist/utils/branch-store-locator.d.ts +23 -0
  543. package/dist/utils/branch-store-locator.d.ts.map +1 -0
  544. package/dist/utils/branch-store-locator.js +90 -0
  545. package/dist/utils/branch-store.d.ts +21 -0
  546. package/dist/utils/branch-store.d.ts.map +1 -0
  547. package/dist/utils/branch-store.js +157 -0
  548. package/dist/utils/config.d.ts +39 -37
  549. package/dist/utils/config.d.ts.map +1 -1
  550. package/dist/utils/config.js +107 -119
  551. package/dist/utils/kb-manifest.d.ts +35 -0
  552. package/dist/utils/kb-manifest.d.ts.map +1 -0
  553. package/dist/utils/kb-manifest.js +154 -0
  554. package/dist/utils/kb-paths.d.ts +54 -0
  555. package/dist/utils/kb-paths.d.ts.map +1 -0
  556. package/dist/utils/kb-paths.js +125 -0
  557. package/dist/utils/manifest-paths.d.ts +4 -4
  558. package/dist/utils/manifest-paths.d.ts.map +1 -1
  559. package/dist/utils/manifest-paths.js +8 -56
  560. package/dist/utils/rule-registry.d.ts +42 -24
  561. package/dist/utils/rule-registry.d.ts.map +1 -1
  562. package/dist/utils/rule-registry.generated.d.ts +97 -0
  563. package/dist/utils/rule-registry.generated.d.ts.map +1 -0
  564. package/dist/utils/rule-registry.generated.js +125 -0
  565. package/dist/utils/rule-registry.js +52 -148
  566. package/dist/utils/schema-version.d.ts +5 -5
  567. package/dist/utils/schema-version.d.ts.map +1 -1
  568. package/dist/utils/schema-version.js +26 -6
  569. package/dist/utils/strict-modeling.d.ts +1 -4
  570. package/dist/utils/strict-modeling.d.ts.map +1 -1
  571. package/dist/utils/strict-modeling.js +8 -9
  572. package/package.json +47 -11
  573. package/schema/config.json +2 -2
  574. package/schema/manifest.json +26 -0
  575. package/src/public/branch-resolver.ts +1 -0
  576. package/src/public/check-types.ts +22 -19
  577. package/src/public/diagnostic-usage.ts +84 -6
  578. package/src/public/distribution-parity.ts +17 -9
  579. package/src/public/ignore-policy.ts +16 -10
  580. package/src/public/impact/coverage-depth-quality.ts +37 -1
  581. package/src/public/impact/diagnostics.ts +2 -1
  582. package/src/public/impact/diff-meaning.ts +11 -4
  583. package/src/public/impact/full-kb-quality.ts +545 -41
  584. package/src/public/impact/manifest.ts +2 -4
  585. package/src/public/operational-artifacts.ts +9 -1
  586. package/src/public/operations/catalog.ts +153 -10
  587. package/src/public/operations/check-executor.ts +98 -15
  588. package/src/public/operations/check-format-shared.ts +6 -0
  589. package/src/public/operations/check-helpers.ts +74 -35
  590. package/src/public/operations/contracts.ts +382 -0
  591. package/src/public/operations/discovery-entities.ts +7 -0
  592. package/src/public/operations/discovery-executors.ts +315 -25
  593. package/src/public/operations/index.ts +9 -4
  594. package/src/public/operations/migration-plan.ts +747 -0
  595. package/src/public/operations/node-ports.ts +87 -13
  596. package/src/public/operations/prolog-json.ts +60 -5
  597. package/src/public/operations/repair-plan.ts +60 -22
  598. package/src/public/operations/result-envelope.ts +141 -0
  599. package/src/public/operations/runtime-types.ts +96 -5
  600. package/src/public/operations/source-relationship-parity.ts +226 -0
  601. package/src/public/operations/specs/{autopilot.ts → bootstrap.ts} +17 -16
  602. package/src/public/operations/specs/check-rules.generated.ts +37 -0
  603. package/src/public/operations/specs/check.ts +14 -22
  604. package/src/public/operations/specs/discovery.ts +57 -3
  605. package/src/public/operations/specs/modeling.ts +3 -3
  606. package/src/public/operations/specs/mutation-schemas.ts +24 -6
  607. package/src/public/operations/specs/mutation.ts +27 -2
  608. package/src/public/operations/specs/planning.ts +241 -0
  609. package/src/public/operations/specs/proof.ts +43 -0
  610. package/src/public/operations/specs/reporting.ts +193 -12
  611. package/src/public/operations/specs/upsert.ts +10 -0
  612. package/src/public/operations/symbol-repair-plan.ts +324 -0
  613. package/src/public/operations/types.ts +62 -1
  614. package/src/public/proof-fingerprint.ts +216 -0
  615. package/src/public/proof-protocol-types.d.ts +96 -0
  616. package/src/public/proof-protocol.ts +589 -0
  617. package/src/public/proof-receipt.ts +499 -0
  618. package/src/public/schemas/entity.ts +27 -6
  619. package/src/public/skills/kibi-bootstrap/SKILL.md +58 -0
  620. package/src/public/skills/kibi-bootstrap/resources/bootstrap.md +11 -0
  621. package/src/public/skills/kibi-bootstrap/resources/branch-lifecycle.md +7 -0
  622. package/src/public/skills/kibi-bootstrap/resources/operation-access.md +5 -0
  623. package/src/public/skills/kibi-bootstrap/resources/source-authoring.md +8 -0
  624. package/src/public/skills/kibi-freshness/SKILL.md +39 -9
  625. package/src/public/skills/kibi-freshness/resources/branch-lifecycle.md +7 -0
  626. package/src/public/skills/kibi-freshness/resources/operation-access.md +6 -0
  627. package/src/public/skills/kibi-freshness/resources/source-authoring.md +7 -0
  628. package/src/public/skills/kibi-traceability/SKILL.md +47 -47
  629. package/src/public/skills/kibi-traceability/resources/branch-lifecycle.md +7 -0
  630. package/src/public/skills/kibi-traceability/resources/operation-access.md +5 -0
  631. package/src/public/skills/kibi-traceability/resources/source-authoring.md +6 -0
  632. package/src/public/skills/kibi-traceability/resources/traceability.md +8 -0
  633. package/src/public/skills/kibi-usage/SKILL.md +136 -231
  634. package/src/public/skills/kibi-usage/resources/branch-lifecycle.md +31 -0
  635. package/src/public/skills/kibi-usage/resources/kb-improvement.md +38 -0
  636. package/src/public/skills/kibi-usage/resources/operation-access.md +36 -38
  637. package/src/public/skills/kibi-usage/resources/proof.md +105 -0
  638. package/src/public/skills/kibi-usage/resources/relationship-directions.md +3 -3
  639. package/src/public/skills/kibi-usage/resources/source-authoring.md +31 -0
  640. package/src/public/skills/kibi-usage/resources/workflows.md +57 -4
  641. package/src/public/symbol-granularity.generated.ts +41 -0
  642. package/src/public/symbol-granularity.ts +35 -59
  643. package/src/public/telemetry-acceptance-types.d.ts +98 -0
  644. package/src/public/telemetry-acceptance.ts +30 -93
  645. package/src/public/telemetry-remediation.ts +1 -1
  646. package/src/schemas/entity.schema.json +1254 -239
  647. package/templates/github/kibi-badge.yml +86 -0
  648. package/templates/github/kibi-report.yml +84 -0
  649. package/dist/operations/autopilot/activation.d.ts +0 -4
  650. package/dist/operations/autopilot/activation.d.ts.map +0 -1
  651. package/dist/operations/autopilot/candidates.d.ts +0 -4
  652. package/dist/operations/autopilot/discovery.d.ts.map +0 -1
  653. package/dist/operations/autopilot/generate.d.ts +0 -8
  654. package/dist/operations/autopilot/generate.d.ts.map +0 -1
  655. package/dist/operations/autopilot/generate.js +0 -112
  656. package/dist/operations/autopilot/guidance.d.ts.map +0 -1
  657. package/dist/operations/autopilot/presentation.d.ts +0 -13
  658. package/dist/operations/autopilot/presentation.d.ts.map +0 -1
  659. package/dist/operations/autopilot/presentation.js +0 -91
  660. package/dist/operations/autopilot/types.d.ts.map +0 -1
  661. package/dist/operations/autopilot/types.js +0 -8
  662. package/dist/public/operations/specs/autopilot.d.ts.map +0 -1
  663. package/dist/public/skills/init-kibi/SKILL.md +0 -62
  664. package/dist/public/verification-receipt.d.ts +0 -75
  665. package/dist/public/verification-receipt.d.ts.map +0 -1
  666. package/dist/public/verification-receipt.js +0 -129
  667. package/src/public/skills/init-kibi/SKILL.md +0 -62
  668. package/src/public/verification-receipt.ts +0 -170
  669. /package/dist/operations/{autopilot → bootstrap}/candidate-helpers.d.ts +0 -0
  670. /package/dist/operations/{autopilot → bootstrap}/candidate-helpers.js +0 -0
  671. /package/dist/operations/{autopilot → bootstrap}/requirement-claims.d.ts +0 -0
  672. /package/dist/operations/{autopilot → bootstrap}/requirement-claims.js +0 -0
@@ -0,0 +1,618 @@
1
+ import { createHash } from "node:crypto";
2
+ import path from "node:path";
3
+ import { dump as dumpYaml } from "js-yaml";
4
+ import { executeIntentSearch, } from "../../intent-search.js";
5
+ import { normalizeEntityId, parseTriples } from "../../prolog/codec.js";
6
+ import { loadEntities } from "../../public/operations/discovery-entities.js";
7
+ import { executeStatus } from "../../public/operations/discovery-executors.js";
8
+ import { configuredSourceTarget } from "../mutation/source-authoring.js";
9
+ import { analyzeSemanticAdvisorInput } from "../semantic-advisor/analyze-prose.js";
10
+ import { canonicalize } from "../semantic-advisor/shared.js";
11
+ // implements REQ-kibi-change-to-proof-plan-compiler
12
+ export const COMPILE_PLAN_VERSION = "kibi.compile-plan.v1";
13
+ // implements REQ-kibi-change-to-proof-plan-compiler
14
+ export function compilePlanHash(plan) {
15
+ const { planHash: _ignored, ...body } = plan;
16
+ return hash(body);
17
+ }
18
+ const AUTO_UPDATE_SCORE = 0.85;
19
+ const AUTO_UPDATE_MARGIN = 0.15;
20
+ function text(value) {
21
+ return typeof value === "string" ? value.trim() : "";
22
+ }
23
+ function hash(value) {
24
+ return createHash("sha256").update(canonicalize(value)).digest("hex");
25
+ }
26
+ function shortHash(value, length = 8) {
27
+ return hash(value).slice(0, length);
28
+ }
29
+ function slug(value) {
30
+ const result = value
31
+ .toLowerCase()
32
+ .replace(/[^a-z0-9]+/g, "-")
33
+ .replace(/^-+|-+$/g, "")
34
+ .slice(0, 42);
35
+ return result || "intent";
36
+ }
37
+ function requiredIntent(args) {
38
+ const intent = text(args.intent);
39
+ if (!intent)
40
+ throw new Error("Compile intent failed: intent must be non-empty");
41
+ if (args.mode !== "create" && args.mode !== "update") {
42
+ throw new Error("Compile intent failed: mode must be create or update");
43
+ }
44
+ if (args.mode === "update" &&
45
+ args.requirementId !== undefined &&
46
+ !text(args.requirementId)) {
47
+ throw new Error("Compile intent failed: requirementId must be non-empty when supplied");
48
+ }
49
+ return intent;
50
+ }
51
+ function validateLocation(location) {
52
+ if (!text(location.path) ||
53
+ path.isAbsolute(location.path) ||
54
+ location.path.split(/[\\/]/).includes("..")) {
55
+ throw new Error("Compile intent failed: sourceLocations.path must be workspace-relative");
56
+ }
57
+ }
58
+ function mergeRelationships(rows) {
59
+ const seen = new Set();
60
+ return rows.filter((row) => {
61
+ const key = `${text(row.type)}\0${text(row.from)}\0${text(row.to)}`;
62
+ if (!key.replace(/\0/g, ""))
63
+ return false;
64
+ if (seen.has(key))
65
+ return false;
66
+ seen.add(key);
67
+ return true;
68
+ });
69
+ }
70
+ function mergeSteps(steps) {
71
+ const merged = new Map();
72
+ for (const raw of steps) {
73
+ const step = { ...raw };
74
+ const type = text(step.type);
75
+ const id = text(step.id);
76
+ if (!type || !id)
77
+ continue;
78
+ const key = `${type}:${id}`;
79
+ const previous = merged.get(key);
80
+ if (!previous) {
81
+ merged.set(key, {
82
+ ...step,
83
+ ...(Array.isArray(step.relationships)
84
+ ? {
85
+ relationships: mergeRelationships(step.relationships.filter(isRecord)),
86
+ }
87
+ : {}),
88
+ });
89
+ continue;
90
+ }
91
+ const properties = {
92
+ ...(isRecord(previous.properties) ? previous.properties : {}),
93
+ ...(isRecord(step.properties) ? step.properties : {}),
94
+ };
95
+ const relationships = mergeRelationships([
96
+ ...(Array.isArray(previous.relationships)
97
+ ? previous.relationships.filter(isRecord)
98
+ : []),
99
+ ...(Array.isArray(step.relationships)
100
+ ? step.relationships.filter(isRecord)
101
+ : []),
102
+ ]);
103
+ merged.set(key, { ...previous, ...step, properties, relationships });
104
+ }
105
+ return [...merged.values()].sort((left, right) => {
106
+ const leftType = text(left.type) === "req" ? 1 : 0;
107
+ const rightType = text(right.type) === "req" ? 1 : 0;
108
+ return leftType - rightType || text(left.id).localeCompare(text(right.id));
109
+ });
110
+ }
111
+ function isRecord(value) {
112
+ return value !== null && typeof value === "object" && !Array.isArray(value);
113
+ }
114
+ function propositionStatus(proposition, suggestion) {
115
+ if (proposition.role === "rationale" ||
116
+ proposition.role === "example" ||
117
+ proposition.role === "subjective") {
118
+ return "nonlogical";
119
+ }
120
+ if (suggestion?.kind === "ambiguity_observation")
121
+ return "ambiguous";
122
+ if (suggestion?.kind === "ontology_gap")
123
+ return "ontology_gap";
124
+ if (suggestion?.kind === "strict_property" ||
125
+ suggestion?.kind === "predicate" ||
126
+ suggestion?.kind === "rule")
127
+ return "modeled";
128
+ if (proposition.status === "ambiguous")
129
+ return "ambiguous";
130
+ if (proposition.status === "ontology_gap" || proposition.status === "missing")
131
+ return "ontology_gap";
132
+ return proposition.status === "nonlogical" ? "nonlogical" : "modeled";
133
+ }
134
+ function propositionDisposition(proposition, suggestion) {
135
+ if (proposition.role === "rationale" ||
136
+ proposition.role === "example" ||
137
+ proposition.role === "subjective")
138
+ return "nonlogical";
139
+ if (suggestion?.kind === "strict_property")
140
+ return "strict_property";
141
+ if (suggestion?.kind === "predicate")
142
+ return "predicate";
143
+ if (suggestion?.kind === "rule")
144
+ return "rule";
145
+ return "observation";
146
+ }
147
+ function sourceFilesFor(locations) {
148
+ return Array.from(new Set((locations ?? []).map((location) => location.path.trim()).filter(Boolean))).sort();
149
+ }
150
+ async function sourceHashes(context, locations) {
151
+ const hashes = {};
152
+ for (const relative of sourceFilesFor(locations)) {
153
+ try {
154
+ const contents = context.fs
155
+ ? await context.fs.readFile(path.join(context.workspaceRoot, relative))
156
+ : null;
157
+ hashes[relative] =
158
+ contents === null
159
+ ? null
160
+ : createHash("sha256").update(contents).digest("hex");
161
+ }
162
+ catch {
163
+ hashes[relative] = null;
164
+ }
165
+ }
166
+ return hashes;
167
+ }
168
+ function sourceTarget(context, locations, existingSource) {
169
+ const explicit = locations?.[0]?.path?.trim();
170
+ if (explicit)
171
+ return explicit.replaceAll("\\", "/");
172
+ if (existingSource &&
173
+ !/^[A-Za-z][A-Za-z0-9+.-]*:\/\//.test(existingSource) &&
174
+ /\.(?:md|mdx|ya?ml)$/i.test(existingSource))
175
+ return existingSource.replaceAll("\\", "/");
176
+ return configuredSourceTarget(context.workspaceRoot, "req");
177
+ }
178
+ async function sourceWritePlan(context, requirementId, title, intent, locations, existingSource, existingEntityExists) {
179
+ if (!context.fs)
180
+ return [];
181
+ if (existingEntityExists &&
182
+ (locations === undefined || locations.length === 0) &&
183
+ !existingSource.match(/\.(?:md|mdx|ya?ml|json)$/i)) {
184
+ return [];
185
+ }
186
+ const relative = sourceTarget(context, locations, existingSource);
187
+ if (!relative ||
188
+ path.isAbsolute(relative) ||
189
+ relative.split(/[\\/]/).includes("..")) {
190
+ return [];
191
+ }
192
+ const absolute = path.resolve(context.workspaceRoot, relative);
193
+ const root = path.resolve(context.workspaceRoot);
194
+ if (absolute !== root && !absolute.startsWith(`${root}${path.sep}`))
195
+ return [];
196
+ const workspaceRelative = path.relative(root, absolute);
197
+ if (workspaceRelative === ".kb" ||
198
+ workspaceRelative.startsWith(`.kb${path.sep}`))
199
+ return [];
200
+ let before;
201
+ try {
202
+ before = await context.fs.readFile(absolute);
203
+ }
204
+ catch {
205
+ before = undefined;
206
+ }
207
+ const frontmatter = `---\n${dumpYaml({ id: requirementId, title, type: "req", status: "open" }, { noRefs: true, lineWidth: -1 })}---\n`;
208
+ const body = `${frontmatter}${intent.trim()}\n`;
209
+ return [
210
+ {
211
+ path: relative,
212
+ mode: "write",
213
+ beforeHash: before === undefined
214
+ ? null
215
+ : createHash("sha256").update(before).digest("hex"),
216
+ afterHash: createHash("sha256").update(body).digest("hex"),
217
+ body,
218
+ },
219
+ ];
220
+ }
221
+ function generatedRequirementId(intent) {
222
+ return `REQ-${slug(intent)}-${shortHash(intent).toUpperCase()}`;
223
+ }
224
+ async function contradictionAnalysis(prolog, requirementId) {
225
+ const result = await prolog.query("findall([A,B,Reason], contradicting_reqs(A, B, Reason), Rows)");
226
+ if (!result.success)
227
+ return { outcome: "unresolved", witnesses: [] };
228
+ const rows = parseTriples(result.bindings.Rows ?? "[]");
229
+ const witnesses = rows
230
+ .map(([left, right, reason]) => ({
231
+ left: normalizeEntityId(left),
232
+ right: normalizeEntityId(right),
233
+ reason,
234
+ }))
235
+ .filter(({ left, right }) => left === requirementId || right === requirementId)
236
+ .map(({ left, right, reason }) => ({
237
+ requirements: [left, right],
238
+ reason,
239
+ }));
240
+ return {
241
+ outcome: witnesses.length > 0 ? "conflict" : "no_conflict",
242
+ witnesses,
243
+ };
244
+ }
245
+ function proposalFor(requirementId, match) {
246
+ const candidateId = text(match.entity.id);
247
+ const candidateType = text(match.entity.type);
248
+ if (!candidateId || candidateType === "req")
249
+ return null;
250
+ const relationship = candidateType === "scenario"
251
+ ? { from: requirementId, to: candidateId, type: "specified_by" }
252
+ : candidateType === "symbol"
253
+ ? { from: candidateId, to: requirementId, type: "implements" }
254
+ : candidateType === "test"
255
+ ? { from: candidateId, to: requirementId, type: "covered_by" }
256
+ : null;
257
+ if (!relationship)
258
+ return null;
259
+ const proposalId = `PROP-${shortHash({ candidateId, relationship })}`.toUpperCase();
260
+ return {
261
+ proposalId,
262
+ candidateId,
263
+ candidateType,
264
+ relationship,
265
+ confidence: match.score,
266
+ evidence: match.reasons,
267
+ decision: "pending",
268
+ };
269
+ }
270
+ function applyAcceptedProposals(steps, proposals) {
271
+ const accepted = proposals.filter((proposal) => proposal.decision === "accept");
272
+ if (accepted.length === 0)
273
+ return [...steps];
274
+ const byId = new Map(steps.map((step) => [text(step.id), { ...step }]));
275
+ for (const proposal of accepted) {
276
+ const targetId = proposal.relationship.from;
277
+ const existing = byId.get(targetId);
278
+ if (!existing)
279
+ continue;
280
+ const relationships = mergeRelationships([
281
+ ...(Array.isArray(existing.relationships)
282
+ ? existing.relationships.filter(isRecord)
283
+ : []),
284
+ proposal.relationship,
285
+ ]);
286
+ byId.set(targetId, { ...existing, relationships });
287
+ }
288
+ return mergeSteps([...byId.values()]);
289
+ }
290
+ function draftId(prefix, title, index) {
291
+ return `${prefix}-${slug(title)}-${shortHash(`${title}\0${index}`).toUpperCase()}`;
292
+ }
293
+ // implements REQ-kibi-change-to-proof-plan-compiler
294
+ function draftSteps(requirementId, scenarios, tests) {
295
+ const diagnostics = [];
296
+ const steps = [];
297
+ const scenarioIds = [];
298
+ const linkedScenarioIds = new Set();
299
+ const duplicateScenarioIds = new Set();
300
+ const testIds = new Set();
301
+ scenarios.forEach((scenario, index) => {
302
+ const id = text(scenario.id) || draftId("SCEN", scenario.title, index);
303
+ if (scenarioIds.includes(id)) {
304
+ duplicateScenarioIds.add(id);
305
+ diagnostics.push(`unresolved duplicate scenario draft ID ${id}; scenario associations are ambiguous.`);
306
+ }
307
+ scenarioIds.push(id);
308
+ steps.push({
309
+ type: "scenario",
310
+ id,
311
+ properties: {
312
+ title: scenario.title.trim(),
313
+ status: "draft",
314
+ body: scenario.body.trim(),
315
+ source: "mcp://kibi/compile-intent",
316
+ },
317
+ relationships: [],
318
+ });
319
+ });
320
+ tests.forEach((test, index) => {
321
+ const id = text(test.id) || draftId("TEST", test.title, index);
322
+ if (testIds.has(id)) {
323
+ diagnostics.push(`unresolved duplicate test draft ID ${id}; test associations are ambiguous.`);
324
+ }
325
+ testIds.add(id);
326
+ const requestedScenarioIds = test.scenarioIds?.map(text) ?? null;
327
+ const soleScenarioId = scenarioIds.length === 1 ? scenarioIds[0] : undefined;
328
+ const associatedScenarioIds = requestedScenarioIds !== null
329
+ ? Array.from(new Set(requestedScenarioIds.filter(Boolean)))
330
+ : soleScenarioId !== undefined
331
+ ? [soleScenarioId]
332
+ : [];
333
+ if (scenarioIds.length === 0) {
334
+ diagnostics.push(`unresolved test draft ${id} has no scenario draft; proof-bearing tests require a scenario relationship.`);
335
+ }
336
+ else if (requestedScenarioIds === null && scenarioIds.length > 1) {
337
+ diagnostics.push(`unresolved test draft ${id} must declare scenarioIds when multiple scenario drafts exist; positional association is not supported.`);
338
+ }
339
+ else if (requestedScenarioIds !== null &&
340
+ associatedScenarioIds.length === 0) {
341
+ diagnostics.push(`unresolved test draft ${id} must reference at least one scenario ID in scenarioIds.`);
342
+ }
343
+ if (requestedScenarioIds !== null &&
344
+ (requestedScenarioIds.some((scenarioId) => !scenarioId) ||
345
+ requestedScenarioIds.filter(Boolean).length !==
346
+ associatedScenarioIds.length)) {
347
+ diagnostics.push(`unresolved test draft ${id} repeats or omits scenario IDs; associations must be unique and non-empty.`);
348
+ }
349
+ const validScenarioIds = associatedScenarioIds.filter((scenarioId) => scenarioIds.includes(scenarioId) &&
350
+ !duplicateScenarioIds.has(scenarioId));
351
+ for (const scenarioId of associatedScenarioIds) {
352
+ if (!scenarioIds.includes(scenarioId)) {
353
+ diagnostics.push(`unresolved test draft ${id} references unknown scenario ID ${scenarioId}.`);
354
+ }
355
+ }
356
+ for (const scenarioId of validScenarioIds)
357
+ linkedScenarioIds.add(scenarioId);
358
+ steps.push({
359
+ type: "test",
360
+ id,
361
+ properties: {
362
+ title: test.title.trim(),
363
+ status: "draft",
364
+ body: test.body.trim(),
365
+ source: "mcp://kibi/compile-intent",
366
+ verification_scope: test.verificationScope ?? "integration",
367
+ verification_perspective: test.verificationPerspective ?? "internal",
368
+ },
369
+ relationships: validScenarioIds.map((scenarioId) => ({
370
+ type: "verified_by",
371
+ from: scenarioId,
372
+ to: id,
373
+ })),
374
+ });
375
+ });
376
+ for (const scenarioId of scenarioIds) {
377
+ if (!linkedScenarioIds.has(scenarioId)) {
378
+ diagnostics.push(`unresolved scenario draft ${scenarioId} has no test draft; add a test with scenarioIds to establish executable coverage.`);
379
+ }
380
+ }
381
+ if (scenarioIds.length > 0) {
382
+ steps.push({
383
+ type: "req",
384
+ id: requirementId,
385
+ properties: {},
386
+ relationships: scenarioIds.map((id) => ({
387
+ type: "specified_by",
388
+ from: requirementId,
389
+ to: id,
390
+ })),
391
+ });
392
+ }
393
+ return { steps, diagnostics };
394
+ }
395
+ // implements REQ-kibi-change-to-proof-plan-compiler
396
+ export async function executeCompileIntent(args, context) {
397
+ const intent = requiredIntent(args);
398
+ const prolog = context.prolog;
399
+ if (!prolog)
400
+ throw new Error("Compile intent requires a Prolog runtime");
401
+ for (const location of args.sourceLocations ?? [])
402
+ validateLocation(location);
403
+ const statusResult = await executeStatus({}, context);
404
+ const status = statusResult.structuredContent;
405
+ if (!status)
406
+ throw new Error("Compile intent failed: status query returned no payload");
407
+ const snapshotEvidence = status?.proofSnapshot;
408
+ const workspaceSnapshot = snapshotEvidence
409
+ ? {
410
+ version: "kibi.workspace-snapshot.v2",
411
+ hash: snapshotEvidence,
412
+ dirty: status?.proofSnapshotDirty ?? false,
413
+ fileCount: status?.proofSnapshotFileCount ?? 0,
414
+ }
415
+ : {
416
+ version: "kibi.workspace-snapshot.v2",
417
+ hash: "unknown",
418
+ dirty: true,
419
+ fileCount: 0,
420
+ };
421
+ const search = await executeIntentSearch({
422
+ query: intent,
423
+ type: "req",
424
+ ...(args.semanticFacets ? { semanticFacets: args.semanticFacets } : {}),
425
+ ...(args.sourceLocations
426
+ ? { sourceLocations: args.sourceLocations }
427
+ : {}),
428
+ minScore: 0.05,
429
+ }, prolog, context.workspaceRoot);
430
+ const top = search.matches[0];
431
+ const margin = search.analysis.topTwoMargin ?? 1;
432
+ const explicitId = text(args.requirementId);
433
+ let requirementId = explicitId;
434
+ let selectionReason = explicitId
435
+ ? "Caller supplied requirementId."
436
+ : "Generated from intent content hash.";
437
+ const diagnostics = [];
438
+ if (args.mode === "update" && !explicitId) {
439
+ if (top && top.score >= AUTO_UPDATE_SCORE && margin >= AUTO_UPDATE_MARGIN) {
440
+ requirementId = text(top.entity.id);
441
+ selectionReason = `Selected top requirement because score ${top.score.toFixed(3)} >= ${AUTO_UPDATE_SCORE.toFixed(2)} and margin ${margin.toFixed(3)} >= ${AUTO_UPDATE_MARGIN.toFixed(2)}.`;
442
+ }
443
+ else {
444
+ requirementId = text(top?.entity.id) || "REQ-PENDING-RESOLUTION";
445
+ diagnostics.push("Update target is unresolved: supply requirementId or improve the top candidate score and margin.");
446
+ }
447
+ }
448
+ if (args.mode === "create")
449
+ requirementId = generatedRequirementId(intent);
450
+ if (!requirementId)
451
+ throw new Error("Compile intent failed: could not determine requirementId");
452
+ const existing = await loadEntities(prolog, {
453
+ id: requirementId,
454
+ type: "req",
455
+ });
456
+ if (args.mode === "create" && existing.length > 0) {
457
+ const existingText = text(existing[0]?.semantic_text) || text(existing[0]?.title);
458
+ if (existingText !== intent)
459
+ diagnostics.push(`Generated requirement ID ${requirementId} already exists with different content; create is blocked.`);
460
+ }
461
+ if (args.mode === "update" && !explicitId && diagnostics.length > 0) {
462
+ diagnostics.push("No mutation steps are emitted until the update target is explicitly resolved.");
463
+ }
464
+ if (args.mode === "update" && explicitId && existing.length === 0)
465
+ diagnostics.push(`Requirement ${requirementId} was not found in the current KB snapshot.`);
466
+ const existingEntity = existing[0] ?? {};
467
+ const title = text(args.title) ||
468
+ text(existingEntity.title) ||
469
+ intent.split(/[.!?]/, 1)[0] ||
470
+ intent;
471
+ const source = text(args.sourceLocations?.[0]?.path) ||
472
+ text(existingEntity.source) ||
473
+ "mcp://kibi/compile-intent";
474
+ const advisor = analyzeSemanticAdvisorInput({
475
+ payload: {
476
+ type: "req",
477
+ id: requirementId,
478
+ properties: {
479
+ title,
480
+ status: text(existingEntity.status) || "open",
481
+ source,
482
+ semantic_text: intent,
483
+ ...(Array.isArray(existingEntity.logic_claims)
484
+ ? { logic_claims: existingEntity.logic_claims }
485
+ : {}),
486
+ },
487
+ },
488
+ ...(args.clauses ? { clauses: args.clauses } : {}),
489
+ ...(args.interpretations ? { interpretations: args.interpretations } : {}),
490
+ });
491
+ diagnostics.push(...advisor.warnings);
492
+ const suggestionByClaim = new Map(advisor.receipt.suggestions.map((suggestion) => [
493
+ suggestion.claim_key,
494
+ suggestion,
495
+ ]));
496
+ const propositions = advisor.receipt.propositions.map((proposition) => {
497
+ const suggestion = suggestionByClaim.get(proposition.claim_key);
498
+ return {
499
+ claimKey: proposition.claim_key,
500
+ text: proposition.claim_text,
501
+ span: proposition.span,
502
+ disposition: propositionDisposition(proposition, suggestion),
503
+ status: propositionStatus(proposition, suggestion),
504
+ origin: args.interpretations?.some((interpretation) => interpretation.claim_key === proposition.claim_key)
505
+ ? "host"
506
+ : "deterministic",
507
+ };
508
+ });
509
+ const executableSuggestions = advisor.receipt.suggestions.filter((suggestion) => ["strict_property", "predicate", "rule"].includes(suggestion.kind));
510
+ const steps = mergeSteps([
511
+ {
512
+ type: "req",
513
+ id: requirementId,
514
+ properties: {
515
+ title,
516
+ status: text(existingEntity.status) || "open",
517
+ source,
518
+ semantic_text: intent,
519
+ },
520
+ relationships: [],
521
+ },
522
+ ...executableSuggestions.flatMap((suggestion) => [
523
+ ...suggestion.applyPlan,
524
+ ...(suggestion.kind === "predicate" || suggestion.kind === "rule"
525
+ ? suggestion.relationshipPlan?.relationship
526
+ ? [
527
+ {
528
+ type: "req",
529
+ id: requirementId,
530
+ properties: {},
531
+ relationships: [suggestion.relationshipPlan.relationship],
532
+ },
533
+ ]
534
+ : []
535
+ : []),
536
+ ]),
537
+ ]);
538
+ const drafts = draftSteps(requirementId, args.scenarioDrafts ?? [], args.testDrafts ?? []);
539
+ diagnostics.push(...drafts.diagnostics);
540
+ const proposalDecisions = new Map((args.proposalDecisions ?? []).map((decision) => [
541
+ decision.proposalId,
542
+ decision.decision,
543
+ ]));
544
+ const proposals = search.matches
545
+ .slice(0, 10)
546
+ .flatMap((match) => {
547
+ const proposal = proposalFor(requirementId, match);
548
+ if (!proposal)
549
+ return [];
550
+ const decision = proposalDecisions.get(proposal.proposalId);
551
+ return [
552
+ {
553
+ ...proposal,
554
+ decision: decision === "accept" || decision === "reject"
555
+ ? decision
556
+ : "pending",
557
+ },
558
+ ];
559
+ });
560
+ const stepsWithAcceptedProposals = applyAcceptedProposals([...steps, ...drafts.steps], proposals);
561
+ const contradictions = await contradictionAnalysis(prolog, requirementId);
562
+ if (contradictions.outcome === "conflict")
563
+ diagnostics.push("Current requirement conflicts must be resolved with an explicit supersedes relationship before applying this plan.");
564
+ if (contradictions.outcome === "unresolved")
565
+ diagnostics.push("Contradiction analysis could not run against the attached KB snapshot.");
566
+ if (args.mode === "create" &&
567
+ existing.length > 0 &&
568
+ diagnostics.some((entry) => entry.includes("already exists with different content")))
569
+ diagnostics.push("Change mode to update and supply requirementId to revise an existing requirement.");
570
+ const unresolved = propositions.some((proposition) => proposition.status === "ambiguous" ||
571
+ proposition.status === "ontology_gap") ||
572
+ diagnostics.some((entry) => entry.includes("unresolved") ||
573
+ entry.includes("not found") ||
574
+ entry.includes("different content"));
575
+ const statusValue = contradictions.outcome === "conflict"
576
+ ? "blocked"
577
+ : unresolved
578
+ ? "needs_resolution"
579
+ : "ready";
580
+ const sourceHashMap = await sourceHashes(context, args.sourceLocations);
581
+ const sourceWrites = statusValue === "ready"
582
+ ? await sourceWritePlan(context, requirementId, title, intent, args.sourceLocations, source, existing.length > 0)
583
+ : [];
584
+ const planBody = {
585
+ version: COMPILE_PLAN_VERSION,
586
+ status: statusValue,
587
+ expected: {
588
+ branch: status.branch,
589
+ kbSnapshotId: status.snapshotId,
590
+ workspaceSnapshot: workspaceSnapshot.hash,
591
+ sourceHashes: sourceHashMap,
592
+ },
593
+ target: { mode: args.mode, requirementId, selectionReason },
594
+ discovery: {
595
+ candidates: search.matches,
596
+ abstained: search.analysis.abstained,
597
+ },
598
+ propositions,
599
+ contradictionAnalysis: contradictions,
600
+ proposals,
601
+ steps: stepsWithAcceptedProposals,
602
+ sourceWrites,
603
+ diagnostics,
604
+ };
605
+ const plan = {
606
+ ...planBody,
607
+ planHash: compilePlanHash(planBody),
608
+ };
609
+ return {
610
+ content: [
611
+ {
612
+ type: "text",
613
+ text: `Compiled ${intent.length} characters into ${statusValue} plan ${plan.planHash.slice(0, 12)} with ${stepsWithAcceptedProposals.length} step(s).`,
614
+ },
615
+ ],
616
+ structuredContent: plan,
617
+ };
618
+ }
@@ -0,0 +1,34 @@
1
+ import { type ProofGap } from "../../proof/evaluate.js";
2
+ import type { OperationContext } from "../../public/operations/runtime-types.js";
3
+ import { type ProofReceipt } from "../../public/proof-receipt.js";
4
+ export type IngestProofArgs = Readonly<{
5
+ snapshot: string;
6
+ artifact: Readonly<Record<string, unknown>>;
7
+ testIds?: readonly string[];
8
+ }>;
9
+ export type IngestProofTestResult = Readonly<{
10
+ testId: string;
11
+ outcome: ProofReceipt["outcome"];
12
+ receiptId: string;
13
+ applied: boolean;
14
+ duplicate: boolean;
15
+ receiptCount: number;
16
+ gaps: readonly ProofGap[];
17
+ }>;
18
+ export type IngestProofResult = Readonly<{
19
+ artifactDigest: string;
20
+ environmentHash: string;
21
+ integration: string | null;
22
+ passed: number;
23
+ failed: number;
24
+ unchanged: number;
25
+ results: readonly IngestProofTestResult[];
26
+ }>;
27
+ export declare function executeIngestProof(args: IngestProofArgs, context: OperationContext): Promise<{
28
+ content: Array<{
29
+ type: "text";
30
+ text: string;
31
+ }>;
32
+ structuredContent: IngestProofResult;
33
+ }>;
34
+ //# sourceMappingURL=ingest-proof.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ingest-proof.d.ts","sourceRoot":"","sources":["../../../src/operations/proof/ingest-proof.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,QAAQ,EAEd,MAAM,yBAAyB,CAAC;AAOjC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAkBjF,OAAO,EAEL,KAAK,YAAY,EAGlB,MAAM,+BAA+B,CAAC;AAYvC,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,SAAS,QAAQ,EAAE,CAAC;CAC3B,CAAC,CAAC;AAGH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC;IACvC,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,SAAS,qBAAqB,EAAE,CAAC;CAC3C,CAAC,CAAC;AAqFH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC;IACT,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,CAAC,CA2RD"}