@dikolab/kbdb 0.3.1 → 0.4.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 (468) hide show
  1. package/README.md +108 -126
  2. package/dist/chunk-BJPSPNGX.mjs +223 -0
  3. package/dist/chunk-BJPSPNGX.mjs.map +7 -0
  4. package/dist/cli.cjs +956 -319
  5. package/dist/cli.cjs.map +4 -4
  6. package/dist/cli.d.ts +9 -0
  7. package/dist/cli.mjs +840 -321
  8. package/dist/cli.mjs.map +4 -4
  9. package/dist/kbdb-worker.cjs +714 -94
  10. package/dist/kbdb-worker.cjs.map +4 -4
  11. package/dist/mod.cjs +122 -16
  12. package/dist/mod.cjs.map +3 -3
  13. package/dist/mod.d.ts +23 -2
  14. package/dist/mod.mjs +121 -16
  15. package/dist/mod.mjs.map +3 -3
  16. package/dist/src/shared/cli/functions/dispatch-command.function.d.ts +2 -1
  17. package/dist/src/shared/cli/functions/find-db.function.d.ts +7 -8
  18. package/dist/src/shared/cli/functions/handle-mcp.function.d.ts +1 -1
  19. package/dist/src/shared/cli/functions/parse-args.function.d.ts +4 -3
  20. package/dist/src/shared/cli/functions/resolve-kbid-prefix.function.d.ts +27 -0
  21. package/dist/src/shared/cli/functions/resolve-raw-db-path.function.d.ts +10 -0
  22. package/dist/src/shared/cli/functions/run-cli.function.d.ts +3 -1
  23. package/dist/src/shared/cli/functions/run-content.function.d.ts +8 -3
  24. package/dist/src/shared/cli/functions/run-import.function.d.ts +27 -0
  25. package/dist/src/shared/cli/functions/run-recall.function.d.ts +10 -4
  26. package/dist/src/shared/cli/functions/run-search.function.d.ts +7 -0
  27. package/dist/src/shared/cli/functions/run-unlearn.function.d.ts +9 -4
  28. package/dist/src/shared/cli/functions/run-worker-restart.function.d.ts +11 -0
  29. package/dist/src/shared/cli/functions/run-worker-stop.function.d.ts +11 -0
  30. package/dist/src/shared/cli/index.d.ts +2 -0
  31. package/dist/src/shared/cli/typings/cli-deps.interface.d.ts +4 -1
  32. package/dist/src/shared/cli/typings/cli-options.interface.d.ts +17 -0
  33. package/dist/src/shared/cli/typings/dispatch-client.type.d.ts +2 -1
  34. package/dist/src/shared/cli/typings/search-display.model.d.ts +6 -0
  35. package/dist/src/shared/embedding/classes/api-embedding-provider.class.d.ts +33 -0
  36. package/dist/src/shared/embedding/classes/onnx-embedding-provider.class.d.ts +33 -0
  37. package/dist/src/shared/embedding/functions/append-vector-entry.function.d.ts +14 -0
  38. package/dist/src/shared/embedding/functions/create-embedding-provider.function.d.ts +12 -0
  39. package/dist/src/shared/embedding/functions/detect-stale-vectors.function.d.ts +16 -0
  40. package/dist/src/shared/embedding/functions/parse-api-embedding-response.function.d.ts +11 -0
  41. package/dist/src/shared/embedding/functions/rebuild-vectors.function.d.ts +15 -0
  42. package/dist/src/shared/embedding/functions/scan-semantic-contradictions.function.d.ts +13 -0
  43. package/dist/src/shared/embedding/index.d.ts +7 -0
  44. package/dist/src/shared/embedding/typings/semantic-contradiction.model.d.ts +21 -0
  45. package/dist/src/shared/embedding/typings/stale-vectors-report.model.d.ts +16 -0
  46. package/dist/src/shared/mcp/classes/mcp-server.class.d.ts +22 -2
  47. package/dist/src/shared/mcp/functions/create-mcp-server.function.d.ts +6 -1
  48. package/dist/src/shared/mcp/functions/has-sampling-capability.function.d.ts +8 -0
  49. package/dist/src/shared/mcp/functions/run-auto-capture.function.d.ts +26 -0
  50. package/dist/src/shared/mcp/typings/mcp-client.interface.d.ts +2 -0
  51. package/dist/src/shared/mcp/typings/mcp-integrity-check-result.model.d.ts +24 -0
  52. package/dist/src/shared/mcp/typings/mcp-worker-client.interface.d.ts +3 -1
  53. package/dist/src/shared/version/constants/version.constant.d.ts +1 -1
  54. package/dist/src/shared/wasm-codec/typings/paged-search-result.model.d.ts +2 -0
  55. package/dist/src/shared/worker-client/classes/worker-client.class.d.ts +31 -1
  56. package/dist/src/shared/worker-client/constants/request-timeout.constant.d.ts +2 -0
  57. package/dist/src/shared/worker-client/constants/retry-defaults.constant.d.ts +2 -0
  58. package/dist/src/shared/worker-client/functions/get-or-create-client.function.d.ts +20 -0
  59. package/dist/src/shared/worker-client/functions/retry-on-timeout.function.d.ts +17 -0
  60. package/dist/src/shared/worker-client/index.d.ts +4 -1
  61. package/dist/src/shared/worker-client/typings/import-result.model.d.ts +16 -0
  62. package/dist/src/shared/worker-client/typings/integrity-check-result.model.d.ts +24 -0
  63. package/dist/src/shared/worker-client/typings/search-params.model.d.ts +4 -0
  64. package/dist/src/shared/worker-client/typings/search-result.model.d.ts +6 -0
  65. package/dist/src/shared/worker-client/typings/worker-client-options.interface.d.ts +7 -0
  66. package/dist/src/shared/worker-daemon/classes/worker-daemon.class.d.ts +5 -0
  67. package/dist/src/shared/worker-daemon/functions/create-ipc-server.function.d.ts +11 -11
  68. package/dist/src/shared/worker-daemon/functions/embed-after-learn.function.d.ts +13 -0
  69. package/dist/src/shared/worker-daemon/functions/handle-hybrid-search.function.d.ts +44 -0
  70. package/dist/src/shared/worker-daemon/functions/handle-import.function.d.ts +14 -0
  71. package/dist/src/shared/worker-daemon/functions/handle-read-ops.function.d.ts +7 -1
  72. package/dist/src/shared/worker-daemon/functions/handle-write-ops.function.d.ts +9 -4
  73. package/dist/src/shared/worker-daemon/typings/handler-context.interface.d.ts +3 -0
  74. package/dist/wasm/fs-database/kbdb_fs_database.d.ts +16 -85
  75. package/dist/wasm/fs-database/kbdb_fs_database.js +16 -85
  76. package/dist/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  77. package/dist/wasm/kb-worker/kbdb_worker.d.ts +20 -115
  78. package/dist/wasm/kb-worker/kbdb_worker.js +20 -115
  79. package/dist/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  80. package/dist/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  81. package/dist/worker.d.ts +8 -0
  82. package/dist/worker.mjs +606 -102
  83. package/dist/worker.mjs.map +4 -4
  84. package/docs/details/README.md +4 -0
  85. package/docs/details/agent-tooling.md +122 -0
  86. package/docs/details/cli.md +78 -12
  87. package/docs/details/knowledge-base.md +173 -0
  88. package/docs/details/library-api.md +42 -2
  89. package/docs/details/mcp-server.md +39 -8
  90. package/docs/details/search-and-ranking.md +56 -0
  91. package/docs/goals/cli.md +110 -34
  92. package/docs/goals/mcp.md +22 -19
  93. package/docs/goals/query-parser.md +8 -0
  94. package/docs/goals/worker-client.md +62 -1
  95. package/docs/goals/worker-daemon.md +52 -10
  96. package/docs/modules/typescript/cli.md +1 -1
  97. package/docs/modules/typescript/shared/cli/functions.md +116 -13
  98. package/docs/modules/typescript/shared/cli/module.md +33 -20
  99. package/docs/modules/typescript/shared/cli/typings.md +4 -0
  100. package/docs/modules/typescript/shared/embedding/functions.md +104 -25
  101. package/docs/modules/typescript/shared/mcp/module.md +1 -1
  102. package/docs/modules/typescript/shared/mcp/typings.md +8 -1
  103. package/docs/modules/typescript/shared/worker-client/module.md +9 -1
  104. package/docs/modules/typescript/shared/worker-client/typings.md +3 -0
  105. package/docs/modules/typescript/shared/worker-daemon/module.md +6 -3
  106. package/docs/overview.md +43 -22
  107. package/docs/release-notes/0.3.1.md +10 -0
  108. package/docs/release-notes/0.3.2.md +64 -0
  109. package/docs/release-notes/0.4.0.md +80 -0
  110. package/docs/release-notes/README.md +2 -0
  111. package/mod.ts +33 -15
  112. package/package.json +11 -10
  113. package/dist/chunk-JG2UCKLI.mjs +0 -95
  114. package/dist/chunk-JG2UCKLI.mjs.map +0 -7
  115. package/src/cli.ts +0 -71
  116. package/src/shared/auto-capture/classes/auto-capture-controller.class.ts +0 -62
  117. package/src/shared/auto-capture/constants/auto-capture-defaults.constant.ts +0 -15
  118. package/src/shared/auto-capture/functions/build-capture-prompt.function.ts +0 -27
  119. package/src/shared/auto-capture/functions/evaluate-trigger.function.ts +0 -50
  120. package/src/shared/auto-capture/index.ts +0 -7
  121. package/src/shared/auto-capture/typings/auto-capture-config.interface.ts +0 -13
  122. package/src/shared/auto-capture/typings/auto-capture-state.interface.ts +0 -13
  123. package/src/shared/auto-capture/typings/auto-capture-trigger.interface.ts +0 -7
  124. package/src/shared/cli/constants/defaults.constant.ts +0 -19
  125. package/src/shared/cli/constants/global-help.constant.ts +0 -73
  126. package/src/shared/cli/constants/help-text.constant.ts +0 -4
  127. package/src/shared/cli/constants/leaf-help.constant.ts +0 -219
  128. package/src/shared/cli/constants/memory-protocol-body.constant.ts +0 -39
  129. package/src/shared/cli/constants/query-guidance-body.constant.ts +0 -37
  130. package/src/shared/cli/constants/subcommand-help.constant.ts +0 -195
  131. package/src/shared/cli/functions/collect-files.function.ts +0 -55
  132. package/src/shared/cli/functions/compute-section-kbid.function.ts +0 -49
  133. package/src/shared/cli/functions/dispatch-command.function.ts +0 -390
  134. package/src/shared/cli/functions/ensure-db.function.ts +0 -21
  135. package/src/shared/cli/functions/error-to-message.function.ts +0 -9
  136. package/src/shared/cli/functions/find-db.function.ts +0 -20
  137. package/src/shared/cli/functions/format-mcp-output.function.ts +0 -41
  138. package/src/shared/cli/functions/format-output.function.ts +0 -95
  139. package/src/shared/cli/functions/format-text-output.function.ts +0 -42
  140. package/src/shared/cli/functions/generate-group-help.function.ts +0 -41
  141. package/src/shared/cli/functions/generate-help.function.ts +0 -654
  142. package/src/shared/cli/functions/handle-data-command.function.ts +0 -67
  143. package/src/shared/cli/functions/handle-mcp.function.ts +0 -56
  144. package/src/shared/cli/functions/handle-migrate.function.ts +0 -64
  145. package/src/shared/cli/functions/hydrate-search-previews.function.ts +0 -29
  146. package/src/shared/cli/functions/install-default-skills.function.ts +0 -296
  147. package/src/shared/cli/functions/is-stdin-tty.function.ts +0 -12
  148. package/src/shared/cli/functions/parse-args.function.ts +0 -156
  149. package/src/shared/cli/functions/prompt-user.function.ts +0 -36
  150. package/src/shared/cli/functions/resolve-skill-names.function.ts +0 -43
  151. package/src/shared/cli/functions/run-agent-create.function.ts +0 -114
  152. package/src/shared/cli/functions/run-agent-delete.function.ts +0 -47
  153. package/src/shared/cli/functions/run-agent-get.function.ts +0 -166
  154. package/src/shared/cli/functions/run-agent-list.function.ts +0 -58
  155. package/src/shared/cli/functions/run-check.function.ts +0 -159
  156. package/src/shared/cli/functions/run-cli.function.ts +0 -299
  157. package/src/shared/cli/functions/run-content.function.ts +0 -47
  158. package/src/shared/cli/functions/run-db-init.function.ts +0 -44
  159. package/src/shared/cli/functions/run-db-migrate.function.ts +0 -40
  160. package/src/shared/cli/functions/run-export.function.ts +0 -40
  161. package/src/shared/cli/functions/run-gc.function.ts +0 -51
  162. package/src/shared/cli/functions/run-init.function.ts +0 -93
  163. package/src/shared/cli/functions/run-learn.function.ts +0 -223
  164. package/src/shared/cli/functions/run-migrate.function.ts +0 -85
  165. package/src/shared/cli/functions/run-rebuild.function.ts +0 -47
  166. package/src/shared/cli/functions/run-recall.function.ts +0 -66
  167. package/src/shared/cli/functions/run-search.function.ts +0 -133
  168. package/src/shared/cli/functions/run-skill-delete.function.ts +0 -47
  169. package/src/shared/cli/functions/run-skill-get.function.ts +0 -90
  170. package/src/shared/cli/functions/run-skill-learn.function.ts +0 -70
  171. package/src/shared/cli/functions/run-skill-list.function.ts +0 -74
  172. package/src/shared/cli/functions/run-status.function.ts +0 -29
  173. package/src/shared/cli/functions/run-unlearn.function.ts +0 -58
  174. package/src/shared/cli/functions/version-gate.function.ts +0 -44
  175. package/src/shared/cli/functions/wrap-command.function.ts +0 -34
  176. package/src/shared/cli/index.ts +0 -55
  177. package/src/shared/cli/typings/agent-create-client.interface.ts +0 -47
  178. package/src/shared/cli/typings/agent-get-client.interface.ts +0 -39
  179. package/src/shared/cli/typings/check-client.interface.ts +0 -66
  180. package/src/shared/cli/typings/cli-deps.interface.ts +0 -54
  181. package/src/shared/cli/typings/cli-options.interface.ts +0 -72
  182. package/src/shared/cli/typings/command-result.model.ts +0 -15
  183. package/src/shared/cli/typings/disconnectable-client.interface.ts +0 -29
  184. package/src/shared/cli/typings/dispatch-client.type.ts +0 -46
  185. package/src/shared/cli/typings/learn-client.interface.ts +0 -53
  186. package/src/shared/cli/typings/learn-io.interface.ts +0 -5
  187. package/src/shared/cli/typings/learn-result.model.ts +0 -27
  188. package/src/shared/cli/typings/search-client.interface.ts +0 -73
  189. package/src/shared/cli/typings/search-display.model.ts +0 -54
  190. package/src/shared/dir-resolver/functions/join-path.function.ts +0 -13
  191. package/src/shared/dir-resolver/functions/resolve-base-dir.function.ts +0 -25
  192. package/src/shared/dir-resolver/functions/resolve-wasm-dir.function.ts +0 -5
  193. package/src/shared/dir-resolver/functions/resolve-worker-script.function.ts +0 -13
  194. package/src/shared/dir-resolver/index.ts +0 -11
  195. package/src/shared/dir-resolver/typings/base-dir.interface.ts +0 -4
  196. package/src/shared/embedding/classes/null-embedding-provider.class.ts +0 -29
  197. package/src/shared/embedding/constants/near-duplicate-thresholds.constant.ts +0 -17
  198. package/src/shared/embedding/functions/build-vector-index.function.ts +0 -79
  199. package/src/shared/embedding/functions/cosine-similarity.function.ts +0 -31
  200. package/src/shared/embedding/functions/detect-near-duplicates.function.ts +0 -69
  201. package/src/shared/embedding/functions/jaccard-coefficient.function.ts +0 -26
  202. package/src/shared/embedding/functions/read-vector-index-meta.function.ts +0 -44
  203. package/src/shared/embedding/functions/rrf-fuse.function.ts +0 -33
  204. package/src/shared/embedding/functions/search-vectors.function.ts +0 -59
  205. package/src/shared/embedding/index.ts +0 -20
  206. package/src/shared/embedding/typings/embedding-config.interface.ts +0 -23
  207. package/src/shared/embedding/typings/embedding-provider.interface.ts +0 -25
  208. package/src/shared/embedding/typings/near-duplicate-candidate.model.ts +0 -25
  209. package/src/shared/embedding/typings/near-duplicate-result.model.ts +0 -26
  210. package/src/shared/embedding/typings/vector-index-entry.model.ts +0 -13
  211. package/src/shared/embedding/typings/vector-index-meta.model.ts +0 -14
  212. package/src/shared/embedding/typings/vector-search-result.model.ts +0 -8
  213. package/src/shared/hash/functions/compute-sha256.ts +0 -17
  214. package/src/shared/hash/index.ts +0 -1
  215. package/src/shared/mcp/classes/mcp-server.class.ts +0 -480
  216. package/src/shared/mcp/constants/mcp-error-codes.constant.ts +0 -30
  217. package/src/shared/mcp/constants/tool-agent-create.constant.ts +0 -39
  218. package/src/shared/mcp/constants/tool-agent-delete.constant.ts +0 -26
  219. package/src/shared/mcp/constants/tool-agent-get.constant.ts +0 -24
  220. package/src/shared/mcp/constants/tool-agent-list.constant.ts +0 -18
  221. package/src/shared/mcp/constants/tool-auto-capture-review.constant.ts +0 -32
  222. package/src/shared/mcp/constants/tool-check.constant.ts +0 -21
  223. package/src/shared/mcp/constants/tool-content.constant.ts +0 -29
  224. package/src/shared/mcp/constants/tool-export.constant.ts +0 -27
  225. package/src/shared/mcp/constants/tool-gc.constant.ts +0 -21
  226. package/src/shared/mcp/constants/tool-learn.constant.ts +0 -58
  227. package/src/shared/mcp/constants/tool-rebuild.constant.ts +0 -21
  228. package/src/shared/mcp/constants/tool-recall.constant.ts +0 -36
  229. package/src/shared/mcp/constants/tool-retrieve.constant.ts +0 -31
  230. package/src/shared/mcp/constants/tool-search.constant.ts +0 -51
  231. package/src/shared/mcp/constants/tool-skill-delete.constant.ts +0 -24
  232. package/src/shared/mcp/constants/tool-skill-get.constant.ts +0 -27
  233. package/src/shared/mcp/constants/tool-skill-learn.constant.ts +0 -37
  234. package/src/shared/mcp/constants/tool-skill-list.constant.ts +0 -18
  235. package/src/shared/mcp/constants/tool-status.constant.ts +0 -20
  236. package/src/shared/mcp/constants/tool-unlearn.constant.ts +0 -25
  237. package/src/shared/mcp/functions/as-boolean-or-undefined.function.ts +0 -11
  238. package/src/shared/mcp/functions/as-string-array-or-undefined.function.ts +0 -17
  239. package/src/shared/mcp/functions/as-string-array.function.ts +0 -15
  240. package/src/shared/mcp/functions/as-string.function.ts +0 -10
  241. package/src/shared/mcp/functions/build-skills-text.function.ts +0 -43
  242. package/src/shared/mcp/functions/create-mcp-server.function.ts +0 -14
  243. package/src/shared/mcp/functions/create-prompt-definitions.function.ts +0 -102
  244. package/src/shared/mcp/functions/create-resource-templates.function.ts +0 -23
  245. package/src/shared/mcp/functions/create-tool-definitions.function.ts +0 -530
  246. package/src/shared/mcp/functions/extract-skill-arguments.function.ts +0 -27
  247. package/src/shared/mcp/functions/handle-agent-create.function.ts +0 -116
  248. package/src/shared/mcp/functions/handle-agent-delete.function.ts +0 -50
  249. package/src/shared/mcp/functions/handle-agent-get.function.ts +0 -160
  250. package/src/shared/mcp/functions/handle-agent-list.function.ts +0 -50
  251. package/src/shared/mcp/functions/handle-agent-prompt.function.ts +0 -68
  252. package/src/shared/mcp/functions/handle-completion.function.ts +0 -114
  253. package/src/shared/mcp/functions/handle-mcp-request.function.ts +0 -202
  254. package/src/shared/mcp/functions/handle-prompt-get.function.ts +0 -220
  255. package/src/shared/mcp/functions/handle-recall.function.ts +0 -66
  256. package/src/shared/mcp/functions/handle-resource-read.function.ts +0 -56
  257. package/src/shared/mcp/functions/handle-roots-list.function.ts +0 -29
  258. package/src/shared/mcp/functions/handle-skill-prompt.function.ts +0 -44
  259. package/src/shared/mcp/functions/handle-tool-auto-capture-review.function.ts +0 -24
  260. package/src/shared/mcp/functions/handle-tool-call.function.ts +0 -560
  261. package/src/shared/mcp/functions/handle-tool-check.function.ts +0 -21
  262. package/src/shared/mcp/functions/handle-tool-content.function.ts +0 -23
  263. package/src/shared/mcp/functions/handle-tool-export.function.ts +0 -25
  264. package/src/shared/mcp/functions/handle-tool-gc.function.ts +0 -21
  265. package/src/shared/mcp/functions/handle-tool-learn.function.ts +0 -69
  266. package/src/shared/mcp/functions/handle-tool-rebuild.function.ts +0 -21
  267. package/src/shared/mcp/functions/handle-tool-retrieve.function.ts +0 -40
  268. package/src/shared/mcp/functions/handle-tool-search.function.ts +0 -47
  269. package/src/shared/mcp/functions/handle-tool-skill-delete.function.ts +0 -34
  270. package/src/shared/mcp/functions/handle-tool-skill-get.function.ts +0 -59
  271. package/src/shared/mcp/functions/handle-tool-skill-learn.function.ts +0 -61
  272. package/src/shared/mcp/functions/handle-tool-skill-list.function.ts +0 -39
  273. package/src/shared/mcp/functions/handle-tool-status.function.ts +0 -21
  274. package/src/shared/mcp/functions/handle-tool-unlearn.function.ts +0 -24
  275. package/src/shared/mcp/functions/parse-agent-meta.function.ts +0 -27
  276. package/src/shared/mcp/functions/parse-skill-arguments.function.ts +0 -36
  277. package/src/shared/mcp/functions/parse-skill-content.function.ts +0 -38
  278. package/src/shared/mcp/functions/read-agent-meta.function.ts +0 -41
  279. package/src/shared/mcp/functions/resolve-skill-refs.function.ts +0 -50
  280. package/src/shared/mcp/functions/run-startup-health-check.function.ts +0 -34
  281. package/src/shared/mcp/functions/serialize-skill-content.function.ts +0 -12
  282. package/src/shared/mcp/functions/should-emit-log.function.ts +0 -38
  283. package/src/shared/mcp/index.ts +0 -28
  284. package/src/shared/mcp/typings/agent-types.interface.ts +0 -39
  285. package/src/shared/mcp/typings/log-types.interface.ts +0 -26
  286. package/src/shared/mcp/typings/mcp-capabilities.interface.ts +0 -16
  287. package/src/shared/mcp/typings/mcp-client.interface.ts +0 -317
  288. package/src/shared/mcp/typings/mcp-completion.interface.ts +0 -45
  289. package/src/shared/mcp/typings/mcp-content-result.model.ts +0 -9
  290. package/src/shared/mcp/typings/mcp-export-result.model.ts +0 -11
  291. package/src/shared/mcp/typings/mcp-gc-result.model.ts +0 -15
  292. package/src/shared/mcp/typings/mcp-integrity-check-result.model.ts +0 -17
  293. package/src/shared/mcp/typings/mcp-integrity-error.model.ts +0 -15
  294. package/src/shared/mcp/typings/mcp-notification.interface.ts +0 -9
  295. package/src/shared/mcp/typings/mcp-rebuild-result.model.ts +0 -9
  296. package/src/shared/mcp/typings/mcp-request.interface.ts +0 -11
  297. package/src/shared/mcp/typings/mcp-resource-result.interface.ts +0 -12
  298. package/src/shared/mcp/typings/mcp-resource-template.interface.ts +0 -11
  299. package/src/shared/mcp/typings/mcp-response.interface.ts +0 -18
  300. package/src/shared/mcp/typings/mcp-server-info.interface.ts +0 -7
  301. package/src/shared/mcp/typings/mcp-server-state.interface.ts +0 -17
  302. package/src/shared/mcp/typings/mcp-tool-annotations.interface.ts +0 -32
  303. package/src/shared/mcp/typings/mcp-tool-definition.interface.ts +0 -16
  304. package/src/shared/mcp/typings/mcp-tool-result.interface.ts +0 -19
  305. package/src/shared/mcp/typings/mcp-types.interface.ts +0 -158
  306. package/src/shared/mcp/typings/mcp-worker-client.interface.ts +0 -243
  307. package/src/shared/mcp/typings/prompt-types.interface.ts +0 -39
  308. package/src/shared/mcp/typings/remove-section-result.model.ts +0 -10
  309. package/src/shared/mcp/typings/sampling-types.interface.ts +0 -48
  310. package/src/shared/mcp/typings/skill-types.interface.ts +0 -29
  311. package/src/shared/mcp/typings/tool-call-result.model.ts +0 -18
  312. package/src/shared/mod.ts +0 -1
  313. package/src/shared/platform/functions/get-ipc-path.function.ts +0 -19
  314. package/src/shared/platform/functions/get-tmpdir.function.ts +0 -8
  315. package/src/shared/platform/functions/is-process-alive.function.ts +0 -17
  316. package/src/shared/platform/index.ts +0 -3
  317. package/src/shared/runtime/functions/detect-runtime.ts +0 -14
  318. package/src/shared/runtime/functions/get-args.ts +0 -16
  319. package/src/shared/runtime/index.ts +0 -3
  320. package/src/shared/runtime/typings/runtime.ts +0 -2
  321. package/src/shared/sync/functions/build-import-report.function.ts +0 -40
  322. package/src/shared/sync/functions/parse-export-entry.function.ts +0 -45
  323. package/src/shared/sync/functions/resolve-conflict.function.ts +0 -31
  324. package/src/shared/sync/functions/serialize-export-entry.function.ts +0 -18
  325. package/src/shared/sync/index.ts +0 -9
  326. package/src/shared/sync/typings/conflict-resolution.type.ts +0 -8
  327. package/src/shared/sync/typings/export-entry.interface.ts +0 -13
  328. package/src/shared/sync/typings/export-options.interface.ts +0 -9
  329. package/src/shared/sync/typings/import-options.interface.ts +0 -7
  330. package/src/shared/sync/typings/import-report.interface.ts +0 -15
  331. package/src/shared/version/constants/version.constant.ts +0 -2
  332. package/src/shared/version/index.ts +0 -1
  333. package/src/shared/wasm-codec/functions/decode-add-section-result.function.ts +0 -112
  334. package/src/shared/wasm-codec/functions/decode-compose-output.function.ts +0 -16
  335. package/src/shared/wasm-codec/functions/decode-document-manifest-list.function.ts +0 -70
  336. package/src/shared/wasm-codec/functions/decode-document-manifest.function.ts +0 -87
  337. package/src/shared/wasm-codec/functions/decode-f32.function.ts +0 -16
  338. package/src/shared/wasm-codec/functions/decode-key-value-text.function.ts +0 -15
  339. package/src/shared/wasm-codec/functions/decode-one-recall-result.function.ts +0 -86
  340. package/src/shared/wasm-codec/functions/decode-option-string.function.ts +0 -24
  341. package/src/shared/wasm-codec/functions/decode-recall-document.function.ts +0 -59
  342. package/src/shared/wasm-codec/functions/decode-recall-reference.function.ts +0 -52
  343. package/src/shared/wasm-codec/functions/decode-recall-result.function.ts +0 -267
  344. package/src/shared/wasm-codec/functions/decode-recall-sibling.function.ts +0 -43
  345. package/src/shared/wasm-codec/functions/decode-remove-flag.function.ts +0 -3
  346. package/src/shared/wasm-codec/functions/decode-scored-results.function.ts +0 -194
  347. package/src/shared/wasm-codec/functions/decode-section-match.function.ts +0 -80
  348. package/src/shared/wasm-codec/functions/decode-section-record-list.function.ts +0 -20
  349. package/src/shared/wasm-codec/functions/decode-section-record-trailing.function.ts +0 -75
  350. package/src/shared/wasm-codec/functions/decode-section-record.function.ts +0 -85
  351. package/src/shared/wasm-codec/functions/decode-section-records.function.ts +0 -249
  352. package/src/shared/wasm-codec/functions/decode-section-type.function.ts +0 -30
  353. package/src/shared/wasm-codec/functions/decode-string.function.ts +0 -22
  354. package/src/shared/wasm-codec/functions/decode-u32.function.ts +0 -16
  355. package/src/shared/wasm-codec/functions/decode-u64.function.ts +0 -16
  356. package/src/shared/wasm-codec/functions/decode-wasm-list.function.ts +0 -31
  357. package/src/shared/wasm-codec/functions/encode-add-section-params.function.ts +0 -102
  358. package/src/shared/wasm-codec/functions/encode-group-params.function.ts +0 -28
  359. package/src/shared/wasm-codec/functions/encode-identifier-list.function.ts +0 -17
  360. package/src/shared/wasm-codec/functions/encode-kbid-list.function.ts +0 -17
  361. package/src/shared/wasm-codec/functions/encode-option-string.function.ts +0 -14
  362. package/src/shared/wasm-codec/functions/encode-recall-params.function.ts +0 -68
  363. package/src/shared/wasm-codec/functions/encode-search-params.function.ts +0 -12
  364. package/src/shared/wasm-codec/functions/encode-section-type.function.ts +0 -18
  365. package/src/shared/wasm-codec/functions/encode-string.function.ts +0 -9
  366. package/src/shared/wasm-codec/functions/encode-type-filter-param.function.ts +0 -13
  367. package/src/shared/wasm-codec/functions/encode-u32.function.ts +0 -5
  368. package/src/shared/wasm-codec/functions/encode-update-section-params.function.ts +0 -16
  369. package/src/shared/wasm-codec/index.ts +0 -49
  370. package/src/shared/wasm-codec/typings/add-section-input.model.ts +0 -45
  371. package/src/shared/wasm-codec/typings/add-section-result.model.ts +0 -28
  372. package/src/shared/wasm-codec/typings/document-manifest.model.ts +0 -20
  373. package/src/shared/wasm-codec/typings/document-section.model.ts +0 -12
  374. package/src/shared/wasm-codec/typings/item-decoder.type.ts +0 -10
  375. package/src/shared/wasm-codec/typings/near-duplicate.model.ts +0 -16
  376. package/src/shared/wasm-codec/typings/paged-search-result.model.ts +0 -22
  377. package/src/shared/wasm-codec/typings/section-match.model.ts +0 -31
  378. package/src/shared/wasm-codec/typings/section-record-trailing.model.ts +0 -38
  379. package/src/shared/wasm-codec/typings/section-record.model.ts +0 -66
  380. package/src/shared/wasm-codec/typings/section-type-result.model.ts +0 -12
  381. package/src/shared/worker-client/classes/worker-client.class.ts +0 -466
  382. package/src/shared/worker-client/functions/compute-context-id.function.ts +0 -18
  383. package/src/shared/worker-client/functions/create-worker-client.function.ts +0 -70
  384. package/src/shared/worker-client/functions/discover-daemon.function.ts +0 -47
  385. package/src/shared/worker-client/functions/handle-ipc-data.function.ts +0 -49
  386. package/src/shared/worker-client/functions/resolve-db-path.function.ts +0 -21
  387. package/src/shared/worker-client/functions/send-ipc-request.function.ts +0 -39
  388. package/src/shared/worker-client/functions/spawn-daemon.function.ts +0 -35
  389. package/src/shared/worker-client/functions/wait-for-daemon.function.ts +0 -34
  390. package/src/shared/worker-client/index.ts +0 -44
  391. package/src/shared/worker-client/typings/add-section-result.model.ts +0 -39
  392. package/src/shared/worker-client/typings/content-result.model.ts +0 -12
  393. package/src/shared/worker-client/typings/daemon-info.model.ts +0 -7
  394. package/src/shared/worker-client/typings/export-result.model.ts +0 -14
  395. package/src/shared/worker-client/typings/gc-result.model.ts +0 -18
  396. package/src/shared/worker-client/typings/integrity-check-result.model.ts +0 -43
  397. package/src/shared/worker-client/typings/json-rpc-response.interface.ts +0 -17
  398. package/src/shared/worker-client/typings/migrate-result.model.ts +0 -11
  399. package/src/shared/worker-client/typings/pending-call.interface.ts +0 -7
  400. package/src/shared/worker-client/typings/rebuild-result.model.ts +0 -12
  401. package/src/shared/worker-client/typings/recall-document.model.ts +0 -16
  402. package/src/shared/worker-client/typings/recall-params.model.ts +0 -15
  403. package/src/shared/worker-client/typings/recall-reference.model.ts +0 -32
  404. package/src/shared/worker-client/typings/recall-result.model.ts +0 -98
  405. package/src/shared/worker-client/typings/recall-sibling.model.ts +0 -11
  406. package/src/shared/worker-client/typings/recall-single-result.model.ts +0 -41
  407. package/src/shared/worker-client/typings/remove-section-result.model.ts +0 -7
  408. package/src/shared/worker-client/typings/search-params.model.ts +0 -14
  409. package/src/shared/worker-client/typings/search-result.model.ts +0 -43
  410. package/src/shared/worker-client/typings/section.model.ts +0 -43
  411. package/src/shared/worker-client/typings/status-result.model.ts +0 -14
  412. package/src/shared/worker-client/typings/version-status.model.ts +0 -28
  413. package/src/shared/worker-client/typings/worker-client-error.interface.ts +0 -8
  414. package/src/shared/worker-client/typings/worker-client-options.interface.ts +0 -30
  415. package/src/shared/worker-daemon/classes/ipc-error.class.ts +0 -22
  416. package/src/shared/worker-daemon/classes/worker-daemon.class.ts +0 -1291
  417. package/src/shared/worker-daemon/constants/daemon-defaults.constant.ts +0 -29
  418. package/src/shared/worker-daemon/constants/wasm-method-map.constant.ts +0 -69
  419. package/src/shared/worker-daemon/functions/build-ipc-error-response.function.ts +0 -16
  420. package/src/shared/worker-daemon/functions/check-catalog-version.function.ts +0 -54
  421. package/src/shared/worker-daemon/functions/check-preconditions.function.ts +0 -28
  422. package/src/shared/worker-daemon/functions/create-host-imports.function.ts +0 -328
  423. package/src/shared/worker-daemon/functions/create-ipc-server.function.ts +0 -87
  424. package/src/shared/worker-daemon/functions/detect-stale-pid.function.ts +0 -33
  425. package/src/shared/worker-daemon/functions/dispatch-request.function.ts +0 -190
  426. package/src/shared/worker-daemon/functions/handle-check-version.function.ts +0 -74
  427. package/src/shared/worker-daemon/functions/handle-config-method.function.ts +0 -27
  428. package/src/shared/worker-daemon/functions/handle-read-ops.function.ts +0 -236
  429. package/src/shared/worker-daemon/functions/handle-write-ops.function.ts +0 -257
  430. package/src/shared/worker-daemon/functions/load-wasm-modules.function.ts +0 -95
  431. package/src/shared/worker-daemon/functions/parse-auto-capture-section.function.ts +0 -51
  432. package/src/shared/worker-daemon/functions/parse-catalog-version.function.ts +0 -20
  433. package/src/shared/worker-daemon/functions/parse-embedding-section.function.ts +0 -38
  434. package/src/shared/worker-daemon/functions/parse-worker-toml.function.ts +0 -104
  435. package/src/shared/worker-daemon/functions/read-config.function.ts +0 -83
  436. package/src/shared/worker-daemon/functions/run-startup-integrity-check.function.ts +0 -55
  437. package/src/shared/worker-daemon/functions/run-worker.function.ts +0 -57
  438. package/src/shared/worker-daemon/functions/scan-near-duplicates.function.ts +0 -92
  439. package/src/shared/worker-daemon/functions/start-daemon.function.ts +0 -74
  440. package/src/shared/worker-daemon/functions/wasm-bridge.function.ts +0 -144
  441. package/src/shared/worker-daemon/functions/wasm-memory-helpers.function.ts +0 -41
  442. package/src/shared/worker-daemon/functions/write-lock.function.ts +0 -49
  443. package/src/shared/worker-daemon/index.ts +0 -16
  444. package/src/shared/worker-daemon/typings/allocator-ref.interface.ts +0 -16
  445. package/src/shared/worker-daemon/typings/daemon-config.interface.ts +0 -20
  446. package/src/shared/worker-daemon/typings/fs-adapter.interface.ts +0 -22
  447. package/src/shared/worker-daemon/typings/handler-context.interface.ts +0 -19
  448. package/src/shared/worker-daemon/typings/ipc-handler.interface.ts +0 -39
  449. package/src/shared/worker-daemon/typings/memory-ref.interface.ts +0 -13
  450. package/src/shared/worker-daemon/typings/wasm-fn.type.ts +0 -2
  451. package/src/shared/worker-daemon/typings/wasm-modules.interface.ts +0 -7
  452. package/src/shared/worker-daemon/typings/write-lock.interface.ts +0 -13
  453. package/src/wasm/fs-database/kbdb_fs_database.d.ts +0 -259
  454. package/src/wasm/fs-database/kbdb_fs_database.js +0 -515
  455. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  456. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm.d.ts +0 -35
  457. package/src/wasm/fs-database/package.json +0 -13
  458. package/src/wasm/kb-worker/kbdb_worker.d.ts +0 -650
  459. package/src/wasm/kb-worker/kbdb_worker.js +0 -1181
  460. package/src/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  461. package/src/wasm/kb-worker/kbdb_worker_bg.wasm.d.ts +0 -77
  462. package/src/wasm/kb-worker/package.json +0 -13
  463. package/src/wasm/query-parser/kbdb_query_parser.d.ts +0 -195
  464. package/src/wasm/query-parser/kbdb_query_parser.js +0 -403
  465. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  466. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm.d.ts +0 -25
  467. package/src/wasm/query-parser/package.json +0 -13
  468. package/src/worker.ts +0 -42
@@ -1,31 +0,0 @@
1
- /**
2
- * A single ranked result item from a paged search response.
3
- */
4
- export interface SectionMatch {
5
- /** Knowledge-base identifier for the matched section. */
6
- kbid: string;
7
- /** Section heading, or `null` when untitled. */
8
- heading: string | null;
9
- /** MIME type of the section content. */
10
- type: string;
11
- /** Document IDs this section belongs to. */
12
- docids: string[];
13
- /** Relevance score from the ranking engine. */
14
- score: number;
15
- /**
16
- * Confidence modifier (0.0–1.0) applied after relaxed search.
17
- * Always 1.0 for strict-mode results.
18
- */
19
- confidence: number;
20
- /** KWIC snippet (~150 chars around the best match). */
21
- snippet: string;
22
- /** Query terms that matched within this section. */
23
- matched_terms: string[];
24
- /**
25
- * Document fields that contained at least one matched term
26
- * (e.g. `'title'`, `'body'`).
27
- */
28
- matched_fields: string[];
29
- /** ISO 8601 creation timestamp of the section. */
30
- created_at: string;
31
- }
@@ -1,38 +0,0 @@
1
- /**
2
- * Trailing backward-compatible fields of a section record.
3
- *
4
- * These fields were added after the initial wire format. When
5
- * decoding legacy binary output that stops before these fields,
6
- * each defaults to `null` or `[]`.
7
- */
8
- export interface SectionRecordTrailing {
9
- /**
10
- * Stable logical identity derived from source path and heading.
11
- * `null` for stdin input or sections without a source path.
12
- */
13
- sourceKey: string | null;
14
- /**
15
- * Absolute path of the source file that was learned.
16
- * `null` for stdin input or programmatic API calls.
17
- */
18
- sourcePath: string | null;
19
- /**
20
- * ISO 8601 modified time of the source file at learn time.
21
- * `null` when no source file exists.
22
- */
23
- sourceMtime: string | null;
24
- /**
25
- * ISO 8601 timestamp of the last supersession.
26
- * `null` on first creation.
27
- */
28
- updatedAt: string | null;
29
- /** User-supplied tags for scoping and filtering. */
30
- tags: string[];
31
- /**
32
- * The kbid of the section this one replaced via supersession.
33
- * `null` on first creation or non-superseding additions.
34
- */
35
- supersedes: string | null;
36
- /** Number of bytes consumed from the buffer. */
37
- bytesRead: number;
38
- }
@@ -1,66 +0,0 @@
1
- /**
2
- * A single section record decoded from WASM binary output.
3
- *
4
- * Represents a stored knowledge-base section with all its metadata
5
- * and token counts as returned by `worker_read_sections` or
6
- * `worker_list_by_type`.
7
- */
8
- export interface SectionRecord {
9
- /** Unique knowledge-base identifier for this section. */
10
- kbid: string;
11
- /** Document identifier this section belongs to, or `null`. */
12
- docid: string | null;
13
- /** Semantic type discriminant: `'text'`, `'code'`, or `'image'`. */
14
- sectionType: string;
15
- /** MIME type string, present only for `'code'` and `'image'` types. */
16
- mimeType?: string;
17
- /** Human-readable title for the section, or `null`. */
18
- title: string | null;
19
- /** Optional description of the section content, or `null`. */
20
- description: string | null;
21
- /** Raw text or base64-encoded content of the section. */
22
- content: string;
23
- /** Byte size of the stored content. */
24
- size: number;
25
- /** Section creation timestamp as a Unix epoch value. */
26
- createdAt: bigint;
27
- /** Integrity checksum of the stored content. */
28
- checksum: string;
29
- /** Total number of tokens in the section. */
30
- tokenCount: number;
31
- /** Number of heading tokens in the section. */
32
- headingTokenCount: number;
33
- /** Number of body tokens in the section. */
34
- bodyTokenCount: number;
35
- /** Number of code tokens in the section. */
36
- codeTokenCount: number;
37
- /** Application-level type name assigned to this section. */
38
- typeName: string;
39
- /**
40
- * Stable logical identity derived from source path and heading.
41
- * `null` for stdin input or sections without a source path.
42
- */
43
- sourceKey: string | null;
44
- /**
45
- * Absolute path of the source file that was learned.
46
- * `null` for stdin input or programmatic API calls.
47
- */
48
- sourcePath: string | null;
49
- /**
50
- * ISO 8601 modified time of the source file at learn time.
51
- * `null` when no source file exists.
52
- */
53
- sourceMtime: string | null;
54
- /**
55
- * ISO 8601 timestamp of the last supersession.
56
- * `null` on first creation.
57
- */
58
- updatedAt: string | null;
59
- /** User-supplied tags for scoping and filtering. */
60
- tags: string[];
61
- /**
62
- * The kbid of the section this one replaced via supersession.
63
- * `null` on first creation or non-superseding additions.
64
- */
65
- supersedes: string | null;
66
- }
@@ -1,12 +0,0 @@
1
- /** Result of decoding a section type discriminant from binary output. */
2
- export interface SectionTypeResult {
3
- /** Semantic section category: `'text'`, `'code'`, or `'image'`. */
4
- sectionType: string;
5
- /**
6
- * MIME type string, present only for `'code'` and `'image'`
7
- * types.
8
- */
9
- mimeType?: string;
10
- /** Number of bytes consumed from the buffer. */
11
- bytesRead: number;
12
- }
@@ -1,466 +0,0 @@
1
- import { connect } from 'node:net';
2
- import type { Socket } from 'node:net';
3
- import type { SearchParams } from '../typings/search-params.model.ts';
4
- import type { PagedSearchResult } from '../typings/search-result.model.ts';
5
- import type {
6
- AddSectionParams,
7
- Section,
8
- } from '../typings/section.model.ts';
9
- import type { StatusResult } from '../typings/status-result.model.ts';
10
- import type { AddSectionResult } from '../typings/add-section-result.model.ts';
11
- import type { RemoveSectionResult } from '../typings/remove-section-result.model.ts';
12
- import type { ContentResult } from '../typings/content-result.model.ts';
13
- import type { IntegrityCheckResult } from '../typings/integrity-check-result.model.ts';
14
- import type { GcResult } from '../typings/gc-result.model.ts';
15
- import type { RebuildResult } from '../typings/rebuild-result.model.ts';
16
- import type { MigrateResult } from '../typings/migrate-result.model.ts';
17
- import type { VersionStatus } from '../typings/version-status.model.ts';
18
- import type { SectionRecord } from '../../wasm-codec/functions/decode-section-records.function.ts';
19
- import type { DocumentManifest } from '../../wasm-codec/functions/decode-document-manifest.function.ts';
20
- import type {
21
- RecallParams,
22
- RecallResult,
23
- } from '../typings/recall-result.model.ts';
24
- import type { ExportResult } from '../typings/export-result.model.ts';
25
-
26
- /** Pending JSON-RPC call awaiting a response from the daemon. */
27
- interface PendingCall {
28
- resolve: (v: unknown) => void;
29
- reject: (e: Error) => void;
30
- }
31
-
32
- /** Shape of a JSON-RPC 2.0 error object from the daemon. */
33
- interface JsonRpcError {
34
- readonly code: number;
35
- readonly message: string;
36
- }
37
-
38
- /** Shape of a JSON-RPC 2.0 response from the daemon. */
39
- interface JsonRpcResponse {
40
- readonly id: number;
41
- readonly result?: unknown;
42
- readonly error?: JsonRpcError;
43
- }
44
-
45
- /**
46
- * IPC client that communicates with the worker daemon over a Unix
47
- * domain socket (or Windows named pipe) using JSON-RPC 2.0 with
48
- * newline-delimited message framing.
49
- *
50
- * Call `connect()` before any other method and `disconnect()` when
51
- * done to release the underlying socket.
52
- */
53
- export class WorkerClient {
54
- /** Underlying socket; `null` when not connected. */
55
- private socket: Socket | null = null;
56
-
57
- /** Monotonically increasing request ID counter. */
58
- private nextId = 1;
59
-
60
- /** Map of outstanding request IDs to their resolve/reject pairs. */
61
- private readonly pending = new Map<number, PendingCall>();
62
-
63
- /** Partial line buffer for split TCP/IPC frames. */
64
- private buffer = '';
65
-
66
- /**
67
- * @param socketPath - absolute path to the daemon's IPC socket
68
- * (or Windows named pipe path)
69
- * @param contextId - 16-character context identifier sent as
70
- * `ctx` in every JSON-RPC request
71
- */
72
- constructor(
73
- private readonly socketPath: string,
74
- private readonly contextId: string,
75
- ) {}
76
-
77
- /**
78
- * Establishes the IPC connection to the worker daemon.
79
- *
80
- * @throws {Error} if the connection cannot be established
81
- */
82
- async connect(): Promise<void> {
83
- return new Promise<void>((resolve, reject) => {
84
- this.socket = connect(this.socketPath, () => {
85
- resolve();
86
- });
87
- this.socket.on('error', (err: Error) => {
88
- reject(err);
89
- });
90
- this.socket.on('data', (chunk: Buffer) => {
91
- this.handleData(chunk.toString());
92
- });
93
- });
94
- }
95
-
96
- /** Destroys the IPC socket and clears the connection state. */
97
- disconnect(): void {
98
- if (this.socket) {
99
- this.socket.destroy();
100
- this.socket = null;
101
- }
102
- }
103
-
104
- /**
105
- * Searches the knowledge base.
106
- *
107
- * @param params - query parameters including the search string
108
- * @returns paginated search results with metadata
109
- */
110
- async search(params: SearchParams): Promise<PagedSearchResult> {
111
- return this.call('search', params) as Promise<PagedSearchResult>;
112
- }
113
-
114
- /**
115
- * Retrieves full content and context for one or more sections by
116
- * their knowledge-base identifiers.
117
- *
118
- * @param params - section identifier(s) and optional expansion depth
119
- * @returns a single `RecallResult` when `kbid` is provided without
120
- * `kbids`, or a `RecallResult[]` when `kbids` is provided
121
- */
122
- async recall(
123
- params: RecallParams,
124
- ): Promise<RecallResult | RecallResult[]> {
125
- return this.call('recall', params) as Promise<
126
- RecallResult | RecallResult[]
127
- >;
128
- }
129
-
130
- /**
131
- * Adds a new section to the knowledge base.
132
- *
133
- * @param params - section content and metadata
134
- * @returns the result including the assigned knowledge-base
135
- * identifier and indexing statistics
136
- */
137
- async addSection(
138
- params: AddSectionParams,
139
- ): Promise<AddSectionResult> {
140
- return this.call(
141
- 'addSection',
142
- params,
143
- ) as Promise<AddSectionResult>;
144
- }
145
-
146
- /**
147
- * Replaces an existing section's content and metadata.
148
- *
149
- * @param kbid - identifier of the section to update
150
- * @param params - new content and metadata
151
- * @returns the knowledge-base identifier of the updated section
152
- */
153
- async updateSection(
154
- kbid: string,
155
- params: AddSectionParams,
156
- ): Promise<string> {
157
- return this.call('updateSection', {
158
- kbid,
159
- ...params,
160
- }) as Promise<string>;
161
- }
162
-
163
- /**
164
- * Removes a section from the knowledge base.
165
- *
166
- * @param kbid - identifier of the section to remove
167
- * @returns removal result with `removed` flag and elapsed time
168
- */
169
- async removeSection(kbid: string): Promise<RemoveSectionResult> {
170
- return this.call('removeSection', {
171
- kbid,
172
- }) as Promise<RemoveSectionResult>;
173
- }
174
-
175
- /**
176
- * Retrieves multiple sections by their identifiers.
177
- *
178
- * @param kbids - list of knowledge-base identifiers to fetch
179
- * @returns sections in the order their IDs were requested
180
- */
181
- async readSections(kbids: string[]): Promise<Section[]> {
182
- return this.call('readSections', {
183
- kbids,
184
- }) as Promise<Section[]>;
185
- }
186
-
187
- /**
188
- * Groups a set of sections under a named document.
189
- *
190
- * @param title - human-readable document title
191
- * @param kbids - identifiers of the sections to group
192
- * @param docType - application-level document type tag; omit or
193
- * pass an empty string for untagged documents
194
- * @returns the assigned document identifier
195
- */
196
- async groupSections(
197
- title: string,
198
- kbids: string[],
199
- docType?: string,
200
- ): Promise<string> {
201
- const result = (await this.call('groupSections', {
202
- title,
203
- kbids,
204
- docType: docType ?? '',
205
- })) as { docid: string } | string;
206
- return typeof result === 'string' ? result : result.docid;
207
- }
208
-
209
- /**
210
- * Removes the document grouping for the given document.
211
- *
212
- * The sections themselves are not deleted; only the grouping
213
- * record is removed.
214
- *
215
- * @param docid - identifier of the document grouping to remove
216
- */
217
- async removeGrouping(docid: string): Promise<void> {
218
- await this.call('removeGrouping', { docid });
219
- }
220
-
221
- /**
222
- * Retrieves a full document record including its sections.
223
- *
224
- * @param docid - identifier of the document to retrieve
225
- * @returns the document record as returned by the daemon
226
- */
227
- async retrieveDocument(docid: string): Promise<unknown> {
228
- return this.call('retrieveDocument', { docid });
229
- }
230
-
231
- /**
232
- * Composes a rendered Markdown document from one or more kbid
233
- * or docid identifiers.
234
- *
235
- * @param ids - list of kbid or docid identifiers (may be mixed)
236
- * @returns composed Markdown result with character count
237
- */
238
- async content(ids: string[]): Promise<ContentResult> {
239
- return this.call('content', { ids }) as Promise<ContentResult>;
240
- }
241
-
242
- /**
243
- * Runs an integrity check on the knowledge-base database.
244
- *
245
- * @returns a report of all issues found; `ok` is `true` when
246
- * no errors were detected
247
- */
248
- async integrityCheck(): Promise<IntegrityCheckResult> {
249
- return this.call(
250
- 'integrityCheck',
251
- {},
252
- ) as Promise<IntegrityCheckResult>;
253
- }
254
-
255
- /**
256
- * Removes unreferenced sections from the database.
257
- *
258
- * @returns a report of sections removed and bytes freed
259
- */
260
- async gc(): Promise<GcResult> {
261
- return this.call('gc', {}) as Promise<GcResult>;
262
- }
263
-
264
- /**
265
- * Reconstructs all index files from section files and document
266
- * manifests on disk. Text and code sections are re-tokenized;
267
- * image sections are skipped.
268
- *
269
- * @returns a report of sections and terms re-indexed
270
- */
271
- async rebuildIndexes(): Promise<RebuildResult> {
272
- return this.call('rebuildIndexes', {}) as Promise<RebuildResult>;
273
- }
274
-
275
- /**
276
- * Invalidates the in-memory cache entry for a single section.
277
- *
278
- * @param kbid - identifier of the section to evict from cache
279
- */
280
- async invalidate(kbid: string): Promise<void> {
281
- await this.call('invalidate', { kbid });
282
- }
283
-
284
- /** Clears all entries from the daemon's in-memory cache. */
285
- async invalidateAll(): Promise<void> {
286
- await this.call('invalidateAll', {});
287
- }
288
-
289
- /**
290
- * Retrieves diagnostic status information from the daemon.
291
- *
292
- * @returns current initialization state and cache statistics
293
- */
294
- async status(): Promise<StatusResult> {
295
- return this.call('status', {}) as Promise<StatusResult>;
296
- }
297
-
298
- /**
299
- * Returns database metadata and status from the daemon,
300
- * including document count, section count, index size, and
301
- * cache statistics.
302
- *
303
- * @returns database metadata from the daemon's cached state
304
- */
305
- async dbStatus(): Promise<StatusResult> {
306
- return this.call('dbStatus', {}) as Promise<StatusResult>;
307
- }
308
-
309
- /**
310
- * Initialises a new `.kbdb` database directory at the given path
311
- * by sending an init request to the worker daemon.
312
- *
313
- * The daemon creates all required subdirectories and seed files via
314
- * the `worker_init_directory` WASM export.
315
- *
316
- * @param targetPath - absolute path to the directory that will
317
- * contain the new `.kbdb` database
318
- * @throws {Error} if the `.kbdb` directory already exists or the
319
- * daemon cannot create the layout
320
- */
321
- async initDirectory(targetPath: string): Promise<void> {
322
- await this.call('initDirectory', { targetPath });
323
- }
324
-
325
- /**
326
- * Runs all pending database migrations for the `.kbdb` directory
327
- * at the given path.
328
- *
329
- * Delegates to the `worker_migrate` WASM export on the daemon.
330
- * Each migration step updates `catalog.toml` on success, so
331
- * retrying after a partial failure is safe.
332
- *
333
- * @param targetPath - absolute path to the `.kbdb` database root
334
- * @returns migration report with old version, new version, and
335
- * number of migration steps applied
336
- */
337
- async migrateDatabase(targetPath: string): Promise<MigrateResult> {
338
- return this.call('migrateDatabase', {
339
- targetPath,
340
- }) as Promise<MigrateResult>;
341
- }
342
-
343
- /**
344
- * Checks the format version of the `.kbdb` database at the given
345
- * path against the version required by the current WASM engine.
346
- *
347
- * This is a read-only operation: it reads `catalog.toml` and
348
- * returns the compatibility status without making any changes.
349
- *
350
- * @param targetPath - absolute path to the `.kbdb` database root
351
- * @returns version compatibility report
352
- */
353
- async checkVersion(targetPath: string): Promise<VersionStatus> {
354
- return this.call('checkVersion', {
355
- targetPath,
356
- }) as Promise<VersionStatus>;
357
- }
358
-
359
- /**
360
- * Retrieves all sections whose type name matches the given string.
361
- *
362
- * @param sectionType - the application-level type name to filter by
363
- * @returns all section records with a matching type name
364
- */
365
- async listByType(sectionType: string): Promise<SectionRecord[]> {
366
- return this.call('listByType', {
367
- sectionType,
368
- }) as Promise<SectionRecord[]>;
369
- }
370
-
371
- /**
372
- * Retrieves all documents whose type name matches the given string.
373
- *
374
- * @param docType - the application-level document type to filter by
375
- * @returns all document manifests with a matching type name
376
- */
377
- async listDocumentsByType(
378
- docType: string,
379
- ): Promise<DocumentManifest[]> {
380
- return this.call('listDocumentsByType', {
381
- docType,
382
- }) as Promise<DocumentManifest[]>;
383
- }
384
-
385
- /**
386
- * Exports the database to a target directory on disk.
387
- *
388
- * Copies section files, document manifests, and `catalog.toml`
389
- * to `params.path`. Index files are not exported because they
390
- * are derivable from the section and document data.
391
- *
392
- * @param params - optional export parameters
393
- * @param params.path - target directory path; defaults to
394
- * `./kbdb-export/` when not provided
395
- * @returns export report with the resolved path and file counts
396
- */
397
- async export(params?: { path?: string }): Promise<ExportResult> {
398
- return this.call('export', {
399
- targetPath: params?.path || undefined,
400
- }) as Promise<ExportResult>;
401
- }
402
-
403
- /**
404
- * Sends a JSON-RPC 2.0 request and awaits the response.
405
- *
406
- * @param method - the RPC method name
407
- * @param params - parameters to include in the request
408
- * @throws {Error} if not connected
409
- * @throws {Error} when the daemon returns an error response
410
- */
411
- private async call(
412
- method: string,
413
- params: unknown,
414
- ): Promise<unknown> {
415
- const socket = this.socket;
416
- if (!socket) {
417
- throw new Error('not connected');
418
- }
419
-
420
- const id = this.nextId++;
421
- const request = {
422
- jsonrpc: '2.0',
423
- id,
424
- method,
425
- params: { ctx: this.contextId, ...(params as object) },
426
- };
427
-
428
- return new Promise<unknown>((resolve, reject) => {
429
- this.pending.set(id, { resolve, reject });
430
- socket.write(JSON.stringify(request) + '\n');
431
- });
432
- }
433
-
434
- /**
435
- * Processes incoming data from the socket, splitting on newlines
436
- * and dispatching complete JSON-RPC response objects.
437
- *
438
- * @param data - raw string chunk received from the socket
439
- */
440
- private handleData(data: string): void {
441
- this.buffer += data;
442
- const lines = this.buffer.split('\n');
443
- this.buffer = lines.pop() ?? '';
444
-
445
- for (const line of lines) {
446
- if (!line.trim()) continue;
447
- try {
448
- const response = JSON.parse(line) as JsonRpcResponse;
449
- const pending = this.pending.get(response.id);
450
- if (pending) {
451
- this.pending.delete(response.id);
452
- if (response.error) {
453
- const err = new Error(response.error.message);
454
- (err as unknown as Record<string, unknown>).code =
455
- response.error.code;
456
- pending.reject(err);
457
- } else {
458
- pending.resolve(response.result);
459
- }
460
- }
461
- } catch {
462
- // Ignore unparseable lines
463
- }
464
- }
465
- }
466
- }
@@ -1,18 +0,0 @@
1
- import { computeSha256 } from '../../hash/functions/compute-sha256.ts';
2
-
3
- /**
4
- * Computes a short context identifier for an absolute path.
5
- *
6
- * Hashes the path with SHA-256 and returns the first 16 hex
7
- * characters. The result is stable for the same input and unique
8
- * enough to avoid accidental collisions across typical path sets.
9
- *
10
- * @param absolutePath - the absolute filesystem path to identify
11
- * @returns a 16-character lowercase hex string
12
- */
13
- export async function computeContextId(
14
- absolutePath: string,
15
- ): Promise<string> {
16
- const hash = await computeSha256(absolutePath);
17
- return hash.slice(0, 16);
18
- }