@dikolab/kbdb 0.3.2 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (523) hide show
  1. package/README.md +92 -90
  2. package/dist/chunk-BJXEVALU.mjs +337 -0
  3. package/dist/chunk-BJXEVALU.mjs.map +7 -0
  4. package/dist/cli.cjs +1398 -378
  5. package/dist/cli.cjs.map +4 -4
  6. package/dist/cli.d.ts +9 -0
  7. package/dist/cli.mjs +1138 -342
  8. package/dist/cli.mjs.map +4 -4
  9. package/dist/kbdb-worker.cjs +1115 -135
  10. package/dist/kbdb-worker.cjs.map +4 -4
  11. package/dist/mod.cjs +351 -69
  12. package/dist/mod.cjs.map +4 -4
  13. package/dist/mod.d.ts +23 -2
  14. package/dist/mod.mjs +349 -68
  15. package/dist/mod.mjs.map +4 -4
  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 +22 -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/classes/tfidf-embedding-provider.class.d.ts +28 -0
  38. package/dist/src/shared/embedding/constants/tfidf-defaults.constant.d.ts +4 -0
  39. package/dist/src/shared/embedding/functions/append-vector-entry.function.d.ts +14 -0
  40. package/dist/src/shared/embedding/functions/create-embedding-provider.function.d.ts +15 -0
  41. package/dist/src/shared/embedding/functions/detect-stale-vectors.function.d.ts +16 -0
  42. package/dist/src/shared/embedding/functions/parse-api-embedding-response.function.d.ts +11 -0
  43. package/dist/src/shared/embedding/functions/rebuild-vectors.function.d.ts +15 -0
  44. package/dist/src/shared/embedding/functions/scan-semantic-contradictions.function.d.ts +13 -0
  45. package/dist/src/shared/embedding/index.d.ts +9 -0
  46. package/dist/src/shared/embedding/typings/semantic-contradiction.model.d.ts +21 -0
  47. package/dist/src/shared/embedding/typings/stale-vectors-report.model.d.ts +16 -0
  48. package/dist/src/shared/log/constants/log-colors.constant.d.ts +5 -0
  49. package/dist/src/shared/log/constants/log-defaults.constant.d.ts +3 -0
  50. package/dist/src/shared/log/constants/log-icons.constant.d.ts +3 -0
  51. package/dist/src/shared/log/functions/configure-log.function.d.ts +12 -0
  52. package/dist/src/shared/log/functions/log.function.d.ts +28 -0
  53. package/dist/src/shared/log/functions/parse-log-level.function.d.ts +10 -0
  54. package/dist/src/shared/log/functions/resolve-log-level.function.d.ts +12 -0
  55. package/dist/src/shared/log/functions/write-stderr.function.d.ts +10 -0
  56. package/dist/src/shared/log/index.d.ts +10 -0
  57. package/dist/src/shared/log/typings/log-config.interface.d.ts +7 -0
  58. package/dist/src/shared/log/typings/log-level.type.d.ts +7 -0
  59. package/dist/src/shared/log/typings/log-output.interface.d.ts +4 -0
  60. package/dist/src/shared/mcp/classes/mcp-server.class.d.ts +22 -2
  61. package/dist/src/shared/mcp/functions/create-mcp-server.function.d.ts +6 -1
  62. package/dist/src/shared/mcp/functions/has-sampling-capability.function.d.ts +8 -0
  63. package/dist/src/shared/mcp/functions/run-auto-capture.function.d.ts +26 -0
  64. package/dist/src/shared/mcp/typings/mcp-client.interface.d.ts +2 -0
  65. package/dist/src/shared/mcp/typings/mcp-integrity-check-result.model.d.ts +24 -0
  66. package/dist/src/shared/mcp/typings/mcp-worker-client.interface.d.ts +3 -1
  67. package/dist/src/shared/version/constants/version.constant.d.ts +1 -1
  68. package/dist/src/shared/wasm-codec/typings/paged-search-result.model.d.ts +2 -0
  69. package/dist/src/shared/worker-client/classes/worker-client.class.d.ts +38 -1
  70. package/dist/src/shared/worker-client/constants/request-timeout.constant.d.ts +2 -0
  71. package/dist/src/shared/worker-client/constants/retry-defaults.constant.d.ts +2 -0
  72. package/dist/src/shared/worker-client/functions/get-or-create-client.function.d.ts +20 -0
  73. package/dist/src/shared/worker-client/functions/retry-on-timeout.function.d.ts +18 -0
  74. package/dist/src/shared/worker-client/index.d.ts +4 -1
  75. package/dist/src/shared/worker-client/typings/import-result.model.d.ts +16 -0
  76. package/dist/src/shared/worker-client/typings/integrity-check-result.model.d.ts +24 -0
  77. package/dist/src/shared/worker-client/typings/search-params.model.d.ts +4 -0
  78. package/dist/src/shared/worker-client/typings/search-result.model.d.ts +6 -0
  79. package/dist/src/shared/worker-client/typings/worker-client-options.interface.d.ts +7 -0
  80. package/dist/src/shared/worker-daemon/classes/worker-daemon.class.d.ts +6 -0
  81. package/dist/src/shared/worker-daemon/functions/create-ipc-server.function.d.ts +11 -11
  82. package/dist/src/shared/worker-daemon/functions/embed-after-learn.function.d.ts +13 -0
  83. package/dist/src/shared/worker-daemon/functions/handle-hybrid-search.function.d.ts +44 -0
  84. package/dist/src/shared/worker-daemon/functions/handle-import.function.d.ts +14 -0
  85. package/dist/src/shared/worker-daemon/functions/handle-read-ops.function.d.ts +7 -1
  86. package/dist/src/shared/worker-daemon/functions/handle-write-ops.function.d.ts +9 -4
  87. package/dist/src/shared/worker-daemon/functions/run-worker.function.d.ts +6 -1
  88. package/dist/src/shared/worker-daemon/typings/handler-context.interface.d.ts +3 -0
  89. package/dist/src/shared/worker-daemon/typings/wasm-modules.interface.d.ts +5 -0
  90. package/dist/wasm/default-embedding/kbdb_default_embedding.d.ts +55 -0
  91. package/dist/wasm/default-embedding/kbdb_default_embedding.js +156 -0
  92. package/{src/wasm/query-parser/kbdb_query_parser_bg.wasm → dist/wasm/default-embedding/kbdb_default_embedding_bg.wasm} +0 -0
  93. package/dist/wasm/default-embedding/kbdb_default_embedding_bg.wasm.d.ts +12 -0
  94. package/dist/wasm/default-embedding/package.json +13 -0
  95. package/dist/wasm/fs-database/kbdb_fs_database.d.ts +16 -85
  96. package/dist/wasm/fs-database/kbdb_fs_database.js +16 -85
  97. package/dist/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  98. package/dist/wasm/fs-migration/kbdb_fs_migration.d.ts +38 -0
  99. package/dist/wasm/fs-migration/kbdb_fs_migration.js +130 -0
  100. package/dist/wasm/fs-migration/kbdb_fs_migration_bg.wasm +0 -0
  101. package/dist/wasm/fs-migration/kbdb_fs_migration_bg.wasm.d.ts +9 -0
  102. package/dist/wasm/fs-migration/package.json +13 -0
  103. package/dist/wasm/kb-worker/kbdb_worker.d.ts +20 -115
  104. package/dist/wasm/kb-worker/kbdb_worker.js +20 -115
  105. package/dist/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  106. package/dist/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  107. package/dist/worker.d.ts +8 -0
  108. package/dist/worker.mjs +899 -143
  109. package/dist/worker.mjs.map +4 -4
  110. package/docs/details/README.md +4 -0
  111. package/docs/details/agent-tooling.md +132 -0
  112. package/docs/details/cli.md +91 -18
  113. package/docs/details/knowledge-base.md +180 -0
  114. package/docs/details/library-api.md +42 -2
  115. package/docs/details/mcp-server.md +53 -7
  116. package/docs/details/search-and-ranking.md +16 -11
  117. package/docs/goals/cli.md +142 -37
  118. package/docs/goals/content-parser.md +1 -1
  119. package/docs/goals/hybrid-search.md +71 -42
  120. package/docs/goals/mcp.md +24 -19
  121. package/docs/goals/overview.md +1 -1
  122. package/docs/goals/query-parser.md +8 -0
  123. package/docs/goals/semantic-dedup.md +7 -3
  124. package/docs/goals/worker-client.md +62 -1
  125. package/docs/goals/worker-daemon.md +83 -30
  126. package/docs/modules/overview.md +43 -22
  127. package/docs/modules/rust/embedding/module.md +91 -0
  128. package/docs/modules/rust/overview.md +56 -21
  129. package/docs/modules/rust/query-parser/functions/module.md +7 -5
  130. package/docs/modules/rust/query-parser/functions/pipeline.md +6 -138
  131. package/docs/modules/rust/query-parser/module.md +16 -22
  132. package/docs/modules/rust/query-parser/types/module.md +5 -4
  133. package/docs/modules/rust/query-parser/types/token.md +5 -1
  134. package/docs/modules/rust/shared/content-parser/functions.md +1 -1
  135. package/docs/modules/rust/shared/memory/module.md +1 -1
  136. package/docs/modules/rust/shared/module.md +33 -5
  137. package/docs/modules/rust/shared/pipeline/functions.md +141 -0
  138. package/docs/modules/rust/shared/pipeline/module.md +62 -0
  139. package/docs/modules/rust/shared/pipeline/types.md +43 -0
  140. package/docs/modules/rust/shared/section/module.md +1 -1
  141. package/docs/modules/rust/shared/section/types.md +1 -1
  142. package/docs/modules/typescript/cli.md +5 -3
  143. package/docs/modules/typescript/kbdb-worker.md +20 -5
  144. package/docs/modules/typescript/overview.md +28 -6
  145. package/docs/modules/typescript/shared/cli/functions.md +131 -17
  146. package/docs/modules/typescript/shared/cli/module.md +33 -20
  147. package/docs/modules/typescript/shared/cli/typings.md +25 -0
  148. package/docs/modules/typescript/shared/embedding/functions.md +125 -19
  149. package/docs/modules/typescript/shared/embedding/module.md +10 -4
  150. package/docs/modules/typescript/shared/embedding/typings.md +7 -5
  151. package/docs/modules/typescript/shared/log/constants.md +82 -0
  152. package/docs/modules/typescript/shared/log/functions.md +131 -0
  153. package/docs/modules/typescript/shared/log/module.md +153 -0
  154. package/docs/modules/typescript/shared/log/typings.md +82 -0
  155. package/docs/modules/typescript/shared/mcp/module.md +1 -1
  156. package/docs/modules/typescript/shared/mcp/typings.md +8 -1
  157. package/docs/modules/typescript/shared/module.md +22 -6
  158. package/docs/modules/typescript/shared/worker-client/module.md +9 -1
  159. package/docs/modules/typescript/shared/worker-client/typings.md +3 -0
  160. package/docs/modules/typescript/shared/worker-daemon/functions.md +19 -6
  161. package/docs/modules/typescript/shared/worker-daemon/module.md +11 -5
  162. package/docs/modules/typescript/shared/worker-daemon/typings.md +13 -7
  163. package/docs/overview.md +1 -2
  164. package/docs/release-notes/0.4.0.md +80 -0
  165. package/docs/release-notes/0.4.1.md +149 -0
  166. package/docs/release-notes/README.md +1 -0
  167. package/mod.ts +33 -15
  168. package/package.json +12 -11
  169. package/dist/chunk-JG2UCKLI.mjs +0 -95
  170. package/dist/chunk-JG2UCKLI.mjs.map +0 -7
  171. package/src/cli.ts +0 -71
  172. package/src/shared/auto-capture/classes/auto-capture-controller.class.ts +0 -62
  173. package/src/shared/auto-capture/constants/auto-capture-defaults.constant.ts +0 -15
  174. package/src/shared/auto-capture/functions/build-capture-prompt.function.ts +0 -27
  175. package/src/shared/auto-capture/functions/evaluate-trigger.function.ts +0 -50
  176. package/src/shared/auto-capture/index.ts +0 -7
  177. package/src/shared/auto-capture/typings/auto-capture-config.interface.ts +0 -13
  178. package/src/shared/auto-capture/typings/auto-capture-state.interface.ts +0 -13
  179. package/src/shared/auto-capture/typings/auto-capture-trigger.interface.ts +0 -7
  180. package/src/shared/cli/constants/defaults.constant.ts +0 -19
  181. package/src/shared/cli/constants/global-help.constant.ts +0 -73
  182. package/src/shared/cli/constants/help-text.constant.ts +0 -4
  183. package/src/shared/cli/constants/leaf-help.constant.ts +0 -219
  184. package/src/shared/cli/constants/memory-protocol-body.constant.ts +0 -39
  185. package/src/shared/cli/constants/query-guidance-body.constant.ts +0 -37
  186. package/src/shared/cli/constants/subcommand-help.constant.ts +0 -195
  187. package/src/shared/cli/functions/collect-files.function.ts +0 -55
  188. package/src/shared/cli/functions/compute-section-kbid.function.ts +0 -49
  189. package/src/shared/cli/functions/dispatch-command.function.ts +0 -390
  190. package/src/shared/cli/functions/ensure-db.function.ts +0 -21
  191. package/src/shared/cli/functions/error-to-message.function.ts +0 -9
  192. package/src/shared/cli/functions/find-db.function.ts +0 -20
  193. package/src/shared/cli/functions/format-mcp-output.function.ts +0 -41
  194. package/src/shared/cli/functions/format-output.function.ts +0 -95
  195. package/src/shared/cli/functions/format-text-output.function.ts +0 -42
  196. package/src/shared/cli/functions/generate-group-help.function.ts +0 -41
  197. package/src/shared/cli/functions/generate-help.function.ts +0 -654
  198. package/src/shared/cli/functions/handle-data-command.function.ts +0 -67
  199. package/src/shared/cli/functions/handle-mcp.function.ts +0 -56
  200. package/src/shared/cli/functions/handle-migrate.function.ts +0 -64
  201. package/src/shared/cli/functions/hydrate-search-previews.function.ts +0 -29
  202. package/src/shared/cli/functions/install-default-skills.function.ts +0 -296
  203. package/src/shared/cli/functions/is-stdin-tty.function.ts +0 -12
  204. package/src/shared/cli/functions/parse-args.function.ts +0 -156
  205. package/src/shared/cli/functions/prompt-user.function.ts +0 -36
  206. package/src/shared/cli/functions/resolve-skill-names.function.ts +0 -43
  207. package/src/shared/cli/functions/run-agent-create.function.ts +0 -114
  208. package/src/shared/cli/functions/run-agent-delete.function.ts +0 -47
  209. package/src/shared/cli/functions/run-agent-get.function.ts +0 -166
  210. package/src/shared/cli/functions/run-agent-list.function.ts +0 -58
  211. package/src/shared/cli/functions/run-check.function.ts +0 -159
  212. package/src/shared/cli/functions/run-cli.function.ts +0 -299
  213. package/src/shared/cli/functions/run-content.function.ts +0 -47
  214. package/src/shared/cli/functions/run-db-init.function.ts +0 -44
  215. package/src/shared/cli/functions/run-db-migrate.function.ts +0 -40
  216. package/src/shared/cli/functions/run-export.function.ts +0 -40
  217. package/src/shared/cli/functions/run-gc.function.ts +0 -51
  218. package/src/shared/cli/functions/run-init.function.ts +0 -93
  219. package/src/shared/cli/functions/run-learn.function.ts +0 -223
  220. package/src/shared/cli/functions/run-migrate.function.ts +0 -85
  221. package/src/shared/cli/functions/run-rebuild.function.ts +0 -47
  222. package/src/shared/cli/functions/run-recall.function.ts +0 -66
  223. package/src/shared/cli/functions/run-search.function.ts +0 -133
  224. package/src/shared/cli/functions/run-skill-delete.function.ts +0 -47
  225. package/src/shared/cli/functions/run-skill-get.function.ts +0 -90
  226. package/src/shared/cli/functions/run-skill-learn.function.ts +0 -70
  227. package/src/shared/cli/functions/run-skill-list.function.ts +0 -74
  228. package/src/shared/cli/functions/run-status.function.ts +0 -29
  229. package/src/shared/cli/functions/run-unlearn.function.ts +0 -58
  230. package/src/shared/cli/functions/version-gate.function.ts +0 -44
  231. package/src/shared/cli/functions/wrap-command.function.ts +0 -34
  232. package/src/shared/cli/index.ts +0 -55
  233. package/src/shared/cli/typings/agent-create-client.interface.ts +0 -47
  234. package/src/shared/cli/typings/agent-get-client.interface.ts +0 -39
  235. package/src/shared/cli/typings/check-client.interface.ts +0 -66
  236. package/src/shared/cli/typings/cli-deps.interface.ts +0 -54
  237. package/src/shared/cli/typings/cli-options.interface.ts +0 -72
  238. package/src/shared/cli/typings/command-result.model.ts +0 -15
  239. package/src/shared/cli/typings/disconnectable-client.interface.ts +0 -29
  240. package/src/shared/cli/typings/dispatch-client.type.ts +0 -46
  241. package/src/shared/cli/typings/learn-client.interface.ts +0 -53
  242. package/src/shared/cli/typings/learn-io.interface.ts +0 -5
  243. package/src/shared/cli/typings/learn-result.model.ts +0 -27
  244. package/src/shared/cli/typings/search-client.interface.ts +0 -73
  245. package/src/shared/cli/typings/search-display.model.ts +0 -54
  246. package/src/shared/dir-resolver/functions/join-path.function.ts +0 -13
  247. package/src/shared/dir-resolver/functions/resolve-base-dir.function.ts +0 -25
  248. package/src/shared/dir-resolver/functions/resolve-wasm-dir.function.ts +0 -5
  249. package/src/shared/dir-resolver/functions/resolve-worker-script.function.ts +0 -13
  250. package/src/shared/dir-resolver/index.ts +0 -11
  251. package/src/shared/dir-resolver/typings/base-dir.interface.ts +0 -4
  252. package/src/shared/embedding/classes/null-embedding-provider.class.ts +0 -29
  253. package/src/shared/embedding/constants/near-duplicate-thresholds.constant.ts +0 -17
  254. package/src/shared/embedding/functions/build-vector-index.function.ts +0 -79
  255. package/src/shared/embedding/functions/cosine-similarity.function.ts +0 -31
  256. package/src/shared/embedding/functions/detect-near-duplicates.function.ts +0 -69
  257. package/src/shared/embedding/functions/jaccard-coefficient.function.ts +0 -26
  258. package/src/shared/embedding/functions/read-vector-index-meta.function.ts +0 -44
  259. package/src/shared/embedding/functions/rrf-fuse.function.ts +0 -33
  260. package/src/shared/embedding/functions/search-vectors.function.ts +0 -59
  261. package/src/shared/embedding/index.ts +0 -20
  262. package/src/shared/embedding/typings/embedding-config.interface.ts +0 -23
  263. package/src/shared/embedding/typings/embedding-provider.interface.ts +0 -25
  264. package/src/shared/embedding/typings/near-duplicate-candidate.model.ts +0 -25
  265. package/src/shared/embedding/typings/near-duplicate-result.model.ts +0 -26
  266. package/src/shared/embedding/typings/vector-index-entry.model.ts +0 -13
  267. package/src/shared/embedding/typings/vector-index-meta.model.ts +0 -14
  268. package/src/shared/embedding/typings/vector-search-result.model.ts +0 -8
  269. package/src/shared/hash/functions/compute-sha256.ts +0 -17
  270. package/src/shared/hash/index.ts +0 -1
  271. package/src/shared/mcp/classes/mcp-server.class.ts +0 -480
  272. package/src/shared/mcp/constants/mcp-error-codes.constant.ts +0 -30
  273. package/src/shared/mcp/constants/tool-agent-create.constant.ts +0 -39
  274. package/src/shared/mcp/constants/tool-agent-delete.constant.ts +0 -26
  275. package/src/shared/mcp/constants/tool-agent-get.constant.ts +0 -24
  276. package/src/shared/mcp/constants/tool-agent-list.constant.ts +0 -18
  277. package/src/shared/mcp/constants/tool-auto-capture-review.constant.ts +0 -32
  278. package/src/shared/mcp/constants/tool-check.constant.ts +0 -21
  279. package/src/shared/mcp/constants/tool-content.constant.ts +0 -29
  280. package/src/shared/mcp/constants/tool-export.constant.ts +0 -27
  281. package/src/shared/mcp/constants/tool-gc.constant.ts +0 -21
  282. package/src/shared/mcp/constants/tool-learn.constant.ts +0 -58
  283. package/src/shared/mcp/constants/tool-rebuild.constant.ts +0 -21
  284. package/src/shared/mcp/constants/tool-recall.constant.ts +0 -36
  285. package/src/shared/mcp/constants/tool-retrieve.constant.ts +0 -31
  286. package/src/shared/mcp/constants/tool-search.constant.ts +0 -51
  287. package/src/shared/mcp/constants/tool-skill-delete.constant.ts +0 -24
  288. package/src/shared/mcp/constants/tool-skill-get.constant.ts +0 -27
  289. package/src/shared/mcp/constants/tool-skill-learn.constant.ts +0 -37
  290. package/src/shared/mcp/constants/tool-skill-list.constant.ts +0 -18
  291. package/src/shared/mcp/constants/tool-status.constant.ts +0 -20
  292. package/src/shared/mcp/constants/tool-unlearn.constant.ts +0 -25
  293. package/src/shared/mcp/functions/as-boolean-or-undefined.function.ts +0 -11
  294. package/src/shared/mcp/functions/as-string-array-or-undefined.function.ts +0 -17
  295. package/src/shared/mcp/functions/as-string-array.function.ts +0 -15
  296. package/src/shared/mcp/functions/as-string.function.ts +0 -10
  297. package/src/shared/mcp/functions/build-skills-text.function.ts +0 -43
  298. package/src/shared/mcp/functions/create-mcp-server.function.ts +0 -14
  299. package/src/shared/mcp/functions/create-prompt-definitions.function.ts +0 -102
  300. package/src/shared/mcp/functions/create-resource-templates.function.ts +0 -23
  301. package/src/shared/mcp/functions/create-tool-definitions.function.ts +0 -530
  302. package/src/shared/mcp/functions/extract-skill-arguments.function.ts +0 -27
  303. package/src/shared/mcp/functions/handle-agent-create.function.ts +0 -116
  304. package/src/shared/mcp/functions/handle-agent-delete.function.ts +0 -50
  305. package/src/shared/mcp/functions/handle-agent-get.function.ts +0 -160
  306. package/src/shared/mcp/functions/handle-agent-list.function.ts +0 -50
  307. package/src/shared/mcp/functions/handle-agent-prompt.function.ts +0 -68
  308. package/src/shared/mcp/functions/handle-completion.function.ts +0 -114
  309. package/src/shared/mcp/functions/handle-mcp-request.function.ts +0 -202
  310. package/src/shared/mcp/functions/handle-prompt-get.function.ts +0 -220
  311. package/src/shared/mcp/functions/handle-recall.function.ts +0 -66
  312. package/src/shared/mcp/functions/handle-resource-read.function.ts +0 -56
  313. package/src/shared/mcp/functions/handle-roots-list.function.ts +0 -29
  314. package/src/shared/mcp/functions/handle-skill-prompt.function.ts +0 -44
  315. package/src/shared/mcp/functions/handle-tool-auto-capture-review.function.ts +0 -24
  316. package/src/shared/mcp/functions/handle-tool-call.function.ts +0 -560
  317. package/src/shared/mcp/functions/handle-tool-check.function.ts +0 -21
  318. package/src/shared/mcp/functions/handle-tool-content.function.ts +0 -23
  319. package/src/shared/mcp/functions/handle-tool-export.function.ts +0 -25
  320. package/src/shared/mcp/functions/handle-tool-gc.function.ts +0 -21
  321. package/src/shared/mcp/functions/handle-tool-learn.function.ts +0 -69
  322. package/src/shared/mcp/functions/handle-tool-rebuild.function.ts +0 -21
  323. package/src/shared/mcp/functions/handle-tool-retrieve.function.ts +0 -40
  324. package/src/shared/mcp/functions/handle-tool-search.function.ts +0 -47
  325. package/src/shared/mcp/functions/handle-tool-skill-delete.function.ts +0 -34
  326. package/src/shared/mcp/functions/handle-tool-skill-get.function.ts +0 -59
  327. package/src/shared/mcp/functions/handle-tool-skill-learn.function.ts +0 -61
  328. package/src/shared/mcp/functions/handle-tool-skill-list.function.ts +0 -39
  329. package/src/shared/mcp/functions/handle-tool-status.function.ts +0 -21
  330. package/src/shared/mcp/functions/handle-tool-unlearn.function.ts +0 -24
  331. package/src/shared/mcp/functions/parse-agent-meta.function.ts +0 -27
  332. package/src/shared/mcp/functions/parse-skill-arguments.function.ts +0 -36
  333. package/src/shared/mcp/functions/parse-skill-content.function.ts +0 -38
  334. package/src/shared/mcp/functions/read-agent-meta.function.ts +0 -41
  335. package/src/shared/mcp/functions/resolve-skill-refs.function.ts +0 -50
  336. package/src/shared/mcp/functions/run-startup-health-check.function.ts +0 -34
  337. package/src/shared/mcp/functions/serialize-skill-content.function.ts +0 -12
  338. package/src/shared/mcp/functions/should-emit-log.function.ts +0 -38
  339. package/src/shared/mcp/index.ts +0 -28
  340. package/src/shared/mcp/typings/agent-types.interface.ts +0 -39
  341. package/src/shared/mcp/typings/log-types.interface.ts +0 -26
  342. package/src/shared/mcp/typings/mcp-capabilities.interface.ts +0 -16
  343. package/src/shared/mcp/typings/mcp-client.interface.ts +0 -317
  344. package/src/shared/mcp/typings/mcp-completion.interface.ts +0 -45
  345. package/src/shared/mcp/typings/mcp-content-result.model.ts +0 -9
  346. package/src/shared/mcp/typings/mcp-export-result.model.ts +0 -11
  347. package/src/shared/mcp/typings/mcp-gc-result.model.ts +0 -15
  348. package/src/shared/mcp/typings/mcp-integrity-check-result.model.ts +0 -17
  349. package/src/shared/mcp/typings/mcp-integrity-error.model.ts +0 -15
  350. package/src/shared/mcp/typings/mcp-notification.interface.ts +0 -9
  351. package/src/shared/mcp/typings/mcp-rebuild-result.model.ts +0 -9
  352. package/src/shared/mcp/typings/mcp-request.interface.ts +0 -11
  353. package/src/shared/mcp/typings/mcp-resource-result.interface.ts +0 -12
  354. package/src/shared/mcp/typings/mcp-resource-template.interface.ts +0 -11
  355. package/src/shared/mcp/typings/mcp-response.interface.ts +0 -18
  356. package/src/shared/mcp/typings/mcp-server-info.interface.ts +0 -7
  357. package/src/shared/mcp/typings/mcp-server-state.interface.ts +0 -17
  358. package/src/shared/mcp/typings/mcp-tool-annotations.interface.ts +0 -32
  359. package/src/shared/mcp/typings/mcp-tool-definition.interface.ts +0 -16
  360. package/src/shared/mcp/typings/mcp-tool-result.interface.ts +0 -19
  361. package/src/shared/mcp/typings/mcp-types.interface.ts +0 -158
  362. package/src/shared/mcp/typings/mcp-worker-client.interface.ts +0 -243
  363. package/src/shared/mcp/typings/prompt-types.interface.ts +0 -39
  364. package/src/shared/mcp/typings/remove-section-result.model.ts +0 -10
  365. package/src/shared/mcp/typings/sampling-types.interface.ts +0 -48
  366. package/src/shared/mcp/typings/skill-types.interface.ts +0 -29
  367. package/src/shared/mcp/typings/tool-call-result.model.ts +0 -18
  368. package/src/shared/mod.ts +0 -1
  369. package/src/shared/platform/functions/get-ipc-path.function.ts +0 -19
  370. package/src/shared/platform/functions/get-tmpdir.function.ts +0 -8
  371. package/src/shared/platform/functions/is-process-alive.function.ts +0 -17
  372. package/src/shared/platform/index.ts +0 -3
  373. package/src/shared/runtime/functions/detect-runtime.ts +0 -14
  374. package/src/shared/runtime/functions/get-args.ts +0 -16
  375. package/src/shared/runtime/index.ts +0 -3
  376. package/src/shared/runtime/typings/runtime.ts +0 -2
  377. package/src/shared/sync/functions/build-import-report.function.ts +0 -40
  378. package/src/shared/sync/functions/parse-export-entry.function.ts +0 -45
  379. package/src/shared/sync/functions/resolve-conflict.function.ts +0 -31
  380. package/src/shared/sync/functions/serialize-export-entry.function.ts +0 -18
  381. package/src/shared/sync/index.ts +0 -9
  382. package/src/shared/sync/typings/conflict-resolution.type.ts +0 -8
  383. package/src/shared/sync/typings/export-entry.interface.ts +0 -13
  384. package/src/shared/sync/typings/export-options.interface.ts +0 -9
  385. package/src/shared/sync/typings/import-options.interface.ts +0 -7
  386. package/src/shared/sync/typings/import-report.interface.ts +0 -15
  387. package/src/shared/version/constants/version.constant.ts +0 -2
  388. package/src/shared/version/index.ts +0 -1
  389. package/src/shared/wasm-codec/functions/decode-add-section-result.function.ts +0 -112
  390. package/src/shared/wasm-codec/functions/decode-compose-output.function.ts +0 -16
  391. package/src/shared/wasm-codec/functions/decode-document-manifest-list.function.ts +0 -70
  392. package/src/shared/wasm-codec/functions/decode-document-manifest.function.ts +0 -87
  393. package/src/shared/wasm-codec/functions/decode-f32.function.ts +0 -16
  394. package/src/shared/wasm-codec/functions/decode-key-value-text.function.ts +0 -15
  395. package/src/shared/wasm-codec/functions/decode-one-recall-result.function.ts +0 -86
  396. package/src/shared/wasm-codec/functions/decode-option-string.function.ts +0 -24
  397. package/src/shared/wasm-codec/functions/decode-recall-document.function.ts +0 -59
  398. package/src/shared/wasm-codec/functions/decode-recall-reference.function.ts +0 -52
  399. package/src/shared/wasm-codec/functions/decode-recall-result.function.ts +0 -267
  400. package/src/shared/wasm-codec/functions/decode-recall-sibling.function.ts +0 -43
  401. package/src/shared/wasm-codec/functions/decode-remove-flag.function.ts +0 -3
  402. package/src/shared/wasm-codec/functions/decode-scored-results.function.ts +0 -194
  403. package/src/shared/wasm-codec/functions/decode-section-match.function.ts +0 -80
  404. package/src/shared/wasm-codec/functions/decode-section-record-list.function.ts +0 -20
  405. package/src/shared/wasm-codec/functions/decode-section-record-trailing.function.ts +0 -75
  406. package/src/shared/wasm-codec/functions/decode-section-record.function.ts +0 -85
  407. package/src/shared/wasm-codec/functions/decode-section-records.function.ts +0 -249
  408. package/src/shared/wasm-codec/functions/decode-section-type.function.ts +0 -30
  409. package/src/shared/wasm-codec/functions/decode-string.function.ts +0 -22
  410. package/src/shared/wasm-codec/functions/decode-u32.function.ts +0 -16
  411. package/src/shared/wasm-codec/functions/decode-u64.function.ts +0 -16
  412. package/src/shared/wasm-codec/functions/decode-wasm-list.function.ts +0 -31
  413. package/src/shared/wasm-codec/functions/encode-add-section-params.function.ts +0 -102
  414. package/src/shared/wasm-codec/functions/encode-group-params.function.ts +0 -28
  415. package/src/shared/wasm-codec/functions/encode-identifier-list.function.ts +0 -17
  416. package/src/shared/wasm-codec/functions/encode-kbid-list.function.ts +0 -17
  417. package/src/shared/wasm-codec/functions/encode-option-string.function.ts +0 -14
  418. package/src/shared/wasm-codec/functions/encode-recall-params.function.ts +0 -68
  419. package/src/shared/wasm-codec/functions/encode-search-params.function.ts +0 -12
  420. package/src/shared/wasm-codec/functions/encode-section-type.function.ts +0 -18
  421. package/src/shared/wasm-codec/functions/encode-string.function.ts +0 -9
  422. package/src/shared/wasm-codec/functions/encode-type-filter-param.function.ts +0 -13
  423. package/src/shared/wasm-codec/functions/encode-u32.function.ts +0 -5
  424. package/src/shared/wasm-codec/functions/encode-update-section-params.function.ts +0 -16
  425. package/src/shared/wasm-codec/index.ts +0 -49
  426. package/src/shared/wasm-codec/typings/add-section-input.model.ts +0 -45
  427. package/src/shared/wasm-codec/typings/add-section-result.model.ts +0 -28
  428. package/src/shared/wasm-codec/typings/document-manifest.model.ts +0 -20
  429. package/src/shared/wasm-codec/typings/document-section.model.ts +0 -12
  430. package/src/shared/wasm-codec/typings/item-decoder.type.ts +0 -10
  431. package/src/shared/wasm-codec/typings/near-duplicate.model.ts +0 -16
  432. package/src/shared/wasm-codec/typings/paged-search-result.model.ts +0 -22
  433. package/src/shared/wasm-codec/typings/section-match.model.ts +0 -31
  434. package/src/shared/wasm-codec/typings/section-record-trailing.model.ts +0 -38
  435. package/src/shared/wasm-codec/typings/section-record.model.ts +0 -66
  436. package/src/shared/wasm-codec/typings/section-type-result.model.ts +0 -12
  437. package/src/shared/worker-client/classes/worker-client.class.ts +0 -466
  438. package/src/shared/worker-client/functions/compute-context-id.function.ts +0 -18
  439. package/src/shared/worker-client/functions/create-worker-client.function.ts +0 -70
  440. package/src/shared/worker-client/functions/discover-daemon.function.ts +0 -47
  441. package/src/shared/worker-client/functions/handle-ipc-data.function.ts +0 -49
  442. package/src/shared/worker-client/functions/resolve-db-path.function.ts +0 -21
  443. package/src/shared/worker-client/functions/send-ipc-request.function.ts +0 -39
  444. package/src/shared/worker-client/functions/spawn-daemon.function.ts +0 -35
  445. package/src/shared/worker-client/functions/wait-for-daemon.function.ts +0 -34
  446. package/src/shared/worker-client/index.ts +0 -44
  447. package/src/shared/worker-client/typings/add-section-result.model.ts +0 -39
  448. package/src/shared/worker-client/typings/content-result.model.ts +0 -12
  449. package/src/shared/worker-client/typings/daemon-info.model.ts +0 -7
  450. package/src/shared/worker-client/typings/export-result.model.ts +0 -14
  451. package/src/shared/worker-client/typings/gc-result.model.ts +0 -18
  452. package/src/shared/worker-client/typings/integrity-check-result.model.ts +0 -43
  453. package/src/shared/worker-client/typings/json-rpc-response.interface.ts +0 -17
  454. package/src/shared/worker-client/typings/migrate-result.model.ts +0 -11
  455. package/src/shared/worker-client/typings/pending-call.interface.ts +0 -7
  456. package/src/shared/worker-client/typings/rebuild-result.model.ts +0 -12
  457. package/src/shared/worker-client/typings/recall-document.model.ts +0 -16
  458. package/src/shared/worker-client/typings/recall-params.model.ts +0 -15
  459. package/src/shared/worker-client/typings/recall-reference.model.ts +0 -32
  460. package/src/shared/worker-client/typings/recall-result.model.ts +0 -98
  461. package/src/shared/worker-client/typings/recall-sibling.model.ts +0 -11
  462. package/src/shared/worker-client/typings/recall-single-result.model.ts +0 -41
  463. package/src/shared/worker-client/typings/remove-section-result.model.ts +0 -7
  464. package/src/shared/worker-client/typings/search-params.model.ts +0 -14
  465. package/src/shared/worker-client/typings/search-result.model.ts +0 -43
  466. package/src/shared/worker-client/typings/section.model.ts +0 -43
  467. package/src/shared/worker-client/typings/status-result.model.ts +0 -14
  468. package/src/shared/worker-client/typings/version-status.model.ts +0 -28
  469. package/src/shared/worker-client/typings/worker-client-error.interface.ts +0 -8
  470. package/src/shared/worker-client/typings/worker-client-options.interface.ts +0 -30
  471. package/src/shared/worker-daemon/classes/ipc-error.class.ts +0 -22
  472. package/src/shared/worker-daemon/classes/worker-daemon.class.ts +0 -1291
  473. package/src/shared/worker-daemon/constants/daemon-defaults.constant.ts +0 -29
  474. package/src/shared/worker-daemon/constants/wasm-method-map.constant.ts +0 -69
  475. package/src/shared/worker-daemon/functions/build-ipc-error-response.function.ts +0 -16
  476. package/src/shared/worker-daemon/functions/check-catalog-version.function.ts +0 -54
  477. package/src/shared/worker-daemon/functions/check-preconditions.function.ts +0 -28
  478. package/src/shared/worker-daemon/functions/create-host-imports.function.ts +0 -328
  479. package/src/shared/worker-daemon/functions/create-ipc-server.function.ts +0 -87
  480. package/src/shared/worker-daemon/functions/detect-stale-pid.function.ts +0 -33
  481. package/src/shared/worker-daemon/functions/dispatch-request.function.ts +0 -190
  482. package/src/shared/worker-daemon/functions/handle-check-version.function.ts +0 -74
  483. package/src/shared/worker-daemon/functions/handle-config-method.function.ts +0 -27
  484. package/src/shared/worker-daemon/functions/handle-read-ops.function.ts +0 -236
  485. package/src/shared/worker-daemon/functions/handle-write-ops.function.ts +0 -257
  486. package/src/shared/worker-daemon/functions/load-wasm-modules.function.ts +0 -95
  487. package/src/shared/worker-daemon/functions/parse-auto-capture-section.function.ts +0 -51
  488. package/src/shared/worker-daemon/functions/parse-catalog-version.function.ts +0 -20
  489. package/src/shared/worker-daemon/functions/parse-embedding-section.function.ts +0 -38
  490. package/src/shared/worker-daemon/functions/parse-worker-toml.function.ts +0 -104
  491. package/src/shared/worker-daemon/functions/read-config.function.ts +0 -83
  492. package/src/shared/worker-daemon/functions/run-startup-integrity-check.function.ts +0 -55
  493. package/src/shared/worker-daemon/functions/run-worker.function.ts +0 -57
  494. package/src/shared/worker-daemon/functions/scan-near-duplicates.function.ts +0 -92
  495. package/src/shared/worker-daemon/functions/start-daemon.function.ts +0 -74
  496. package/src/shared/worker-daemon/functions/wasm-bridge.function.ts +0 -144
  497. package/src/shared/worker-daemon/functions/wasm-memory-helpers.function.ts +0 -41
  498. package/src/shared/worker-daemon/functions/write-lock.function.ts +0 -49
  499. package/src/shared/worker-daemon/index.ts +0 -16
  500. package/src/shared/worker-daemon/typings/allocator-ref.interface.ts +0 -16
  501. package/src/shared/worker-daemon/typings/daemon-config.interface.ts +0 -20
  502. package/src/shared/worker-daemon/typings/fs-adapter.interface.ts +0 -22
  503. package/src/shared/worker-daemon/typings/handler-context.interface.ts +0 -19
  504. package/src/shared/worker-daemon/typings/ipc-handler.interface.ts +0 -39
  505. package/src/shared/worker-daemon/typings/memory-ref.interface.ts +0 -13
  506. package/src/shared/worker-daemon/typings/wasm-fn.type.ts +0 -2
  507. package/src/shared/worker-daemon/typings/wasm-modules.interface.ts +0 -7
  508. package/src/shared/worker-daemon/typings/write-lock.interface.ts +0 -13
  509. package/src/wasm/fs-database/kbdb_fs_database.d.ts +0 -259
  510. package/src/wasm/fs-database/kbdb_fs_database.js +0 -515
  511. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  512. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm.d.ts +0 -35
  513. package/src/wasm/fs-database/package.json +0 -13
  514. package/src/wasm/kb-worker/kbdb_worker.d.ts +0 -650
  515. package/src/wasm/kb-worker/kbdb_worker.js +0 -1181
  516. package/src/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  517. package/src/wasm/kb-worker/kbdb_worker_bg.wasm.d.ts +0 -77
  518. package/src/wasm/kb-worker/package.json +0 -13
  519. package/src/wasm/query-parser/kbdb_query_parser.d.ts +0 -195
  520. package/src/wasm/query-parser/kbdb_query_parser.js +0 -403
  521. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm.d.ts +0 -25
  522. package/src/wasm/query-parser/package.json +0 -13
  523. package/src/worker.ts +0 -42
@@ -1,257 +0,0 @@
1
- import {
2
- encodeAddSectionParams,
3
- encodeUpdateSectionParams,
4
- encodeGroupParams,
5
- decodeKeyValueText,
6
- decodeRemoveFlag,
7
- decodeAddSectionResult,
8
- } from '../../wasm-codec/index.ts';
9
- import type { AddSectionInput } from '../../wasm-codec/index.ts';
10
- import type { HandlerContext } from '../typings/handler-context.interface.ts';
11
- import { IpcError } from '../classes/ipc-error.class.ts';
12
- import {
13
- getWasmExport,
14
- wasmAlloc,
15
- wasmWrite,
16
- wasmFree,
17
- readReturnSlot,
18
- callWasmSync,
19
- callWasmZeroArg,
20
- } from './wasm-bridge.function.ts';
21
- import { scanNearDuplicates } from './scan-near-duplicates.function.ts';
22
-
23
- /**
24
- * Handles the `addSection` IPC method.
25
- *
26
- * Encodes the section input, delegates to `worker_add_section`, and
27
- * runs a near-duplicate scan when the WASM result reports none.
28
- */
29
- export function handleAddSection(
30
- ctx: HandlerContext,
31
- params: Record<string, unknown>,
32
- ): unknown {
33
- const sectionType = (params['sectionType'] ?? 'text') as string;
34
- const semanticType =
35
- sectionType === 'text' ||
36
- sectionType === 'code' ||
37
- sectionType === 'image'
38
- ? sectionType
39
- : 'text';
40
- const typeName = sectionType !== semanticType ? sectionType : null;
41
- const tags = Array.isArray(params['tags'])
42
- ? (params['tags'] as string[])
43
- : [];
44
- const content = (params['content'] as string | undefined) ?? '';
45
- const input: AddSectionInput = {
46
- sectionType: semanticType,
47
- mimeType: params['mimeType'] as string | undefined,
48
- content,
49
- title: (params['title'] as string | null) ?? null,
50
- description: (params['description'] as string | null) ?? null,
51
- docid: (params['docid'] as string | null) ?? null,
52
- typeName,
53
- sourcePath:
54
- typeof params['sourcePath'] === 'string'
55
- ? params['sourcePath']
56
- : undefined,
57
- sourceMtime:
58
- typeof params['sourceMtime'] === 'string'
59
- ? params['sourceMtime']
60
- : undefined,
61
- tags,
62
- replace: params['replace'] === true,
63
- };
64
- const encoded = encodeAddSectionParams(input);
65
- const bytes = callWasmSync(
66
- ctx.modules,
67
- 'worker_add_section',
68
- encoded,
69
- );
70
- const decoded = decodeAddSectionResult(bytes);
71
- const nearDups =
72
- decoded.nearDuplicates.length > 0
73
- ? decoded.nearDuplicates
74
- : scanNearDuplicates(ctx.targetDir, content, decoded.kbid);
75
- return {
76
- kbid: decoded.kbid,
77
- indexed_terms_count: decoded.indexedTermsCount,
78
- elapsed_ms: decoded.elapsedMs,
79
- superseded: decoded.superseded,
80
- warnings: decoded.warnings,
81
- near_duplicates: nearDups,
82
- };
83
- }
84
-
85
- /**
86
- * Handles the `updateSection` IPC method.
87
- */
88
- export function handleUpdateSection(
89
- ctx: HandlerContext,
90
- params: Record<string, unknown>,
91
- ): unknown {
92
- const oldKbid = (params['kbid'] as string | undefined) ?? '';
93
- const updSectionType = (params['sectionType'] ?? 'text') as string;
94
- const updSemanticType =
95
- updSectionType === 'text' ||
96
- updSectionType === 'code' ||
97
- updSectionType === 'image'
98
- ? updSectionType
99
- : 'text';
100
- const updTypeName =
101
- updSectionType !== updSemanticType ? updSectionType : null;
102
- const input: AddSectionInput = {
103
- sectionType: updSemanticType,
104
- mimeType: params['mimeType'] as string | undefined,
105
- content: (params['content'] as string | undefined) ?? '',
106
- title: (params['title'] as string | null) ?? null,
107
- description: (params['description'] as string | null) ?? null,
108
- docid: (params['docid'] as string | null) ?? null,
109
- typeName: updTypeName,
110
- };
111
- const encoded = encodeUpdateSectionParams(oldKbid, input);
112
- const bytes = callWasmSync(
113
- ctx.modules,
114
- 'worker_update_section',
115
- encoded,
116
- );
117
- return { kbid: new TextDecoder().decode(bytes) };
118
- }
119
-
120
- /**
121
- * Handles the `removeSection` IPC method.
122
- */
123
- export function handleRemoveSection(
124
- ctx: HandlerContext,
125
- params: Record<string, unknown>,
126
- ): unknown {
127
- const kbid = (params['kbid'] as string | undefined) ?? '';
128
- const encoded = new TextEncoder().encode(kbid);
129
- const bytes = callWasmSync(
130
- ctx.modules,
131
- 'worker_remove_section',
132
- encoded,
133
- );
134
- return { removed: decodeRemoveFlag(bytes) };
135
- }
136
-
137
- /**
138
- * Handles the `groupSections` IPC method.
139
- */
140
- export function handleGroupSections(
141
- ctx: HandlerContext,
142
- params: Record<string, unknown>,
143
- ): unknown {
144
- const title = (params['title'] as string | undefined) ?? '';
145
- const kbids = (params['kbids'] ?? []) as string[];
146
- const docType = (params['docType'] as string | undefined) ?? '';
147
- const encoded = encodeGroupParams(title, kbids, docType);
148
- const bytes = callWasmSync(
149
- ctx.modules,
150
- 'worker_group_sections',
151
- encoded,
152
- );
153
- return { docid: new TextDecoder().decode(bytes) };
154
- }
155
-
156
- /**
157
- * Handles the `removeGrouping` IPC method.
158
- */
159
- export function handleRemoveGrouping(
160
- ctx: HandlerContext,
161
- params: Record<string, unknown>,
162
- ): unknown {
163
- const docid = (params['docid'] as string | undefined) ?? '';
164
- callWasmSync(
165
- ctx.modules,
166
- 'worker_remove_grouping',
167
- new TextEncoder().encode(docid),
168
- );
169
- return { ok: true };
170
- }
171
-
172
- /**
173
- * Handles the `initDirectory` IPC method.
174
- */
175
- export function handleInitDirectory(
176
- ctx: HandlerContext,
177
- params: Record<string, unknown>,
178
- ): unknown {
179
- const path = (params['path'] as string | undefined) ?? ctx.targetDir;
180
- callWasmSync(
181
- ctx.modules,
182
- 'worker_init_directory',
183
- new TextEncoder().encode(path),
184
- );
185
- return { ok: true };
186
- }
187
-
188
- /**
189
- * Handles the `invalidate` IPC method.
190
- */
191
- export function handleInvalidate(
192
- ctx: HandlerContext,
193
- params: Record<string, unknown>,
194
- ): unknown {
195
- const kbid = (params['kbid'] as string | undefined) ?? '';
196
- const encoded = new TextEncoder().encode(kbid);
197
- const fn = getWasmExport(ctx.modules, 'worker_invalidate');
198
- const ptr = wasmAlloc(ctx.modules, encoded.length);
199
- wasmWrite(ctx.modules, ptr, encoded);
200
- const rc = fn(ptr, encoded.length) as number;
201
- wasmFree(ctx.modules, ptr, encoded.length);
202
- if (rc === -1) {
203
- const errBytes = readReturnSlot(ctx.modules);
204
- throw new IpcError(
205
- -32000,
206
- new TextDecoder().decode(errBytes) || 'invalidate failed',
207
- );
208
- }
209
- return { ok: true };
210
- }
211
-
212
- /**
213
- * Handles the `invalidateAll` IPC method.
214
- */
215
- export function handleInvalidateAll(ctx: HandlerContext): unknown {
216
- callWasmZeroArg(ctx.modules, 'worker_invalidate_all');
217
- return { ok: true };
218
- }
219
-
220
- /**
221
- * Handles the `gc` IPC method.
222
- */
223
- export function handleGc(ctx: HandlerContext): unknown {
224
- const start = Date.now();
225
- callWasmZeroArg(ctx.modules, 'worker_garbage_collect');
226
- const bytes = readReturnSlot(ctx.modules);
227
- const kv = decodeKeyValueText(new TextDecoder().decode(bytes));
228
- return {
229
- removed_sections: Number(kv['removed'] ?? 0),
230
- removed_bytes: 0,
231
- elapsed_ms: Date.now() - start,
232
- stale_sources: Number(kv['stale_sources'] ?? 0),
233
- };
234
- }
235
-
236
- /**
237
- * Handles the `rebuildIndexes` IPC method.
238
- */
239
- export function handleRebuild(ctx: HandlerContext): unknown {
240
- const fn = getWasmExport(ctx.modules, 'worker_rebuild_indexes');
241
- const rc = fn() as number;
242
- if (rc === -1) {
243
- const errBytes = readReturnSlot(ctx.modules);
244
- const errMsg = new TextDecoder().decode(errBytes);
245
- throw new IpcError(-32000, errMsg || 'rebuild failed');
246
- }
247
- const resultBytes = readReturnSlot(ctx.modules);
248
- const reindexed =
249
- resultBytes.length >= 4
250
- ? new DataView(
251
- resultBytes.buffer,
252
- resultBytes.byteOffset,
253
- resultBytes.byteLength,
254
- ).getUint32(0, true)
255
- : 0;
256
- return { ok: true, sections_reindexed: reindexed };
257
- }
@@ -1,95 +0,0 @@
1
- import { readFileSync } from 'node:fs';
2
-
3
- import type { DaemonConfig } from '../typings/daemon-config.interface.ts';
4
- import type { WasmModules } from '../typings/wasm-modules.interface.ts';
5
- import { createHostImports } from './create-host-imports.function.ts';
6
- import type {
7
- AllocatorRef,
8
- MemoryRef,
9
- } from './create-host-imports.function.ts';
10
- import { isRemoteUrl, joinPath } from '../../dir-resolver/index.ts';
11
-
12
- export async function loadWasmModules(
13
- config: DaemonConfig,
14
- wasmDir: string,
15
- ): Promise<WasmModules> {
16
- const memoryRef: MemoryRef = { memory: null };
17
- const allocator: AllocatorRef = { alloc: null };
18
-
19
- const hostImports = createHostImports(
20
- config.contextPath,
21
- memoryRef,
22
- undefined,
23
- allocator,
24
- );
25
-
26
- const wkPath = joinPath(wasmDir, 'kb-worker', 'kbdb_worker_bg.wasm');
27
- const wkBytes = await readWasmFile(wkPath, 'kb-worker');
28
-
29
- let wkModule: WebAssembly.Module;
30
- try {
31
- wkModule = await WebAssembly.compile(wkBytes);
32
- } catch (err) {
33
- rethrow('compile', 'kb-worker', err);
34
- }
35
-
36
- let kbWorker: WebAssembly.Instance;
37
- try {
38
- kbWorker = await WebAssembly.instantiate(wkModule, {
39
- env: { ...hostImports },
40
- });
41
- } catch (err) {
42
- rethrow('instantiate', 'kb-worker', err);
43
- }
44
-
45
- const memory = kbWorker.exports['memory'] as WebAssembly.Memory;
46
- memoryRef.memory = memory;
47
-
48
- allocator.alloc = (size: number): number => {
49
- const fn_ = kbWorker.exports['kbdb_alloc'] as
50
- | ((s: number) => number)
51
- | undefined;
52
- if (typeof fn_ !== 'function') return 0;
53
- return fn_(size);
54
- };
55
-
56
- return { memory, kbWorker };
57
- }
58
-
59
- async function readWasmFile(
60
- path: string,
61
- label: string,
62
- ): Promise<ArrayBuffer> {
63
- try {
64
- if (isRemoteUrl(path)) {
65
- const response = await fetch(path);
66
- if (!response.ok) {
67
- throw new Error(
68
- `HTTP ${String(response.status)} ${response.statusText}`,
69
- );
70
- }
71
- return await response.arrayBuffer();
72
- }
73
- const buf = readFileSync(path);
74
- return buf.buffer.slice(
75
- buf.byteOffset,
76
- buf.byteOffset + buf.byteLength,
77
- );
78
- } catch (err) {
79
- rethrow('load', label, err, path);
80
- }
81
- }
82
-
83
- function rethrow(
84
- stage: string,
85
- label: string,
86
- err: unknown,
87
- path?: string,
88
- ): never {
89
- const detail = err instanceof Error ? err.message : String(err);
90
- const suffix = path ? ` (path: ${path})` : '';
91
- const message = `failed to ${stage} ${label} WASM: ${detail}${suffix}`;
92
- // eslint-disable-next-line no-console
93
- console.error(`kbdb-worker: ${message}`);
94
- throw new Error(message, { cause: err });
95
- }
@@ -1,51 +0,0 @@
1
- import type { AutoCaptureConfig } from '../../auto-capture/typings/auto-capture-config.interface.ts';
2
- import { AUTO_CAPTURE_DEFAULTS } from '../../auto-capture/constants/auto-capture-defaults.constant.ts';
3
-
4
- /**
5
- * Parses key-value pairs from an `[auto_capture]` TOML section
6
- * into an `AutoCaptureConfig`.
7
- *
8
- * Recognised keys: `enabled`, `trigger_after_tool_calls`,
9
- * `min_interval_ms`, `max_captures_per_session`, `dry_run`.
10
- * Unknown keys are silently ignored. Falls back to
11
- * `AUTO_CAPTURE_DEFAULTS` for any absent key.
12
- *
13
- * @param entries - key-value pairs from inside the
14
- * `[auto_capture]` section
15
- */
16
- export function parseAutoCaptureSection(
17
- entries: ReadonlyMap<string, string>,
18
- ): AutoCaptureConfig {
19
- const enabled = entries.has('enabled')
20
- ? entries.get('enabled') === 'true'
21
- : AUTO_CAPTURE_DEFAULTS.enabled;
22
-
23
- const dryRun = entries.has('dry_run')
24
- ? entries.get('dry_run') === 'true'
25
- : AUTO_CAPTURE_DEFAULTS.dryRun;
26
-
27
- const triggerRaw = entries.get('trigger_after_tool_calls');
28
- const triggerAfterToolCalls = triggerRaw
29
- ? parseInt(triggerRaw, 10) ||
30
- AUTO_CAPTURE_DEFAULTS.triggerAfterToolCalls
31
- : AUTO_CAPTURE_DEFAULTS.triggerAfterToolCalls;
32
-
33
- const intervalRaw = entries.get('min_interval_ms');
34
- const minIntervalMs = intervalRaw
35
- ? parseInt(intervalRaw, 10) || AUTO_CAPTURE_DEFAULTS.minIntervalMs
36
- : AUTO_CAPTURE_DEFAULTS.minIntervalMs;
37
-
38
- const capRaw = entries.get('max_captures_per_session');
39
- const maxCapturesPerSession = capRaw
40
- ? parseInt(capRaw, 10) ||
41
- AUTO_CAPTURE_DEFAULTS.maxCapturesPerSession
42
- : AUTO_CAPTURE_DEFAULTS.maxCapturesPerSession;
43
-
44
- return {
45
- enabled,
46
- triggerAfterToolCalls,
47
- minIntervalMs,
48
- maxCapturesPerSession,
49
- dryRun,
50
- };
51
- }
@@ -1,20 +0,0 @@
1
- /**
2
- * Parses the `version` field from a minimal TOML string.
3
- *
4
- * Supports only `version = <integer>` syntax. Comment lines are
5
- * skipped. Returns `null` when no `version` field is present.
6
- *
7
- * @param text - raw TOML text from `catalog.toml`
8
- * @returns the integer version, or `null` if absent
9
- */
10
- export function parseCatalogVersion(text: string): number | null {
11
- for (const line of text.split('\n')) {
12
- const trimmed = line.trim();
13
- if (trimmed.startsWith('#')) continue;
14
- const match = /^version\s*=\s*(\d+)/.exec(trimmed);
15
- if (match?.[1] !== undefined) {
16
- return parseInt(match[1], 10);
17
- }
18
- }
19
- return null;
20
- }
@@ -1,38 +0,0 @@
1
- import type { EmbeddingConfig } from '../../embedding/typings/embedding-config.interface.ts';
2
-
3
- /**
4
- * Parses key-value pairs from a `[embedding]` TOML section into an
5
- * `EmbeddingConfig`.
6
- *
7
- * Recognises: `provider`, `model`, `endpoint`, `dimensions`.
8
- * Unknown keys are silently ignored. Returns `undefined` when the
9
- * `provider` key is absent from the supplied entries.
10
- *
11
- * @param entries - key-value pairs from inside the `[embedding]`
12
- * section
13
- */
14
- export function parseEmbeddingSection(
15
- entries: ReadonlyMap<string, string>,
16
- ): EmbeddingConfig | undefined {
17
- const provider = entries.get('provider') as
18
- | EmbeddingConfig['provider']
19
- | undefined;
20
-
21
- if (!provider) {
22
- return undefined;
23
- }
24
-
25
- const model = entries.get('model');
26
- const endpoint = entries.get('endpoint');
27
- const dimensionsRaw = entries.get('dimensions');
28
- const dimensions = dimensionsRaw
29
- ? parseInt(dimensionsRaw, 10) || undefined
30
- : undefined;
31
-
32
- return {
33
- provider,
34
- ...(model !== undefined ? { model } : {}),
35
- ...(endpoint !== undefined ? { endpoint } : {}),
36
- ...(dimensions !== undefined ? { dimensions } : {}),
37
- };
38
- }
@@ -1,104 +0,0 @@
1
- import type { DaemonConfig } from '../typings/daemon-config.interface.ts';
2
- import {
3
- DEFAULT_ITEM_LIMIT,
4
- DEFAULT_INDEX_LIMIT,
5
- DEFAULT_TIMEOUT_MS,
6
- DEFAULT_ITEM_TTL_MS,
7
- } from '../constants/daemon-defaults.constant.ts';
8
- import { parseEmbeddingSection } from './parse-embedding-section.function.ts';
9
- import { parseAutoCaptureSection } from './parse-auto-capture-section.function.ts';
10
-
11
- interface RootAccum {
12
- itemLimit: number;
13
- indexLimit: number;
14
- timeoutMs: number;
15
- itemTtlMs: number;
16
- }
17
-
18
- function applyRootKey(
19
- acc: RootAccum,
20
- key: string,
21
- value: string,
22
- ): void {
23
- switch (key) {
24
- case 'item_limit':
25
- acc.itemLimit = parseInt(value, 10) || DEFAULT_ITEM_LIMIT;
26
- break;
27
- case 'index_limit':
28
- acc.indexLimit = parseInt(value, 10) || DEFAULT_INDEX_LIMIT;
29
- break;
30
- case 'timeout_ms':
31
- acc.timeoutMs = parseInt(value, 10) || DEFAULT_TIMEOUT_MS;
32
- break;
33
- case 'item_ttl_ms':
34
- acc.itemTtlMs = parseInt(value, 10) || DEFAULT_ITEM_TTL_MS;
35
- break;
36
- default:
37
- break;
38
- }
39
- }
40
-
41
- /**
42
- * Parses a `worker.toml` file body into a partial `DaemonConfig`.
43
- *
44
- * Handles `[embedding]` sub-sections and root key-value pairs.
45
- * Unknown keys are silently ignored.
46
- *
47
- * @param text - raw content of `worker.toml`
48
- * @param contextPath - daemon context directory path
49
- */
50
- export function parseWorkerToml(
51
- text: string,
52
- contextPath: string,
53
- ): DaemonConfig {
54
- let section = '';
55
- const embeddingEntries = new Map<string, string>();
56
- const autoCaptureEntries = new Map<string, string>();
57
- const acc: RootAccum = {
58
- itemLimit: DEFAULT_ITEM_LIMIT,
59
- indexLimit: DEFAULT_INDEX_LIMIT,
60
- timeoutMs: DEFAULT_TIMEOUT_MS,
61
- itemTtlMs: DEFAULT_ITEM_TTL_MS,
62
- };
63
-
64
- for (const line of text.split('\n')) {
65
- const trimmed = line.trim();
66
- if (trimmed === '[embedding]') {
67
- section = 'embedding';
68
- continue;
69
- }
70
- if (trimmed === '[auto_capture]') {
71
- section = 'auto_capture';
72
- continue;
73
- }
74
- if (trimmed.startsWith('[')) {
75
- section = '';
76
- continue;
77
- }
78
- if (trimmed.startsWith('#') || !trimmed.includes('=')) continue;
79
- const eqIdx = trimmed.indexOf('=');
80
- const key = trimmed.slice(0, eqIdx).trim();
81
- const value = trimmed.slice(eqIdx + 1).trim();
82
- if (section === 'embedding') {
83
- embeddingEntries.set(key, value);
84
- continue;
85
- }
86
- if (section === 'auto_capture') {
87
- autoCaptureEntries.set(key, value);
88
- continue;
89
- }
90
- applyRootKey(acc, key, value);
91
- }
92
-
93
- const embedding = parseEmbeddingSection(embeddingEntries);
94
- const autoCapture =
95
- autoCaptureEntries.size > 0
96
- ? parseAutoCaptureSection(autoCaptureEntries)
97
- : undefined;
98
- return {
99
- contextPath,
100
- ...acc,
101
- ...(embedding !== undefined ? { embedding } : {}),
102
- ...(autoCapture !== undefined ? { autoCapture } : {}),
103
- };
104
- }
@@ -1,83 +0,0 @@
1
- import { readFileSync } from 'node:fs';
2
- import { join } from 'node:path';
3
- import type { DaemonConfig } from '../typings/daemon-config.interface.ts';
4
- import {
5
- DEFAULT_ITEM_LIMIT,
6
- DEFAULT_INDEX_LIMIT,
7
- DEFAULT_TIMEOUT_MS,
8
- DEFAULT_ITEM_TTL_MS,
9
- WORKER_TOML_FILENAME,
10
- } from '../constants/daemon-defaults.constant.ts';
11
-
12
- /**
13
- * Reads the `worker.toml` configuration file from the given
14
- * context directory and returns a `DaemonConfig`.
15
- *
16
- * Falls back to all-default values when the file is absent or
17
- * unreadable.
18
- *
19
- * @param contextPath - absolute path to the `.kbdb` context
20
- * directory
21
- */
22
- export function readConfig(contextPath: string): DaemonConfig {
23
- const configPath = join(contextPath, WORKER_TOML_FILENAME);
24
- try {
25
- const text = readFileSync(configPath, 'utf-8');
26
- return parseWorkerToml(text, contextPath);
27
- } catch {
28
- return {
29
- contextPath,
30
- itemLimit: DEFAULT_ITEM_LIMIT,
31
- indexLimit: DEFAULT_INDEX_LIMIT,
32
- timeoutMs: DEFAULT_TIMEOUT_MS,
33
- itemTtlMs: DEFAULT_ITEM_TTL_MS,
34
- };
35
- }
36
- }
37
-
38
- function parseWorkerToml(
39
- text: string,
40
- contextPath: string,
41
- ): DaemonConfig {
42
- const config: DaemonConfig = {
43
- contextPath,
44
- itemLimit: DEFAULT_ITEM_LIMIT,
45
- indexLimit: DEFAULT_INDEX_LIMIT,
46
- timeoutMs: DEFAULT_TIMEOUT_MS,
47
- itemTtlMs: DEFAULT_ITEM_TTL_MS,
48
- };
49
-
50
- const result = { ...config };
51
-
52
- for (const line of text.split('\n')) {
53
- const trimmed = line.trim();
54
- if (trimmed.startsWith('#') || !trimmed.includes('=')) {
55
- continue;
56
- }
57
- const eqIdx = trimmed.indexOf('=');
58
- const key = trimmed.slice(0, eqIdx).trim();
59
- const value = trimmed.slice(eqIdx + 1).trim();
60
- switch (key) {
61
- case 'item_limit':
62
- result.itemLimit =
63
- parseInt(value, 10) || DEFAULT_ITEM_LIMIT;
64
- break;
65
- case 'index_limit':
66
- result.indexLimit =
67
- parseInt(value, 10) || DEFAULT_INDEX_LIMIT;
68
- break;
69
- case 'timeout_ms':
70
- result.timeoutMs =
71
- parseInt(value, 10) || DEFAULT_TIMEOUT_MS;
72
- break;
73
- case 'item_ttl_ms':
74
- result.itemTtlMs =
75
- parseInt(value, 10) || DEFAULT_ITEM_TTL_MS;
76
- break;
77
- default:
78
- break;
79
- }
80
- }
81
-
82
- return result;
83
- }