@dikolab/kbdb 0.2.2 → 0.3.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 (520) hide show
  1. package/README.md +47 -31
  2. package/dist/bench/constants/corpus-defaults.constant.d.ts +3 -0
  3. package/dist/bench/functions/format-report.function.d.ts +11 -0
  4. package/dist/bench/functions/generate-corpus.function.d.ts +12 -0
  5. package/dist/bench/functions/measure-operation.function.d.ts +14 -0
  6. package/dist/bench/functions/seeded-rng.function.d.ts +11 -0
  7. package/dist/bench/functions/zipf-word.function.d.ts +13 -0
  8. package/dist/bench/index.d.ts +10 -0
  9. package/dist/bench/typings/bench-result.interface.d.ts +11 -0
  10. package/dist/bench/typings/bench-suite-result.interface.d.ts +10 -0
  11. package/dist/bench/typings/corpus-config.interface.d.ts +11 -0
  12. package/dist/bench/typings/corpus-section.interface.d.ts +9 -0
  13. package/dist/cli.cjs +523 -80
  14. package/dist/cli.cjs.map +4 -4
  15. package/dist/cli.mjs +515 -72
  16. package/dist/cli.mjs.map +4 -4
  17. package/dist/kbdb-worker.cjs +395 -60
  18. package/dist/kbdb-worker.cjs.map +4 -4
  19. package/dist/mod.cjs +17 -0
  20. package/dist/mod.cjs.map +2 -2
  21. package/dist/mod.mjs +17 -0
  22. package/dist/mod.mjs.map +2 -2
  23. package/dist/src/shared/auto-capture/classes/auto-capture-controller.class.d.ts +33 -0
  24. package/dist/src/shared/auto-capture/constants/auto-capture-defaults.constant.d.ts +8 -0
  25. package/dist/src/shared/auto-capture/functions/build-capture-prompt.function.d.ts +11 -0
  26. package/dist/src/shared/auto-capture/functions/evaluate-trigger.function.d.ts +12 -0
  27. package/dist/src/shared/auto-capture/index.d.ts +7 -0
  28. package/dist/src/shared/auto-capture/typings/auto-capture-config.interface.d.ts +13 -0
  29. package/dist/src/shared/auto-capture/typings/auto-capture-state.interface.d.ts +13 -0
  30. package/dist/src/shared/auto-capture/typings/auto-capture-trigger.interface.d.ts +7 -0
  31. package/dist/src/shared/cli/constants/global-help.constant.d.ts +8 -0
  32. package/dist/src/shared/cli/constants/leaf-help.constant.d.ts +7 -0
  33. package/dist/src/shared/cli/constants/memory-protocol-body.constant.d.ts +7 -0
  34. package/dist/src/shared/cli/constants/query-guidance-body.constant.d.ts +7 -0
  35. package/dist/src/shared/cli/constants/subcommand-help.constant.d.ts +8 -0
  36. package/dist/src/shared/cli/functions/collect-files.function.d.ts +13 -0
  37. package/dist/src/shared/cli/functions/compute-section-kbid.function.d.ts +15 -0
  38. package/dist/src/shared/cli/functions/dispatch-command.function.d.ts +3 -1
  39. package/dist/src/shared/cli/functions/format-mcp-output.function.d.ts +9 -0
  40. package/dist/src/shared/cli/functions/format-text-output.function.d.ts +9 -0
  41. package/dist/src/shared/cli/functions/generate-group-help.function.d.ts +11 -0
  42. package/dist/src/shared/cli/functions/handle-data-command.function.d.ts +16 -0
  43. package/dist/src/shared/cli/functions/handle-mcp.function.d.ts +15 -0
  44. package/dist/src/shared/cli/functions/handle-migrate.function.d.ts +15 -0
  45. package/dist/src/shared/cli/functions/hydrate-search-previews.function.d.ts +14 -0
  46. package/dist/src/shared/cli/functions/install-default-skills.function.d.ts +12 -0
  47. package/dist/src/shared/cli/functions/resolve-skill-names.function.d.ts +16 -0
  48. package/dist/src/shared/cli/functions/run-check.function.d.ts +47 -5
  49. package/dist/src/shared/cli/functions/run-export.function.d.ts +34 -0
  50. package/dist/src/shared/cli/functions/run-gc.function.d.ts +6 -0
  51. package/dist/src/shared/cli/functions/run-learn.function.d.ts +35 -6
  52. package/dist/src/shared/cli/functions/run-recall.function.d.ts +45 -0
  53. package/dist/src/shared/cli/functions/run-search.function.d.ts +53 -15
  54. package/dist/src/shared/cli/functions/version-gate.function.d.ts +15 -0
  55. package/dist/src/shared/cli/functions/wrap-command.function.d.ts +15 -0
  56. package/dist/src/shared/cli/index.d.ts +4 -0
  57. package/dist/src/shared/cli/typings/agent-create-client.interface.d.ts +42 -0
  58. package/dist/src/shared/cli/typings/agent-get-client.interface.d.ts +36 -0
  59. package/dist/src/shared/cli/typings/check-client.interface.d.ts +58 -0
  60. package/dist/src/shared/cli/typings/cli-deps.interface.d.ts +48 -0
  61. package/dist/src/shared/cli/typings/cli-options.interface.d.ts +15 -0
  62. package/dist/src/shared/cli/typings/disconnectable-client.interface.d.ts +26 -0
  63. package/dist/src/shared/cli/typings/dispatch-client.type.d.ts +27 -0
  64. package/dist/src/shared/cli/typings/learn-client.interface.d.ts +52 -0
  65. package/dist/src/shared/cli/typings/learn-io.interface.d.ts +5 -0
  66. package/dist/src/shared/cli/typings/learn-result.model.d.ts +19 -0
  67. package/dist/src/shared/cli/typings/search-client.interface.d.ts +71 -0
  68. package/dist/src/shared/cli/typings/search-display.model.d.ts +18 -0
  69. package/dist/src/shared/embedding/classes/null-embedding-provider.class.d.ts +20 -0
  70. package/dist/src/shared/embedding/constants/near-duplicate-thresholds.constant.d.ts +15 -0
  71. package/dist/src/shared/embedding/functions/build-vector-index.function.d.ts +14 -0
  72. package/dist/src/shared/embedding/functions/cosine-similarity.function.d.ts +10 -0
  73. package/dist/src/shared/embedding/functions/detect-near-duplicates.function.d.ts +18 -0
  74. package/dist/src/shared/embedding/functions/jaccard-coefficient.function.d.ts +9 -0
  75. package/dist/src/shared/embedding/functions/read-vector-index-meta.function.d.ts +10 -0
  76. package/dist/src/shared/embedding/functions/rrf-fuse.function.d.ts +14 -0
  77. package/dist/src/shared/embedding/functions/search-vectors.function.d.ts +14 -0
  78. package/dist/src/shared/embedding/index.d.ts +16 -0
  79. package/dist/src/shared/embedding/typings/embedding-config.interface.d.ts +20 -0
  80. package/dist/src/shared/embedding/typings/embedding-provider.interface.d.ts +23 -0
  81. package/dist/src/shared/embedding/typings/near-duplicate-candidate.model.d.ts +23 -0
  82. package/dist/src/shared/embedding/typings/near-duplicate-result.model.d.ts +24 -0
  83. package/dist/src/shared/embedding/typings/vector-index-entry.model.d.ts +12 -0
  84. package/dist/src/shared/embedding/typings/vector-index-meta.model.d.ts +11 -0
  85. package/dist/src/shared/embedding/typings/vector-search-result.model.d.ts +7 -0
  86. package/dist/src/shared/mcp/classes/mcp-server.class.d.ts +8 -0
  87. package/dist/src/shared/mcp/constants/tool-agent-create.constant.d.ts +3 -0
  88. package/dist/src/shared/mcp/constants/tool-agent-delete.constant.d.ts +3 -0
  89. package/dist/src/shared/mcp/constants/tool-agent-get.constant.d.ts +3 -0
  90. package/dist/src/shared/mcp/constants/tool-agent-list.constant.d.ts +3 -0
  91. package/dist/src/shared/mcp/constants/tool-auto-capture-review.constant.d.ts +8 -0
  92. package/dist/src/shared/mcp/constants/tool-check.constant.d.ts +3 -0
  93. package/dist/src/shared/mcp/constants/tool-content.constant.d.ts +3 -0
  94. package/dist/src/shared/mcp/constants/tool-export.constant.d.ts +3 -0
  95. package/dist/src/shared/mcp/constants/tool-gc.constant.d.ts +3 -0
  96. package/dist/src/shared/mcp/constants/tool-learn.constant.d.ts +3 -0
  97. package/dist/src/shared/mcp/constants/tool-rebuild.constant.d.ts +3 -0
  98. package/dist/src/shared/mcp/constants/tool-recall.constant.d.ts +3 -0
  99. package/dist/src/shared/mcp/constants/tool-retrieve.constant.d.ts +3 -0
  100. package/dist/src/shared/mcp/constants/tool-search.constant.d.ts +3 -0
  101. package/dist/src/shared/mcp/constants/tool-skill-delete.constant.d.ts +3 -0
  102. package/dist/src/shared/mcp/constants/tool-skill-get.constant.d.ts +3 -0
  103. package/dist/src/shared/mcp/constants/tool-skill-learn.constant.d.ts +3 -0
  104. package/dist/src/shared/mcp/constants/tool-skill-list.constant.d.ts +3 -0
  105. package/dist/src/shared/mcp/constants/tool-status.constant.d.ts +3 -0
  106. package/dist/src/shared/mcp/constants/tool-unlearn.constant.d.ts +3 -0
  107. package/dist/src/shared/mcp/functions/as-boolean-or-undefined.function.d.ts +7 -0
  108. package/dist/src/shared/mcp/functions/as-string-array-or-undefined.function.d.ts +7 -0
  109. package/dist/src/shared/mcp/functions/as-string-array.function.d.ts +7 -0
  110. package/dist/src/shared/mcp/functions/as-string.function.d.ts +8 -0
  111. package/dist/src/shared/mcp/functions/build-skills-text.function.d.ts +18 -0
  112. package/dist/src/shared/mcp/functions/handle-agent-prompt.function.d.ts +14 -0
  113. package/dist/src/shared/mcp/functions/handle-mcp-request.function.d.ts +14 -0
  114. package/dist/src/shared/mcp/functions/handle-prompt-get.function.d.ts +4 -3
  115. package/dist/src/shared/mcp/functions/handle-skill-prompt.function.d.ts +16 -0
  116. package/dist/src/shared/mcp/functions/handle-tool-auto-capture-review.function.d.ts +12 -0
  117. package/dist/src/shared/mcp/functions/handle-tool-check.function.d.ts +11 -0
  118. package/dist/src/shared/mcp/functions/handle-tool-content.function.d.ts +12 -0
  119. package/dist/src/shared/mcp/functions/handle-tool-export.function.d.ts +12 -0
  120. package/dist/src/shared/mcp/functions/handle-tool-gc.function.d.ts +11 -0
  121. package/dist/src/shared/mcp/functions/handle-tool-learn.function.d.ts +12 -0
  122. package/dist/src/shared/mcp/functions/handle-tool-rebuild.function.d.ts +11 -0
  123. package/dist/src/shared/mcp/functions/handle-tool-retrieve.function.d.ts +12 -0
  124. package/dist/src/shared/mcp/functions/handle-tool-search.function.d.ts +13 -0
  125. package/dist/src/shared/mcp/functions/handle-tool-skill-delete.function.d.ts +12 -0
  126. package/dist/src/shared/mcp/functions/handle-tool-skill-get.function.d.ts +13 -0
  127. package/dist/src/shared/mcp/functions/handle-tool-skill-learn.function.d.ts +13 -0
  128. package/dist/src/shared/mcp/functions/handle-tool-skill-list.function.d.ts +11 -0
  129. package/dist/src/shared/mcp/functions/handle-tool-status.function.d.ts +11 -0
  130. package/dist/src/shared/mcp/functions/handle-tool-unlearn.function.d.ts +12 -0
  131. package/dist/src/shared/mcp/functions/parse-agent-meta.function.d.ts +14 -0
  132. package/dist/src/shared/mcp/functions/parse-skill-arguments.function.d.ts +11 -0
  133. package/dist/src/shared/mcp/functions/read-agent-meta.function.d.ts +17 -0
  134. package/dist/src/shared/mcp/functions/resolve-skill-refs.function.d.ts +23 -0
  135. package/dist/src/shared/mcp/functions/run-startup-health-check.function.d.ts +14 -0
  136. package/dist/src/shared/mcp/typings/mcp-capabilities.interface.d.ts +16 -0
  137. package/dist/src/shared/mcp/typings/mcp-client.interface.d.ts +45 -0
  138. package/dist/src/shared/mcp/typings/mcp-completion.interface.d.ts +43 -0
  139. package/dist/src/shared/mcp/typings/mcp-content-result.model.d.ts +9 -0
  140. package/dist/src/shared/mcp/typings/mcp-export-result.model.d.ts +11 -0
  141. package/dist/src/shared/mcp/typings/mcp-gc-result.model.d.ts +15 -0
  142. package/dist/src/shared/mcp/typings/mcp-integrity-check-result.model.d.ts +16 -0
  143. package/dist/src/shared/mcp/typings/mcp-integrity-error.model.d.ts +9 -0
  144. package/dist/src/shared/mcp/typings/mcp-notification.interface.d.ts +9 -0
  145. package/dist/src/shared/mcp/typings/mcp-rebuild-result.model.d.ts +9 -0
  146. package/dist/src/shared/mcp/typings/mcp-request.interface.d.ts +11 -0
  147. package/dist/src/shared/mcp/typings/mcp-resource-result.interface.d.ts +12 -0
  148. package/dist/src/shared/mcp/typings/mcp-resource-template.interface.d.ts +11 -0
  149. package/dist/src/shared/mcp/typings/mcp-response.interface.d.ts +18 -0
  150. package/dist/src/shared/mcp/typings/mcp-server-info.interface.d.ts +7 -0
  151. package/dist/src/shared/mcp/typings/mcp-server-state.interface.d.ts +16 -0
  152. package/dist/src/shared/mcp/typings/mcp-tool-annotations.interface.d.ts +32 -0
  153. package/dist/src/shared/mcp/typings/mcp-tool-definition.interface.d.ts +15 -0
  154. package/dist/src/shared/mcp/typings/mcp-tool-result.interface.d.ts +19 -0
  155. package/dist/src/shared/mcp/typings/mcp-worker-client.interface.d.ts +220 -0
  156. package/dist/src/shared/mcp/typings/tool-call-result.model.d.ts +17 -0
  157. package/dist/src/shared/sync/functions/build-import-report.function.d.ts +18 -0
  158. package/dist/src/shared/sync/functions/parse-export-entry.function.d.ts +11 -0
  159. package/dist/src/shared/sync/functions/resolve-conflict.function.d.ts +13 -0
  160. package/dist/src/shared/sync/functions/serialize-export-entry.function.d.ts +8 -0
  161. package/dist/src/shared/sync/index.d.ts +9 -0
  162. package/dist/src/shared/sync/typings/conflict-resolution.type.d.ts +8 -0
  163. package/dist/src/shared/sync/typings/export-entry.interface.d.ts +13 -0
  164. package/dist/src/shared/sync/typings/export-options.interface.d.ts +9 -0
  165. package/dist/src/shared/sync/typings/import-options.interface.d.ts +7 -0
  166. package/dist/src/shared/sync/typings/import-report.interface.d.ts +15 -0
  167. package/dist/src/shared/wasm-codec/functions/decode-add-section-result.function.d.ts +48 -0
  168. package/dist/src/shared/wasm-codec/functions/decode-one-recall-result.function.d.ts +14 -0
  169. package/dist/src/shared/wasm-codec/functions/decode-option-string.function.d.ts +12 -0
  170. package/dist/src/shared/wasm-codec/functions/decode-recall-document.function.d.ts +14 -0
  171. package/dist/src/shared/wasm-codec/functions/decode-recall-reference.function.d.ts +14 -0
  172. package/dist/src/shared/wasm-codec/functions/decode-recall-sibling.function.d.ts +13 -0
  173. package/dist/src/shared/wasm-codec/functions/decode-scored-results.function.d.ts +58 -0
  174. package/dist/src/shared/wasm-codec/functions/decode-section-match.function.d.ts +15 -0
  175. package/dist/src/shared/wasm-codec/functions/decode-section-record-trailing.function.d.ts +14 -0
  176. package/dist/src/shared/wasm-codec/functions/decode-section-record.function.d.ts +14 -0
  177. package/dist/src/shared/wasm-codec/functions/decode-section-records.function.d.ts +33 -0
  178. package/dist/src/shared/wasm-codec/functions/decode-section-type.function.d.ts +13 -0
  179. package/dist/src/shared/wasm-codec/functions/decode-wasm-list.function.d.ts +17 -0
  180. package/dist/src/shared/wasm-codec/functions/encode-add-section-params.function.d.ts +52 -0
  181. package/dist/src/shared/wasm-codec/index.d.ts +2 -0
  182. package/dist/src/shared/wasm-codec/typings/add-section-input.model.d.ts +45 -0
  183. package/dist/src/shared/wasm-codec/typings/add-section-result.model.d.ts +27 -0
  184. package/dist/src/shared/wasm-codec/typings/document-manifest.model.d.ts +19 -0
  185. package/dist/src/shared/wasm-codec/typings/document-section.model.d.ts +12 -0
  186. package/dist/src/shared/wasm-codec/typings/item-decoder.type.d.ts +6 -0
  187. package/dist/src/shared/wasm-codec/typings/near-duplicate.model.d.ts +16 -0
  188. package/dist/src/shared/wasm-codec/typings/paged-search-result.model.d.ts +21 -0
  189. package/dist/src/shared/wasm-codec/typings/section-match.model.d.ts +31 -0
  190. package/dist/src/shared/wasm-codec/typings/section-record-trailing.model.d.ts +38 -0
  191. package/dist/src/shared/wasm-codec/typings/section-record.model.d.ts +66 -0
  192. package/dist/src/shared/wasm-codec/typings/section-type-result.model.d.ts +12 -0
  193. package/dist/src/shared/worker-client/classes/worker-client.class.d.ts +16 -0
  194. package/dist/src/shared/worker-client/functions/handle-ipc-data.function.d.ts +16 -0
  195. package/dist/src/shared/worker-client/functions/send-ipc-request.function.d.ts +19 -0
  196. package/dist/src/shared/worker-client/index.d.ts +1 -1
  197. package/dist/src/shared/worker-client/typings/add-section-result.model.d.ts +31 -15
  198. package/dist/src/shared/worker-client/typings/export-result.model.d.ts +14 -0
  199. package/dist/src/shared/worker-client/typings/gc-result.model.d.ts +6 -0
  200. package/dist/src/shared/worker-client/typings/json-rpc-response.interface.d.ts +16 -0
  201. package/dist/src/shared/worker-client/typings/pending-call.interface.d.ts +7 -0
  202. package/dist/src/shared/worker-client/typings/recall-document.model.d.ts +16 -0
  203. package/dist/src/shared/worker-client/typings/recall-params.model.d.ts +15 -0
  204. package/dist/src/shared/worker-client/typings/recall-reference.model.d.ts +32 -0
  205. package/dist/src/shared/worker-client/typings/recall-sibling.model.d.ts +11 -0
  206. package/dist/src/shared/worker-client/typings/recall-single-result.model.d.ts +40 -0
  207. package/dist/src/shared/worker-client/typings/search-result.model.d.ts +12 -0
  208. package/dist/src/shared/worker-client/typings/section.model.d.ts +16 -0
  209. package/dist/src/shared/worker-daemon/classes/ipc-error.class.d.ts +17 -0
  210. package/dist/src/shared/worker-daemon/classes/worker-daemon.class.d.ts +35 -0
  211. package/dist/src/shared/worker-daemon/constants/wasm-method-map.constant.d.ts +16 -0
  212. package/dist/src/shared/worker-daemon/functions/build-ipc-error-response.function.d.ts +9 -0
  213. package/dist/src/shared/worker-daemon/functions/check-catalog-version.function.d.ts +9 -0
  214. package/dist/src/shared/worker-daemon/functions/check-preconditions.function.d.ts +10 -0
  215. package/dist/src/shared/worker-daemon/functions/detect-stale-pid.function.d.ts +15 -0
  216. package/dist/src/shared/worker-daemon/functions/dispatch-request.function.d.ts +35 -0
  217. package/dist/src/shared/worker-daemon/functions/handle-check-version.function.d.ts +23 -0
  218. package/dist/src/shared/worker-daemon/functions/handle-config-method.function.d.ts +11 -0
  219. package/dist/src/shared/worker-daemon/functions/handle-read-ops.function.d.ts +52 -0
  220. package/dist/src/shared/worker-daemon/functions/handle-write-ops.function.d.ts +44 -0
  221. package/dist/src/shared/worker-daemon/functions/parse-auto-capture-section.function.d.ts +14 -0
  222. package/dist/src/shared/worker-daemon/functions/parse-catalog-version.function.d.ts +10 -0
  223. package/dist/src/shared/worker-daemon/functions/parse-embedding-section.function.d.ts +13 -0
  224. package/dist/src/shared/worker-daemon/functions/parse-worker-toml.function.d.ts +11 -0
  225. package/dist/src/shared/worker-daemon/functions/run-startup-integrity-check.function.d.ts +18 -0
  226. package/dist/src/shared/worker-daemon/functions/scan-near-duplicates.function.d.ts +21 -0
  227. package/dist/src/shared/worker-daemon/functions/wasm-bridge.function.d.ts +51 -0
  228. package/dist/src/shared/worker-daemon/functions/wasm-memory-helpers.function.d.ts +22 -0
  229. package/dist/src/shared/worker-daemon/functions/write-lock.function.d.ts +32 -0
  230. package/dist/src/shared/worker-daemon/typings/allocator-ref.interface.d.ts +16 -0
  231. package/dist/src/shared/worker-daemon/typings/daemon-config.interface.d.ts +6 -0
  232. package/dist/src/shared/worker-daemon/typings/fs-adapter.interface.d.ts +22 -0
  233. package/dist/src/shared/worker-daemon/typings/handler-context.interface.d.ts +18 -0
  234. package/dist/src/shared/worker-daemon/typings/memory-ref.interface.d.ts +13 -0
  235. package/dist/src/shared/worker-daemon/typings/wasm-fn.type.d.ts +2 -0
  236. package/dist/src/shared/worker-daemon/typings/write-lock.interface.d.ts +15 -0
  237. package/dist/wasm/fs-database/kbdb_fs_database.d.ts +22 -1
  238. package/dist/wasm/fs-database/kbdb_fs_database.js +28 -1
  239. package/dist/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  240. package/dist/wasm/fs-database/kbdb_fs_database_bg.wasm.d.ts +1 -0
  241. package/dist/wasm/kb-worker/kbdb_worker.d.ts +48 -1
  242. package/dist/wasm/kb-worker/kbdb_worker.js +60 -1
  243. package/dist/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  244. package/dist/wasm/kb-worker/kbdb_worker_bg.wasm.d.ts +2 -0
  245. package/dist/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
  246. package/dist/worker.mjs +396 -60
  247. package/dist/worker.mjs.map +4 -4
  248. package/docs/details/cli.md +102 -15
  249. package/docs/details/library-api.md +55 -6
  250. package/docs/details/mcp-server.md +10 -4
  251. package/docs/details/search-and-ranking.md +63 -5
  252. package/docs/details/storage.md +2 -0
  253. package/docs/goals/auto-capture.md +378 -0
  254. package/docs/goals/benchmarking.md +296 -0
  255. package/docs/goals/cli.md +255 -14
  256. package/docs/goals/concurrency.md +259 -0
  257. package/docs/goals/database.md +244 -17
  258. package/docs/goals/document.md +1 -1
  259. package/docs/goals/hybrid-search.md +436 -0
  260. package/docs/goals/mcp.md +83 -14
  261. package/docs/goals/query-parser.md +98 -4
  262. package/docs/goals/query-result.md +177 -10
  263. package/docs/goals/semantic-dedup.md +229 -0
  264. package/docs/goals/skills.md +72 -0
  265. package/docs/goals/sync.md +217 -0
  266. package/docs/goals/worker-daemon.md +54 -7
  267. package/docs/modules/rust/fs-database/functions/integrity.md +11 -0
  268. package/docs/modules/rust/fs-database/functions/section.md +23 -6
  269. package/docs/modules/rust/fs-database/indexes/vectors.md +110 -0
  270. package/docs/modules/rust/fs-database/module.md +1 -0
  271. package/docs/modules/rust/fs-database/types/section.md +27 -1
  272. package/docs/modules/rust/overview.md +2 -1
  273. package/docs/modules/rust/query-parser/functions/module.md +2 -2
  274. package/docs/modules/rust/query-parser/functions/pipeline.md +44 -6
  275. package/docs/modules/rust/query-parser/module.md +5 -4
  276. package/docs/modules/rust/query-parser/types/keyphrase.md +11 -0
  277. package/docs/modules/rust/query-parser/types/module.md +3 -3
  278. package/docs/modules/typescript/shared/auto-capture/module.md +73 -0
  279. package/docs/modules/typescript/shared/cli/functions.md +68 -3
  280. package/docs/modules/typescript/shared/embedding/functions.md +94 -0
  281. package/docs/modules/typescript/shared/embedding/module.md +71 -0
  282. package/docs/modules/typescript/shared/embedding/typings.md +122 -0
  283. package/docs/overview.md +148 -166
  284. package/docs/release-notes/0.2.0.md +3 -3
  285. package/docs/release-notes/0.3.0.md +89 -0
  286. package/docs/release-notes/0.3.1.md +111 -0
  287. package/docs/release-notes/README.md +2 -0
  288. package/package.json +1 -1
  289. package/src/shared/auto-capture/classes/auto-capture-controller.class.ts +62 -0
  290. package/src/shared/auto-capture/constants/auto-capture-defaults.constant.ts +15 -0
  291. package/src/shared/auto-capture/functions/build-capture-prompt.function.ts +27 -0
  292. package/src/shared/auto-capture/functions/evaluate-trigger.function.ts +50 -0
  293. package/src/shared/auto-capture/index.ts +7 -0
  294. package/src/shared/auto-capture/typings/auto-capture-config.interface.ts +13 -0
  295. package/src/shared/auto-capture/typings/auto-capture-state.interface.ts +13 -0
  296. package/src/shared/auto-capture/typings/auto-capture-trigger.interface.ts +7 -0
  297. package/src/shared/cli/constants/global-help.constant.ts +73 -0
  298. package/src/shared/cli/constants/leaf-help.constant.ts +219 -0
  299. package/src/shared/cli/constants/memory-protocol-body.constant.ts +39 -0
  300. package/src/shared/cli/constants/query-guidance-body.constant.ts +37 -0
  301. package/src/shared/cli/constants/subcommand-help.constant.ts +195 -0
  302. package/src/shared/cli/functions/collect-files.function.ts +55 -0
  303. package/src/shared/cli/functions/compute-section-kbid.function.ts +49 -0
  304. package/src/shared/cli/functions/dispatch-command.function.ts +53 -1
  305. package/src/shared/cli/functions/format-mcp-output.function.ts +41 -0
  306. package/src/shared/cli/functions/format-output.function.ts +36 -12
  307. package/src/shared/cli/functions/format-text-output.function.ts +42 -0
  308. package/src/shared/cli/functions/generate-group-help.function.ts +41 -0
  309. package/src/shared/cli/functions/generate-help.function.ts +56 -1
  310. package/src/shared/cli/functions/handle-data-command.function.ts +67 -0
  311. package/src/shared/cli/functions/handle-mcp.function.ts +56 -0
  312. package/src/shared/cli/functions/handle-migrate.function.ts +64 -0
  313. package/src/shared/cli/functions/hydrate-search-previews.function.ts +29 -0
  314. package/src/shared/cli/functions/install-default-skills.function.ts +296 -0
  315. package/src/shared/cli/functions/parse-args.function.ts +16 -0
  316. package/src/shared/cli/functions/resolve-skill-names.function.ts +43 -0
  317. package/src/shared/cli/functions/run-check.function.ts +87 -6
  318. package/src/shared/cli/functions/run-export.function.ts +40 -0
  319. package/src/shared/cli/functions/run-gc.function.ts +6 -0
  320. package/src/shared/cli/functions/run-init.function.ts +2 -0
  321. package/src/shared/cli/functions/run-learn.function.ts +68 -16
  322. package/src/shared/cli/functions/run-recall.function.ts +66 -0
  323. package/src/shared/cli/functions/run-search.function.ts +60 -15
  324. package/src/shared/cli/functions/version-gate.function.ts +44 -0
  325. package/src/shared/cli/functions/wrap-command.function.ts +34 -0
  326. package/src/shared/cli/index.ts +4 -0
  327. package/src/shared/cli/typings/agent-create-client.interface.ts +47 -0
  328. package/src/shared/cli/typings/agent-get-client.interface.ts +39 -0
  329. package/src/shared/cli/typings/check-client.interface.ts +66 -0
  330. package/src/shared/cli/typings/cli-deps.interface.ts +54 -0
  331. package/src/shared/cli/typings/cli-options.interface.ts +15 -0
  332. package/src/shared/cli/typings/disconnectable-client.interface.ts +29 -0
  333. package/src/shared/cli/typings/dispatch-client.type.ts +46 -0
  334. package/src/shared/cli/typings/learn-client.interface.ts +53 -0
  335. package/src/shared/cli/typings/learn-io.interface.ts +5 -0
  336. package/src/shared/cli/typings/learn-result.model.ts +16 -0
  337. package/src/shared/cli/typings/search-client.interface.ts +73 -0
  338. package/src/shared/cli/typings/search-display.model.ts +18 -0
  339. package/src/shared/embedding/classes/null-embedding-provider.class.ts +29 -0
  340. package/src/shared/embedding/constants/near-duplicate-thresholds.constant.ts +17 -0
  341. package/src/shared/embedding/functions/build-vector-index.function.ts +79 -0
  342. package/src/shared/embedding/functions/cosine-similarity.function.ts +31 -0
  343. package/src/shared/embedding/functions/detect-near-duplicates.function.ts +69 -0
  344. package/src/shared/embedding/functions/jaccard-coefficient.function.ts +26 -0
  345. package/src/shared/embedding/functions/read-vector-index-meta.function.ts +44 -0
  346. package/src/shared/embedding/functions/rrf-fuse.function.ts +33 -0
  347. package/src/shared/embedding/functions/search-vectors.function.ts +59 -0
  348. package/src/shared/embedding/index.ts +20 -0
  349. package/src/shared/embedding/typings/embedding-config.interface.ts +23 -0
  350. package/src/shared/embedding/typings/embedding-provider.interface.ts +25 -0
  351. package/src/shared/embedding/typings/near-duplicate-candidate.model.ts +25 -0
  352. package/src/shared/embedding/typings/near-duplicate-result.model.ts +26 -0
  353. package/src/shared/embedding/typings/vector-index-entry.model.ts +13 -0
  354. package/src/shared/embedding/typings/vector-index-meta.model.ts +14 -0
  355. package/src/shared/embedding/typings/vector-search-result.model.ts +8 -0
  356. package/src/shared/mcp/classes/mcp-server.class.ts +36 -4
  357. package/src/shared/mcp/constants/tool-agent-create.constant.ts +39 -0
  358. package/src/shared/mcp/constants/tool-agent-delete.constant.ts +26 -0
  359. package/src/shared/mcp/constants/tool-agent-get.constant.ts +24 -0
  360. package/src/shared/mcp/constants/tool-agent-list.constant.ts +18 -0
  361. package/src/shared/mcp/constants/tool-auto-capture-review.constant.ts +32 -0
  362. package/src/shared/mcp/constants/tool-check.constant.ts +21 -0
  363. package/src/shared/mcp/constants/tool-content.constant.ts +29 -0
  364. package/src/shared/mcp/constants/tool-export.constant.ts +27 -0
  365. package/src/shared/mcp/constants/tool-gc.constant.ts +21 -0
  366. package/src/shared/mcp/constants/tool-learn.constant.ts +58 -0
  367. package/src/shared/mcp/constants/tool-rebuild.constant.ts +21 -0
  368. package/src/shared/mcp/constants/tool-recall.constant.ts +36 -0
  369. package/src/shared/mcp/constants/tool-retrieve.constant.ts +31 -0
  370. package/src/shared/mcp/constants/tool-search.constant.ts +51 -0
  371. package/src/shared/mcp/constants/tool-skill-delete.constant.ts +24 -0
  372. package/src/shared/mcp/constants/tool-skill-get.constant.ts +27 -0
  373. package/src/shared/mcp/constants/tool-skill-learn.constant.ts +37 -0
  374. package/src/shared/mcp/constants/tool-skill-list.constant.ts +18 -0
  375. package/src/shared/mcp/constants/tool-status.constant.ts +20 -0
  376. package/src/shared/mcp/constants/tool-unlearn.constant.ts +25 -0
  377. package/src/shared/mcp/functions/as-boolean-or-undefined.function.ts +11 -0
  378. package/src/shared/mcp/functions/as-string-array-or-undefined.function.ts +17 -0
  379. package/src/shared/mcp/functions/as-string-array.function.ts +15 -0
  380. package/src/shared/mcp/functions/as-string.function.ts +10 -0
  381. package/src/shared/mcp/functions/build-skills-text.function.ts +43 -0
  382. package/src/shared/mcp/functions/create-tool-definitions.function.ts +74 -5
  383. package/src/shared/mcp/functions/handle-agent-create.function.ts +1 -1
  384. package/src/shared/mcp/functions/handle-agent-prompt.function.ts +68 -0
  385. package/src/shared/mcp/functions/handle-mcp-request.function.ts +202 -0
  386. package/src/shared/mcp/functions/handle-prompt-get.function.ts +18 -12
  387. package/src/shared/mcp/functions/handle-skill-prompt.function.ts +44 -0
  388. package/src/shared/mcp/functions/handle-tool-auto-capture-review.function.ts +24 -0
  389. package/src/shared/mcp/functions/handle-tool-call.function.ts +88 -2
  390. package/src/shared/mcp/functions/handle-tool-check.function.ts +21 -0
  391. package/src/shared/mcp/functions/handle-tool-content.function.ts +23 -0
  392. package/src/shared/mcp/functions/handle-tool-export.function.ts +25 -0
  393. package/src/shared/mcp/functions/handle-tool-gc.function.ts +21 -0
  394. package/src/shared/mcp/functions/handle-tool-learn.function.ts +69 -0
  395. package/src/shared/mcp/functions/handle-tool-rebuild.function.ts +21 -0
  396. package/src/shared/mcp/functions/handle-tool-retrieve.function.ts +40 -0
  397. package/src/shared/mcp/functions/handle-tool-search.function.ts +47 -0
  398. package/src/shared/mcp/functions/handle-tool-skill-delete.function.ts +34 -0
  399. package/src/shared/mcp/functions/handle-tool-skill-get.function.ts +59 -0
  400. package/src/shared/mcp/functions/handle-tool-skill-learn.function.ts +61 -0
  401. package/src/shared/mcp/functions/handle-tool-skill-list.function.ts +39 -0
  402. package/src/shared/mcp/functions/handle-tool-status.function.ts +21 -0
  403. package/src/shared/mcp/functions/handle-tool-unlearn.function.ts +24 -0
  404. package/src/shared/mcp/functions/parse-agent-meta.function.ts +27 -0
  405. package/src/shared/mcp/functions/parse-skill-arguments.function.ts +36 -0
  406. package/src/shared/mcp/functions/read-agent-meta.function.ts +41 -0
  407. package/src/shared/mcp/functions/resolve-skill-refs.function.ts +50 -0
  408. package/src/shared/mcp/functions/run-startup-health-check.function.ts +34 -0
  409. package/src/shared/mcp/typings/mcp-capabilities.interface.ts +16 -0
  410. package/src/shared/mcp/typings/mcp-client.interface.ts +47 -0
  411. package/src/shared/mcp/typings/mcp-completion.interface.ts +45 -0
  412. package/src/shared/mcp/typings/mcp-content-result.model.ts +9 -0
  413. package/src/shared/mcp/typings/mcp-export-result.model.ts +11 -0
  414. package/src/shared/mcp/typings/mcp-gc-result.model.ts +15 -0
  415. package/src/shared/mcp/typings/mcp-integrity-check-result.model.ts +17 -0
  416. package/src/shared/mcp/typings/mcp-integrity-error.model.ts +15 -0
  417. package/src/shared/mcp/typings/mcp-notification.interface.ts +9 -0
  418. package/src/shared/mcp/typings/mcp-rebuild-result.model.ts +9 -0
  419. package/src/shared/mcp/typings/mcp-request.interface.ts +11 -0
  420. package/src/shared/mcp/typings/mcp-resource-result.interface.ts +12 -0
  421. package/src/shared/mcp/typings/mcp-resource-template.interface.ts +11 -0
  422. package/src/shared/mcp/typings/mcp-response.interface.ts +18 -0
  423. package/src/shared/mcp/typings/mcp-server-info.interface.ts +7 -0
  424. package/src/shared/mcp/typings/mcp-server-state.interface.ts +17 -0
  425. package/src/shared/mcp/typings/mcp-tool-annotations.interface.ts +32 -0
  426. package/src/shared/mcp/typings/mcp-tool-definition.interface.ts +16 -0
  427. package/src/shared/mcp/typings/mcp-tool-result.interface.ts +19 -0
  428. package/src/shared/mcp/typings/mcp-worker-client.interface.ts +243 -0
  429. package/src/shared/mcp/typings/tool-call-result.model.ts +18 -0
  430. package/src/shared/sync/functions/build-import-report.function.ts +40 -0
  431. package/src/shared/sync/functions/parse-export-entry.function.ts +45 -0
  432. package/src/shared/sync/functions/resolve-conflict.function.ts +31 -0
  433. package/src/shared/sync/functions/serialize-export-entry.function.ts +18 -0
  434. package/src/shared/sync/index.ts +9 -0
  435. package/src/shared/sync/typings/conflict-resolution.type.ts +8 -0
  436. package/src/shared/sync/typings/export-entry.interface.ts +13 -0
  437. package/src/shared/sync/typings/export-options.interface.ts +9 -0
  438. package/src/shared/sync/typings/import-options.interface.ts +7 -0
  439. package/src/shared/sync/typings/import-report.interface.ts +15 -0
  440. package/src/shared/wasm-codec/functions/decode-add-section-result.function.ts +112 -0
  441. package/src/shared/wasm-codec/functions/decode-one-recall-result.function.ts +86 -0
  442. package/src/shared/wasm-codec/functions/decode-option-string.function.ts +24 -0
  443. package/src/shared/wasm-codec/functions/decode-recall-document.function.ts +59 -0
  444. package/src/shared/wasm-codec/functions/decode-recall-reference.function.ts +52 -0
  445. package/src/shared/wasm-codec/functions/decode-recall-sibling.function.ts +43 -0
  446. package/src/shared/wasm-codec/functions/decode-scored-results.function.ts +86 -0
  447. package/src/shared/wasm-codec/functions/decode-section-match.function.ts +80 -0
  448. package/src/shared/wasm-codec/functions/decode-section-record-trailing.function.ts +75 -0
  449. package/src/shared/wasm-codec/functions/decode-section-record.function.ts +85 -0
  450. package/src/shared/wasm-codec/functions/decode-section-records.function.ts +87 -0
  451. package/src/shared/wasm-codec/functions/decode-section-type.function.ts +30 -0
  452. package/src/shared/wasm-codec/functions/decode-wasm-list.function.ts +31 -0
  453. package/src/shared/wasm-codec/functions/encode-add-section-params.function.ts +68 -0
  454. package/src/shared/wasm-codec/index.ts +5 -0
  455. package/src/shared/wasm-codec/typings/add-section-input.model.ts +45 -0
  456. package/src/shared/wasm-codec/typings/add-section-result.model.ts +28 -0
  457. package/src/shared/wasm-codec/typings/document-manifest.model.ts +20 -0
  458. package/src/shared/wasm-codec/typings/document-section.model.ts +12 -0
  459. package/src/shared/wasm-codec/typings/item-decoder.type.ts +10 -0
  460. package/src/shared/wasm-codec/typings/near-duplicate.model.ts +16 -0
  461. package/src/shared/wasm-codec/typings/paged-search-result.model.ts +22 -0
  462. package/src/shared/wasm-codec/typings/section-match.model.ts +31 -0
  463. package/src/shared/wasm-codec/typings/section-record-trailing.model.ts +38 -0
  464. package/src/shared/wasm-codec/typings/section-record.model.ts +66 -0
  465. package/src/shared/wasm-codec/typings/section-type-result.model.ts +12 -0
  466. package/src/shared/worker-client/classes/worker-client.class.ts +19 -0
  467. package/src/shared/worker-client/functions/handle-ipc-data.function.ts +49 -0
  468. package/src/shared/worker-client/functions/send-ipc-request.function.ts +39 -0
  469. package/src/shared/worker-client/index.ts +4 -1
  470. package/src/shared/worker-client/typings/add-section-result.model.ts +32 -15
  471. package/src/shared/worker-client/typings/export-result.model.ts +14 -0
  472. package/src/shared/worker-client/typings/gc-result.model.ts +6 -0
  473. package/src/shared/worker-client/typings/json-rpc-response.interface.ts +17 -0
  474. package/src/shared/worker-client/typings/pending-call.interface.ts +7 -0
  475. package/src/shared/worker-client/typings/recall-document.model.ts +16 -0
  476. package/src/shared/worker-client/typings/recall-params.model.ts +15 -0
  477. package/src/shared/worker-client/typings/recall-reference.model.ts +32 -0
  478. package/src/shared/worker-client/typings/recall-sibling.model.ts +11 -0
  479. package/src/shared/worker-client/typings/recall-single-result.model.ts +41 -0
  480. package/src/shared/worker-client/typings/search-result.model.ts +12 -0
  481. package/src/shared/worker-client/typings/section.model.ts +16 -0
  482. package/src/shared/worker-daemon/classes/ipc-error.class.ts +22 -0
  483. package/src/shared/worker-daemon/classes/worker-daemon.class.ts +315 -46
  484. package/src/shared/worker-daemon/constants/wasm-method-map.constant.ts +69 -0
  485. package/src/shared/worker-daemon/functions/build-ipc-error-response.function.ts +16 -0
  486. package/src/shared/worker-daemon/functions/check-catalog-version.function.ts +54 -0
  487. package/src/shared/worker-daemon/functions/check-preconditions.function.ts +28 -0
  488. package/src/shared/worker-daemon/functions/create-host-imports.function.ts +19 -4
  489. package/src/shared/worker-daemon/functions/create-ipc-server.function.ts +5 -1
  490. package/src/shared/worker-daemon/functions/detect-stale-pid.function.ts +33 -0
  491. package/src/shared/worker-daemon/functions/dispatch-request.function.ts +190 -0
  492. package/src/shared/worker-daemon/functions/handle-check-version.function.ts +74 -0
  493. package/src/shared/worker-daemon/functions/handle-config-method.function.ts +27 -0
  494. package/src/shared/worker-daemon/functions/handle-read-ops.function.ts +236 -0
  495. package/src/shared/worker-daemon/functions/handle-write-ops.function.ts +257 -0
  496. package/src/shared/worker-daemon/functions/parse-auto-capture-section.function.ts +51 -0
  497. package/src/shared/worker-daemon/functions/parse-catalog-version.function.ts +20 -0
  498. package/src/shared/worker-daemon/functions/parse-embedding-section.function.ts +38 -0
  499. package/src/shared/worker-daemon/functions/parse-worker-toml.function.ts +104 -0
  500. package/src/shared/worker-daemon/functions/run-startup-integrity-check.function.ts +55 -0
  501. package/src/shared/worker-daemon/functions/scan-near-duplicates.function.ts +92 -0
  502. package/src/shared/worker-daemon/functions/wasm-bridge.function.ts +144 -0
  503. package/src/shared/worker-daemon/functions/wasm-memory-helpers.function.ts +41 -0
  504. package/src/shared/worker-daemon/functions/write-lock.function.ts +49 -0
  505. package/src/shared/worker-daemon/typings/allocator-ref.interface.ts +16 -0
  506. package/src/shared/worker-daemon/typings/daemon-config.interface.ts +7 -0
  507. package/src/shared/worker-daemon/typings/fs-adapter.interface.ts +22 -0
  508. package/src/shared/worker-daemon/typings/handler-context.interface.ts +19 -0
  509. package/src/shared/worker-daemon/typings/memory-ref.interface.ts +13 -0
  510. package/src/shared/worker-daemon/typings/wasm-fn.type.ts +2 -0
  511. package/src/shared/worker-daemon/typings/write-lock.interface.ts +13 -0
  512. package/src/wasm/fs-database/kbdb_fs_database.d.ts +22 -1
  513. package/src/wasm/fs-database/kbdb_fs_database.js +28 -1
  514. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
  515. package/src/wasm/fs-database/kbdb_fs_database_bg.wasm.d.ts +1 -0
  516. package/src/wasm/kb-worker/kbdb_worker.d.ts +48 -1
  517. package/src/wasm/kb-worker/kbdb_worker.js +60 -1
  518. package/src/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
  519. package/src/wasm/kb-worker/kbdb_worker_bg.wasm.d.ts +2 -0
  520. package/src/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
@@ -0,0 +1,8 @@
1
+ import type { ExportEntry } from '../typings/export-entry.interface.ts';
2
+ /**
3
+ * Serializes an export entry to a flat file format.
4
+ *
5
+ * Format: TOML frontmatter delimited by `+++` lines,
6
+ * followed by the body content.
7
+ */
8
+ export declare function serializeExportEntry(entry: ExportEntry): string;
@@ -0,0 +1,9 @@
1
+ export { resolveConflict } from './functions/resolve-conflict.function.ts';
2
+ export { buildImportReport } from './functions/build-import-report.function.ts';
3
+ export { serializeExportEntry } from './functions/serialize-export-entry.function.ts';
4
+ export { parseExportEntry } from './functions/parse-export-entry.function.ts';
5
+ export type { ExportEntry } from './typings/export-entry.interface.ts';
6
+ export type { ExportOptions } from './typings/export-options.interface.ts';
7
+ export type { ImportOptions } from './typings/import-options.interface.ts';
8
+ export type { ImportReport } from './typings/import-report.interface.ts';
9
+ export type { ConflictResolution } from './typings/conflict-resolution.type.ts';
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Conflict resolution strategy.
3
+ *
4
+ * - 'skip': same kbid -> skip
5
+ * - 'supersede': same source_key -> replace if newer
6
+ * - 'add': no match -> add
7
+ */
8
+ export type ConflictResolution = 'skip' | 'supersede' | 'add';
@@ -0,0 +1,13 @@
1
+ /** A single entry in an export manifest. */
2
+ export interface ExportEntry {
3
+ /** Section kbid. */
4
+ readonly kbid: string;
5
+ /** Source key. */
6
+ readonly sourceKey: string;
7
+ /** Section heading. */
8
+ readonly heading: string;
9
+ /** Content body. */
10
+ readonly body: string;
11
+ /** Created timestamp (ISO). */
12
+ readonly createdAt: string;
13
+ }
@@ -0,0 +1,9 @@
1
+ /** Options for export operation. */
2
+ export interface ExportOptions {
3
+ /** Export format. */
4
+ readonly format: 'git' | 'archive';
5
+ /** Output directory or file path. */
6
+ readonly outputPath: string;
7
+ /** Exclude vector indexes. */
8
+ readonly excludeVectors: boolean;
9
+ }
@@ -0,0 +1,7 @@
1
+ /** Options for import operation. */
2
+ export interface ImportOptions {
3
+ /** Source path (exported directory or archive). */
4
+ readonly fromPath: string;
5
+ /** Dry-run mode. */
6
+ readonly dryRun: boolean;
7
+ }
@@ -0,0 +1,15 @@
1
+ /** Report of an import operation. */
2
+ export interface ImportReport {
3
+ /** Sections added. */
4
+ readonly sectionsAdded: number;
5
+ /** Sections skipped (same kbid). */
6
+ readonly sectionsSkipped: number;
7
+ /** Sections superseded (same source_key, newer). */
8
+ readonly sectionsSuperseded: number;
9
+ /** Documents added. */
10
+ readonly documentsAdded: number;
11
+ /** Documents skipped. */
12
+ readonly documentsSkipped: number;
13
+ /** Whether rebuild is required. */
14
+ readonly rebuildRequired: boolean;
15
+ }
@@ -0,0 +1,48 @@
1
+ /**
2
+ * A near-duplicate section identified during add-section indexing.
3
+ */
4
+ export interface NearDuplicate {
5
+ /** Knowledge-base identifier of the near-duplicate section. */
6
+ readonly kbid: string;
7
+ /** Jaccard similarity score (0.0–1.0). */
8
+ readonly similarity: number;
9
+ }
10
+ /**
11
+ * Decoded result of a `worker_add_section` WASM call.
12
+ *
13
+ * Mirrors the Rust `AddSectionResult` struct encoded via the
14
+ * `Encode` trait wire format.
15
+ */
16
+ export interface AddSectionResult {
17
+ /** Knowledge-base identifier assigned to the new section. */
18
+ readonly kbid: string;
19
+ /** Number of unique terms indexed for the section. */
20
+ readonly indexedTermsCount: number;
21
+ /** Wall-clock time the add operation took, in milliseconds. */
22
+ readonly elapsedMs: number;
23
+ /**
24
+ * Knowledge-base identifier of the section that was superseded,
25
+ * or `null` if no supersession occurred.
26
+ */
27
+ readonly superseded: string | null;
28
+ /** Advisory warnings emitted during indexing. */
29
+ readonly warnings: string[];
30
+ /**
31
+ * Near-duplicate sections detected above the similarity threshold
32
+ * (Jaccard ≥ 0.85).
33
+ */
34
+ readonly nearDuplicates: NearDuplicate[];
35
+ }
36
+ /**
37
+ * Decodes the binary `AddSectionResult` returned by the
38
+ * `worker_add_section` WASM export.
39
+ *
40
+ * Wire format (little-endian):
41
+ * - `kbid`: `u32` length + UTF-8 bytes
42
+ * - `indexed_terms_count`: `u32`
43
+ * - `elapsed_ms`: `u64`
44
+ * - `superseded`: `u8` flag (0=None, 1=Some) + optional `String`
45
+ * - `warnings`: `u32` count + each `String`
46
+ * - `near_duplicates`: `u32` count + each (`String` + `f32`)
47
+ */
48
+ export declare function decodeAddSectionResult(bytes: Uint8Array): AddSectionResult;
@@ -0,0 +1,14 @@
1
+ import type { DecodeResult } from './decode-string.function.ts';
2
+ import type { RecallResult } from '../../worker-client/typings/recall-result.model.ts';
3
+ /**
4
+ * Decodes a single `RecallResult` record from WASM binary output.
5
+ *
6
+ * Wire format: kbid, heading, section_type, content, docid list,
7
+ * document list, back_references list, siblings list,
8
+ * references list.
9
+ *
10
+ * @param bytes - raw binary buffer
11
+ * @param startOffset - byte position of the record start
12
+ * @returns decoded result and number of bytes consumed
13
+ */
14
+ export declare function decodeOneRecallResult(bytes: Uint8Array, startOffset: number): DecodeResult<RecallResult>;
@@ -0,0 +1,12 @@
1
+ import type { DecodeResult } from './decode-string.function.ts';
2
+ /**
3
+ * Decodes an `Option<String>` from WASM binary output.
4
+ *
5
+ * Wire format: `u8` tag byte (`0x00` = `None`, any other value =
6
+ * `Some`) followed by a length-prefixed UTF-8 string when present.
7
+ *
8
+ * @param bytes - raw binary buffer
9
+ * @param offset - byte position of the tag byte
10
+ * @returns decoded nullable string and number of bytes consumed
11
+ */
12
+ export declare function decodeOptionString(bytes: Uint8Array, offset: number): DecodeResult<string | null>;
@@ -0,0 +1,14 @@
1
+ import type { DecodeResult } from './decode-string.function.ts';
2
+ import type { RecallDocument } from '../../worker-client/typings/recall-result.model.ts';
3
+ /**
4
+ * Decodes a single `RecallDocument` record from WASM binary output.
5
+ *
6
+ * Wire format: docid (String), title (String), section_count (u32),
7
+ * then each section as kbid (String), heading (Option<String>),
8
+ * section_type (String).
9
+ *
10
+ * @param bytes - raw binary buffer
11
+ * @param offset - byte position of the record start
12
+ * @returns decoded document and number of bytes consumed
13
+ */
14
+ export declare function decodeRecallDocument(bytes: Uint8Array, offset: number): DecodeResult<RecallDocument>;
@@ -0,0 +1,14 @@
1
+ import type { DecodeResult } from './decode-string.function.ts';
2
+ import type { RecallReference } from '../../worker-client/typings/recall-result.model.ts';
3
+ /**
4
+ * Decodes a single `RecallReference` record from WASM binary output.
5
+ *
6
+ * Wire format: kbid (String), heading (Option<String>),
7
+ * section_type (String), marker_type (String),
8
+ * context_snippet (String), direction (String).
9
+ *
10
+ * @param bytes - raw binary buffer
11
+ * @param offset - byte position of the record start
12
+ * @returns decoded reference and number of bytes consumed
13
+ */
14
+ export declare function decodeRecallReference(bytes: Uint8Array, offset: number): DecodeResult<RecallReference>;
@@ -0,0 +1,13 @@
1
+ import type { DecodeResult } from './decode-string.function.ts';
2
+ import type { RecallSibling } from '../../worker-client/typings/recall-result.model.ts';
3
+ /**
4
+ * Decodes a single `RecallSibling` record from WASM binary output.
5
+ *
6
+ * Wire format: kbid (String), heading (Option<String>),
7
+ * section_type (String), content (String).
8
+ *
9
+ * @param bytes - raw binary buffer
10
+ * @param offset - byte position of the record start
11
+ * @returns decoded sibling and number of bytes consumed
12
+ */
13
+ export declare function decodeRecallSibling(bytes: Uint8Array, offset: number): DecodeResult<RecallSibling>;
@@ -1,17 +1,75 @@
1
+ /**
2
+ * A single ranked result item from a paged search response.
3
+ */
1
4
  export interface SectionMatch {
5
+ /** Knowledge-base identifier for the matched section. */
2
6
  kbid: string;
7
+ /** Section heading, or `null` when untitled. */
3
8
  heading: string | null;
9
+ /** MIME type of the section content. */
4
10
  type: string;
11
+ /** Document IDs this section belongs to. */
5
12
  docids: string[];
13
+ /** Relevance score from the ranking engine. */
6
14
  score: number;
15
+ /**
16
+ * Confidence modifier (0.0–1.0) applied after relaxed search.
17
+ * Always 1.0 for strict-mode results.
18
+ */
19
+ confidence: number;
20
+ /** KWIC snippet (~150 chars around the best match). */
7
21
  snippet: string;
22
+ /** Query terms that matched within this section. */
8
23
  matched_terms: string[];
24
+ /**
25
+ * Document fields that contained at least one matched term
26
+ * (e.g. `'title'`, `'body'`).
27
+ */
28
+ matched_fields: string[];
29
+ /** ISO 8601 creation timestamp of the section. */
30
+ created_at: string;
9
31
  }
32
+ /**
33
+ * Paginated search response envelope returned by the WASM engine.
34
+ */
10
35
  export interface PagedSearchResult {
36
+ /** Matching sections for the current page. */
11
37
  items: SectionMatch[];
38
+ /** Total number of matches across all pages. */
12
39
  total: number;
40
+ /** Number of results skipped (pagination offset). */
13
41
  offset: number;
42
+ /** Maximum results per page. */
14
43
  limit: number;
44
+ /** Whether more results exist beyond this page. */
15
45
  has_more: boolean;
46
+ /**
47
+ * Whether the engine fell back to relaxed (OR-mode) search
48
+ * after strict (AND-mode) returned no results.
49
+ */
50
+ relaxed: boolean;
16
51
  }
52
+ /**
53
+ * Decodes the binary `PagedSearchResult` returned by the
54
+ * `worker_get_result` WASM export after a `worker_search` call.
55
+ *
56
+ * Wire format (little-endian):
57
+ * - `total`: `u32`
58
+ * - `offset`: `u32`
59
+ * - `limit`: `u32`
60
+ * - `has_more`: `u8` (0/1)
61
+ * - `relaxed`: `u8` (0/1)
62
+ * - `item_count`: `u32`
63
+ * - Per item:
64
+ * - `kbid`: `String`
65
+ * - `heading`: `Option<String>`
66
+ * - `section_type`: `String`
67
+ * - `docids`: `u32` count + `String[]`
68
+ * - `score`: `f32`
69
+ * - `confidence`: `f32`
70
+ * - `snippet`: `String`
71
+ * - `matched_terms`: `u32` count + `String[]`
72
+ * - `matched_fields`: `u32` count + `String[]`
73
+ * - `created_at`: `String`
74
+ */
17
75
  export declare function decodePagedSearchResult(bytes: Uint8Array): PagedSearchResult;
@@ -0,0 +1,15 @@
1
+ import type { DecodeResult } from './decode-string.function.ts';
2
+ import type { SectionMatch } from '../typings/section-match.model.ts';
3
+ /**
4
+ * Decodes a single `SectionMatch` item from WASM binary output.
5
+ *
6
+ * Wire format per item: kbid, heading (Option<String>),
7
+ * section_type, docids (u32 count + String[]), score (f32),
8
+ * confidence (f32), snippet, matched_terms (u32 + String[]),
9
+ * matched_fields (u32 + String[]), created_at.
10
+ *
11
+ * @param bytes - raw binary buffer
12
+ * @param startOffset - byte position of the item start
13
+ * @returns decoded match and number of bytes consumed
14
+ */
15
+ export declare function decodeSectionMatch(bytes: Uint8Array, startOffset: number): DecodeResult<SectionMatch>;
@@ -0,0 +1,14 @@
1
+ import type { SectionRecordTrailing } from '../typings/section-record-trailing.model.ts';
2
+ export type { SectionRecordTrailing };
3
+ /**
4
+ * Decodes the trailing backward-compatible fields of a
5
+ * `SectionRecord` from WASM binary output.
6
+ *
7
+ * Fields present only in newer binary output; each is guarded by a
8
+ * length check. Missing fields default to `null` or `[]`.
9
+ *
10
+ * @param bytes - raw bytes from a WASM section-list export
11
+ * @param startOffset - byte position after the `typeName` field
12
+ * @returns decoded trailing fields and bytes consumed
13
+ */
14
+ export declare function decodeSectionRecordTrailing(bytes: Uint8Array, startOffset: number): SectionRecordTrailing;
@@ -0,0 +1,14 @@
1
+ import type { DecodeResult } from './decode-string.function.ts';
2
+ import type { SectionRecord } from '../typings/section-record.model.ts';
3
+ /**
4
+ * Decodes a single `SectionRecord` from WASM binary output.
5
+ *
6
+ * Reads all section fields in the order produced by the Rust
7
+ * `SectionRecord::encode` implementation. Trailing fields added
8
+ * after `typeName` default to `null` / `[]` when absent.
9
+ *
10
+ * @param bytes - raw bytes returned by a WASM section-list export
11
+ * @param startOffset - byte position of the record start
12
+ * @returns decoded record and number of bytes consumed
13
+ */
14
+ export declare function decodeSectionRecord(bytes: Uint8Array, startOffset: number): DecodeResult<SectionRecord>;
@@ -36,6 +36,33 @@ export interface SectionRecord {
36
36
  codeTokenCount: number;
37
37
  /** Application-level type name assigned to this section. */
38
38
  typeName: string;
39
+ /**
40
+ * Stable logical identity derived from source path and heading.
41
+ * `null` for stdin input or sections without a source path.
42
+ */
43
+ sourceKey: string | null;
44
+ /**
45
+ * Absolute path of the source file that was learned.
46
+ * `null` for stdin input or programmatic API calls.
47
+ */
48
+ sourcePath: string | null;
49
+ /**
50
+ * ISO 8601 modified time of the source file at learn time.
51
+ * `null` when no source file exists.
52
+ */
53
+ sourceMtime: string | null;
54
+ /**
55
+ * ISO 8601 timestamp of the last supersession.
56
+ * `null` on first creation.
57
+ */
58
+ updatedAt: string | null;
59
+ /** User-supplied tags for scoping and filtering. */
60
+ tags: string[];
61
+ /**
62
+ * The kbid of the section this one replaced via supersession.
63
+ * `null` on first creation or non-superseding additions.
64
+ */
65
+ supersedes: string | null;
39
66
  }
40
67
  /**
41
68
  * Decodes a list of `SectionRecord` values from WASM binary output.
@@ -44,6 +71,12 @@ export interface SectionRecord {
44
71
  * Each record is decoded in field order as produced by the Rust
45
72
  * `SectionRecord::encode` implementation.
46
73
  *
74
+ * Trailing fields (`sourceKey`, `sourcePath`, `sourceMtime`,
75
+ * `updatedAt`, `tags`, `supersedes`) were added after the initial
76
+ * format. When decoding legacy bytes that stop after `typeName`,
77
+ * those fields default to `null` / `[]`. This matches the Rust
78
+ * decoder's backward-compatibility guards.
79
+ *
47
80
  * @param bytes - raw bytes returned by a WASM section-list export
48
81
  * @returns decoded array of section records, empty when count is zero
49
82
  */
@@ -0,0 +1,13 @@
1
+ import type { SectionTypeResult } from '../typings/section-type-result.model.ts';
2
+ export type { SectionTypeResult };
3
+ /**
4
+ * Decodes a section type discriminant from WASM binary output.
5
+ *
6
+ * Wire format: `u8` tag (`0x00` = text, `0x01` = code,
7
+ * `0x02` = image), followed by a MIME string for code/image.
8
+ *
9
+ * @param bytes - raw binary buffer
10
+ * @param offset - byte position of the tag byte
11
+ * @returns section type, optional MIME type, and bytes consumed
12
+ */
13
+ export declare function decodeSectionType(bytes: Uint8Array, offset: number): SectionTypeResult;
@@ -0,0 +1,17 @@
1
+ import type { ItemDecoder } from '../typings/item-decoder.type.ts';
2
+ export type { ItemDecoder };
3
+ /**
4
+ * Decodes a length-prefixed list from WASM binary output.
5
+ *
6
+ * Wire format: u32 item count, then that many items decoded
7
+ * sequentially by `decode`.
8
+ *
9
+ * @param bytes - raw binary buffer
10
+ * @param offset - byte position of the u32 count
11
+ * @param decode - decoder function for each item
12
+ * @returns decoded item array and total bytes consumed
13
+ */
14
+ export declare function decodeWasmList<T>(bytes: Uint8Array, offset: number, decode: ItemDecoder<T>): {
15
+ items: T[];
16
+ bytesRead: number;
17
+ };
@@ -1,10 +1,62 @@
1
+ /**
2
+ * Parameters for adding a new section to the knowledge base.
3
+ *
4
+ * Maps to the Rust `AddSectionParams` struct encoded for the
5
+ * `worker_add_section` WASM export.
6
+ */
1
7
  export interface AddSectionInput {
8
+ /** Semantic content category. */
2
9
  sectionType: 'text' | 'code' | 'image';
10
+ /** MIME type; required for `code` and `image` section types. */
3
11
  mimeType?: string;
12
+ /** Raw section content. */
4
13
  content: string;
14
+ /** Optional section heading. */
5
15
  title?: string | null;
16
+ /** Optional description summary. */
6
17
  description?: string | null;
18
+ /** Optional document identifier to attach the section to. */
7
19
  docid?: string | null;
20
+ /**
21
+ * Application-level type name for the section (e.g. `'skill'`,
22
+ * `'fact'`). `null` means no custom type.
23
+ */
8
24
  typeName?: string | null;
25
+ /**
26
+ * Absolute path of the source file being learned. `undefined`
27
+ * means stdin input or programmatic API call.
28
+ */
29
+ sourcePath?: string;
30
+ /**
31
+ * ISO 8601 modified time of the source file. `undefined` means
32
+ * no source file exists.
33
+ */
34
+ sourceMtime?: string;
35
+ /**
36
+ * User-supplied tags for scoping and filtering. Defaults to
37
+ * an empty list when not provided.
38
+ */
39
+ tags?: string[];
40
+ /**
41
+ * When `true`, supersede any existing section with the same
42
+ * source key. Defaults to `false`.
43
+ */
44
+ replace?: boolean;
9
45
  }
46
+ /**
47
+ * Encodes `AddSectionInput` as the binary format expected by the
48
+ * `worker_add_section` WASM export.
49
+ *
50
+ * Wire format (little-endian):
51
+ * - `SectionType` tag byte (+ optional MIME string for code/image)
52
+ * - `content`: `u32` length + UTF-8 bytes
53
+ * - `title`: `u8` flag + optional `String`
54
+ * - `description`: `u8` flag + optional `String`
55
+ * - `docid`: `u8` flag + optional `String`
56
+ * - `typeName`: `u8` flag + optional `String`
57
+ * - `sourcePath`: `u8` flag + optional `String`
58
+ * - `sourceMtime`: `u8` flag + optional `String`
59
+ * - `tags`: `u32` count + each `String`
60
+ * - `replace`: `u8` (0 or 1)
61
+ */
10
62
  export declare function encodeAddSectionParams(params: AddSectionInput): Uint8Array;
@@ -23,8 +23,10 @@ export { decodeKeyValueText } from './functions/decode-key-value-text.function.t
23
23
  export { decodeRemoveFlag } from './functions/decode-remove-flag.function.ts';
24
24
  export { encodeRecallParams } from './functions/encode-recall-params.function.ts';
25
25
  export { decodeRecallResult } from './functions/decode-recall-result.function.ts';
26
+ export { decodeAddSectionResult } from './functions/decode-add-section-result.function.ts';
26
27
  export type { DecodeResult } from './functions/decode-string.function.ts';
27
28
  export type { AddSectionInput } from './functions/encode-add-section-params.function.ts';
29
+ export type { AddSectionResult, NearDuplicate, } from './functions/decode-add-section-result.function.ts';
28
30
  export type { SectionMatch, PagedSearchResult, } from './functions/decode-scored-results.function.ts';
29
31
  export type { SectionRecord } from './functions/decode-section-records.function.ts';
30
32
  export type { DocumentManifest, DocumentSection, } from './functions/decode-document-manifest.function.ts';
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Parameters for adding a new section to the knowledge base.
3
+ *
4
+ * Maps to the Rust `AddSectionParams` struct encoded for the
5
+ * `worker_add_section` WASM export.
6
+ */
7
+ export interface AddSectionInput {
8
+ /** Semantic content category. */
9
+ sectionType: 'text' | 'code' | 'image';
10
+ /** MIME type; required for `code` and `image` section types. */
11
+ mimeType?: string;
12
+ /** Raw section content. */
13
+ content: string;
14
+ /** Optional section heading. */
15
+ title?: string | null;
16
+ /** Optional description summary. */
17
+ description?: string | null;
18
+ /** Optional document identifier to attach the section to. */
19
+ docid?: string | null;
20
+ /**
21
+ * Application-level type name for the section (e.g. `'skill'`,
22
+ * `'fact'`). `null` means no custom type.
23
+ */
24
+ typeName?: string | null;
25
+ /**
26
+ * Absolute path of the source file being learned. `undefined`
27
+ * means stdin input or programmatic API call.
28
+ */
29
+ sourcePath?: string;
30
+ /**
31
+ * ISO 8601 modified time of the source file. `undefined` means
32
+ * no source file exists.
33
+ */
34
+ sourceMtime?: string;
35
+ /**
36
+ * User-supplied tags for scoping and filtering. Defaults to
37
+ * an empty list when not provided.
38
+ */
39
+ tags?: string[];
40
+ /**
41
+ * When `true`, supersede any existing section with the same
42
+ * source key. Defaults to `false`.
43
+ */
44
+ replace?: boolean;
45
+ }
@@ -0,0 +1,27 @@
1
+ import type { NearDuplicate } from './near-duplicate.model.ts';
2
+ /**
3
+ * Decoded result of a `worker_add_section` WASM call.
4
+ *
5
+ * Mirrors the Rust `AddSectionResult` struct encoded via the
6
+ * `Encode` trait wire format.
7
+ */
8
+ export interface AddSectionResult {
9
+ /** Knowledge-base identifier assigned to the new section. */
10
+ readonly kbid: string;
11
+ /** Number of unique terms indexed for the section. */
12
+ readonly indexedTermsCount: number;
13
+ /** Wall-clock time the add operation took, in milliseconds. */
14
+ readonly elapsedMs: number;
15
+ /**
16
+ * Knowledge-base identifier of the section that was superseded,
17
+ * or `null` if no supersession occurred.
18
+ */
19
+ readonly superseded: string | null;
20
+ /** Advisory warnings emitted during indexing. */
21
+ readonly warnings: string[];
22
+ /**
23
+ * Near-duplicate sections detected above the similarity threshold
24
+ * (Jaccard ≥ 0.85).
25
+ */
26
+ readonly nearDuplicates: NearDuplicate[];
27
+ }
@@ -0,0 +1,19 @@
1
+ import type { DocumentSection } from './document-section.model.ts';
2
+ /**
3
+ * A document manifest decoded from WASM binary output.
4
+ *
5
+ * Represents a grouped document record with its ordered list of
6
+ * section references as returned by `worker_retrieve_doc`.
7
+ */
8
+ export interface DocumentManifest {
9
+ /** Unique document identifier. */
10
+ docid: string;
11
+ /** Human-readable document title. */
12
+ title: string;
13
+ /** Document creation timestamp as a Unix epoch value. */
14
+ createdAt: bigint;
15
+ /** Application-level type name assigned to this document. */
16
+ docType: string;
17
+ /** Ordered list of section references belonging to the document. */
18
+ sections: DocumentSection[];
19
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * A single section reference within a document manifest.
3
+ *
4
+ * Associates a knowledge-base identifier with the section's
5
+ * ordinal position in the document.
6
+ */
7
+ export interface DocumentSection {
8
+ /** Knowledge-base identifier of the referenced section. */
9
+ kbid: string;
10
+ /** Zero-based position of this section within its document. */
11
+ position: number;
12
+ }
@@ -0,0 +1,6 @@
1
+ import type { DecodeResult } from '../functions/decode-string.function.ts';
2
+ /**
3
+ * A function that decodes one item from a binary buffer at the
4
+ * given byte offset, returning the decoded value and bytes consumed.
5
+ */
6
+ export type ItemDecoder<T> = (bytes: Uint8Array, offset: number) => DecodeResult<T>;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * A near-duplicate section identified during add-section indexing.
3
+ */
4
+ export interface NearDuplicate {
5
+ /** Knowledge-base identifier of the near-duplicate section. */
6
+ readonly kbid: string;
7
+ /** Similarity score (0.0–1.0). */
8
+ readonly similarity: number;
9
+ /**
10
+ * Detection method that produced this match.
11
+ *
12
+ * Optional for backward compatibility with WASM-decoded results
13
+ * that do not carry method information.
14
+ */
15
+ readonly method?: 'jaccard' | 'cosine';
16
+ }
@@ -0,0 +1,21 @@
1
+ import type { SectionMatch } from './section-match.model.ts';
2
+ /**
3
+ * Paginated search response envelope returned by the WASM engine.
4
+ */
5
+ export interface PagedSearchResult {
6
+ /** Matching sections for the current page. */
7
+ items: SectionMatch[];
8
+ /** Total number of matches across all pages. */
9
+ total: number;
10
+ /** Number of results skipped (pagination offset). */
11
+ offset: number;
12
+ /** Maximum results per page. */
13
+ limit: number;
14
+ /** Whether more results exist beyond this page. */
15
+ has_more: boolean;
16
+ /**
17
+ * Whether the engine fell back to relaxed (OR-mode) search
18
+ * after strict (AND-mode) returned no results.
19
+ */
20
+ relaxed: boolean;
21
+ }