@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,190 +0,0 @@
1
- import type { DaemonConfig } from '../typings/daemon-config.interface.ts';
2
- import type { HandlerContext } from '../typings/handler-context.interface.ts';
3
- import { IpcError } from '../classes/ipc-error.class.ts';
4
- import {
5
- WASM_METHOD_MAP,
6
- CONFIG_PREFIX,
7
- } from '../constants/wasm-method-map.constant.ts';
8
- import {
9
- handleSearch,
10
- handleResultStatus,
11
- handleGetResult,
12
- handleReadSections,
13
- handleRetrieveDoc,
14
- handleCompose,
15
- handleIntegrityCheck,
16
- handleDbStatus,
17
- handleListByType,
18
- handleListDocsByType,
19
- handleRecall,
20
- handleExport,
21
- } from './handle-read-ops.function.ts';
22
- import {
23
- handleAddSection,
24
- handleUpdateSection,
25
- handleRemoveSection,
26
- handleGroupSections,
27
- handleRemoveGrouping,
28
- handleInitDirectory,
29
- handleInvalidate,
30
- handleInvalidateAll,
31
- handleGc,
32
- handleRebuild,
33
- } from './handle-write-ops.function.ts';
34
- import { handleCheckVersion } from './handle-check-version.function.ts';
35
- import { handleConfigMethod } from './handle-config-method.function.ts';
36
- import {
37
- acquireWriteLock,
38
- releaseWriteLock,
39
- } from './write-lock.function.ts';
40
- import type { WriteLockState } from '../typings/write-lock.interface.ts';
41
- import { callWasmSync } from './wasm-bridge.function.ts';
42
-
43
- /** Daemon status information returned by `status` and `idle_at`. */
44
- interface DaemonStatus {
45
- /** Whether the daemon is currently serving connections. */
46
- readonly status: 'busy' | 'idle';
47
- /** Whether the startup integrity check passed. */
48
- readonly integrityOk: boolean;
49
- /** Integrity errors found at startup, if any. */
50
- readonly integrityErrors: string[];
51
- /** Unix timestamp (seconds) of the last completed request. */
52
- readonly idleAt: number;
53
- }
54
-
55
- /**
56
- * Dispatches an IPC method to its handler.
57
- *
58
- * Routes daemon-state methods inline and delegates WASM read/write
59
- * operations to their respective handler functions. Write operations
60
- * are serialised through the single-writer lock.
61
- *
62
- * @param method - IPC method name
63
- * @param params - request parameters
64
- * @param ctx - handler context (WASM modules, config, targetDir)
65
- * @param daemonStatus - live daemon state read by the `status` method
66
- * @param writeLock - shared write-lock state
67
- */
68
- export async function dispatchRequest(
69
- method: string,
70
- params: Record<string, unknown>,
71
- ctx: HandlerContext,
72
- daemonStatus: DaemonStatus,
73
- writeLock: WriteLockState,
74
- ): Promise<unknown> {
75
- if (method === 'status') {
76
- return {
77
- status: daemonStatus.status,
78
- integrityOk: daemonStatus.integrityOk,
79
- integrityErrors: daemonStatus.integrityErrors,
80
- };
81
- }
82
- if (method === 'idle_at') return daemonStatus.idleAt;
83
- if (method === 'checkVersion') {
84
- return handleCheckVersion(params, ctx.targetDir);
85
- }
86
- if (method.startsWith(CONFIG_PREFIX)) {
87
- return handleConfigMethod(method, ctx.config);
88
- }
89
-
90
- const wasmMethod = WASM_METHOD_MAP[method];
91
- if (wasmMethod === undefined) {
92
- throw new IpcError(-32601, `Method not found: ${method}`);
93
- }
94
- return dispatchWasm(method, wasmMethod, params, ctx, writeLock);
95
- }
96
-
97
- async function dispatchWasm(
98
- method: string,
99
- wasmExport: string,
100
- params: Record<string, unknown>,
101
- ctx: HandlerContext,
102
- writeLock: WriteLockState,
103
- ): Promise<unknown> {
104
- // Read-only operations -- no write lock required.
105
- if (method === 'search' || method === 'query') {
106
- return handleSearch(ctx, params);
107
- }
108
- if (method === 'readSections' || method === 'read_sections') {
109
- return handleReadSections(ctx, params);
110
- }
111
- if (method === 'retrieveDocument' || method === 'retrieve_doc') {
112
- return handleRetrieveDoc(ctx, params);
113
- }
114
- if (method === 'content' || method === 'compose') {
115
- return handleCompose(ctx, params);
116
- }
117
- if (method === 'integrityCheck' || method === 'integrity_check') {
118
- return handleIntegrityCheck(ctx);
119
- }
120
- if (method === 'dbStatus' || method === 'db_status') {
121
- return handleDbStatus(ctx);
122
- }
123
- if (method === 'get_result_status') {
124
- return handleResultStatus(ctx, params);
125
- }
126
- if (method === 'get_result') {
127
- return handleGetResult(ctx, params);
128
- }
129
- if (method === 'listByType' || method === 'list_by_type') {
130
- return handleListByType(ctx, params);
131
- }
132
- if (
133
- method === 'listDocumentsByType' ||
134
- method === 'list_docs_by_type'
135
- ) {
136
- return handleListDocsByType(ctx, params);
137
- }
138
- if (method === 'recall') return handleRecall(ctx, params);
139
- if (method === 'export' || method === 'exportDb') {
140
- return handleExport(ctx, params);
141
- }
142
-
143
- // Write operations -- serialised through the single-writer lock.
144
- await acquireWriteLock(writeLock);
145
- try {
146
- if (method === 'invalidate') return handleInvalidate(ctx, params);
147
- if (method === 'invalidateAll' || method === 'invalidate_all') {
148
- return handleInvalidateAll(ctx);
149
- }
150
- if (method === 'addSection' || method === 'add_section') {
151
- return handleAddSection(ctx, params);
152
- }
153
- if (method === 'updateSection' || method === 'update_section') {
154
- return handleUpdateSection(ctx, params);
155
- }
156
- if (method === 'removeSection' || method === 'remove_section') {
157
- return handleRemoveSection(ctx, params);
158
- }
159
- if (method === 'groupSections' || method === 'group_sections') {
160
- return handleGroupSections(ctx, params);
161
- }
162
- if (method === 'removeGrouping' || method === 'remove_grouping') {
163
- return handleRemoveGrouping(ctx, params);
164
- }
165
- if (method === 'gc') return handleGc(ctx);
166
- if (method === 'rebuildIndexes' || method === 'rebuild_indexes') {
167
- return handleRebuild(ctx);
168
- }
169
- if (method === 'initDirectory' || method === 'init_directory') {
170
- return handleInitDirectory(ctx, params);
171
- }
172
- if (method === 'migrateDatabase') {
173
- throw new IpcError(
174
- -32601,
175
- 'migrateDatabase is not yet supported',
176
- );
177
- }
178
- return callWasmSync(ctx.modules, wasmExport, new Uint8Array(0));
179
- } finally {
180
- releaseWriteLock(writeLock);
181
- }
182
- }
183
-
184
- /**
185
- * Re-export `DaemonConfig` so callers can pass strongly-typed
186
- * config without an extra import.
187
- *
188
- * @internal
189
- */
190
- export type { DaemonConfig };
@@ -1,74 +0,0 @@
1
- import { readFileSync } from 'node:fs';
2
- import { join } from 'node:path';
3
- import { DB_FORMAT_VERSION } from '../constants/daemon-defaults.constant.ts';
4
- import { parseCatalogVersion } from './parse-catalog-version.function.ts';
5
-
6
- /** Payload returned by the `checkVersion` IPC method. */
7
- interface VersionCheckResult {
8
- /** Compatibility status string. */
9
- readonly status: string;
10
- /** Format version stored in the catalog. */
11
- readonly currentVersion: number;
12
- /** Format version required by the current engine. */
13
- readonly requiredVersion: number;
14
- }
15
-
16
- /**
17
- * Handles the `checkVersion` IPC method.
18
- *
19
- * Reads `catalog.toml` at `targetPath` and compares its format
20
- * version to `DB_FORMAT_VERSION`. Returns a result object without
21
- * making any modifications.
22
- *
23
- * @param targetPath - absolute path to the `.kbdb` directory to
24
- * inspect; falls back to `defaultDir` when not provided in params
25
- * @param defaultDir - fallback directory when `params.targetPath`
26
- * is absent
27
- */
28
- export function handleCheckVersion(
29
- params: Record<string, unknown>,
30
- defaultDir: string,
31
- ): VersionCheckResult {
32
- const targetPath =
33
- typeof params['targetPath'] === 'string'
34
- ? params['targetPath']
35
- : defaultDir;
36
- const catalogPath = join(targetPath, 'catalog.toml');
37
- let text: string;
38
- try {
39
- text = readFileSync(catalogPath, 'utf-8');
40
- } catch {
41
- return {
42
- status: 'needs_migration',
43
- currentVersion: 0,
44
- requiredVersion: DB_FORMAT_VERSION,
45
- };
46
- }
47
- const version = parseCatalogVersion(text);
48
- if (version === null) {
49
- return {
50
- status: 'needs_migration',
51
- currentVersion: 0,
52
- requiredVersion: DB_FORMAT_VERSION,
53
- };
54
- }
55
- if (version > DB_FORMAT_VERSION) {
56
- return {
57
- status: 'too_new',
58
- currentVersion: version,
59
- requiredVersion: DB_FORMAT_VERSION,
60
- };
61
- }
62
- if (version < DB_FORMAT_VERSION) {
63
- return {
64
- status: 'needs_migration',
65
- currentVersion: version,
66
- requiredVersion: DB_FORMAT_VERSION,
67
- };
68
- }
69
- return {
70
- status: 'compatible',
71
- currentVersion: version,
72
- requiredVersion: DB_FORMAT_VERSION,
73
- };
74
- }
@@ -1,27 +0,0 @@
1
- import type { DaemonConfig } from '../typings/daemon-config.interface.ts';
2
- import { IpcError } from '../classes/ipc-error.class.ts';
3
- import {
4
- CONFIG_PREFIX,
5
- CONFIG_KEY_MAP,
6
- } from '../constants/wasm-method-map.constant.ts';
7
-
8
- /**
9
- * Handles `config_{key}` IPC methods by returning the corresponding
10
- * `DaemonConfig` field value.
11
- *
12
- * @param method - the full method name, e.g. `config_timeout_ms`
13
- * @param config - parsed daemon configuration
14
- * @throws {IpcError} with code `-32601` when the key suffix is not
15
- * in `CONFIG_KEY_MAP`
16
- */
17
- export function handleConfigMethod(
18
- method: string,
19
- config: DaemonConfig,
20
- ): unknown {
21
- const key = method.slice(CONFIG_PREFIX.length);
22
- const prop = CONFIG_KEY_MAP[key];
23
- if (prop === undefined) {
24
- throw new IpcError(-32601, `Method not found: ${method}`);
25
- }
26
- return config[prop];
27
- }
@@ -1,236 +0,0 @@
1
- import {
2
- encodeSearchParams,
3
- encodeKbidList,
4
- encodeIdentifierList,
5
- encodeTypeFilterParam,
6
- encodeRecallParams,
7
- decodePagedSearchResult,
8
- decodeSectionRecords,
9
- decodeSectionRecordList,
10
- decodeDocumentManifest,
11
- decodeDocumentManifestList,
12
- decodeComposeOutput,
13
- decodeKeyValueText,
14
- decodeRecallResult,
15
- } from '../../wasm-codec/index.ts';
16
- import type { HandlerContext } from '../typings/handler-context.interface.ts';
17
- import { IpcError } from '../classes/ipc-error.class.ts';
18
- import {
19
- getWasmExport,
20
- wasmAlloc,
21
- wasmWrite,
22
- wasmFree,
23
- readReturnSlot,
24
- callWasmSync,
25
- callWasmZeroArg,
26
- } from './wasm-bridge.function.ts';
27
-
28
- /**
29
- * Handles `search` and `query` IPC methods.
30
- *
31
- * Encodes parameters, invokes the `worker_search` token pipeline,
32
- * waits synchronously for the result, and decodes the paged result.
33
- */
34
- export function handleSearch(
35
- ctx: HandlerContext,
36
- params: Record<string, unknown>,
37
- ): unknown {
38
- const query = (params['query'] as string | undefined) ?? '';
39
- const mode = (params['mode'] as string | undefined) ?? 'and';
40
- const limit = Number(params['limit'] ?? 20);
41
- const offset = Number(params['offset'] ?? 0);
42
- const encoded = encodeSearchParams(query, mode, limit, offset);
43
-
44
- const searchFn = getWasmExport(ctx.modules, 'worker_search');
45
- const ptr = wasmAlloc(ctx.modules, encoded.length);
46
- wasmWrite(ctx.modules, ptr, encoded);
47
- const token = searchFn(ptr, encoded.length) as number;
48
- wasmFree(ctx.modules, ptr, encoded.length);
49
-
50
- const statusFn = getWasmExport(ctx.modules, 'worker_result_status');
51
- const status = statusFn(token) as number;
52
- if (status === 3) {
53
- getWasmExport(ctx.modules, 'worker_get_result')(token);
54
- const errBytes = readReturnSlot(ctx.modules);
55
- throw new IpcError(-32000, new TextDecoder().decode(errBytes));
56
- }
57
-
58
- const getResultFn = getWasmExport(ctx.modules, 'worker_get_result');
59
- const rc = getResultFn(token) as number;
60
- if (rc === -1) {
61
- const errBytes = readReturnSlot(ctx.modules);
62
- throw new IpcError(-32000, new TextDecoder().decode(errBytes));
63
- }
64
- return decodePagedSearchResult(readReturnSlot(ctx.modules));
65
- }
66
-
67
- /**
68
- * Handles the `get_result_status` IPC method.
69
- */
70
- export function handleResultStatus(
71
- ctx: HandlerContext,
72
- params: Record<string, unknown>,
73
- ): unknown {
74
- const token = Number(params['token'] ?? 0);
75
- const fn = getWasmExport(ctx.modules, 'worker_result_status');
76
- return { status: fn(token) as number };
77
- }
78
-
79
- /**
80
- * Handles the `get_result` IPC method.
81
- */
82
- export function handleGetResult(
83
- ctx: HandlerContext,
84
- params: Record<string, unknown>,
85
- ): unknown {
86
- const token = Number(params['token'] ?? 0);
87
- const fn = getWasmExport(ctx.modules, 'worker_get_result');
88
- const rc = fn(token) as number;
89
- if (rc === -1) {
90
- const errBytes = readReturnSlot(ctx.modules);
91
- throw new IpcError(-32000, new TextDecoder().decode(errBytes));
92
- }
93
- return decodePagedSearchResult(readReturnSlot(ctx.modules));
94
- }
95
-
96
- /**
97
- * Handles the `readSections` IPC method.
98
- */
99
- export function handleReadSections(
100
- ctx: HandlerContext,
101
- params: Record<string, unknown>,
102
- ): unknown {
103
- const kbids = (params['kbids'] ?? []) as string[];
104
- const encoded = encodeKbidList(kbids);
105
- const bytes = callWasmSync(
106
- ctx.modules,
107
- 'worker_read_sections',
108
- encoded,
109
- );
110
- return decodeSectionRecords(bytes);
111
- }
112
-
113
- /**
114
- * Handles the `retrieveDocument` IPC method.
115
- */
116
- export function handleRetrieveDoc(
117
- ctx: HandlerContext,
118
- params: Record<string, unknown>,
119
- ): unknown {
120
- const docid = (params['docid'] as string | undefined) ?? '';
121
- const encoded = new TextEncoder().encode(docid);
122
- const bytes = callWasmSync(
123
- ctx.modules,
124
- 'worker_retrieve_doc',
125
- encoded,
126
- );
127
- return decodeDocumentManifest(bytes);
128
- }
129
-
130
- /**
131
- * Handles the `content` and `compose` IPC methods.
132
- */
133
- export function handleCompose(
134
- ctx: HandlerContext,
135
- params: Record<string, unknown>,
136
- ): unknown {
137
- const ids = (params['ids'] ?? []) as string[];
138
- const encoded = encodeIdentifierList(ids);
139
- const bytes = callWasmSync(ctx.modules, 'worker_compose', encoded);
140
- const output = decodeComposeOutput(bytes);
141
- return { data: output.markdown, total: Number(output.totalChars) };
142
- }
143
-
144
- /**
145
- * Handles the `integrityCheck` IPC method.
146
- */
147
- export function handleIntegrityCheck(ctx: HandlerContext): unknown {
148
- callWasmZeroArg(ctx.modules, 'worker_check_integrity');
149
- const bytes = readReturnSlot(ctx.modules);
150
- return decodeKeyValueText(new TextDecoder().decode(bytes));
151
- }
152
-
153
- /**
154
- * Handles the `dbStatus` IPC method.
155
- */
156
- export function handleDbStatus(ctx: HandlerContext): unknown {
157
- callWasmZeroArg(ctx.modules, 'worker_status');
158
- const bytes = readReturnSlot(ctx.modules);
159
- return decodeKeyValueText(new TextDecoder().decode(bytes));
160
- }
161
-
162
- /**
163
- * Handles the `listByType` IPC method.
164
- */
165
- export function handleListByType(
166
- ctx: HandlerContext,
167
- params: Record<string, unknown>,
168
- ): unknown {
169
- const typeStr = (params['sectionType'] as string | undefined) ?? '';
170
- const encoded = encodeTypeFilterParam(typeStr);
171
- const bytes = callWasmSync(
172
- ctx.modules,
173
- 'worker_list_by_type',
174
- encoded,
175
- );
176
- return decodeSectionRecordList(bytes);
177
- }
178
-
179
- /**
180
- * Handles the `listDocumentsByType` IPC method.
181
- */
182
- export function handleListDocsByType(
183
- ctx: HandlerContext,
184
- params: Record<string, unknown>,
185
- ): unknown {
186
- const typeStr = (params['docType'] as string | undefined) ?? '';
187
- const encoded = encodeTypeFilterParam(typeStr);
188
- const bytes = callWasmSync(
189
- ctx.modules,
190
- 'worker_list_docs_by_type',
191
- encoded,
192
- );
193
- return decodeDocumentManifestList(bytes);
194
- }
195
-
196
- /**
197
- * Handles the `recall` IPC method.
198
- */
199
- export function handleRecall(
200
- ctx: HandlerContext,
201
- params: Record<string, unknown>,
202
- ): unknown {
203
- const kbid =
204
- typeof params['kbid'] === 'string' ? params['kbid'] : undefined;
205
- const kbids = Array.isArray(params['kbids'])
206
- ? (params['kbids'] as string[])
207
- : undefined;
208
- const depth = Number(params['depth'] ?? 0);
209
- const encoded = encodeRecallParams({ kbid, kbids, depth });
210
- const bytes = callWasmSync(ctx.modules, 'worker_recall', encoded);
211
- return decodeRecallResult(bytes);
212
- }
213
-
214
- /**
215
- * Handles the `export` and `exportDb` IPC methods.
216
- */
217
- export function handleExport(
218
- ctx: HandlerContext,
219
- params: Record<string, unknown>,
220
- ): unknown {
221
- const targetPath =
222
- (params['targetPath'] as string | undefined) ??
223
- (params['path'] as string | undefined) ??
224
- './kbdb-export/';
225
- const encoded = new TextEncoder().encode(targetPath);
226
- const start = Date.now();
227
- const bytes = callWasmSync(ctx.modules, 'worker_export', encoded);
228
- const elapsed = Date.now() - start;
229
- const kv = decodeKeyValueText(new TextDecoder().decode(bytes));
230
- return {
231
- path: kv['path'] ?? targetPath,
232
- sections_exported: Number(kv['sections_exported'] ?? 0),
233
- documents_exported: Number(kv['documents_exported'] ?? 0),
234
- elapsed_ms: elapsed,
235
- };
236
- }