@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.
- package/README.md +92 -90
- package/dist/chunk-BJXEVALU.mjs +337 -0
- package/dist/chunk-BJXEVALU.mjs.map +7 -0
- package/dist/cli.cjs +1398 -378
- package/dist/cli.cjs.map +4 -4
- package/dist/cli.d.ts +9 -0
- package/dist/cli.mjs +1138 -342
- package/dist/cli.mjs.map +4 -4
- package/dist/kbdb-worker.cjs +1115 -135
- package/dist/kbdb-worker.cjs.map +4 -4
- package/dist/mod.cjs +351 -69
- package/dist/mod.cjs.map +4 -4
- package/dist/mod.d.ts +23 -2
- package/dist/mod.mjs +349 -68
- package/dist/mod.mjs.map +4 -4
- package/dist/src/shared/cli/functions/dispatch-command.function.d.ts +2 -1
- package/dist/src/shared/cli/functions/find-db.function.d.ts +7 -8
- package/dist/src/shared/cli/functions/handle-mcp.function.d.ts +1 -1
- package/dist/src/shared/cli/functions/parse-args.function.d.ts +4 -3
- package/dist/src/shared/cli/functions/resolve-kbid-prefix.function.d.ts +27 -0
- package/dist/src/shared/cli/functions/resolve-raw-db-path.function.d.ts +10 -0
- package/dist/src/shared/cli/functions/run-cli.function.d.ts +3 -1
- package/dist/src/shared/cli/functions/run-content.function.d.ts +8 -3
- package/dist/src/shared/cli/functions/run-import.function.d.ts +27 -0
- package/dist/src/shared/cli/functions/run-recall.function.d.ts +10 -4
- package/dist/src/shared/cli/functions/run-search.function.d.ts +7 -0
- package/dist/src/shared/cli/functions/run-unlearn.function.d.ts +9 -4
- package/dist/src/shared/cli/functions/run-worker-restart.function.d.ts +11 -0
- package/dist/src/shared/cli/functions/run-worker-stop.function.d.ts +11 -0
- package/dist/src/shared/cli/index.d.ts +2 -0
- package/dist/src/shared/cli/typings/cli-deps.interface.d.ts +4 -1
- package/dist/src/shared/cli/typings/cli-options.interface.d.ts +22 -0
- package/dist/src/shared/cli/typings/dispatch-client.type.d.ts +2 -1
- package/dist/src/shared/cli/typings/search-display.model.d.ts +6 -0
- package/dist/src/shared/embedding/classes/api-embedding-provider.class.d.ts +33 -0
- package/dist/src/shared/embedding/classes/onnx-embedding-provider.class.d.ts +33 -0
- package/dist/src/shared/embedding/classes/tfidf-embedding-provider.class.d.ts +28 -0
- package/dist/src/shared/embedding/constants/tfidf-defaults.constant.d.ts +4 -0
- package/dist/src/shared/embedding/functions/append-vector-entry.function.d.ts +14 -0
- package/dist/src/shared/embedding/functions/create-embedding-provider.function.d.ts +15 -0
- package/dist/src/shared/embedding/functions/detect-stale-vectors.function.d.ts +16 -0
- package/dist/src/shared/embedding/functions/parse-api-embedding-response.function.d.ts +11 -0
- package/dist/src/shared/embedding/functions/rebuild-vectors.function.d.ts +15 -0
- package/dist/src/shared/embedding/functions/scan-semantic-contradictions.function.d.ts +13 -0
- package/dist/src/shared/embedding/index.d.ts +9 -0
- package/dist/src/shared/embedding/typings/semantic-contradiction.model.d.ts +21 -0
- package/dist/src/shared/embedding/typings/stale-vectors-report.model.d.ts +16 -0
- package/dist/src/shared/log/constants/log-colors.constant.d.ts +5 -0
- package/dist/src/shared/log/constants/log-defaults.constant.d.ts +3 -0
- package/dist/src/shared/log/constants/log-icons.constant.d.ts +3 -0
- package/dist/src/shared/log/functions/configure-log.function.d.ts +12 -0
- package/dist/src/shared/log/functions/log.function.d.ts +28 -0
- package/dist/src/shared/log/functions/parse-log-level.function.d.ts +10 -0
- package/dist/src/shared/log/functions/resolve-log-level.function.d.ts +12 -0
- package/dist/src/shared/log/functions/write-stderr.function.d.ts +10 -0
- package/dist/src/shared/log/index.d.ts +10 -0
- package/dist/src/shared/log/typings/log-config.interface.d.ts +7 -0
- package/dist/src/shared/log/typings/log-level.type.d.ts +7 -0
- package/dist/src/shared/log/typings/log-output.interface.d.ts +4 -0
- package/dist/src/shared/mcp/classes/mcp-server.class.d.ts +22 -2
- package/dist/src/shared/mcp/functions/create-mcp-server.function.d.ts +6 -1
- package/dist/src/shared/mcp/functions/has-sampling-capability.function.d.ts +8 -0
- package/dist/src/shared/mcp/functions/run-auto-capture.function.d.ts +26 -0
- package/dist/src/shared/mcp/typings/mcp-client.interface.d.ts +2 -0
- package/dist/src/shared/mcp/typings/mcp-integrity-check-result.model.d.ts +24 -0
- package/dist/src/shared/mcp/typings/mcp-worker-client.interface.d.ts +3 -1
- package/dist/src/shared/version/constants/version.constant.d.ts +1 -1
- package/dist/src/shared/wasm-codec/typings/paged-search-result.model.d.ts +2 -0
- package/dist/src/shared/worker-client/classes/worker-client.class.d.ts +38 -1
- package/dist/src/shared/worker-client/constants/request-timeout.constant.d.ts +2 -0
- package/dist/src/shared/worker-client/constants/retry-defaults.constant.d.ts +2 -0
- package/dist/src/shared/worker-client/functions/get-or-create-client.function.d.ts +20 -0
- package/dist/src/shared/worker-client/functions/retry-on-timeout.function.d.ts +18 -0
- package/dist/src/shared/worker-client/index.d.ts +4 -1
- package/dist/src/shared/worker-client/typings/import-result.model.d.ts +16 -0
- package/dist/src/shared/worker-client/typings/integrity-check-result.model.d.ts +24 -0
- package/dist/src/shared/worker-client/typings/search-params.model.d.ts +4 -0
- package/dist/src/shared/worker-client/typings/search-result.model.d.ts +6 -0
- package/dist/src/shared/worker-client/typings/worker-client-options.interface.d.ts +7 -0
- package/dist/src/shared/worker-daemon/classes/worker-daemon.class.d.ts +6 -0
- package/dist/src/shared/worker-daemon/functions/create-ipc-server.function.d.ts +11 -11
- package/dist/src/shared/worker-daemon/functions/embed-after-learn.function.d.ts +13 -0
- package/dist/src/shared/worker-daemon/functions/handle-hybrid-search.function.d.ts +44 -0
- package/dist/src/shared/worker-daemon/functions/handle-import.function.d.ts +14 -0
- package/dist/src/shared/worker-daemon/functions/handle-read-ops.function.d.ts +7 -1
- package/dist/src/shared/worker-daemon/functions/handle-write-ops.function.d.ts +9 -4
- package/dist/src/shared/worker-daemon/functions/run-worker.function.d.ts +6 -1
- package/dist/src/shared/worker-daemon/typings/handler-context.interface.d.ts +3 -0
- package/dist/src/shared/worker-daemon/typings/wasm-modules.interface.d.ts +5 -0
- package/dist/wasm/default-embedding/kbdb_default_embedding.d.ts +55 -0
- package/dist/wasm/default-embedding/kbdb_default_embedding.js +156 -0
- package/{src/wasm/query-parser/kbdb_query_parser_bg.wasm → dist/wasm/default-embedding/kbdb_default_embedding_bg.wasm} +0 -0
- package/dist/wasm/default-embedding/kbdb_default_embedding_bg.wasm.d.ts +12 -0
- package/dist/wasm/default-embedding/package.json +13 -0
- package/dist/wasm/fs-database/kbdb_fs_database.d.ts +16 -85
- package/dist/wasm/fs-database/kbdb_fs_database.js +16 -85
- package/dist/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
- package/dist/wasm/fs-migration/kbdb_fs_migration.d.ts +38 -0
- package/dist/wasm/fs-migration/kbdb_fs_migration.js +130 -0
- package/dist/wasm/fs-migration/kbdb_fs_migration_bg.wasm +0 -0
- package/dist/wasm/fs-migration/kbdb_fs_migration_bg.wasm.d.ts +9 -0
- package/dist/wasm/fs-migration/package.json +13 -0
- package/dist/wasm/kb-worker/kbdb_worker.d.ts +20 -115
- package/dist/wasm/kb-worker/kbdb_worker.js +20 -115
- package/dist/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
- package/dist/wasm/query-parser/kbdb_query_parser_bg.wasm +0 -0
- package/dist/worker.d.ts +8 -0
- package/dist/worker.mjs +899 -143
- package/dist/worker.mjs.map +4 -4
- package/docs/details/README.md +4 -0
- package/docs/details/agent-tooling.md +132 -0
- package/docs/details/cli.md +91 -18
- package/docs/details/knowledge-base.md +180 -0
- package/docs/details/library-api.md +42 -2
- package/docs/details/mcp-server.md +53 -7
- package/docs/details/search-and-ranking.md +16 -11
- package/docs/goals/cli.md +142 -37
- package/docs/goals/content-parser.md +1 -1
- package/docs/goals/hybrid-search.md +71 -42
- package/docs/goals/mcp.md +24 -19
- package/docs/goals/overview.md +1 -1
- package/docs/goals/query-parser.md +8 -0
- package/docs/goals/semantic-dedup.md +7 -3
- package/docs/goals/worker-client.md +62 -1
- package/docs/goals/worker-daemon.md +83 -30
- package/docs/modules/overview.md +43 -22
- package/docs/modules/rust/embedding/module.md +91 -0
- package/docs/modules/rust/overview.md +56 -21
- package/docs/modules/rust/query-parser/functions/module.md +7 -5
- package/docs/modules/rust/query-parser/functions/pipeline.md +6 -138
- package/docs/modules/rust/query-parser/module.md +16 -22
- package/docs/modules/rust/query-parser/types/module.md +5 -4
- package/docs/modules/rust/query-parser/types/token.md +5 -1
- package/docs/modules/rust/shared/content-parser/functions.md +1 -1
- package/docs/modules/rust/shared/memory/module.md +1 -1
- package/docs/modules/rust/shared/module.md +33 -5
- package/docs/modules/rust/shared/pipeline/functions.md +141 -0
- package/docs/modules/rust/shared/pipeline/module.md +62 -0
- package/docs/modules/rust/shared/pipeline/types.md +43 -0
- package/docs/modules/rust/shared/section/module.md +1 -1
- package/docs/modules/rust/shared/section/types.md +1 -1
- package/docs/modules/typescript/cli.md +5 -3
- package/docs/modules/typescript/kbdb-worker.md +20 -5
- package/docs/modules/typescript/overview.md +28 -6
- package/docs/modules/typescript/shared/cli/functions.md +131 -17
- package/docs/modules/typescript/shared/cli/module.md +33 -20
- package/docs/modules/typescript/shared/cli/typings.md +25 -0
- package/docs/modules/typescript/shared/embedding/functions.md +125 -19
- package/docs/modules/typescript/shared/embedding/module.md +10 -4
- package/docs/modules/typescript/shared/embedding/typings.md +7 -5
- package/docs/modules/typescript/shared/log/constants.md +82 -0
- package/docs/modules/typescript/shared/log/functions.md +131 -0
- package/docs/modules/typescript/shared/log/module.md +153 -0
- package/docs/modules/typescript/shared/log/typings.md +82 -0
- package/docs/modules/typescript/shared/mcp/module.md +1 -1
- package/docs/modules/typescript/shared/mcp/typings.md +8 -1
- package/docs/modules/typescript/shared/module.md +22 -6
- package/docs/modules/typescript/shared/worker-client/module.md +9 -1
- package/docs/modules/typescript/shared/worker-client/typings.md +3 -0
- package/docs/modules/typescript/shared/worker-daemon/functions.md +19 -6
- package/docs/modules/typescript/shared/worker-daemon/module.md +11 -5
- package/docs/modules/typescript/shared/worker-daemon/typings.md +13 -7
- package/docs/overview.md +1 -2
- package/docs/release-notes/0.4.0.md +80 -0
- package/docs/release-notes/0.4.1.md +149 -0
- package/docs/release-notes/README.md +1 -0
- package/mod.ts +33 -15
- package/package.json +12 -11
- package/dist/chunk-JG2UCKLI.mjs +0 -95
- package/dist/chunk-JG2UCKLI.mjs.map +0 -7
- package/src/cli.ts +0 -71
- package/src/shared/auto-capture/classes/auto-capture-controller.class.ts +0 -62
- package/src/shared/auto-capture/constants/auto-capture-defaults.constant.ts +0 -15
- package/src/shared/auto-capture/functions/build-capture-prompt.function.ts +0 -27
- package/src/shared/auto-capture/functions/evaluate-trigger.function.ts +0 -50
- package/src/shared/auto-capture/index.ts +0 -7
- package/src/shared/auto-capture/typings/auto-capture-config.interface.ts +0 -13
- package/src/shared/auto-capture/typings/auto-capture-state.interface.ts +0 -13
- package/src/shared/auto-capture/typings/auto-capture-trigger.interface.ts +0 -7
- package/src/shared/cli/constants/defaults.constant.ts +0 -19
- package/src/shared/cli/constants/global-help.constant.ts +0 -73
- package/src/shared/cli/constants/help-text.constant.ts +0 -4
- package/src/shared/cli/constants/leaf-help.constant.ts +0 -219
- package/src/shared/cli/constants/memory-protocol-body.constant.ts +0 -39
- package/src/shared/cli/constants/query-guidance-body.constant.ts +0 -37
- package/src/shared/cli/constants/subcommand-help.constant.ts +0 -195
- package/src/shared/cli/functions/collect-files.function.ts +0 -55
- package/src/shared/cli/functions/compute-section-kbid.function.ts +0 -49
- package/src/shared/cli/functions/dispatch-command.function.ts +0 -390
- package/src/shared/cli/functions/ensure-db.function.ts +0 -21
- package/src/shared/cli/functions/error-to-message.function.ts +0 -9
- package/src/shared/cli/functions/find-db.function.ts +0 -20
- package/src/shared/cli/functions/format-mcp-output.function.ts +0 -41
- package/src/shared/cli/functions/format-output.function.ts +0 -95
- package/src/shared/cli/functions/format-text-output.function.ts +0 -42
- package/src/shared/cli/functions/generate-group-help.function.ts +0 -41
- package/src/shared/cli/functions/generate-help.function.ts +0 -654
- package/src/shared/cli/functions/handle-data-command.function.ts +0 -67
- package/src/shared/cli/functions/handle-mcp.function.ts +0 -56
- package/src/shared/cli/functions/handle-migrate.function.ts +0 -64
- package/src/shared/cli/functions/hydrate-search-previews.function.ts +0 -29
- package/src/shared/cli/functions/install-default-skills.function.ts +0 -296
- package/src/shared/cli/functions/is-stdin-tty.function.ts +0 -12
- package/src/shared/cli/functions/parse-args.function.ts +0 -156
- package/src/shared/cli/functions/prompt-user.function.ts +0 -36
- package/src/shared/cli/functions/resolve-skill-names.function.ts +0 -43
- package/src/shared/cli/functions/run-agent-create.function.ts +0 -114
- package/src/shared/cli/functions/run-agent-delete.function.ts +0 -47
- package/src/shared/cli/functions/run-agent-get.function.ts +0 -166
- package/src/shared/cli/functions/run-agent-list.function.ts +0 -58
- package/src/shared/cli/functions/run-check.function.ts +0 -159
- package/src/shared/cli/functions/run-cli.function.ts +0 -299
- package/src/shared/cli/functions/run-content.function.ts +0 -47
- package/src/shared/cli/functions/run-db-init.function.ts +0 -44
- package/src/shared/cli/functions/run-db-migrate.function.ts +0 -40
- package/src/shared/cli/functions/run-export.function.ts +0 -40
- package/src/shared/cli/functions/run-gc.function.ts +0 -51
- package/src/shared/cli/functions/run-init.function.ts +0 -93
- package/src/shared/cli/functions/run-learn.function.ts +0 -223
- package/src/shared/cli/functions/run-migrate.function.ts +0 -85
- package/src/shared/cli/functions/run-rebuild.function.ts +0 -47
- package/src/shared/cli/functions/run-recall.function.ts +0 -66
- package/src/shared/cli/functions/run-search.function.ts +0 -133
- package/src/shared/cli/functions/run-skill-delete.function.ts +0 -47
- package/src/shared/cli/functions/run-skill-get.function.ts +0 -90
- package/src/shared/cli/functions/run-skill-learn.function.ts +0 -70
- package/src/shared/cli/functions/run-skill-list.function.ts +0 -74
- package/src/shared/cli/functions/run-status.function.ts +0 -29
- package/src/shared/cli/functions/run-unlearn.function.ts +0 -58
- package/src/shared/cli/functions/version-gate.function.ts +0 -44
- package/src/shared/cli/functions/wrap-command.function.ts +0 -34
- package/src/shared/cli/index.ts +0 -55
- package/src/shared/cli/typings/agent-create-client.interface.ts +0 -47
- package/src/shared/cli/typings/agent-get-client.interface.ts +0 -39
- package/src/shared/cli/typings/check-client.interface.ts +0 -66
- package/src/shared/cli/typings/cli-deps.interface.ts +0 -54
- package/src/shared/cli/typings/cli-options.interface.ts +0 -72
- package/src/shared/cli/typings/command-result.model.ts +0 -15
- package/src/shared/cli/typings/disconnectable-client.interface.ts +0 -29
- package/src/shared/cli/typings/dispatch-client.type.ts +0 -46
- package/src/shared/cli/typings/learn-client.interface.ts +0 -53
- package/src/shared/cli/typings/learn-io.interface.ts +0 -5
- package/src/shared/cli/typings/learn-result.model.ts +0 -27
- package/src/shared/cli/typings/search-client.interface.ts +0 -73
- package/src/shared/cli/typings/search-display.model.ts +0 -54
- package/src/shared/dir-resolver/functions/join-path.function.ts +0 -13
- package/src/shared/dir-resolver/functions/resolve-base-dir.function.ts +0 -25
- package/src/shared/dir-resolver/functions/resolve-wasm-dir.function.ts +0 -5
- package/src/shared/dir-resolver/functions/resolve-worker-script.function.ts +0 -13
- package/src/shared/dir-resolver/index.ts +0 -11
- package/src/shared/dir-resolver/typings/base-dir.interface.ts +0 -4
- package/src/shared/embedding/classes/null-embedding-provider.class.ts +0 -29
- package/src/shared/embedding/constants/near-duplicate-thresholds.constant.ts +0 -17
- package/src/shared/embedding/functions/build-vector-index.function.ts +0 -79
- package/src/shared/embedding/functions/cosine-similarity.function.ts +0 -31
- package/src/shared/embedding/functions/detect-near-duplicates.function.ts +0 -69
- package/src/shared/embedding/functions/jaccard-coefficient.function.ts +0 -26
- package/src/shared/embedding/functions/read-vector-index-meta.function.ts +0 -44
- package/src/shared/embedding/functions/rrf-fuse.function.ts +0 -33
- package/src/shared/embedding/functions/search-vectors.function.ts +0 -59
- package/src/shared/embedding/index.ts +0 -20
- package/src/shared/embedding/typings/embedding-config.interface.ts +0 -23
- package/src/shared/embedding/typings/embedding-provider.interface.ts +0 -25
- package/src/shared/embedding/typings/near-duplicate-candidate.model.ts +0 -25
- package/src/shared/embedding/typings/near-duplicate-result.model.ts +0 -26
- package/src/shared/embedding/typings/vector-index-entry.model.ts +0 -13
- package/src/shared/embedding/typings/vector-index-meta.model.ts +0 -14
- package/src/shared/embedding/typings/vector-search-result.model.ts +0 -8
- package/src/shared/hash/functions/compute-sha256.ts +0 -17
- package/src/shared/hash/index.ts +0 -1
- package/src/shared/mcp/classes/mcp-server.class.ts +0 -480
- package/src/shared/mcp/constants/mcp-error-codes.constant.ts +0 -30
- package/src/shared/mcp/constants/tool-agent-create.constant.ts +0 -39
- package/src/shared/mcp/constants/tool-agent-delete.constant.ts +0 -26
- package/src/shared/mcp/constants/tool-agent-get.constant.ts +0 -24
- package/src/shared/mcp/constants/tool-agent-list.constant.ts +0 -18
- package/src/shared/mcp/constants/tool-auto-capture-review.constant.ts +0 -32
- package/src/shared/mcp/constants/tool-check.constant.ts +0 -21
- package/src/shared/mcp/constants/tool-content.constant.ts +0 -29
- package/src/shared/mcp/constants/tool-export.constant.ts +0 -27
- package/src/shared/mcp/constants/tool-gc.constant.ts +0 -21
- package/src/shared/mcp/constants/tool-learn.constant.ts +0 -58
- package/src/shared/mcp/constants/tool-rebuild.constant.ts +0 -21
- package/src/shared/mcp/constants/tool-recall.constant.ts +0 -36
- package/src/shared/mcp/constants/tool-retrieve.constant.ts +0 -31
- package/src/shared/mcp/constants/tool-search.constant.ts +0 -51
- package/src/shared/mcp/constants/tool-skill-delete.constant.ts +0 -24
- package/src/shared/mcp/constants/tool-skill-get.constant.ts +0 -27
- package/src/shared/mcp/constants/tool-skill-learn.constant.ts +0 -37
- package/src/shared/mcp/constants/tool-skill-list.constant.ts +0 -18
- package/src/shared/mcp/constants/tool-status.constant.ts +0 -20
- package/src/shared/mcp/constants/tool-unlearn.constant.ts +0 -25
- package/src/shared/mcp/functions/as-boolean-or-undefined.function.ts +0 -11
- package/src/shared/mcp/functions/as-string-array-or-undefined.function.ts +0 -17
- package/src/shared/mcp/functions/as-string-array.function.ts +0 -15
- package/src/shared/mcp/functions/as-string.function.ts +0 -10
- package/src/shared/mcp/functions/build-skills-text.function.ts +0 -43
- package/src/shared/mcp/functions/create-mcp-server.function.ts +0 -14
- package/src/shared/mcp/functions/create-prompt-definitions.function.ts +0 -102
- package/src/shared/mcp/functions/create-resource-templates.function.ts +0 -23
- package/src/shared/mcp/functions/create-tool-definitions.function.ts +0 -530
- package/src/shared/mcp/functions/extract-skill-arguments.function.ts +0 -27
- package/src/shared/mcp/functions/handle-agent-create.function.ts +0 -116
- package/src/shared/mcp/functions/handle-agent-delete.function.ts +0 -50
- package/src/shared/mcp/functions/handle-agent-get.function.ts +0 -160
- package/src/shared/mcp/functions/handle-agent-list.function.ts +0 -50
- package/src/shared/mcp/functions/handle-agent-prompt.function.ts +0 -68
- package/src/shared/mcp/functions/handle-completion.function.ts +0 -114
- package/src/shared/mcp/functions/handle-mcp-request.function.ts +0 -202
- package/src/shared/mcp/functions/handle-prompt-get.function.ts +0 -220
- package/src/shared/mcp/functions/handle-recall.function.ts +0 -66
- package/src/shared/mcp/functions/handle-resource-read.function.ts +0 -56
- package/src/shared/mcp/functions/handle-roots-list.function.ts +0 -29
- package/src/shared/mcp/functions/handle-skill-prompt.function.ts +0 -44
- package/src/shared/mcp/functions/handle-tool-auto-capture-review.function.ts +0 -24
- package/src/shared/mcp/functions/handle-tool-call.function.ts +0 -560
- package/src/shared/mcp/functions/handle-tool-check.function.ts +0 -21
- package/src/shared/mcp/functions/handle-tool-content.function.ts +0 -23
- package/src/shared/mcp/functions/handle-tool-export.function.ts +0 -25
- package/src/shared/mcp/functions/handle-tool-gc.function.ts +0 -21
- package/src/shared/mcp/functions/handle-tool-learn.function.ts +0 -69
- package/src/shared/mcp/functions/handle-tool-rebuild.function.ts +0 -21
- package/src/shared/mcp/functions/handle-tool-retrieve.function.ts +0 -40
- package/src/shared/mcp/functions/handle-tool-search.function.ts +0 -47
- package/src/shared/mcp/functions/handle-tool-skill-delete.function.ts +0 -34
- package/src/shared/mcp/functions/handle-tool-skill-get.function.ts +0 -59
- package/src/shared/mcp/functions/handle-tool-skill-learn.function.ts +0 -61
- package/src/shared/mcp/functions/handle-tool-skill-list.function.ts +0 -39
- package/src/shared/mcp/functions/handle-tool-status.function.ts +0 -21
- package/src/shared/mcp/functions/handle-tool-unlearn.function.ts +0 -24
- package/src/shared/mcp/functions/parse-agent-meta.function.ts +0 -27
- package/src/shared/mcp/functions/parse-skill-arguments.function.ts +0 -36
- package/src/shared/mcp/functions/parse-skill-content.function.ts +0 -38
- package/src/shared/mcp/functions/read-agent-meta.function.ts +0 -41
- package/src/shared/mcp/functions/resolve-skill-refs.function.ts +0 -50
- package/src/shared/mcp/functions/run-startup-health-check.function.ts +0 -34
- package/src/shared/mcp/functions/serialize-skill-content.function.ts +0 -12
- package/src/shared/mcp/functions/should-emit-log.function.ts +0 -38
- package/src/shared/mcp/index.ts +0 -28
- package/src/shared/mcp/typings/agent-types.interface.ts +0 -39
- package/src/shared/mcp/typings/log-types.interface.ts +0 -26
- package/src/shared/mcp/typings/mcp-capabilities.interface.ts +0 -16
- package/src/shared/mcp/typings/mcp-client.interface.ts +0 -317
- package/src/shared/mcp/typings/mcp-completion.interface.ts +0 -45
- package/src/shared/mcp/typings/mcp-content-result.model.ts +0 -9
- package/src/shared/mcp/typings/mcp-export-result.model.ts +0 -11
- package/src/shared/mcp/typings/mcp-gc-result.model.ts +0 -15
- package/src/shared/mcp/typings/mcp-integrity-check-result.model.ts +0 -17
- package/src/shared/mcp/typings/mcp-integrity-error.model.ts +0 -15
- package/src/shared/mcp/typings/mcp-notification.interface.ts +0 -9
- package/src/shared/mcp/typings/mcp-rebuild-result.model.ts +0 -9
- package/src/shared/mcp/typings/mcp-request.interface.ts +0 -11
- package/src/shared/mcp/typings/mcp-resource-result.interface.ts +0 -12
- package/src/shared/mcp/typings/mcp-resource-template.interface.ts +0 -11
- package/src/shared/mcp/typings/mcp-response.interface.ts +0 -18
- package/src/shared/mcp/typings/mcp-server-info.interface.ts +0 -7
- package/src/shared/mcp/typings/mcp-server-state.interface.ts +0 -17
- package/src/shared/mcp/typings/mcp-tool-annotations.interface.ts +0 -32
- package/src/shared/mcp/typings/mcp-tool-definition.interface.ts +0 -16
- package/src/shared/mcp/typings/mcp-tool-result.interface.ts +0 -19
- package/src/shared/mcp/typings/mcp-types.interface.ts +0 -158
- package/src/shared/mcp/typings/mcp-worker-client.interface.ts +0 -243
- package/src/shared/mcp/typings/prompt-types.interface.ts +0 -39
- package/src/shared/mcp/typings/remove-section-result.model.ts +0 -10
- package/src/shared/mcp/typings/sampling-types.interface.ts +0 -48
- package/src/shared/mcp/typings/skill-types.interface.ts +0 -29
- package/src/shared/mcp/typings/tool-call-result.model.ts +0 -18
- package/src/shared/mod.ts +0 -1
- package/src/shared/platform/functions/get-ipc-path.function.ts +0 -19
- package/src/shared/platform/functions/get-tmpdir.function.ts +0 -8
- package/src/shared/platform/functions/is-process-alive.function.ts +0 -17
- package/src/shared/platform/index.ts +0 -3
- package/src/shared/runtime/functions/detect-runtime.ts +0 -14
- package/src/shared/runtime/functions/get-args.ts +0 -16
- package/src/shared/runtime/index.ts +0 -3
- package/src/shared/runtime/typings/runtime.ts +0 -2
- package/src/shared/sync/functions/build-import-report.function.ts +0 -40
- package/src/shared/sync/functions/parse-export-entry.function.ts +0 -45
- package/src/shared/sync/functions/resolve-conflict.function.ts +0 -31
- package/src/shared/sync/functions/serialize-export-entry.function.ts +0 -18
- package/src/shared/sync/index.ts +0 -9
- package/src/shared/sync/typings/conflict-resolution.type.ts +0 -8
- package/src/shared/sync/typings/export-entry.interface.ts +0 -13
- package/src/shared/sync/typings/export-options.interface.ts +0 -9
- package/src/shared/sync/typings/import-options.interface.ts +0 -7
- package/src/shared/sync/typings/import-report.interface.ts +0 -15
- package/src/shared/version/constants/version.constant.ts +0 -2
- package/src/shared/version/index.ts +0 -1
- package/src/shared/wasm-codec/functions/decode-add-section-result.function.ts +0 -112
- package/src/shared/wasm-codec/functions/decode-compose-output.function.ts +0 -16
- package/src/shared/wasm-codec/functions/decode-document-manifest-list.function.ts +0 -70
- package/src/shared/wasm-codec/functions/decode-document-manifest.function.ts +0 -87
- package/src/shared/wasm-codec/functions/decode-f32.function.ts +0 -16
- package/src/shared/wasm-codec/functions/decode-key-value-text.function.ts +0 -15
- package/src/shared/wasm-codec/functions/decode-one-recall-result.function.ts +0 -86
- package/src/shared/wasm-codec/functions/decode-option-string.function.ts +0 -24
- package/src/shared/wasm-codec/functions/decode-recall-document.function.ts +0 -59
- package/src/shared/wasm-codec/functions/decode-recall-reference.function.ts +0 -52
- package/src/shared/wasm-codec/functions/decode-recall-result.function.ts +0 -267
- package/src/shared/wasm-codec/functions/decode-recall-sibling.function.ts +0 -43
- package/src/shared/wasm-codec/functions/decode-remove-flag.function.ts +0 -3
- package/src/shared/wasm-codec/functions/decode-scored-results.function.ts +0 -194
- package/src/shared/wasm-codec/functions/decode-section-match.function.ts +0 -80
- package/src/shared/wasm-codec/functions/decode-section-record-list.function.ts +0 -20
- package/src/shared/wasm-codec/functions/decode-section-record-trailing.function.ts +0 -75
- package/src/shared/wasm-codec/functions/decode-section-record.function.ts +0 -85
- package/src/shared/wasm-codec/functions/decode-section-records.function.ts +0 -249
- package/src/shared/wasm-codec/functions/decode-section-type.function.ts +0 -30
- package/src/shared/wasm-codec/functions/decode-string.function.ts +0 -22
- package/src/shared/wasm-codec/functions/decode-u32.function.ts +0 -16
- package/src/shared/wasm-codec/functions/decode-u64.function.ts +0 -16
- package/src/shared/wasm-codec/functions/decode-wasm-list.function.ts +0 -31
- package/src/shared/wasm-codec/functions/encode-add-section-params.function.ts +0 -102
- package/src/shared/wasm-codec/functions/encode-group-params.function.ts +0 -28
- package/src/shared/wasm-codec/functions/encode-identifier-list.function.ts +0 -17
- package/src/shared/wasm-codec/functions/encode-kbid-list.function.ts +0 -17
- package/src/shared/wasm-codec/functions/encode-option-string.function.ts +0 -14
- package/src/shared/wasm-codec/functions/encode-recall-params.function.ts +0 -68
- package/src/shared/wasm-codec/functions/encode-search-params.function.ts +0 -12
- package/src/shared/wasm-codec/functions/encode-section-type.function.ts +0 -18
- package/src/shared/wasm-codec/functions/encode-string.function.ts +0 -9
- package/src/shared/wasm-codec/functions/encode-type-filter-param.function.ts +0 -13
- package/src/shared/wasm-codec/functions/encode-u32.function.ts +0 -5
- package/src/shared/wasm-codec/functions/encode-update-section-params.function.ts +0 -16
- package/src/shared/wasm-codec/index.ts +0 -49
- package/src/shared/wasm-codec/typings/add-section-input.model.ts +0 -45
- package/src/shared/wasm-codec/typings/add-section-result.model.ts +0 -28
- package/src/shared/wasm-codec/typings/document-manifest.model.ts +0 -20
- package/src/shared/wasm-codec/typings/document-section.model.ts +0 -12
- package/src/shared/wasm-codec/typings/item-decoder.type.ts +0 -10
- package/src/shared/wasm-codec/typings/near-duplicate.model.ts +0 -16
- package/src/shared/wasm-codec/typings/paged-search-result.model.ts +0 -22
- package/src/shared/wasm-codec/typings/section-match.model.ts +0 -31
- package/src/shared/wasm-codec/typings/section-record-trailing.model.ts +0 -38
- package/src/shared/wasm-codec/typings/section-record.model.ts +0 -66
- package/src/shared/wasm-codec/typings/section-type-result.model.ts +0 -12
- package/src/shared/worker-client/classes/worker-client.class.ts +0 -466
- package/src/shared/worker-client/functions/compute-context-id.function.ts +0 -18
- package/src/shared/worker-client/functions/create-worker-client.function.ts +0 -70
- package/src/shared/worker-client/functions/discover-daemon.function.ts +0 -47
- package/src/shared/worker-client/functions/handle-ipc-data.function.ts +0 -49
- package/src/shared/worker-client/functions/resolve-db-path.function.ts +0 -21
- package/src/shared/worker-client/functions/send-ipc-request.function.ts +0 -39
- package/src/shared/worker-client/functions/spawn-daemon.function.ts +0 -35
- package/src/shared/worker-client/functions/wait-for-daemon.function.ts +0 -34
- package/src/shared/worker-client/index.ts +0 -44
- package/src/shared/worker-client/typings/add-section-result.model.ts +0 -39
- package/src/shared/worker-client/typings/content-result.model.ts +0 -12
- package/src/shared/worker-client/typings/daemon-info.model.ts +0 -7
- package/src/shared/worker-client/typings/export-result.model.ts +0 -14
- package/src/shared/worker-client/typings/gc-result.model.ts +0 -18
- package/src/shared/worker-client/typings/integrity-check-result.model.ts +0 -43
- package/src/shared/worker-client/typings/json-rpc-response.interface.ts +0 -17
- package/src/shared/worker-client/typings/migrate-result.model.ts +0 -11
- package/src/shared/worker-client/typings/pending-call.interface.ts +0 -7
- package/src/shared/worker-client/typings/rebuild-result.model.ts +0 -12
- package/src/shared/worker-client/typings/recall-document.model.ts +0 -16
- package/src/shared/worker-client/typings/recall-params.model.ts +0 -15
- package/src/shared/worker-client/typings/recall-reference.model.ts +0 -32
- package/src/shared/worker-client/typings/recall-result.model.ts +0 -98
- package/src/shared/worker-client/typings/recall-sibling.model.ts +0 -11
- package/src/shared/worker-client/typings/recall-single-result.model.ts +0 -41
- package/src/shared/worker-client/typings/remove-section-result.model.ts +0 -7
- package/src/shared/worker-client/typings/search-params.model.ts +0 -14
- package/src/shared/worker-client/typings/search-result.model.ts +0 -43
- package/src/shared/worker-client/typings/section.model.ts +0 -43
- package/src/shared/worker-client/typings/status-result.model.ts +0 -14
- package/src/shared/worker-client/typings/version-status.model.ts +0 -28
- package/src/shared/worker-client/typings/worker-client-error.interface.ts +0 -8
- package/src/shared/worker-client/typings/worker-client-options.interface.ts +0 -30
- package/src/shared/worker-daemon/classes/ipc-error.class.ts +0 -22
- package/src/shared/worker-daemon/classes/worker-daemon.class.ts +0 -1291
- package/src/shared/worker-daemon/constants/daemon-defaults.constant.ts +0 -29
- package/src/shared/worker-daemon/constants/wasm-method-map.constant.ts +0 -69
- package/src/shared/worker-daemon/functions/build-ipc-error-response.function.ts +0 -16
- package/src/shared/worker-daemon/functions/check-catalog-version.function.ts +0 -54
- package/src/shared/worker-daemon/functions/check-preconditions.function.ts +0 -28
- package/src/shared/worker-daemon/functions/create-host-imports.function.ts +0 -328
- package/src/shared/worker-daemon/functions/create-ipc-server.function.ts +0 -87
- package/src/shared/worker-daemon/functions/detect-stale-pid.function.ts +0 -33
- package/src/shared/worker-daemon/functions/dispatch-request.function.ts +0 -190
- package/src/shared/worker-daemon/functions/handle-check-version.function.ts +0 -74
- package/src/shared/worker-daemon/functions/handle-config-method.function.ts +0 -27
- package/src/shared/worker-daemon/functions/handle-read-ops.function.ts +0 -236
- package/src/shared/worker-daemon/functions/handle-write-ops.function.ts +0 -257
- package/src/shared/worker-daemon/functions/load-wasm-modules.function.ts +0 -95
- package/src/shared/worker-daemon/functions/parse-auto-capture-section.function.ts +0 -51
- package/src/shared/worker-daemon/functions/parse-catalog-version.function.ts +0 -20
- package/src/shared/worker-daemon/functions/parse-embedding-section.function.ts +0 -38
- package/src/shared/worker-daemon/functions/parse-worker-toml.function.ts +0 -104
- package/src/shared/worker-daemon/functions/read-config.function.ts +0 -83
- package/src/shared/worker-daemon/functions/run-startup-integrity-check.function.ts +0 -55
- package/src/shared/worker-daemon/functions/run-worker.function.ts +0 -57
- package/src/shared/worker-daemon/functions/scan-near-duplicates.function.ts +0 -92
- package/src/shared/worker-daemon/functions/start-daemon.function.ts +0 -74
- package/src/shared/worker-daemon/functions/wasm-bridge.function.ts +0 -144
- package/src/shared/worker-daemon/functions/wasm-memory-helpers.function.ts +0 -41
- package/src/shared/worker-daemon/functions/write-lock.function.ts +0 -49
- package/src/shared/worker-daemon/index.ts +0 -16
- package/src/shared/worker-daemon/typings/allocator-ref.interface.ts +0 -16
- package/src/shared/worker-daemon/typings/daemon-config.interface.ts +0 -20
- package/src/shared/worker-daemon/typings/fs-adapter.interface.ts +0 -22
- package/src/shared/worker-daemon/typings/handler-context.interface.ts +0 -19
- package/src/shared/worker-daemon/typings/ipc-handler.interface.ts +0 -39
- package/src/shared/worker-daemon/typings/memory-ref.interface.ts +0 -13
- package/src/shared/worker-daemon/typings/wasm-fn.type.ts +0 -2
- package/src/shared/worker-daemon/typings/wasm-modules.interface.ts +0 -7
- package/src/shared/worker-daemon/typings/write-lock.interface.ts +0 -13
- package/src/wasm/fs-database/kbdb_fs_database.d.ts +0 -259
- package/src/wasm/fs-database/kbdb_fs_database.js +0 -515
- package/src/wasm/fs-database/kbdb_fs_database_bg.wasm +0 -0
- package/src/wasm/fs-database/kbdb_fs_database_bg.wasm.d.ts +0 -35
- package/src/wasm/fs-database/package.json +0 -13
- package/src/wasm/kb-worker/kbdb_worker.d.ts +0 -650
- package/src/wasm/kb-worker/kbdb_worker.js +0 -1181
- package/src/wasm/kb-worker/kbdb_worker_bg.wasm +0 -0
- package/src/wasm/kb-worker/kbdb_worker_bg.wasm.d.ts +0 -77
- package/src/wasm/kb-worker/package.json +0 -13
- package/src/wasm/query-parser/kbdb_query_parser.d.ts +0 -195
- package/src/wasm/query-parser/kbdb_query_parser.js +0 -403
- package/src/wasm/query-parser/kbdb_query_parser_bg.wasm.d.ts +0 -25
- package/src/wasm/query-parser/package.json +0 -13
- package/src/worker.ts +0 -42
|
@@ -14,6 +14,7 @@ import type { SectionRecord } from '../../wasm-codec/functions/decode-section-re
|
|
|
14
14
|
import type { DocumentManifest } from '../../wasm-codec/functions/decode-document-manifest.function.ts';
|
|
15
15
|
import type { RecallParams, RecallResult } from '../typings/recall-result.model.ts';
|
|
16
16
|
import type { ExportResult } from '../typings/export-result.model.ts';
|
|
17
|
+
import type { ImportResult } from '../typings/import-result.model.ts';
|
|
17
18
|
/**
|
|
18
19
|
* IPC client that communicates with the worker daemon over a Unix
|
|
19
20
|
* domain socket (or Windows named pipe) using JSON-RPC 2.0 with
|
|
@@ -25,6 +26,7 @@ import type { ExportResult } from '../typings/export-result.model.ts';
|
|
|
25
26
|
export declare class WorkerClient {
|
|
26
27
|
private readonly socketPath;
|
|
27
28
|
private readonly contextId;
|
|
29
|
+
private readonly requestTimeoutMs?;
|
|
28
30
|
/** Underlying socket; `null` when not connected. */
|
|
29
31
|
private socket;
|
|
30
32
|
/** Monotonically increasing request ID counter. */
|
|
@@ -38,16 +40,40 @@ export declare class WorkerClient {
|
|
|
38
40
|
* (or Windows named pipe path)
|
|
39
41
|
* @param contextId - 16-character context identifier sent as
|
|
40
42
|
* `ctx` in every JSON-RPC request
|
|
43
|
+
* @param requestTimeoutMs - per-request timeout in ms
|
|
44
|
+
* (0 or undefined disables the timeout)
|
|
41
45
|
*/
|
|
42
|
-
constructor(socketPath: string, contextId: string);
|
|
46
|
+
constructor(socketPath: string, contextId: string, requestTimeoutMs?: number | undefined);
|
|
47
|
+
/** Whether the underlying socket is connected. */
|
|
48
|
+
get isConnected(): boolean;
|
|
43
49
|
/**
|
|
44
50
|
* Establishes the IPC connection to the worker daemon.
|
|
45
51
|
*
|
|
52
|
+
* Retries up to 5 times with exponential backoff on
|
|
53
|
+
* transient errors (`ENOENT`, `ECONNREFUSED`).
|
|
54
|
+
*
|
|
46
55
|
* @throws {Error} if the connection cannot be established
|
|
47
56
|
*/
|
|
48
57
|
connect(): Promise<void>;
|
|
49
58
|
/** Destroys the IPC socket and clears the connection state. */
|
|
50
59
|
disconnect(): void;
|
|
60
|
+
/**
|
|
61
|
+
* Kills the daemon process and disconnects the client.
|
|
62
|
+
*
|
|
63
|
+
* Discovers the daemon via PID file and sends `SIGTERM`.
|
|
64
|
+
* Always disconnects the socket regardless of kill outcome.
|
|
65
|
+
*/
|
|
66
|
+
killDaemon(): void;
|
|
67
|
+
/**
|
|
68
|
+
* Single connection attempt with keepalive and
|
|
69
|
+
* post-connect failure handlers.
|
|
70
|
+
*/
|
|
71
|
+
private tryConnect;
|
|
72
|
+
/**
|
|
73
|
+
* Rejects all pending calls and marks the client as
|
|
74
|
+
* disconnected.
|
|
75
|
+
*/
|
|
76
|
+
private handleSocketFailure;
|
|
51
77
|
/**
|
|
52
78
|
* Searches the knowledge base.
|
|
53
79
|
*
|
|
@@ -236,7 +262,18 @@ export declare class WorkerClient {
|
|
|
236
262
|
*/
|
|
237
263
|
export(params?: {
|
|
238
264
|
path?: string;
|
|
265
|
+
format?: string;
|
|
239
266
|
}): Promise<ExportResult>;
|
|
267
|
+
/**
|
|
268
|
+
* Imports an exported database from the given path.
|
|
269
|
+
*
|
|
270
|
+
* @param params - source path and dry-run flag
|
|
271
|
+
* @returns import report with counts and timing
|
|
272
|
+
*/
|
|
273
|
+
import(params: {
|
|
274
|
+
from: string;
|
|
275
|
+
dryRun: boolean;
|
|
276
|
+
}): Promise<ImportResult>;
|
|
240
277
|
/**
|
|
241
278
|
* Sends a JSON-RPC 2.0 request and awaits the response.
|
|
242
279
|
*
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { WorkerClient } from '../classes/worker-client.class.ts';
|
|
2
|
+
import type { WorkerClientOptions } from '../typings/worker-client-options.interface.ts';
|
|
3
|
+
/**
|
|
4
|
+
* Returns a cached `WorkerClient` for the given context
|
|
5
|
+
* path, or creates and caches a new one if the cached
|
|
6
|
+
* client is disconnected or absent.
|
|
7
|
+
*
|
|
8
|
+
* Intended for library consumers and the MCP server. CLI
|
|
9
|
+
* one-shots should use `createWorkerClient()` directly.
|
|
10
|
+
*
|
|
11
|
+
* @param options - optional configuration forwarded to
|
|
12
|
+
* `createWorkerClient`
|
|
13
|
+
* @returns a connected `WorkerClient`
|
|
14
|
+
*/
|
|
15
|
+
export declare function getOrCreateClient(options?: WorkerClientOptions): Promise<WorkerClient>;
|
|
16
|
+
/**
|
|
17
|
+
* Clears the internal client cache. Intended for tests
|
|
18
|
+
* that need isolation between runs.
|
|
19
|
+
*/
|
|
20
|
+
export declare function clearClientCache(): void;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retries an operation when the daemon responds with
|
|
3
|
+
* a `REQUEST_TIMEOUT` error. Each retry disconnects
|
|
4
|
+
* the current client, creates a fresh one (which
|
|
5
|
+
* auto-spawns the daemon), and re-runs the operation.
|
|
6
|
+
*
|
|
7
|
+
* @param createClient - factory that returns a connected client
|
|
8
|
+
* @param operation - the work to perform with the client
|
|
9
|
+
* @param maxRetries - maximum retry attempts
|
|
10
|
+
* @returns the final client and result
|
|
11
|
+
*/
|
|
12
|
+
export declare function retryOnTimeout<TClient extends {
|
|
13
|
+
disconnect(): void;
|
|
14
|
+
killDaemon?: () => void;
|
|
15
|
+
}, TResult>(createClient: () => Promise<TClient>, operation: (client: TClient) => Promise<TResult>, maxRetries: number): Promise<{
|
|
16
|
+
client: TClient;
|
|
17
|
+
result: TResult;
|
|
18
|
+
}>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { WorkerClient } from './classes/worker-client.class.ts';
|
|
2
2
|
export { createWorkerClient } from './functions/create-worker-client.function.ts';
|
|
3
|
+
export { getOrCreateClient, clearClientCache, } from './functions/get-or-create-client.function.ts';
|
|
3
4
|
export { resolveDbPath } from './functions/resolve-db-path.function.ts';
|
|
4
5
|
export { computeContextId } from './functions/compute-context-id.function.ts';
|
|
5
6
|
export { discoverDaemon } from './functions/discover-daemon.function.ts';
|
|
@@ -15,9 +16,11 @@ export type { DaemonInfo } from './typings/daemon-info.model.ts';
|
|
|
15
16
|
export type { AddSectionResult, NearDuplicateEntry, } from './typings/add-section-result.model.ts';
|
|
16
17
|
export type { RemoveSectionResult } from './typings/remove-section-result.model.ts';
|
|
17
18
|
export type { ContentResult } from './typings/content-result.model.ts';
|
|
18
|
-
export type { IntegrityCheckResult, IntegrityError, } from './typings/integrity-check-result.model.ts';
|
|
19
|
+
export type { IntegrityCheckResult, IntegrityError, SemanticContradictionEntry, } from './typings/integrity-check-result.model.ts';
|
|
19
20
|
export type { GcResult } from './typings/gc-result.model.ts';
|
|
20
21
|
export type { RebuildResult } from './typings/rebuild-result.model.ts';
|
|
21
22
|
export type { MigrateResult } from './typings/migrate-result.model.ts';
|
|
22
23
|
export type { VersionCompatibility, VersionStatus, } from './typings/version-status.model.ts';
|
|
23
24
|
export type { RecallParams, RecallResult, RecallDocument, RecallSibling, RecallReference, } from './typings/recall-result.model.ts';
|
|
25
|
+
export type { ImportResult } from './typings/import-result.model.ts';
|
|
26
|
+
export type { ExportResult } from './typings/export-result.model.ts';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Report returned after importing an exported database into the
|
|
3
|
+
* current knowledge base.
|
|
4
|
+
*/
|
|
5
|
+
export interface ImportResult {
|
|
6
|
+
/** Number of sections imported. */
|
|
7
|
+
readonly sections_imported: number;
|
|
8
|
+
/** Number of documents imported. */
|
|
9
|
+
readonly documents_imported: number;
|
|
10
|
+
/** Whether a rebuild was triggered after import. */
|
|
11
|
+
readonly rebuilt: boolean;
|
|
12
|
+
/** Whether this was a dry-run (no writes). */
|
|
13
|
+
readonly dry_run: boolean;
|
|
14
|
+
/** Wall-clock time in milliseconds. */
|
|
15
|
+
readonly elapsed_ms: number;
|
|
16
|
+
}
|
|
@@ -16,6 +16,24 @@ export interface IntegrityError {
|
|
|
16
16
|
/** Human-readable description of the specific problem. */
|
|
17
17
|
readonly detail: string;
|
|
18
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Advisory finding: two sections whose embedding vectors point in
|
|
21
|
+
* opposite directions, indicating potential semantic conflict.
|
|
22
|
+
*
|
|
23
|
+
* Does not affect the `ok` field of `IntegrityCheckResult`.
|
|
24
|
+
*/
|
|
25
|
+
export interface SemanticContradictionEntry {
|
|
26
|
+
/** Knowledge-base identifier of the first section in the pair. */
|
|
27
|
+
readonly kbid_a: string;
|
|
28
|
+
/** Knowledge-base identifier of the second section in the pair. */
|
|
29
|
+
readonly kbid_b: string;
|
|
30
|
+
/**
|
|
31
|
+
* Cosine similarity score (negative, in range -1.0 to 0.0).
|
|
32
|
+
*
|
|
33
|
+
* More negative values indicate stronger semantic opposition.
|
|
34
|
+
*/
|
|
35
|
+
readonly score: number;
|
|
36
|
+
}
|
|
19
37
|
/**
|
|
20
38
|
* Report returned by the daemon after running an integrity check
|
|
21
39
|
* on the knowledge-base database.
|
|
@@ -33,4 +51,10 @@ export interface IntegrityCheckResult {
|
|
|
33
51
|
readonly references_checked: number;
|
|
34
52
|
/** Time taken to complete the check, in milliseconds. */
|
|
35
53
|
readonly elapsed_ms: number;
|
|
54
|
+
/**
|
|
55
|
+
* Advisory list of section pairs with semantically contradictory
|
|
56
|
+
* embeddings. Empty when no embedding provider is configured or
|
|
57
|
+
* when no `vectors.idx` file is present. Never affects `ok`.
|
|
58
|
+
*/
|
|
59
|
+
readonly semantic_contradictions: SemanticContradictionEntry[];
|
|
36
60
|
}
|
|
@@ -11,4 +11,8 @@ export interface SearchParams {
|
|
|
11
11
|
readonly limit?: number;
|
|
12
12
|
/** Number of results to skip (pagination offset). */
|
|
13
13
|
readonly offset?: number;
|
|
14
|
+
/** Search algorithm: `'lexical'`, `'vector'`, or `'hybrid'`. */
|
|
15
|
+
readonly algo?: string;
|
|
16
|
+
/** Use relaxed (OR) matching for the query. */
|
|
17
|
+
readonly relaxed?: boolean;
|
|
14
18
|
}
|
|
@@ -39,4 +39,10 @@ export interface PagedSearchResult {
|
|
|
39
39
|
readonly limit: number;
|
|
40
40
|
/** Whether more results exist beyond this page. */
|
|
41
41
|
readonly has_more: boolean;
|
|
42
|
+
/** Whether the engine relaxed the query to produce results. */
|
|
43
|
+
readonly relaxed?: boolean;
|
|
44
|
+
/** Algorithm that produced these results. */
|
|
45
|
+
readonly search_mode?: string;
|
|
46
|
+
/** Retrieval strategy used (e.g. `'lexical'`, `'rrf'`). */
|
|
47
|
+
readonly retrieval_method?: string;
|
|
42
48
|
}
|
|
@@ -27,4 +27,11 @@ export interface WorkerClientOptions {
|
|
|
27
27
|
* `spawnDaemon` needs no runtime-specific path logic.
|
|
28
28
|
*/
|
|
29
29
|
readonly workerScript?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Per-request timeout in milliseconds for daemon IPC
|
|
32
|
+
* calls. When a request exceeds this duration, the
|
|
33
|
+
* Promise rejects with a `REQUEST_TIMEOUT` error.
|
|
34
|
+
* Defaults to `undefined` (no timeout).
|
|
35
|
+
*/
|
|
36
|
+
readonly requestTimeoutMs?: number;
|
|
30
37
|
}
|
|
@@ -21,9 +21,11 @@ export declare class WorkerDaemon {
|
|
|
21
21
|
get connectionCount(): number;
|
|
22
22
|
private _connectionCount;
|
|
23
23
|
private _wasmModules;
|
|
24
|
+
private _embeddingProvider;
|
|
24
25
|
private _idleAt;
|
|
25
26
|
private _idleTimer;
|
|
26
27
|
private _server;
|
|
28
|
+
private readonly _sockets;
|
|
27
29
|
private readonly _wasmDir;
|
|
28
30
|
/** Queue of waiters for the single-writer lock. */
|
|
29
31
|
private _writeQueue;
|
|
@@ -121,6 +123,7 @@ export declare class WorkerDaemon {
|
|
|
121
123
|
private dispatch;
|
|
122
124
|
private dispatchWasm;
|
|
123
125
|
private handleSearch;
|
|
126
|
+
private runLexicalSearch;
|
|
124
127
|
private handleResultStatus;
|
|
125
128
|
private handleGetResult;
|
|
126
129
|
private handleAddSection;
|
|
@@ -142,6 +145,9 @@ export declare class WorkerDaemon {
|
|
|
142
145
|
private handleGc;
|
|
143
146
|
private handleRebuild;
|
|
144
147
|
private handleExport;
|
|
148
|
+
private handleImport;
|
|
149
|
+
private countFiles;
|
|
150
|
+
private collectFiles;
|
|
145
151
|
private scanNearDuplicates;
|
|
146
152
|
private extractTermSet;
|
|
147
153
|
/**
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import type { Server } from 'node:net';
|
|
2
2
|
import type { IpcHandler } from '../typings/ipc-handler.interface.ts';
|
|
3
3
|
/**
|
|
4
|
-
* Creates a Unix socket (or named pipe on Windows) IPC
|
|
5
|
-
* reads newline-delimited JSON-RPC requests
|
|
4
|
+
* Creates a Unix socket (or named pipe on Windows) IPC
|
|
5
|
+
* server that reads newline-delimited JSON-RPC requests
|
|
6
|
+
* and writes responses.
|
|
6
7
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* A malformed line that cannot be parsed results in a JSON-RPC
|
|
11
|
-
* parse-error response (`-32700`).
|
|
8
|
+
* Resolves after the server is bound and listening.
|
|
9
|
+
* Accepted connections have `SO_KEEPALIVE` enabled at
|
|
10
|
+
* a 30-second interval.
|
|
12
11
|
*
|
|
13
|
-
* @param socketPath - path to the Unix domain socket or
|
|
14
|
-
* named pipe
|
|
15
|
-
* @param handler - async function invoked for each valid
|
|
12
|
+
* @param socketPath - path to the Unix domain socket or
|
|
13
|
+
* Windows named pipe
|
|
14
|
+
* @param handler - async function invoked for each valid
|
|
15
|
+
* request
|
|
16
16
|
* @returns the listening `net.Server` instance
|
|
17
17
|
*/
|
|
18
|
-
export declare function createIpcServer(socketPath: string, handler: IpcHandler): Server
|
|
18
|
+
export declare function createIpcServer(socketPath: string, handler: IpcHandler): Promise<Server>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { EmbeddingProvider } from '../../embedding/typings/embedding-provider.interface.ts';
|
|
2
|
+
/**
|
|
3
|
+
* Embeds a section's content and appends it to `vectors.idx`.
|
|
4
|
+
*
|
|
5
|
+
* Skips silently when embeddings are disabled (no provider or
|
|
6
|
+
* zero dimensions) or when the content is empty.
|
|
7
|
+
*
|
|
8
|
+
* @param provider - embedding provider (undefined = disabled)
|
|
9
|
+
* @param targetDir - path to the `.kbdb` directory
|
|
10
|
+
* @param kbid - section identifier to embed
|
|
11
|
+
* @param content - section text content
|
|
12
|
+
*/
|
|
13
|
+
export declare function embedAfterLearn(provider: EmbeddingProvider | undefined, targetDir: string, kbid: string, content: string): Promise<void>;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { EmbeddingProvider } from '../../embedding/typings/embedding-provider.interface.ts';
|
|
2
|
+
/** Lexical search result from WASM decoder. */
|
|
3
|
+
interface LexicalResult {
|
|
4
|
+
items: LexicalItem[];
|
|
5
|
+
total: number;
|
|
6
|
+
offset: number;
|
|
7
|
+
limit: number;
|
|
8
|
+
has_more: boolean;
|
|
9
|
+
relaxed: boolean;
|
|
10
|
+
}
|
|
11
|
+
/** A single item from the lexical search result. */
|
|
12
|
+
interface LexicalItem {
|
|
13
|
+
kbid: string;
|
|
14
|
+
heading: string | null;
|
|
15
|
+
type: string;
|
|
16
|
+
docids: string[];
|
|
17
|
+
score: number;
|
|
18
|
+
confidence: number;
|
|
19
|
+
snippet: string;
|
|
20
|
+
matched_terms: string[];
|
|
21
|
+
matched_fields: string[];
|
|
22
|
+
created_at: string;
|
|
23
|
+
}
|
|
24
|
+
/** Search result with search_mode and retrieval_method. */
|
|
25
|
+
interface FusedSearchResult extends LexicalResult {
|
|
26
|
+
search_mode: string;
|
|
27
|
+
retrieval_method: string;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Fuses lexical search results with vector search results.
|
|
31
|
+
*
|
|
32
|
+
* When `algo` is `'lexical'`, returns the lexical result as-is.
|
|
33
|
+
* When `algo` is `'hybrid'`, runs vector search against
|
|
34
|
+
* `vectors.idx` and fuses via RRF. When `algo` is `'vector'`,
|
|
35
|
+
* returns vector-only results.
|
|
36
|
+
*
|
|
37
|
+
* @param lexical - decoded lexical result from WASM
|
|
38
|
+
* @param algo - search algorithm: lexical, hybrid, or vector
|
|
39
|
+
* @param query - the original search query text
|
|
40
|
+
* @param provider - embedding provider (undefined = disabled)
|
|
41
|
+
* @param targetDir - path to the `.kbdb` directory
|
|
42
|
+
*/
|
|
43
|
+
export declare function fuseSearchResults(lexical: LexicalResult, algo: string, query: string, provider: EmbeddingProvider | undefined, targetDir: string): Promise<FusedSearchResult>;
|
|
44
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { HandlerContext } from '../typings/handler-context.interface.ts';
|
|
2
|
+
import type { ImportResult } from '../../worker-client/typings/import-result.model.ts';
|
|
3
|
+
/**
|
|
4
|
+
* Handles the `importDb` IPC method.
|
|
5
|
+
*
|
|
6
|
+
* Reads sections and documents from an exported directory and
|
|
7
|
+
* feeds them back through the WASM add-section pipeline. When
|
|
8
|
+
* `dryRun` is `true`, counts files without writing.
|
|
9
|
+
*
|
|
10
|
+
* @param ctx - handler context with WASM modules
|
|
11
|
+
* @param params - `sourcePath` and `dryRun` flag
|
|
12
|
+
* @returns import report with counts and timing
|
|
13
|
+
*/
|
|
14
|
+
export declare function handleImport(ctx: HandlerContext, params: Record<string, unknown>): Promise<ImportResult>;
|
|
@@ -4,8 +4,9 @@ import type { HandlerContext } from '../typings/handler-context.interface.ts';
|
|
|
4
4
|
*
|
|
5
5
|
* Encodes parameters, invokes the `worker_search` token pipeline,
|
|
6
6
|
* waits synchronously for the result, and decodes the paged result.
|
|
7
|
+
* When `algo` is `'hybrid'` or `'vector'`, fuses with vector search.
|
|
7
8
|
*/
|
|
8
|
-
export declare function handleSearch(ctx: HandlerContext, params: Record<string, unknown>): unknown
|
|
9
|
+
export declare function handleSearch(ctx: HandlerContext, params: Record<string, unknown>): Promise<unknown>;
|
|
9
10
|
/**
|
|
10
11
|
* Handles the `get_result_status` IPC method.
|
|
11
12
|
*/
|
|
@@ -28,6 +29,11 @@ export declare function handleRetrieveDoc(ctx: HandlerContext, params: Record<st
|
|
|
28
29
|
export declare function handleCompose(ctx: HandlerContext, params: Record<string, unknown>): unknown;
|
|
29
30
|
/**
|
|
30
31
|
* Handles the `integrityCheck` IPC method.
|
|
32
|
+
*
|
|
33
|
+
* Runs the WASM integrity check and, when an embedding provider is
|
|
34
|
+
* available, appends an advisory `stale_vectors` field if the
|
|
35
|
+
* `vectors.idx` is outdated. The `ok` flag is not affected by stale
|
|
36
|
+
* vectors.
|
|
31
37
|
*/
|
|
32
38
|
export declare function handleIntegrityCheck(ctx: HandlerContext): unknown;
|
|
33
39
|
/**
|
|
@@ -2,10 +2,12 @@ import type { HandlerContext } from '../typings/handler-context.interface.ts';
|
|
|
2
2
|
/**
|
|
3
3
|
* Handles the `addSection` IPC method.
|
|
4
4
|
*
|
|
5
|
-
* Encodes the section input, delegates to `worker_add_section`,
|
|
6
|
-
* runs a near-duplicate scan when the WASM result reports none
|
|
5
|
+
* Encodes the section input, delegates to `worker_add_section`,
|
|
6
|
+
* runs a near-duplicate scan when the WASM result reports none,
|
|
7
|
+
* and embeds the section content when an embedding provider is
|
|
8
|
+
* configured.
|
|
7
9
|
*/
|
|
8
|
-
export declare function handleAddSection(ctx: HandlerContext, params: Record<string, unknown>): unknown
|
|
10
|
+
export declare function handleAddSection(ctx: HandlerContext, params: Record<string, unknown>): Promise<unknown>;
|
|
9
11
|
/**
|
|
10
12
|
* Handles the `updateSection` IPC method.
|
|
11
13
|
*/
|
|
@@ -40,5 +42,8 @@ export declare function handleInvalidateAll(ctx: HandlerContext): unknown;
|
|
|
40
42
|
export declare function handleGc(ctx: HandlerContext): unknown;
|
|
41
43
|
/**
|
|
42
44
|
* Handles the `rebuildIndexes` IPC method.
|
|
45
|
+
*
|
|
46
|
+
* Invokes the WASM keyword-index rebuild and, when an embedding
|
|
47
|
+
* provider is configured, also rebuilds the vector index.
|
|
43
48
|
*/
|
|
44
|
-
export declare function handleRebuild(ctx: HandlerContext): unknown
|
|
49
|
+
export declare function handleRebuild(ctx: HandlerContext): Promise<unknown>;
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
import type { LogLevel } from '../../log/typings/log-level.type.ts';
|
|
1
2
|
/** Result of the worker entry point. */
|
|
2
3
|
export interface WorkerResult {
|
|
3
4
|
/** Error message (if any). */
|
|
4
5
|
error?: string;
|
|
5
6
|
/** Process exit code. `0` means success. */
|
|
6
7
|
exitCode: number;
|
|
8
|
+
/** Parsed log level from `--log-level`, if provided. */
|
|
9
|
+
logLevel?: LogLevel;
|
|
7
10
|
}
|
|
8
11
|
/**
|
|
9
12
|
* Injectable dependencies for the worker entry point.
|
|
@@ -20,7 +23,9 @@ export interface WorkerDeps {
|
|
|
20
23
|
* absolute path, checks existence, and delegates to
|
|
21
24
|
* `startDaemon`.
|
|
22
25
|
*
|
|
23
|
-
*
|
|
26
|
+
* Accepts `--log-level <level>` to configure daemon logging.
|
|
27
|
+
*
|
|
28
|
+
* @param argv - raw arguments
|
|
24
29
|
* @param deps - injectable dependencies
|
|
25
30
|
*/
|
|
26
31
|
export declare function runWorker(argv: string[], deps: WorkerDeps): Promise<WorkerResult>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { DaemonConfig } from './daemon-config.interface.ts';
|
|
2
2
|
import type { WasmModules } from './wasm-modules.interface.ts';
|
|
3
|
+
import type { EmbeddingProvider } from '../../embedding/typings/embedding-provider.interface.ts';
|
|
3
4
|
/**
|
|
4
5
|
* Runtime context passed to all IPC request handler functions.
|
|
5
6
|
*
|
|
@@ -15,4 +16,6 @@ export interface HandlerContext {
|
|
|
15
16
|
readonly config: DaemonConfig;
|
|
16
17
|
/** Loaded WASM module instances. */
|
|
17
18
|
readonly modules: WasmModules;
|
|
19
|
+
/** Embedding provider for vector/hybrid search. */
|
|
20
|
+
readonly embeddingProvider?: EmbeddingProvider;
|
|
18
21
|
}
|
|
@@ -4,4 +4,9 @@ export interface WasmModules {
|
|
|
4
4
|
readonly memory: WebAssembly.Memory;
|
|
5
5
|
/** Instantiated kb-worker WASM module. */
|
|
6
6
|
readonly kbWorker: WebAssembly.Instance;
|
|
7
|
+
/**
|
|
8
|
+
* Instantiated default-embedding WASM module.
|
|
9
|
+
* Absent when the WASM file is unavailable.
|
|
10
|
+
*/
|
|
11
|
+
readonly embedding?: WebAssembly.Instance;
|
|
7
12
|
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
declare namespace wasm_bindgen {
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Returns the number of dimensions in the embedding vector.
|
|
7
|
+
*/
|
|
8
|
+
export function embedding_dimensions(): number;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Writes the model name "tfidf-v1" to the return slot. Returns 1.
|
|
12
|
+
*/
|
|
13
|
+
export function embedding_model_name(): number;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Embed a single UTF-8 text into a 256-dimensional TF-IDF vector.
|
|
17
|
+
*
|
|
18
|
+
* Reads text from `(ptr, len)`, writes raw little-endian f32 bytes to
|
|
19
|
+
* the return slot. Returns 1 on success.
|
|
20
|
+
*/
|
|
21
|
+
export function embedding_tfidf(ptr: number, len: number): number;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Embed a newline-separated batch of texts into 256-dimensional vectors.
|
|
25
|
+
*
|
|
26
|
+
* Encodes: u32 count, then count × DIMENSIONS f32 values (little-endian).
|
|
27
|
+
* Returns 1 on success.
|
|
28
|
+
*/
|
|
29
|
+
export function embedding_tfidf_batch(ptr: number, len: number): number;
|
|
30
|
+
|
|
31
|
+
}
|
|
32
|
+
declare type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
|
|
33
|
+
|
|
34
|
+
declare interface InitOutput {
|
|
35
|
+
readonly memory: WebAssembly.Memory;
|
|
36
|
+
readonly set_return: (a: number, b: number) => void;
|
|
37
|
+
readonly embedding_tfidf: (a: number, b: number) => number;
|
|
38
|
+
readonly embedding_tfidf_batch: (a: number, b: number) => number;
|
|
39
|
+
readonly embedding_dimensions: () => number;
|
|
40
|
+
readonly embedding_model_name: () => number;
|
|
41
|
+
readonly kbdb_alloc: (a: number) => number;
|
|
42
|
+
readonly get_return_len: () => number;
|
|
43
|
+
readonly get_return_ptr: () => number;
|
|
44
|
+
readonly kbdb_free: (a: number, b: number) => void;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* If `module_or_path` is {RequestInfo} or {URL}, makes a request and
|
|
49
|
+
* for everything else, calls `WebAssembly.instantiate` directly.
|
|
50
|
+
*
|
|
51
|
+
* @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
|
|
52
|
+
*
|
|
53
|
+
* @returns {Promise<InitOutput>}
|
|
54
|
+
*/
|
|
55
|
+
declare function wasm_bindgen (module_or_path?: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;
|