agentic-qe 3.6.19 → 3.7.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/.claude/skills/pr-review/SKILL.md +1 -1
- package/.claude/skills/skills-manifest.json +6 -6
- package/README.md +43 -7
- package/package.json +3 -2
- package/scripts/generate-opencode-agents.ts +523 -0
- package/scripts/generate-opencode-skills.ts +318 -0
- package/scripts/rvf-baseline-benchmark.ts +843 -0
- package/v3/CHANGELOG.md +56 -0
- package/v3/README.md +7 -7
- package/v3/assets/skills/pr-review/SKILL.md +1 -1
- package/v3/dist/adapters/a2a/notifications/retry-queue.d.ts.map +1 -1
- package/v3/dist/adapters/a2a/notifications/retry-queue.js +2 -1
- package/v3/dist/adapters/a2a/notifications/retry-queue.js.map +1 -1
- package/v3/dist/adapters/a2a/notifications/subscription-store.d.ts.map +1 -1
- package/v3/dist/adapters/a2a/notifications/subscription-store.js +2 -1
- package/v3/dist/adapters/a2a/notifications/subscription-store.js.map +1 -1
- package/v3/dist/adapters/a2a/tasks/task-manager.d.ts.map +1 -1
- package/v3/dist/adapters/a2a/tasks/task-manager.js +4 -3
- package/v3/dist/adapters/a2a/tasks/task-manager.js.map +1 -1
- package/v3/dist/agents/claim-verifier/index.d.ts.map +1 -1
- package/v3/dist/agents/claim-verifier/index.js +2 -1
- package/v3/dist/agents/claim-verifier/index.js.map +1 -1
- package/v3/dist/audit/witness-chain.d.ts +148 -0
- package/v3/dist/audit/witness-chain.d.ts.map +1 -0
- package/v3/dist/audit/witness-chain.js +269 -0
- package/v3/dist/audit/witness-chain.js.map +1 -0
- package/v3/dist/cli/brain-commands.d.ts +39 -0
- package/v3/dist/cli/brain-commands.d.ts.map +1 -0
- package/v3/dist/cli/brain-commands.js +60 -0
- package/v3/dist/cli/brain-commands.js.map +1 -0
- package/v3/dist/cli/bundle.js +6790 -3274
- package/v3/dist/cli/command-registry.d.ts.map +1 -1
- package/v3/dist/cli/command-registry.js +3 -1
- package/v3/dist/cli/command-registry.js.map +1 -1
- package/v3/dist/cli/commands/hooks.d.ts.map +1 -1
- package/v3/dist/cli/commands/hooks.js +17 -2
- package/v3/dist/cli/commands/hooks.js.map +1 -1
- package/v3/dist/cli/commands/init.d.ts.map +1 -1
- package/v3/dist/cli/commands/init.js +2 -0
- package/v3/dist/cli/commands/init.js.map +1 -1
- package/v3/dist/cli/commands/learning-helpers.d.ts.map +1 -1
- package/v3/dist/cli/commands/learning-helpers.js +11 -0
- package/v3/dist/cli/commands/learning-helpers.js.map +1 -1
- package/v3/dist/cli/handlers/brain-handler.d.ts +22 -0
- package/v3/dist/cli/handlers/brain-handler.d.ts.map +1 -0
- package/v3/dist/cli/handlers/brain-handler.js +148 -0
- package/v3/dist/cli/handlers/brain-handler.js.map +1 -0
- package/v3/dist/cli/handlers/index.d.ts +1 -0
- package/v3/dist/cli/handlers/index.d.ts.map +1 -1
- package/v3/dist/cli/handlers/index.js +1 -0
- package/v3/dist/cli/handlers/index.js.map +1 -1
- package/v3/dist/cli/handlers/init-handler.d.ts +1 -0
- package/v3/dist/cli/handlers/init-handler.d.ts.map +1 -1
- package/v3/dist/cli/handlers/init-handler.js +3 -0
- package/v3/dist/cli/handlers/init-handler.js.map +1 -1
- package/v3/dist/cli/scheduler/persistent-scheduler.d.ts.map +1 -1
- package/v3/dist/cli/scheduler/persistent-scheduler.js +2 -1
- package/v3/dist/cli/scheduler/persistent-scheduler.js.map +1 -1
- package/v3/dist/coordination/consensus/consensus-engine.d.ts.map +1 -1
- package/v3/dist/coordination/consensus/consensus-engine.js +2 -1
- package/v3/dist/coordination/consensus/consensus-engine.js.map +1 -1
- package/v3/dist/coordination/cross-domain-router.d.ts.map +1 -1
- package/v3/dist/coordination/cross-domain-router.js +7 -8
- package/v3/dist/coordination/cross-domain-router.js.map +1 -1
- package/v3/dist/coordination/handlers/code-intelligence-handlers.d.ts +9 -0
- package/v3/dist/coordination/handlers/code-intelligence-handlers.d.ts.map +1 -0
- package/v3/dist/coordination/handlers/code-intelligence-handlers.js +203 -0
- package/v3/dist/coordination/handlers/code-intelligence-handlers.js.map +1 -0
- package/v3/dist/coordination/handlers/coverage-handlers.d.ts +9 -0
- package/v3/dist/coordination/handlers/coverage-handlers.d.ts.map +1 -0
- package/v3/dist/coordination/handlers/coverage-handlers.js +120 -0
- package/v3/dist/coordination/handlers/coverage-handlers.js.map +1 -0
- package/v3/dist/coordination/handlers/handler-types.d.ts +35 -0
- package/v3/dist/coordination/handlers/handler-types.d.ts.map +1 -0
- package/v3/dist/coordination/handlers/handler-types.js +8 -0
- package/v3/dist/coordination/handlers/handler-types.js.map +1 -0
- package/v3/dist/coordination/handlers/handler-utils.d.ts +106 -0
- package/v3/dist/coordination/handlers/handler-utils.d.ts.map +1 -0
- package/v3/dist/coordination/handlers/handler-utils.js +480 -0
- package/v3/dist/coordination/handlers/handler-utils.js.map +1 -0
- package/v3/dist/coordination/handlers/index.d.ts +15 -0
- package/v3/dist/coordination/handlers/index.d.ts.map +1 -0
- package/v3/dist/coordination/handlers/index.js +14 -0
- package/v3/dist/coordination/handlers/index.js.map +1 -0
- package/v3/dist/coordination/handlers/misc-handlers.d.ts +9 -0
- package/v3/dist/coordination/handlers/misc-handlers.d.ts.map +1 -0
- package/v3/dist/coordination/handlers/misc-handlers.js +64 -0
- package/v3/dist/coordination/handlers/misc-handlers.js.map +1 -0
- package/v3/dist/coordination/handlers/quality-handlers.d.ts +9 -0
- package/v3/dist/coordination/handlers/quality-handlers.d.ts.map +1 -0
- package/v3/dist/coordination/handlers/quality-handlers.js +83 -0
- package/v3/dist/coordination/handlers/quality-handlers.js.map +1 -0
- package/v3/dist/coordination/handlers/requirements-handlers.d.ts +9 -0
- package/v3/dist/coordination/handlers/requirements-handlers.d.ts.map +1 -0
- package/v3/dist/coordination/handlers/requirements-handlers.js +95 -0
- package/v3/dist/coordination/handlers/requirements-handlers.js.map +1 -0
- package/v3/dist/coordination/handlers/security-handlers.d.ts +9 -0
- package/v3/dist/coordination/handlers/security-handlers.d.ts.map +1 -0
- package/v3/dist/coordination/handlers/security-handlers.js +255 -0
- package/v3/dist/coordination/handlers/security-handlers.js.map +1 -0
- package/v3/dist/coordination/handlers/test-execution-handlers.d.ts +9 -0
- package/v3/dist/coordination/handlers/test-execution-handlers.d.ts.map +1 -0
- package/v3/dist/coordination/handlers/test-execution-handlers.js +153 -0
- package/v3/dist/coordination/handlers/test-execution-handlers.js.map +1 -0
- package/v3/dist/coordination/queen-coordinator.d.ts.map +1 -1
- package/v3/dist/coordination/queen-coordinator.js +28 -25
- package/v3/dist/coordination/queen-coordinator.js.map +1 -1
- package/v3/dist/coordination/task-executor.d.ts +25 -9
- package/v3/dist/coordination/task-executor.d.ts.map +1 -1
- package/v3/dist/coordination/task-executor.js +38 -1352
- package/v3/dist/coordination/task-executor.js.map +1 -1
- package/v3/dist/domains/code-intelligence/services/metric-collector/loc-counter.js +15 -9
- package/v3/dist/domains/code-intelligence/services/metric-collector/loc-counter.js.map +1 -1
- package/v3/dist/domains/coverage-analysis/services/hnsw-index.d.ts +31 -44
- package/v3/dist/domains/coverage-analysis/services/hnsw-index.d.ts.map +1 -1
- package/v3/dist/domains/coverage-analysis/services/hnsw-index.js +73 -178
- package/v3/dist/domains/coverage-analysis/services/hnsw-index.js.map +1 -1
- package/v3/dist/domains/defect-intelligence/services/causal-root-cause-analyzer.d.ts.map +1 -1
- package/v3/dist/domains/defect-intelligence/services/causal-root-cause-analyzer.js +2 -1
- package/v3/dist/domains/defect-intelligence/services/causal-root-cause-analyzer.js.map +1 -1
- package/v3/dist/domains/quality-assessment/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/quality-assessment/coordinator.js +8 -0
- package/v3/dist/domains/quality-assessment/coordinator.js.map +1 -1
- package/v3/dist/domains/requirements-validation/services/product-factors-assessment/types/index.d.ts.map +1 -1
- package/v3/dist/domains/requirements-validation/services/product-factors-assessment/types/index.js +2 -1
- package/v3/dist/domains/requirements-validation/services/product-factors-assessment/types/index.js.map +1 -1
- package/v3/dist/domains/test-execution/coordinator.d.ts +14 -0
- package/v3/dist/domains/test-execution/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/coordinator.js +18 -0
- package/v3/dist/domains/test-execution/coordinator.js.map +1 -1
- package/v3/dist/domains/test-execution/services/index.d.ts +1 -0
- package/v3/dist/domains/test-execution/services/index.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/services/index.js +1 -0
- package/v3/dist/domains/test-execution/services/index.js.map +1 -1
- package/v3/dist/domains/test-execution/services/mincut-test-optimizer.d.ts +118 -0
- package/v3/dist/domains/test-execution/services/mincut-test-optimizer.d.ts.map +1 -0
- package/v3/dist/domains/test-execution/services/mincut-test-optimizer.js +358 -0
- package/v3/dist/domains/test-execution/services/mincut-test-optimizer.js.map +1 -0
- package/v3/dist/domains/test-execution/types/e2e-step.types.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/types/e2e-step.types.js +2 -1
- package/v3/dist/domains/test-execution/types/e2e-step.types.js.map +1 -1
- package/v3/dist/feedback/coverage-learner.d.ts.map +1 -1
- package/v3/dist/feedback/coverage-learner.js +2 -1
- package/v3/dist/feedback/coverage-learner.js.map +1 -1
- package/v3/dist/init/opencode-installer.d.ts +67 -0
- package/v3/dist/init/opencode-installer.d.ts.map +1 -0
- package/v3/dist/init/opencode-installer.js +267 -0
- package/v3/dist/init/opencode-installer.js.map +1 -0
- package/v3/dist/init/orchestrator.d.ts.map +1 -1
- package/v3/dist/init/orchestrator.js +1 -0
- package/v3/dist/init/orchestrator.js.map +1 -1
- package/v3/dist/init/phases/09-assets.d.ts +2 -0
- package/v3/dist/init/phases/09-assets.d.ts.map +1 -1
- package/v3/dist/init/phases/09-assets.js +26 -0
- package/v3/dist/init/phases/09-assets.js.map +1 -1
- package/v3/dist/init/phases/phase-interface.d.ts +2 -0
- package/v3/dist/init/phases/phase-interface.d.ts.map +1 -1
- package/v3/dist/init/phases/phase-interface.js.map +1 -1
- package/v3/dist/integrations/agentic-flow/onnx-embeddings/adapter.d.ts.map +1 -1
- package/v3/dist/integrations/agentic-flow/onnx-embeddings/adapter.js +2 -1
- package/v3/dist/integrations/agentic-flow/onnx-embeddings/adapter.js.map +1 -1
- package/v3/dist/integrations/n8n/agent-factory.d.ts.map +1 -1
- package/v3/dist/integrations/n8n/agent-factory.js +2 -1
- package/v3/dist/integrations/n8n/agent-factory.js.map +1 -1
- package/v3/dist/integrations/rl-suite/sona.d.ts.map +1 -1
- package/v3/dist/integrations/rl-suite/sona.js +2 -1
- package/v3/dist/integrations/rl-suite/sona.js.map +1 -1
- package/v3/dist/integrations/ruvector/brain-exporter.d.ts +66 -0
- package/v3/dist/integrations/ruvector/brain-exporter.d.ts.map +1 -0
- package/v3/dist/integrations/ruvector/brain-exporter.js +538 -0
- package/v3/dist/integrations/ruvector/brain-exporter.js.map +1 -0
- package/v3/dist/integrations/ruvector/hypergraph-schema.d.ts.map +1 -1
- package/v3/dist/integrations/ruvector/hypergraph-schema.js +7 -0
- package/v3/dist/integrations/ruvector/hypergraph-schema.js.map +1 -1
- package/v3/dist/integrations/ruvector/index.d.ts +5 -0
- package/v3/dist/integrations/ruvector/index.d.ts.map +1 -1
- package/v3/dist/integrations/ruvector/index.js +6 -0
- package/v3/dist/integrations/ruvector/index.js.map +1 -1
- package/v3/dist/integrations/ruvector/mincut-wrapper.d.ts +204 -0
- package/v3/dist/integrations/ruvector/mincut-wrapper.d.ts.map +1 -0
- package/v3/dist/integrations/ruvector/mincut-wrapper.js +310 -0
- package/v3/dist/integrations/ruvector/mincut-wrapper.js.map +1 -0
- package/v3/dist/integrations/ruvector/rvf-dual-writer.d.ts +141 -0
- package/v3/dist/integrations/ruvector/rvf-dual-writer.d.ts.map +1 -0
- package/v3/dist/integrations/ruvector/rvf-dual-writer.js +367 -0
- package/v3/dist/integrations/ruvector/rvf-dual-writer.js.map +1 -0
- package/v3/dist/integrations/ruvector/rvf-native-adapter.d.ts +60 -0
- package/v3/dist/integrations/ruvector/rvf-native-adapter.d.ts.map +1 -0
- package/v3/dist/integrations/ruvector/rvf-native-adapter.js +240 -0
- package/v3/dist/integrations/ruvector/rvf-native-adapter.js.map +1 -0
- package/v3/dist/integrations/ruvector/shared-rvf-dual-writer.d.ts +41 -0
- package/v3/dist/integrations/ruvector/shared-rvf-dual-writer.d.ts.map +1 -0
- package/v3/dist/integrations/ruvector/shared-rvf-dual-writer.js +122 -0
- package/v3/dist/integrations/ruvector/shared-rvf-dual-writer.js.map +1 -0
- package/v3/dist/integrations/ruvector/sona-wrapper.d.ts.map +1 -1
- package/v3/dist/integrations/ruvector/sona-wrapper.js +2 -1
- package/v3/dist/integrations/ruvector/sona-wrapper.js.map +1 -1
- package/v3/dist/integrations/vibium/client.d.ts.map +1 -1
- package/v3/dist/integrations/vibium/client.js +2 -1
- package/v3/dist/integrations/vibium/client.js.map +1 -1
- package/v3/dist/integrations/vibium/fallback.d.ts.map +1 -1
- package/v3/dist/integrations/vibium/fallback.js +2 -1
- package/v3/dist/integrations/vibium/fallback.js.map +1 -1
- package/v3/dist/kernel/hnsw-adapter.d.ts +99 -0
- package/v3/dist/kernel/hnsw-adapter.d.ts.map +1 -0
- package/v3/dist/kernel/hnsw-adapter.js +218 -0
- package/v3/dist/kernel/hnsw-adapter.js.map +1 -0
- package/v3/dist/kernel/hnsw-index-provider.d.ts +90 -0
- package/v3/dist/kernel/hnsw-index-provider.d.ts.map +1 -0
- package/v3/dist/kernel/hnsw-index-provider.js +23 -0
- package/v3/dist/kernel/hnsw-index-provider.js.map +1 -0
- package/v3/dist/kernel/kernel.d.ts.map +1 -1
- package/v3/dist/kernel/kernel.js +2 -1
- package/v3/dist/kernel/kernel.js.map +1 -1
- package/v3/dist/kernel/progressive-hnsw-backend.d.ts +67 -0
- package/v3/dist/kernel/progressive-hnsw-backend.d.ts.map +1 -0
- package/v3/dist/kernel/progressive-hnsw-backend.js +266 -0
- package/v3/dist/kernel/progressive-hnsw-backend.js.map +1 -0
- package/v3/dist/kernel/unified-memory-hnsw.d.ts +71 -0
- package/v3/dist/kernel/unified-memory-hnsw.d.ts.map +1 -1
- package/v3/dist/kernel/unified-memory-hnsw.js +87 -0
- package/v3/dist/kernel/unified-memory-hnsw.js.map +1 -1
- package/v3/dist/kernel/unified-memory-schemas.d.ts +1 -0
- package/v3/dist/kernel/unified-memory-schemas.d.ts.map +1 -1
- package/v3/dist/kernel/unified-memory-schemas.js +16 -0
- package/v3/dist/kernel/unified-memory-schemas.js.map +1 -1
- package/v3/dist/kernel/unified-memory.d.ts.map +1 -1
- package/v3/dist/kernel/unified-memory.js +19 -9
- package/v3/dist/kernel/unified-memory.js.map +1 -1
- package/v3/dist/learning/aqe-learning-engine.d.ts.map +1 -1
- package/v3/dist/learning/aqe-learning-engine.js +14 -2
- package/v3/dist/learning/aqe-learning-engine.js.map +1 -1
- package/v3/dist/learning/dream/concept-graph.d.ts +10 -5
- package/v3/dist/learning/dream/concept-graph.d.ts.map +1 -1
- package/v3/dist/learning/dream/concept-graph.js +77 -25
- package/v3/dist/learning/dream/concept-graph.js.map +1 -1
- package/v3/dist/learning/dream/dream-engine.d.ts +16 -0
- package/v3/dist/learning/dream/dream-engine.d.ts.map +1 -1
- package/v3/dist/learning/dream/dream-engine.js +107 -29
- package/v3/dist/learning/dream/dream-engine.js.map +1 -1
- package/v3/dist/learning/dream/index.d.ts +2 -0
- package/v3/dist/learning/dream/index.d.ts.map +1 -1
- package/v3/dist/learning/dream/index.js +8 -0
- package/v3/dist/learning/dream/index.js.map +1 -1
- package/v3/dist/learning/dream/insight-generator.d.ts.map +1 -1
- package/v3/dist/learning/dream/insight-generator.js +2 -1
- package/v3/dist/learning/dream/insight-generator.js.map +1 -1
- package/v3/dist/learning/dream/rvcow-branch-manager.d.ts +170 -0
- package/v3/dist/learning/dream/rvcow-branch-manager.d.ts.map +1 -0
- package/v3/dist/learning/dream/rvcow-branch-manager.js +263 -0
- package/v3/dist/learning/dream/rvcow-branch-manager.js.map +1 -0
- package/v3/dist/learning/dream/speculative-dreamer.d.ts +129 -0
- package/v3/dist/learning/dream/speculative-dreamer.d.ts.map +1 -0
- package/v3/dist/learning/dream/speculative-dreamer.js +214 -0
- package/v3/dist/learning/dream/speculative-dreamer.js.map +1 -0
- package/v3/dist/learning/dream/spreading-activation.d.ts +1 -1
- package/v3/dist/learning/dream/spreading-activation.d.ts.map +1 -1
- package/v3/dist/learning/dream/spreading-activation.js +13 -5
- package/v3/dist/learning/dream/spreading-activation.js.map +1 -1
- package/v3/dist/learning/memory-auditor.d.ts.map +1 -1
- package/v3/dist/learning/memory-auditor.js +7 -4
- package/v3/dist/learning/memory-auditor.js.map +1 -1
- package/v3/dist/learning/qe-reasoning-bank.d.ts +9 -0
- package/v3/dist/learning/qe-reasoning-bank.d.ts.map +1 -1
- package/v3/dist/learning/qe-reasoning-bank.js +50 -1
- package/v3/dist/learning/qe-reasoning-bank.js.map +1 -1
- package/v3/dist/learning/real-embeddings.d.ts.map +1 -1
- package/v3/dist/learning/real-embeddings.js +26 -1
- package/v3/dist/learning/real-embeddings.js.map +1 -1
- package/v3/dist/learning/real-qe-reasoning-bank.d.ts.map +1 -1
- package/v3/dist/learning/real-qe-reasoning-bank.js +13 -2
- package/v3/dist/learning/real-qe-reasoning-bank.js.map +1 -1
- package/v3/dist/learning/sqlite-persistence.d.ts +5 -0
- package/v3/dist/learning/sqlite-persistence.d.ts.map +1 -1
- package/v3/dist/learning/sqlite-persistence.js +47 -7
- package/v3/dist/learning/sqlite-persistence.js.map +1 -1
- package/v3/dist/mcp/bundle.js +5837 -2932
- package/v3/dist/mcp/connection-pool.d.ts.map +1 -1
- package/v3/dist/mcp/connection-pool.js +3 -2
- package/v3/dist/mcp/connection-pool.js.map +1 -1
- package/v3/dist/mcp/entry.js +12 -0
- package/v3/dist/mcp/entry.js.map +1 -1
- package/v3/dist/mcp/handlers/core-handlers.d.ts +28 -0
- package/v3/dist/mcp/handlers/core-handlers.d.ts.map +1 -1
- package/v3/dist/mcp/handlers/core-handlers.js +117 -0
- package/v3/dist/mcp/handlers/core-handlers.js.map +1 -1
- package/v3/dist/mcp/handlers/index.d.ts +1 -1
- package/v3/dist/mcp/handlers/index.d.ts.map +1 -1
- package/v3/dist/mcp/handlers/index.js +1 -1
- package/v3/dist/mcp/handlers/index.js.map +1 -1
- package/v3/dist/mcp/http-server.d.ts.map +1 -1
- package/v3/dist/mcp/http-server.js +12 -9
- package/v3/dist/mcp/http-server.js.map +1 -1
- package/v3/dist/mcp/middleware/output-compaction.d.ts +45 -0
- package/v3/dist/mcp/middleware/output-compaction.d.ts.map +1 -0
- package/v3/dist/mcp/middleware/output-compaction.js +279 -0
- package/v3/dist/mcp/middleware/output-compaction.js.map +1 -0
- package/v3/dist/mcp/protocol-server.d.ts.map +1 -1
- package/v3/dist/mcp/protocol-server.js +53 -41
- package/v3/dist/mcp/protocol-server.js.map +1 -1
- package/v3/dist/mcp/security/sampling-server.js +2 -2
- package/v3/dist/mcp/security/sampling-server.js.map +1 -1
- package/v3/dist/mcp/services/mincut-routing-service.d.ts +148 -0
- package/v3/dist/mcp/services/mincut-routing-service.d.ts.map +1 -0
- package/v3/dist/mcp/services/mincut-routing-service.js +198 -0
- package/v3/dist/mcp/services/mincut-routing-service.js.map +1 -0
- package/v3/dist/mcp/services/reasoning-bank-service.d.ts.map +1 -1
- package/v3/dist/mcp/services/reasoning-bank-service.js +4 -5
- package/v3/dist/mcp/services/reasoning-bank-service.js.map +1 -1
- package/v3/dist/mcp/services/task-router.d.ts +4 -0
- package/v3/dist/mcp/services/task-router.d.ts.map +1 -1
- package/v3/dist/mcp/services/task-router.js +57 -15
- package/v3/dist/mcp/services/task-router.js.map +1 -1
- package/v3/dist/mcp/tools/base.d.ts +5 -0
- package/v3/dist/mcp/tools/base.d.ts.map +1 -1
- package/v3/dist/mcp/tools/base.js +25 -1
- package/v3/dist/mcp/tools/base.js.map +1 -1
- package/v3/dist/mcp/tools/learning-optimization/dream.d.ts.map +1 -1
- package/v3/dist/mcp/tools/learning-optimization/dream.js +22 -0
- package/v3/dist/mcp/tools/learning-optimization/dream.js.map +1 -1
- package/v3/dist/mcp/tools/security-compliance/scan.d.ts.map +1 -1
- package/v3/dist/mcp/tools/security-compliance/scan.js +2 -1
- package/v3/dist/mcp/tools/security-compliance/scan.js.map +1 -1
- package/v3/dist/mcp/transport/index.d.ts +8 -6
- package/v3/dist/mcp/transport/index.d.ts.map +1 -1
- package/v3/dist/mcp/transport/index.js +10 -9
- package/v3/dist/mcp/transport/index.js.map +1 -1
- package/v3/dist/migrations/20260120_add_hypergraph_tables.d.ts.map +1 -1
- package/v3/dist/migrations/20260120_add_hypergraph_tables.js +7 -0
- package/v3/dist/migrations/20260120_add_hypergraph_tables.js.map +1 -1
- package/v3/dist/monitoring/structural-health.d.ts +142 -0
- package/v3/dist/monitoring/structural-health.d.ts.map +1 -0
- package/v3/dist/monitoring/structural-health.js +201 -0
- package/v3/dist/monitoring/structural-health.js.map +1 -0
- package/v3/dist/optimization/token-optimizer-service.d.ts.map +1 -1
- package/v3/dist/optimization/token-optimizer-service.js +2 -1
- package/v3/dist/optimization/token-optimizer-service.js.map +1 -1
- package/v3/dist/planning/goap-planner.d.ts.map +1 -1
- package/v3/dist/planning/goap-planner.js +2 -1
- package/v3/dist/planning/goap-planner.js.map +1 -1
- package/v3/dist/planning/plan-executor.d.ts +5 -1
- package/v3/dist/planning/plan-executor.d.ts.map +1 -1
- package/v3/dist/planning/plan-executor.js +16 -2
- package/v3/dist/planning/plan-executor.js.map +1 -1
- package/v3/dist/routing/routing-feedback.d.ts.map +1 -1
- package/v3/dist/routing/routing-feedback.js +2 -1
- package/v3/dist/routing/routing-feedback.js.map +1 -1
- package/v3/dist/shared/llm/cost-tracker.d.ts.map +1 -1
- package/v3/dist/shared/llm/cost-tracker.js +2 -1
- package/v3/dist/shared/llm/cost-tracker.js.map +1 -1
- package/v3/dist/shared/llm/metrics/router-metrics.d.ts.map +1 -1
- package/v3/dist/shared/llm/metrics/router-metrics.js +2 -1
- package/v3/dist/shared/llm/metrics/router-metrics.js.map +1 -1
- package/v3/dist/strange-loop/belief-reconciler.d.ts.map +1 -1
- package/v3/dist/strange-loop/belief-reconciler.js +2 -1
- package/v3/dist/strange-loop/belief-reconciler.js.map +1 -1
- package/v3/dist/sync/readers/json-reader.d.ts.map +1 -1
- package/v3/dist/sync/readers/json-reader.js +2 -1
- package/v3/dist/sync/readers/json-reader.js.map +1 -1
- package/v3/dist/types/cross-phase-signals.d.ts.map +1 -1
- package/v3/dist/types/cross-phase-signals.js +2 -1
- package/v3/dist/types/cross-phase-signals.js.map +1 -1
- package/v3/dist/validation/swarm-skill-validator.d.ts.map +1 -1
- package/v3/dist/validation/swarm-skill-validator.js +2 -1
- package/v3/dist/validation/swarm-skill-validator.js.map +1 -1
- package/v3/dist/workers/base-worker.d.ts.map +1 -1
- package/v3/dist/workers/base-worker.js +2 -1
- package/v3/dist/workers/base-worker.js.map +1 -1
- package/v3/package.json +5 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../src/kernel/kernel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../src/kernel/kernel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Progressive HNSW Backend
|
|
3
|
+
*
|
|
4
|
+
* Unified HNSW backend implementing IHnswIndexProvider. Uses @ruvector/gnn's
|
|
5
|
+
* differentiableSearch as the primary search engine with brute-force cosine
|
|
6
|
+
* similarity fallback when @ruvector/gnn is unavailable.
|
|
7
|
+
*
|
|
8
|
+
* Progressive loading:
|
|
9
|
+
* - Construction: instant (no vectors loaded)
|
|
10
|
+
* - First add: vectors stored in flat arrays
|
|
11
|
+
* - Search: uses @ruvector/gnn differentiableSearch for ranking, then
|
|
12
|
+
* computes exact cosine similarity for scores
|
|
13
|
+
*
|
|
14
|
+
* Handles dimension mismatch by auto-resizing vectors (384<->768).
|
|
15
|
+
*
|
|
16
|
+
* @see ADR-071: HNSW Implementation Unification
|
|
17
|
+
* @module kernel/progressive-hnsw-backend
|
|
18
|
+
*/
|
|
19
|
+
import type { IHnswIndexProvider, SearchResult, HnswConfig } from './hnsw-index-provider.js';
|
|
20
|
+
/**
|
|
21
|
+
* Progressive HNSW backend using @ruvector/gnn differentiableSearch.
|
|
22
|
+
*
|
|
23
|
+
* Provides a unified vector search implementation that:
|
|
24
|
+
* - Uses @ruvector/gnn for fast native search when available
|
|
25
|
+
* - Falls back to brute-force cosine similarity when unavailable
|
|
26
|
+
* - Auto-resizes dimension mismatches (384 <-> 768)
|
|
27
|
+
* - Returns 1.0 recall for brute-force, estimated recall for HNSW
|
|
28
|
+
*/
|
|
29
|
+
export declare class ProgressiveHnswBackend implements IHnswIndexProvider {
|
|
30
|
+
private readonly config;
|
|
31
|
+
private entries;
|
|
32
|
+
private idToIndex;
|
|
33
|
+
private hasRuvector;
|
|
34
|
+
private loaded;
|
|
35
|
+
constructor(config?: Partial<HnswConfig>);
|
|
36
|
+
/**
|
|
37
|
+
* Lazily load the @ruvector/gnn backend on first operation.
|
|
38
|
+
*/
|
|
39
|
+
private ensureLoaded;
|
|
40
|
+
/**
|
|
41
|
+
* Normalize a vector to the configured dimensions, resizing if needed.
|
|
42
|
+
*/
|
|
43
|
+
private normalizeVector;
|
|
44
|
+
add(id: number, vector: Float32Array, metadata?: Record<string, unknown>): void;
|
|
45
|
+
search(query: Float32Array, k: number): SearchResult[];
|
|
46
|
+
/**
|
|
47
|
+
* Brute-force cosine similarity search as fallback.
|
|
48
|
+
*/
|
|
49
|
+
private bruteForcSearch;
|
|
50
|
+
remove(id: number): boolean;
|
|
51
|
+
size(): number;
|
|
52
|
+
dimensions(): number;
|
|
53
|
+
recall(): number;
|
|
54
|
+
/**
|
|
55
|
+
* Check whether @ruvector/gnn is available as the search backend.
|
|
56
|
+
*/
|
|
57
|
+
isRuvectorAvailable(): boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Get the current configuration.
|
|
60
|
+
*/
|
|
61
|
+
getConfig(): Readonly<HnswConfig>;
|
|
62
|
+
/**
|
|
63
|
+
* Clear all vectors from the index.
|
|
64
|
+
*/
|
|
65
|
+
clear(): void;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=progressive-hnsw-backend.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progressive-hnsw-backend.d.ts","sourceRoot":"","sources":["../../src/kernel/progressive-hnsw-backend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACX,MAAM,0BAA0B,CAAC;AAwHlC;;;;;;;;GAQG;AACH,qBAAa,sBAAuB,YAAW,kBAAkB;IAC/D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,MAAM,CAAkB;gBAEpB,MAAM,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC;IAIxC;;OAEG;IACH,OAAO,CAAC,YAAY;IAMpB;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB,GAAG,CACD,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,YAAY,EACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,IAAI;IAkBP,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE;IAqDtD;;OAEG;IACH,OAAO,CAAC,eAAe;IA0BvB,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAiB3B,IAAI,IAAI,MAAM;IAId,UAAU,IAAI,MAAM;IAIpB,MAAM,IAAI,MAAM;IAQhB;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAK9B;;OAEG;IACH,SAAS,IAAI,QAAQ,CAAC,UAAU,CAAC;IAIjC;;OAEG;IACH,KAAK,IAAI,IAAI;CAId"}
|
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Progressive HNSW Backend
|
|
3
|
+
*
|
|
4
|
+
* Unified HNSW backend implementing IHnswIndexProvider. Uses @ruvector/gnn's
|
|
5
|
+
* differentiableSearch as the primary search engine with brute-force cosine
|
|
6
|
+
* similarity fallback when @ruvector/gnn is unavailable.
|
|
7
|
+
*
|
|
8
|
+
* Progressive loading:
|
|
9
|
+
* - Construction: instant (no vectors loaded)
|
|
10
|
+
* - First add: vectors stored in flat arrays
|
|
11
|
+
* - Search: uses @ruvector/gnn differentiableSearch for ranking, then
|
|
12
|
+
* computes exact cosine similarity for scores
|
|
13
|
+
*
|
|
14
|
+
* Handles dimension mismatch by auto-resizing vectors (384<->768).
|
|
15
|
+
*
|
|
16
|
+
* @see ADR-071: HNSW Implementation Unification
|
|
17
|
+
* @module kernel/progressive-hnsw-backend
|
|
18
|
+
*/
|
|
19
|
+
import { DEFAULT_HNSW_CONFIG } from './hnsw-index-provider.js';
|
|
20
|
+
// ============================================================================
|
|
21
|
+
// @ruvector/gnn lazy loading
|
|
22
|
+
// ============================================================================
|
|
23
|
+
let ruvectorDifferentiableSearch = null;
|
|
24
|
+
let ruvectorInit = null;
|
|
25
|
+
let ruvectorInitialized = false;
|
|
26
|
+
function ensureRuvectorLoaded() {
|
|
27
|
+
if (ruvectorInitialized)
|
|
28
|
+
return ruvectorDifferentiableSearch !== null;
|
|
29
|
+
try {
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
31
|
+
const gnn = require('@ruvector/gnn');
|
|
32
|
+
ruvectorDifferentiableSearch = gnn.differentiableSearch;
|
|
33
|
+
ruvectorInit = gnn.init;
|
|
34
|
+
if (ruvectorInit) {
|
|
35
|
+
try {
|
|
36
|
+
ruvectorInit();
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
// Already initialized
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
ruvectorInitialized = true;
|
|
43
|
+
return true;
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
ruvectorInitialized = true;
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
// ============================================================================
|
|
51
|
+
// Vector math helpers
|
|
52
|
+
// ============================================================================
|
|
53
|
+
function computeNorm(v) {
|
|
54
|
+
let sum = 0;
|
|
55
|
+
for (let i = 0; i < v.length; i++)
|
|
56
|
+
sum += v[i] * v[i];
|
|
57
|
+
return Math.sqrt(sum);
|
|
58
|
+
}
|
|
59
|
+
function fastCosineSimilarity(a, b, normA, normB) {
|
|
60
|
+
const denom = normA * normB;
|
|
61
|
+
if (denom === 0)
|
|
62
|
+
return 0;
|
|
63
|
+
let dot = 0;
|
|
64
|
+
const len = Math.min(a.length, b.length);
|
|
65
|
+
for (let i = 0; i < len; i++)
|
|
66
|
+
dot += a[i] * b[i];
|
|
67
|
+
return dot / denom;
|
|
68
|
+
}
|
|
69
|
+
function euclideanDistance(a, b) {
|
|
70
|
+
let sum = 0;
|
|
71
|
+
const len = Math.min(a.length, b.length);
|
|
72
|
+
for (let i = 0; i < len; i++) {
|
|
73
|
+
const diff = a[i] - b[i];
|
|
74
|
+
sum += diff * diff;
|
|
75
|
+
}
|
|
76
|
+
return Math.sqrt(sum);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Resize a vector to the target dimensions.
|
|
80
|
+
* Shrink: average adjacent values. Grow: zero-pad.
|
|
81
|
+
*/
|
|
82
|
+
function resizeVector(vector, targetDim) {
|
|
83
|
+
if (vector.length === targetDim)
|
|
84
|
+
return vector;
|
|
85
|
+
const result = new Float32Array(targetDim);
|
|
86
|
+
if (vector.length > targetDim) {
|
|
87
|
+
// Shrink by averaging adjacent values
|
|
88
|
+
const ratio = vector.length / targetDim;
|
|
89
|
+
for (let i = 0; i < targetDim; i++) {
|
|
90
|
+
const start = Math.floor(i * ratio);
|
|
91
|
+
const end = Math.floor((i + 1) * ratio);
|
|
92
|
+
let sum = 0;
|
|
93
|
+
for (let j = start; j < end; j++) {
|
|
94
|
+
sum += vector[j];
|
|
95
|
+
}
|
|
96
|
+
result[i] = sum / (end - start);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
// Grow by zero-padding
|
|
101
|
+
for (let i = 0; i < vector.length; i++) {
|
|
102
|
+
result[i] = vector[i];
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
return result;
|
|
106
|
+
}
|
|
107
|
+
// ============================================================================
|
|
108
|
+
// ProgressiveHnswBackend
|
|
109
|
+
// ============================================================================
|
|
110
|
+
/**
|
|
111
|
+
* Progressive HNSW backend using @ruvector/gnn differentiableSearch.
|
|
112
|
+
*
|
|
113
|
+
* Provides a unified vector search implementation that:
|
|
114
|
+
* - Uses @ruvector/gnn for fast native search when available
|
|
115
|
+
* - Falls back to brute-force cosine similarity when unavailable
|
|
116
|
+
* - Auto-resizes dimension mismatches (384 <-> 768)
|
|
117
|
+
* - Returns 1.0 recall for brute-force, estimated recall for HNSW
|
|
118
|
+
*/
|
|
119
|
+
export class ProgressiveHnswBackend {
|
|
120
|
+
config;
|
|
121
|
+
entries = [];
|
|
122
|
+
idToIndex = new Map();
|
|
123
|
+
hasRuvector = false;
|
|
124
|
+
loaded = false;
|
|
125
|
+
constructor(config) {
|
|
126
|
+
this.config = { ...DEFAULT_HNSW_CONFIG, ...config };
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Lazily load the @ruvector/gnn backend on first operation.
|
|
130
|
+
*/
|
|
131
|
+
ensureLoaded() {
|
|
132
|
+
if (this.loaded)
|
|
133
|
+
return;
|
|
134
|
+
this.hasRuvector = ensureRuvectorLoaded();
|
|
135
|
+
this.loaded = true;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Normalize a vector to the configured dimensions, resizing if needed.
|
|
139
|
+
*/
|
|
140
|
+
normalizeVector(vector) {
|
|
141
|
+
if (vector.length === this.config.dimensions)
|
|
142
|
+
return vector;
|
|
143
|
+
return resizeVector(vector, this.config.dimensions);
|
|
144
|
+
}
|
|
145
|
+
add(id, vector, metadata) {
|
|
146
|
+
this.ensureLoaded();
|
|
147
|
+
const normalized = this.normalizeVector(vector);
|
|
148
|
+
const norm = computeNorm(normalized);
|
|
149
|
+
// Handle duplicate: overwrite existing entry
|
|
150
|
+
if (this.idToIndex.has(id)) {
|
|
151
|
+
const idx = this.idToIndex.get(id);
|
|
152
|
+
this.entries[idx] = { id, vector: normalized, norm, metadata };
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
const idx = this.entries.length;
|
|
156
|
+
this.entries.push({ id, vector: normalized, norm, metadata });
|
|
157
|
+
this.idToIndex.set(id, idx);
|
|
158
|
+
}
|
|
159
|
+
search(query, k) {
|
|
160
|
+
this.ensureLoaded();
|
|
161
|
+
if (this.entries.length === 0)
|
|
162
|
+
return [];
|
|
163
|
+
const normalizedQuery = this.normalizeVector(query);
|
|
164
|
+
const queryNorm = computeNorm(normalizedQuery);
|
|
165
|
+
const actualK = Math.min(k, this.entries.length);
|
|
166
|
+
// Determine if dimensions match for native search
|
|
167
|
+
const storedDim = this.entries.length > 0 ? this.entries[0].vector.length : 0;
|
|
168
|
+
const dimensionsMatch = normalizedQuery.length === storedDim;
|
|
169
|
+
// Try @ruvector/gnn differentiableSearch first
|
|
170
|
+
if (this.hasRuvector && dimensionsMatch && ruvectorDifferentiableSearch) {
|
|
171
|
+
try {
|
|
172
|
+
const candidateVectors = this.entries.map((e) => e.vector);
|
|
173
|
+
const result = ruvectorDifferentiableSearch(normalizedQuery, candidateVectors, actualK, 1.0);
|
|
174
|
+
return result.indices.map((idx) => {
|
|
175
|
+
const entry = this.entries[idx];
|
|
176
|
+
// Compute actual cosine similarity for the score
|
|
177
|
+
const score = this.config.metric === 'cosine'
|
|
178
|
+
? fastCosineSimilarity(normalizedQuery, entry.vector, queryNorm, entry.norm)
|
|
179
|
+
: -euclideanDistance(normalizedQuery, entry.vector);
|
|
180
|
+
return {
|
|
181
|
+
id: entry.id,
|
|
182
|
+
score,
|
|
183
|
+
metadata: entry.metadata,
|
|
184
|
+
};
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
catch {
|
|
188
|
+
// Fall through to brute-force
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
// Brute-force fallback
|
|
192
|
+
return this.bruteForcSearch(normalizedQuery, queryNorm, actualK);
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Brute-force cosine similarity search as fallback.
|
|
196
|
+
*/
|
|
197
|
+
bruteForcSearch(query, queryNorm, k) {
|
|
198
|
+
const scored = [];
|
|
199
|
+
for (const entry of this.entries) {
|
|
200
|
+
let score;
|
|
201
|
+
if (this.config.metric === 'cosine') {
|
|
202
|
+
score = fastCosineSimilarity(query, entry.vector, queryNorm, entry.norm);
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
score = -euclideanDistance(query, entry.vector);
|
|
206
|
+
}
|
|
207
|
+
scored.push({
|
|
208
|
+
id: entry.id,
|
|
209
|
+
score,
|
|
210
|
+
metadata: entry.metadata,
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
scored.sort((a, b) => b.score - a.score);
|
|
214
|
+
return scored.slice(0, k);
|
|
215
|
+
}
|
|
216
|
+
remove(id) {
|
|
217
|
+
const idx = this.idToIndex.get(id);
|
|
218
|
+
if (idx === undefined)
|
|
219
|
+
return false;
|
|
220
|
+
// Swap with last element for O(1) removal
|
|
221
|
+
const lastIdx = this.entries.length - 1;
|
|
222
|
+
if (idx !== lastIdx) {
|
|
223
|
+
const lastEntry = this.entries[lastIdx];
|
|
224
|
+
this.entries[idx] = lastEntry;
|
|
225
|
+
this.idToIndex.set(lastEntry.id, idx);
|
|
226
|
+
}
|
|
227
|
+
this.entries.pop();
|
|
228
|
+
this.idToIndex.delete(id);
|
|
229
|
+
return true;
|
|
230
|
+
}
|
|
231
|
+
size() {
|
|
232
|
+
return this.entries.length;
|
|
233
|
+
}
|
|
234
|
+
dimensions() {
|
|
235
|
+
return this.config.dimensions;
|
|
236
|
+
}
|
|
237
|
+
recall() {
|
|
238
|
+
// Brute-force = exact search = 1.0 recall
|
|
239
|
+
// @ruvector/gnn differentiableSearch is also brute-force-based (flat index)
|
|
240
|
+
// so recall is 1.0 in both cases
|
|
241
|
+
if (!this.hasRuvector)
|
|
242
|
+
return 1.0;
|
|
243
|
+
return 1.0;
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Check whether @ruvector/gnn is available as the search backend.
|
|
247
|
+
*/
|
|
248
|
+
isRuvectorAvailable() {
|
|
249
|
+
this.ensureLoaded();
|
|
250
|
+
return this.hasRuvector;
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Get the current configuration.
|
|
254
|
+
*/
|
|
255
|
+
getConfig() {
|
|
256
|
+
return { ...this.config };
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Clear all vectors from the index.
|
|
260
|
+
*/
|
|
261
|
+
clear() {
|
|
262
|
+
this.entries = [];
|
|
263
|
+
this.idToIndex.clear();
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
//# sourceMappingURL=progressive-hnsw-backend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progressive-hnsw-backend.js","sourceRoot":"","sources":["../../src/kernel/progressive-hnsw-backend.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,10 +4,16 @@
|
|
|
4
4
|
* Provides O(log n) approximate nearest neighbor search via a multi-layer
|
|
5
5
|
* navigable small-world graph. Extracted from unified-memory.ts.
|
|
6
6
|
*
|
|
7
|
+
* NOTE: InMemoryHNSWIndex and RuvectorFlatIndex are deprecated.
|
|
8
|
+
* Use UnifiedHnswIndex / createHnswIndex() from this module instead.
|
|
9
|
+
* See ADR-071 for the unification plan.
|
|
10
|
+
*
|
|
7
11
|
* Algorithm reference: Malkov & Yashunin, "Efficient and robust approximate
|
|
8
12
|
* nearest neighbor search using Hierarchical Navigable Small World graphs",
|
|
9
13
|
* IEEE TPAMI 2018.
|
|
10
14
|
*/
|
|
15
|
+
import { HnswAdapter } from './hnsw-adapter.js';
|
|
16
|
+
import type { HnswConfig } from './hnsw-index-provider.js';
|
|
11
17
|
/**
|
|
12
18
|
* Binary min/max heap for O(log n) insertion and extraction.
|
|
13
19
|
* Replaces sorted arrays with O(n) splice in HNSW beam search.
|
|
@@ -27,6 +33,9 @@ export declare class BinaryHeap<T> {
|
|
|
27
33
|
* In-memory HNSW (Hierarchical Navigable Small World) index built from
|
|
28
34
|
* SQLite vectors on startup. Provides O(log n) approximate nearest
|
|
29
35
|
* neighbor search via a multi-layer navigable small-world graph.
|
|
36
|
+
*
|
|
37
|
+
* @deprecated Use UnifiedHnswIndex or createHnswIndex() instead.
|
|
38
|
+
* This class will be removed in Phase B of ADR-071.
|
|
30
39
|
*/
|
|
31
40
|
export declare class InMemoryHNSWIndex {
|
|
32
41
|
private nodes;
|
|
@@ -109,6 +118,9 @@ export declare class InMemoryHNSWIndex {
|
|
|
109
118
|
* - 100% recall vs ~70% for HNSW approximate search.
|
|
110
119
|
*
|
|
111
120
|
* Same interface as InMemoryHNSWIndex: add/search/remove/clear/size.
|
|
121
|
+
*
|
|
122
|
+
* @deprecated Use UnifiedHnswIndex or createHnswIndex() instead.
|
|
123
|
+
* This class will be removed in Phase B of ADR-071.
|
|
112
124
|
*/
|
|
113
125
|
export declare class RuvectorFlatIndex {
|
|
114
126
|
private ids;
|
|
@@ -127,4 +139,63 @@ export declare class RuvectorFlatIndex {
|
|
|
127
139
|
clear(): void;
|
|
128
140
|
size(): number;
|
|
129
141
|
}
|
|
142
|
+
/**
|
|
143
|
+
* Unified HNSW index backed by ProgressiveHnswBackend via HnswAdapter.
|
|
144
|
+
*
|
|
145
|
+
* This is the replacement for both InMemoryHNSWIndex and RuvectorFlatIndex.
|
|
146
|
+
* Use createHnswIndex() factory function for convenient construction.
|
|
147
|
+
*
|
|
148
|
+
* @see ADR-071: HNSW Implementation Unification
|
|
149
|
+
*/
|
|
150
|
+
export declare class UnifiedHnswIndex {
|
|
151
|
+
private readonly adapter;
|
|
152
|
+
constructor(name: string, config?: Partial<HnswConfig>);
|
|
153
|
+
/**
|
|
154
|
+
* Add a vector using a string ID (same interface as old implementations).
|
|
155
|
+
*/
|
|
156
|
+
add(id: string, embedding: number[]): void;
|
|
157
|
+
/**
|
|
158
|
+
* Search for k nearest neighbors (same interface as old implementations).
|
|
159
|
+
*/
|
|
160
|
+
search(query: number[], k: number): Array<{
|
|
161
|
+
id: string;
|
|
162
|
+
score: number;
|
|
163
|
+
}>;
|
|
164
|
+
/**
|
|
165
|
+
* Remove a vector by string ID.
|
|
166
|
+
*/
|
|
167
|
+
remove(id: string): boolean;
|
|
168
|
+
/**
|
|
169
|
+
* Clear all vectors.
|
|
170
|
+
*/
|
|
171
|
+
clear(): void;
|
|
172
|
+
/**
|
|
173
|
+
* Get the number of vectors in the index.
|
|
174
|
+
*/
|
|
175
|
+
size(): number;
|
|
176
|
+
/**
|
|
177
|
+
* Get estimated recall (0-1).
|
|
178
|
+
*/
|
|
179
|
+
recall(): number;
|
|
180
|
+
/**
|
|
181
|
+
* Get the underlying IHnswIndexProvider adapter.
|
|
182
|
+
*/
|
|
183
|
+
getProvider(): HnswAdapter;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Factory function to create a unified HNSW index.
|
|
187
|
+
*
|
|
188
|
+
* @param config - Configuration with optional name field
|
|
189
|
+
* @returns A new UnifiedHnswIndex instance
|
|
190
|
+
*
|
|
191
|
+
* @example
|
|
192
|
+
* ```typescript
|
|
193
|
+
* const index = createHnswIndex({ name: 'patterns', dimensions: 384 });
|
|
194
|
+
* index.add('vec-1', embedding);
|
|
195
|
+
* const results = index.search(query, 10);
|
|
196
|
+
* ```
|
|
197
|
+
*/
|
|
198
|
+
export declare function createHnswIndex(config?: Partial<HnswConfig> & {
|
|
199
|
+
name?: string;
|
|
200
|
+
}): UnifiedHnswIndex;
|
|
130
201
|
//# sourceMappingURL=unified-memory-hnsw.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified-memory-hnsw.d.ts","sourceRoot":"","sources":["../../src/kernel/unified-memory-hnsw.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"unified-memory-hnsw.d.ts","sourceRoot":"","sources":["../../src/kernel/unified-memory-hnsw.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAqB3D;;;GAGG;AACH,qBAAa,UAAU,CAAC,CAAC;IACvB,OAAO,CAAC,IAAI,CAAW;IACvB,OAAO,CAAC,SAAS,CAAyB;gBAE9B,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM;IAI7C,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI;IAKnB,GAAG,IAAI,CAAC,GAAG,SAAS;IAWpB,IAAI,IAAI,CAAC,GAAG,SAAS;IAIrB,IAAI,IAAI,MAAM;IAId,OAAO,CAAC,QAAQ;IAYhB,OAAO,CAAC,QAAQ;CAoBjB;AAgBD;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAwC;IAC1D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA4C;IAClE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0C;IACzE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;IAC7D,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAsD;IACzE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAc;IAEvC,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,eAAe,CAAc;IAErC;;;OAGG;IACH,OAAO,CAAC,WAAW;IAOnB;;OAEG;IACH,OAAO,CAAC,UAAU;IAMlB;;;;OAIG;IACH,OAAO,CAAC,WAAW;IA6BnB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAsEvB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAWvB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;;OAGG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAoF1C;;;OAGG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IA+E3B;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IA0BxE;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;OAEG;IACH,KAAK,IAAI,IAAI;CAKd;AAsBD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,GAAG,CAAgB;IAC3B,OAAO,CAAC,OAAO,CAAsB;IACrC,+EAA+E;IAC/E,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,WAAW,CAAS;;IAc5B,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAkB1C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAwDxE,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAoB3B,KAAK,IAAI,IAAI;IAOb,IAAI,IAAI,MAAM;CAGf;AAMD;;;;;;;GAOG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;gBAE1B,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC;IAItD;;OAEG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAI1C;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAIxE;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAI3B;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;OAEG;IACH,MAAM,IAAI,MAAM;IAIhB;;OAEG;IACH,WAAW,IAAI,WAAW;CAG3B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,MAAM,GAAE,OAAO,CAAC,UAAU,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GACnD,gBAAgB,CAGlB"}
|
|
@@ -4,12 +4,17 @@
|
|
|
4
4
|
* Provides O(log n) approximate nearest neighbor search via a multi-layer
|
|
5
5
|
* navigable small-world graph. Extracted from unified-memory.ts.
|
|
6
6
|
*
|
|
7
|
+
* NOTE: InMemoryHNSWIndex and RuvectorFlatIndex are deprecated.
|
|
8
|
+
* Use UnifiedHnswIndex / createHnswIndex() from this module instead.
|
|
9
|
+
* See ADR-071 for the unification plan.
|
|
10
|
+
*
|
|
7
11
|
* Algorithm reference: Malkov & Yashunin, "Efficient and robust approximate
|
|
8
12
|
* nearest neighbor search using Hierarchical Navigable Small World graphs",
|
|
9
13
|
* IEEE TPAMI 2018.
|
|
10
14
|
*/
|
|
11
15
|
import { cosineSimilarity } from '../shared/utils/vector-math.js';
|
|
12
16
|
import { HNSW_CONSTANTS } from './constants.js';
|
|
17
|
+
import { HnswAdapter } from './hnsw-adapter.js';
|
|
13
18
|
// Try to load @ruvector/gnn for native Rust-powered search
|
|
14
19
|
let ruvectorDifferentiableSearch = null;
|
|
15
20
|
let ruvectorInit = null;
|
|
@@ -97,6 +102,9 @@ export class BinaryHeap {
|
|
|
97
102
|
* In-memory HNSW (Hierarchical Navigable Small World) index built from
|
|
98
103
|
* SQLite vectors on startup. Provides O(log n) approximate nearest
|
|
99
104
|
* neighbor search via a multi-layer navigable small-world graph.
|
|
105
|
+
*
|
|
106
|
+
* @deprecated Use UnifiedHnswIndex or createHnswIndex() instead.
|
|
107
|
+
* This class will be removed in Phase B of ADR-071.
|
|
100
108
|
*/
|
|
101
109
|
export class InMemoryHNSWIndex {
|
|
102
110
|
nodes = new Map();
|
|
@@ -451,6 +459,9 @@ function fastCosine(a, b, normA, normB) {
|
|
|
451
459
|
* - 100% recall vs ~70% for HNSW approximate search.
|
|
452
460
|
*
|
|
453
461
|
* Same interface as InMemoryHNSWIndex: add/search/remove/clear/size.
|
|
462
|
+
*
|
|
463
|
+
* @deprecated Use UnifiedHnswIndex or createHnswIndex() instead.
|
|
464
|
+
* This class will be removed in Phase B of ADR-071.
|
|
454
465
|
*/
|
|
455
466
|
export class RuvectorFlatIndex {
|
|
456
467
|
ids = [];
|
|
@@ -563,4 +574,80 @@ export class RuvectorFlatIndex {
|
|
|
563
574
|
return this.ids.length;
|
|
564
575
|
}
|
|
565
576
|
}
|
|
577
|
+
// ============================================================================
|
|
578
|
+
// Unified HNSW Index (ADR-071)
|
|
579
|
+
// ============================================================================
|
|
580
|
+
/**
|
|
581
|
+
* Unified HNSW index backed by ProgressiveHnswBackend via HnswAdapter.
|
|
582
|
+
*
|
|
583
|
+
* This is the replacement for both InMemoryHNSWIndex and RuvectorFlatIndex.
|
|
584
|
+
* Use createHnswIndex() factory function for convenient construction.
|
|
585
|
+
*
|
|
586
|
+
* @see ADR-071: HNSW Implementation Unification
|
|
587
|
+
*/
|
|
588
|
+
export class UnifiedHnswIndex {
|
|
589
|
+
adapter;
|
|
590
|
+
constructor(name, config) {
|
|
591
|
+
this.adapter = HnswAdapter.create(name, config);
|
|
592
|
+
}
|
|
593
|
+
/**
|
|
594
|
+
* Add a vector using a string ID (same interface as old implementations).
|
|
595
|
+
*/
|
|
596
|
+
add(id, embedding) {
|
|
597
|
+
this.adapter.addByStringId(id, embedding);
|
|
598
|
+
}
|
|
599
|
+
/**
|
|
600
|
+
* Search for k nearest neighbors (same interface as old implementations).
|
|
601
|
+
*/
|
|
602
|
+
search(query, k) {
|
|
603
|
+
return this.adapter.searchByArray(query, k);
|
|
604
|
+
}
|
|
605
|
+
/**
|
|
606
|
+
* Remove a vector by string ID.
|
|
607
|
+
*/
|
|
608
|
+
remove(id) {
|
|
609
|
+
return this.adapter.removeByStringId(id);
|
|
610
|
+
}
|
|
611
|
+
/**
|
|
612
|
+
* Clear all vectors.
|
|
613
|
+
*/
|
|
614
|
+
clear() {
|
|
615
|
+
this.adapter.clear();
|
|
616
|
+
}
|
|
617
|
+
/**
|
|
618
|
+
* Get the number of vectors in the index.
|
|
619
|
+
*/
|
|
620
|
+
size() {
|
|
621
|
+
return this.adapter.size();
|
|
622
|
+
}
|
|
623
|
+
/**
|
|
624
|
+
* Get estimated recall (0-1).
|
|
625
|
+
*/
|
|
626
|
+
recall() {
|
|
627
|
+
return this.adapter.recall();
|
|
628
|
+
}
|
|
629
|
+
/**
|
|
630
|
+
* Get the underlying IHnswIndexProvider adapter.
|
|
631
|
+
*/
|
|
632
|
+
getProvider() {
|
|
633
|
+
return this.adapter;
|
|
634
|
+
}
|
|
635
|
+
}
|
|
636
|
+
/**
|
|
637
|
+
* Factory function to create a unified HNSW index.
|
|
638
|
+
*
|
|
639
|
+
* @param config - Configuration with optional name field
|
|
640
|
+
* @returns A new UnifiedHnswIndex instance
|
|
641
|
+
*
|
|
642
|
+
* @example
|
|
643
|
+
* ```typescript
|
|
644
|
+
* const index = createHnswIndex({ name: 'patterns', dimensions: 384 });
|
|
645
|
+
* index.add('vec-1', embedding);
|
|
646
|
+
* const results = index.search(query, 10);
|
|
647
|
+
* ```
|
|
648
|
+
*/
|
|
649
|
+
export function createHnswIndex(config = {}) {
|
|
650
|
+
const { name = 'default', ...hnswConfig } = config;
|
|
651
|
+
return new UnifiedHnswIndex(name, hnswConfig);
|
|
652
|
+
}
|
|
566
653
|
//# sourceMappingURL=unified-memory-hnsw.js.map
|