agentic-flow 3.0.0-alpha.2 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/agents/base-template-generator.md +229 -3
- package/.claude/agents/core/coder.md +212 -7
- package/.claude/agents/core/planner.md +228 -7
- package/.claude/agents/core/researcher.md +205 -10
- package/.claude/agents/core/reviewer.md +216 -5
- package/.claude/agents/core/tester.md +213 -3
- package/.claude/agents/data/data-ml-model.md +444 -0
- package/.claude/agents/development/dev-backend-api.md +345 -0
- package/.claude/agents/documentation/docs-api-openapi.md +354 -0
- package/.claude/agents/github/code-review-swarm.md +307 -468
- package/.claude/agents/github/issue-tracker.md +270 -13
- package/.claude/agents/github/pr-manager.md +259 -12
- package/.claude/agents/github/release-manager.md +253 -15
- package/.claude/agents/github/workflow-automation.md +277 -9
- package/.claude/agents/sona/sona-learning-optimizer.md +496 -0
- package/.claude/agents/sparc/architecture.md +231 -4
- package/.claude/agents/sparc/pseudocode.md +206 -4
- package/.claude/agents/sparc/refinement.md +283 -6
- package/.claude/agents/sparc/specification.md +205 -3
- package/.claude/agents/swarm/adaptive-coordinator.md +731 -0
- package/.claude/agents/swarm/hierarchical-coordinator.md +455 -1
- package/.claude/agents/swarm/mesh-coordinator.md +571 -0
- package/.claude/agents/templates/sparc-coordinator.md +336 -5
- package/.claude/helpers/github-safe.js +11 -10
- package/.claude/skills/agentic-flow-quickstart/skill.md +69 -0
- package/.claude/skills/hooks-automation/skill.md +155 -0
- package/.claude/skills/memory-patterns/skill.md +110 -0
- package/.claude/skills/sparc-methodology/skill.md +137 -0
- package/.claude/skills/swarm-coordination/skill.md +94 -0
- package/.claude/skills/worker-benchmarks/skill.md +135 -0
- package/.claude/skills/worker-integration/skill.md +154 -0
- package/.claude/statusline.mjs +126 -0
- package/.claude/statusline.sh +74 -0
- package/CHANGELOG.md +174 -0
- package/README.md +1873 -1076
- package/dist/.tsbuildinfo +1 -1
- package/dist/agent-booster/index.d.ts +14 -0
- package/dist/agent-booster/index.d.ts.map +1 -0
- package/dist/agent-booster/index.js +25 -0
- package/dist/agent-booster/index.js.map +1 -0
- package/dist/agentdb/index.d.ts +9 -1
- package/dist/agentdb/index.d.ts.map +1 -1
- package/dist/agentdb/index.js +13 -9
- package/dist/agentdb/index.js.map +1 -1
- package/dist/agentdb/prerequisites.d.ts +25 -0
- package/dist/agentdb/prerequisites.d.ts.map +1 -0
- package/dist/agentdb/prerequisites.js +180 -0
- package/dist/agentdb/prerequisites.js.map +1 -0
- package/dist/agents/claudeAgent.d.ts.map +1 -1
- package/dist/agents/claudeAgent.js +9 -21
- package/dist/agents/claudeAgent.js.map +1 -1
- package/dist/agents/claudeAgentDirect.js +4 -4
- package/dist/agents/claudeAgentDirect.js.map +1 -1
- package/dist/agents/directApiAgent.d.ts.map +1 -1
- package/dist/agents/directApiAgent.js +37 -19
- package/dist/agents/directApiAgent.js.map +1 -1
- package/dist/agents/permission-mode.d.ts +16 -0
- package/dist/agents/permission-mode.d.ts.map +1 -0
- package/dist/agents/permission-mode.js +42 -0
- package/dist/agents/permission-mode.js.map +1 -0
- package/dist/billing/cli.js +0 -0
- package/dist/cli/agent-manager.d.ts.map +1 -1
- package/dist/cli/agent-manager.js +8 -2
- package/dist/cli/agent-manager.js.map +1 -1
- package/dist/cli/agentdb-proxy.d.ts +3 -0
- package/dist/cli/agentdb-proxy.d.ts.map +1 -0
- package/dist/cli/agentdb-proxy.js +8 -0
- package/dist/cli/agentdb-proxy.js.map +1 -0
- package/dist/cli/claude-code-wrapper.js +14 -4
- package/dist/cli/claude-code-wrapper.js.map +1 -1
- package/dist/cli/commands/hooks.d.ts.map +1 -1
- package/dist/cli/commands/hooks.js +21 -18
- package/dist/cli/commands/hooks.js.map +1 -1
- package/dist/cli/commands/init.d.ts +89 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +122 -113
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/sona.js +1 -1
- package/dist/cli/commands/sona.js.map +1 -1
- package/dist/cli/commands/swarm.d.ts.map +1 -1
- package/dist/cli/commands/swarm.js +3 -2
- package/dist/cli/commands/swarm.js.map +1 -1
- package/dist/cli/config-wizard.d.ts.map +1 -1
- package/dist/cli/config-wizard.js +47 -25
- package/dist/cli/config-wizard.js.map +1 -1
- package/dist/cli/mcp-manager.js +13 -6
- package/dist/cli/mcp-manager.js.map +1 -1
- package/dist/cli-proxy.d.ts +1 -1
- package/dist/cli-proxy.d.ts.map +1 -1
- package/dist/cli-proxy.js +192 -96
- package/dist/cli-proxy.js.map +1 -1
- package/dist/cli-standalone-proxy.d.ts +3 -3
- package/dist/cli-standalone-proxy.d.ts.map +1 -1
- package/dist/cli-standalone-proxy.js +20 -17
- package/dist/cli-standalone-proxy.js.map +1 -1
- package/dist/config/quic.js +1 -1
- package/dist/config/quic.js.map +1 -1
- package/dist/coordination/attention-coordinator.d.ts +165 -35
- package/dist/coordination/attention-coordinator.d.ts.map +1 -1
- package/dist/coordination/attention-coordinator.js +337 -70
- package/dist/coordination/attention-coordinator.js.map +1 -1
- package/dist/coordination/autopilot-learning.d.ts +6 -1
- package/dist/coordination/autopilot-learning.d.ts.map +1 -1
- package/dist/coordination/autopilot-learning.js +10 -3
- package/dist/coordination/autopilot-learning.js.map +1 -1
- package/dist/core/agentdb-wrapper-enhanced.d.ts.map +1 -1
- package/dist/core/agentdb-wrapper-enhanced.js +17 -7
- package/dist/core/agentdb-wrapper-enhanced.js.map +1 -1
- package/dist/core/embedding-service.js +1 -1
- package/dist/core/embedding-service.js.map +1 -1
- package/dist/core/gnn-wrapper.d.ts.map +1 -1
- package/dist/core/gnn-wrapper.js +14 -0
- package/dist/core/gnn-wrapper.js.map +1 -1
- package/dist/embeddings/optimized-embedder.js +1 -1
- package/dist/embeddings/optimized-embedder.js.map +1 -1
- package/dist/federation/EphemeralAgent.js +2 -2
- package/dist/federation/EphemeralAgent.js.map +1 -1
- package/dist/federation/FederationHubServer.d.ts +5 -0
- package/dist/federation/FederationHubServer.d.ts.map +1 -1
- package/dist/federation/FederationHubServer.js +26 -8
- package/dist/federation/FederationHubServer.js.map +1 -1
- package/dist/federation/SecurityManager.d.ts +12 -3
- package/dist/federation/SecurityManager.d.ts.map +1 -1
- package/dist/federation/SecurityManager.js +59 -21
- package/dist/federation/SecurityManager.js.map +1 -1
- package/dist/federation/integrations/supabase-adapter-debug.js +3 -3
- package/dist/federation/integrations/supabase-adapter-debug.js.map +1 -1
- package/dist/harness/flywheel-governance.d.ts +85 -0
- package/dist/harness/flywheel-governance.d.ts.map +1 -0
- package/dist/harness/flywheel-governance.js +123 -0
- package/dist/harness/flywheel-governance.js.map +1 -0
- package/dist/harness/metaharness.d.ts +6 -0
- package/dist/harness/metaharness.d.ts.map +1 -0
- package/dist/harness/metaharness.js +6 -0
- package/dist/harness/metaharness.js.map +1 -0
- package/dist/harness/provenance.d.ts +72 -0
- package/dist/harness/provenance.d.ts.map +1 -0
- package/dist/harness/provenance.js +92 -0
- package/dist/harness/provenance.js.map +1 -0
- package/dist/hooks/swarm-learning-optimizer.js +5 -5
- package/dist/hooks/swarm-learning-optimizer.js.map +1 -1
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +89 -51
- package/dist/index.js.map +1 -1
- package/dist/intelligence/EmbeddingService.js +3 -3
- package/dist/intelligence/EmbeddingService.js.map +1 -1
- package/dist/intelligence/RuVectorIntelligence.d.ts.map +1 -1
- package/dist/intelligence/RuVectorIntelligence.js +4 -1
- package/dist/intelligence/RuVectorIntelligence.js.map +1 -1
- package/dist/intelligence/agent-booster-enhanced.d.ts +18 -2
- package/dist/intelligence/agent-booster-enhanced.d.ts.map +1 -1
- package/dist/intelligence/agent-booster-enhanced.js +105 -53
- package/dist/intelligence/agent-booster-enhanced.js.map +1 -1
- package/dist/mcp/claudeFlowSdkServer.d.ts.map +1 -1
- package/dist/mcp/claudeFlowSdkServer.js +310 -79
- package/dist/mcp/claudeFlowSdkServer.js.map +1 -1
- package/dist/mcp/fastmcp/auth/http-auth.d.ts +23 -0
- package/dist/mcp/fastmcp/auth/http-auth.d.ts.map +1 -0
- package/dist/mcp/fastmcp/auth/http-auth.js +80 -0
- package/dist/mcp/fastmcp/auth/http-auth.js.map +1 -0
- package/dist/mcp/fastmcp/servers/claude-flow-sdk.js +27 -22
- package/dist/mcp/fastmcp/servers/claude-flow-sdk.js.map +1 -1
- package/dist/mcp/fastmcp/servers/http-sse.d.ts +8 -1
- package/dist/mcp/fastmcp/servers/http-sse.d.ts.map +1 -1
- package/dist/mcp/fastmcp/servers/http-sse.js +93 -43
- package/dist/mcp/fastmcp/servers/http-sse.js.map +1 -1
- package/dist/mcp/fastmcp/servers/http-streaming-updated.js +40 -35
- package/dist/mcp/fastmcp/servers/http-streaming-updated.js.map +1 -1
- package/dist/mcp/fastmcp/servers/poc-stdio.js +10 -11
- package/dist/mcp/fastmcp/servers/poc-stdio.js.map +1 -1
- package/dist/mcp/fastmcp/servers/stdio-full.js +47 -456
- package/dist/mcp/fastmcp/servers/stdio-full.js.map +1 -1
- package/dist/mcp/fastmcp/tools/agent/add-agent.d.ts.map +1 -1
- package/dist/mcp/fastmcp/tools/agent/add-agent.js +3 -2
- package/dist/mcp/fastmcp/tools/agent/add-agent.js.map +1 -1
- package/dist/mcp/fastmcp/tools/agent/execute.d.ts.map +1 -1
- package/dist/mcp/fastmcp/tools/agent/execute.js +8 -5
- package/dist/mcp/fastmcp/tools/agent/execute.js.map +1 -1
- package/dist/mcp/fastmcp/tools/agent/list.d.ts.map +1 -1
- package/dist/mcp/fastmcp/tools/agent/list.js +4 -2
- package/dist/mcp/fastmcp/tools/agent/list.js.map +1 -1
- package/dist/mcp/fastmcp/tools/agent/parallel.d.ts.map +1 -1
- package/dist/mcp/fastmcp/tools/agent/parallel.js +4 -2
- package/dist/mcp/fastmcp/tools/agent/parallel.js.map +1 -1
- package/dist/mcp/fastmcp/tools/hooks/pretrain.d.ts.map +1 -1
- package/dist/mcp/fastmcp/tools/hooks/pretrain.js +11 -3
- package/dist/mcp/fastmcp/tools/hooks/pretrain.js.map +1 -1
- package/dist/mcp/fastmcp/tools/swarm/init.d.ts.map +1 -1
- package/dist/mcp/fastmcp/tools/swarm/init.js +36 -7
- package/dist/mcp/fastmcp/tools/swarm/init.js.map +1 -1
- package/dist/mcp/fastmcp/tools/swarm/orchestrate.d.ts.map +1 -1
- package/dist/mcp/fastmcp/tools/swarm/orchestrate.js +9 -5
- package/dist/mcp/fastmcp/tools/swarm/orchestrate.js.map +1 -1
- package/dist/mcp/fastmcp/tools/swarm/spawn.d.ts.map +1 -1
- package/dist/mcp/fastmcp/tools/swarm/spawn.js +41 -23
- package/dist/mcp/fastmcp/tools/swarm/spawn.js.map +1 -1
- package/dist/mcp/mcp-policy.d.ts +15 -0
- package/dist/mcp/mcp-policy.d.ts.map +1 -0
- package/dist/mcp/mcp-policy.js +35 -0
- package/dist/mcp/mcp-policy.js.map +1 -0
- package/dist/mcp/standalone-stdio.js +107 -157
- package/dist/mcp/standalone-stdio.js.map +1 -1
- package/dist/mcp/tools/agent-booster-tools.d.ts +14 -1
- package/dist/mcp/tools/agent-booster-tools.d.ts.map +1 -1
- package/dist/mcp/tools/agent-booster-tools.js +83 -56
- package/dist/mcp/tools/agent-booster-tools.js.map +1 -1
- package/dist/mcp/tools/harness-tools.d.ts +29 -0
- package/dist/mcp/tools/harness-tools.d.ts.map +1 -0
- package/dist/mcp/tools/harness-tools.js +102 -0
- package/dist/mcp/tools/harness-tools.js.map +1 -0
- package/dist/mcp/tools/sona-tools.d.ts +1 -1
- package/dist/mcp/tools/sona-tools.d.ts.map +1 -1
- package/dist/mcp/tools/sona-tools.js +1 -1
- package/dist/mcp/tools/sona-tools.js.map +1 -1
- package/dist/memory/SharedMemoryPool.d.ts +71 -97
- package/dist/memory/SharedMemoryPool.d.ts.map +1 -1
- package/dist/memory/SharedMemoryPool.js +213 -193
- package/dist/memory/SharedMemoryPool.js.map +1 -1
- package/dist/optimizations/agent-booster-migration.d.ts +2 -0
- package/dist/optimizations/agent-booster-migration.d.ts.map +1 -1
- package/dist/optimizations/agent-booster-migration.js +68 -27
- package/dist/optimizations/agent-booster-migration.js.map +1 -1
- package/dist/optimizations/configuration-tuning.d.ts +1 -1
- package/dist/orchestration/orchestration-runtime.d.ts.map +1 -1
- package/dist/orchestration/orchestration-runtime.js +4 -10
- package/dist/orchestration/orchestration-runtime.js.map +1 -1
- package/dist/proxy/adaptive-proxy.d.ts.map +1 -1
- package/dist/proxy/adaptive-proxy.js +1 -0
- package/dist/proxy/adaptive-proxy.js.map +1 -1
- package/dist/proxy/anthropic-to-gemini.d.ts +14 -1
- package/dist/proxy/anthropic-to-gemini.d.ts.map +1 -1
- package/dist/proxy/anthropic-to-gemini.js +42 -22
- package/dist/proxy/anthropic-to-gemini.js.map +1 -1
- package/dist/proxy/anthropic-to-onnx.d.ts +2 -1
- package/dist/proxy/anthropic-to-onnx.d.ts.map +1 -1
- package/dist/proxy/anthropic-to-onnx.js +5 -2
- package/dist/proxy/anthropic-to-onnx.js.map +1 -1
- package/dist/proxy/anthropic-to-openrouter.d.ts +14 -1
- package/dist/proxy/anthropic-to-openrouter.d.ts.map +1 -1
- package/dist/proxy/anthropic-to-openrouter.js +43 -21
- package/dist/proxy/anthropic-to-openrouter.js.map +1 -1
- package/dist/proxy/anthropic-to-requesty.d.ts +14 -1
- package/dist/proxy/anthropic-to-requesty.d.ts.map +1 -1
- package/dist/proxy/anthropic-to-requesty.js +42 -20
- package/dist/proxy/anthropic-to-requesty.js.map +1 -1
- package/dist/proxy/proxy-auth.d.ts +24 -0
- package/dist/proxy/proxy-auth.d.ts.map +1 -0
- package/dist/proxy/proxy-auth.js +74 -0
- package/dist/proxy/proxy-auth.js.map +1 -0
- package/dist/proxy/quic-proxy.d.ts +0 -1
- package/dist/proxy/quic-proxy.d.ts.map +1 -1
- package/dist/proxy/quic-proxy.js +3 -2
- package/dist/proxy/quic-proxy.js.map +1 -1
- package/dist/proxy/sse-lines.d.ts +9 -0
- package/dist/proxy/sse-lines.d.ts.map +1 -0
- package/dist/proxy/sse-lines.js +37 -0
- package/dist/proxy/sse-lines.js.map +1 -0
- package/dist/reasoningbank/AdvancedMemory.js +1 -1
- package/dist/reasoningbank/AdvancedMemory.js.map +1 -1
- package/dist/reasoningbank/HybridBackend.d.ts.map +1 -1
- package/dist/reasoningbank/HybridBackend.js +2 -5
- package/dist/reasoningbank/HybridBackend.js.map +1 -1
- package/dist/reasoningbank/backend-selector.d.ts +12 -3
- package/dist/reasoningbank/backend-selector.d.ts.map +1 -1
- package/dist/reasoningbank/backend-selector.js +47 -9
- package/dist/reasoningbank/backend-selector.js.map +1 -1
- package/dist/reasoningbank/core/consolidate.d.ts.map +1 -1
- package/dist/reasoningbank/core/consolidate.js +116 -48
- package/dist/reasoningbank/core/consolidate.js.map +1 -1
- package/dist/reasoningbank/core/distill.js +4 -4
- package/dist/reasoningbank/core/distill.js.map +1 -1
- package/dist/reasoningbank/core/judge.js +2 -2
- package/dist/reasoningbank/core/judge.js.map +1 -1
- package/dist/reasoningbank/core/matts.js +8 -8
- package/dist/reasoningbank/core/matts.js.map +1 -1
- package/dist/reasoningbank/core/retrieve.js +4 -4
- package/dist/reasoningbank/core/retrieve.js.map +1 -1
- package/dist/reasoningbank/db/queries.d.ts +10 -2
- package/dist/reasoningbank/db/queries.d.ts.map +1 -1
- package/dist/reasoningbank/db/queries.js +43 -7
- package/dist/reasoningbank/db/queries.js.map +1 -1
- package/dist/reasoningbank/index-new.d.ts +1 -6
- package/dist/reasoningbank/index-new.d.ts.map +1 -1
- package/dist/reasoningbank/index-new.js +1 -6
- package/dist/reasoningbank/index-new.js.map +1 -1
- package/dist/reasoningbank/index.d.ts +4 -7
- package/dist/reasoningbank/index.d.ts.map +1 -1
- package/dist/reasoningbank/index.js +18 -20
- package/dist/reasoningbank/index.js.map +1 -1
- package/dist/reasoningbank/utils/embeddings.d.ts +29 -1
- package/dist/reasoningbank/utils/embeddings.d.ts.map +1 -1
- package/dist/reasoningbank/utils/embeddings.js +156 -59
- package/dist/reasoningbank/utils/embeddings.js.map +1 -1
- package/dist/repair/cli.d.ts +24 -0
- package/dist/repair/cli.d.ts.map +1 -0
- package/dist/repair/cli.js +69 -0
- package/dist/repair/cli.js.map +1 -0
- package/dist/repair/darwin-repair.d.ts +92 -0
- package/dist/repair/darwin-repair.d.ts.map +1 -0
- package/dist/repair/darwin-repair.js +81 -0
- package/dist/repair/darwin-repair.js.map +1 -0
- package/dist/router/config-loader.d.ts +12 -0
- package/dist/router/config-loader.d.ts.map +1 -0
- package/dist/router/config-loader.js +53 -0
- package/dist/router/config-loader.js.map +1 -0
- package/dist/router/cost-optimal-router.d.ts +89 -0
- package/dist/router/cost-optimal-router.d.ts.map +1 -0
- package/dist/router/cost-optimal-router.js +94 -0
- package/dist/router/cost-optimal-router.js.map +1 -0
- package/dist/router/index.d.ts +2 -1
- package/dist/router/index.d.ts.map +1 -1
- package/dist/router/index.js +1 -0
- package/dist/router/index.js.map +1 -1
- package/dist/router/providers/gemini.d.ts.map +1 -1
- package/dist/router/providers/gemini.js +4 -5
- package/dist/router/providers/gemini.js.map +1 -1
- package/dist/{agentic-flow/src/router/providers/openrouter.d.ts → router/providers/ollama.d.ts} +3 -4
- package/dist/router/providers/ollama.d.ts.map +1 -0
- package/dist/router/providers/ollama.js +242 -0
- package/dist/router/providers/ollama.js.map +1 -0
- package/dist/router/providers/onnx-local-optimized.d.ts +11 -0
- package/dist/router/providers/onnx-local-optimized.d.ts.map +1 -1
- package/dist/router/providers/onnx-local-optimized.js +13 -1
- package/dist/router/providers/onnx-local-optimized.js.map +1 -1
- package/dist/router/providers/onnx-local.d.ts +10 -0
- package/dist/router/providers/onnx-local.d.ts.map +1 -1
- package/dist/router/providers/onnx-local.js +39 -7
- package/dist/router/providers/onnx-local.js.map +1 -1
- package/dist/router/providers/onnx-phi4.d.ts.map +1 -1
- package/dist/router/providers/onnx-phi4.js +2 -1
- package/dist/router/providers/onnx-phi4.js.map +1 -1
- package/dist/router/providers/onnx.js +2 -2
- package/dist/router/providers/onnx.js.map +1 -1
- package/dist/router/router.d.ts +46 -2
- package/dist/router/router.d.ts.map +1 -1
- package/dist/router/router.js +198 -71
- package/dist/router/router.js.map +1 -1
- package/dist/router/test-onnx-benchmark.js +2 -1
- package/dist/router/test-onnx-benchmark.js.map +1 -1
- package/dist/router/test-onnx-local.js +2 -1
- package/dist/router/test-onnx-local.js.map +1 -1
- package/dist/router/types.d.ts +1 -1
- package/dist/router/types.d.ts.map +1 -1
- package/dist/router/types.js.map +1 -1
- package/dist/sdk/index.d.ts +12 -8
- package/dist/sdk/index.d.ts.map +1 -1
- package/dist/sdk/index.js +23 -20
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/plugins.d.ts +6 -6
- package/dist/sdk/plugins.d.ts.map +1 -1
- package/dist/sdk/plugins.js +37 -0
- package/dist/sdk/plugins.js.map +1 -1
- package/dist/services/agentdb-service.d.ts +27 -259
- package/dist/services/agentdb-service.d.ts.map +1 -1
- package/dist/services/agentdb-service.js +124 -1217
- package/dist/services/agentdb-service.js.map +1 -1
- package/dist/services/embedding-service.js +1 -1
- package/dist/services/embedding-service.js.map +1 -1
- package/dist/services/sona-agent-training.js +3 -3
- package/dist/services/sona-agent-training.js.map +1 -1
- package/dist/services/sona-agentdb-integration.d.ts.map +1 -1
- package/dist/services/sona-agentdb-integration.js +2 -1
- package/dist/services/sona-agentdb-integration.js.map +1 -1
- package/dist/services/sona-loader.d.ts +14 -0
- package/dist/services/sona-loader.d.ts.map +1 -0
- package/dist/services/sona-loader.js +35 -0
- package/dist/services/sona-loader.js.map +1 -0
- package/dist/services/sona-rvf-service.d.ts.map +1 -1
- package/dist/services/sona-rvf-service.js +13 -2
- package/dist/services/sona-rvf-service.js.map +1 -1
- package/dist/services/sona-service.d.ts +7 -10
- package/dist/services/sona-service.d.ts.map +1 -1
- package/dist/services/sona-service.js +40 -13
- package/dist/services/sona-service.js.map +1 -1
- package/dist/transport/index.d.ts +1 -0
- package/dist/transport/index.d.ts.map +1 -1
- package/dist/transport/index.js +1 -0
- package/dist/transport/index.js.map +1 -1
- package/dist/transport/quic-loader.d.ts +266 -0
- package/dist/transport/quic-loader.d.ts.map +1 -0
- package/dist/transport/quic-loader.js +548 -0
- package/dist/transport/quic-loader.js.map +1 -0
- package/dist/transport/quic.js +2 -2
- package/dist/transport/quic.js.map +1 -1
- package/dist/utils/agentBoosterPreprocessor.d.ts +0 -4
- package/dist/utils/agentBoosterPreprocessor.d.ts.map +1 -1
- package/dist/utils/agentBoosterPreprocessor.js +10 -34
- package/dist/utils/agentBoosterPreprocessor.js.map +1 -1
- package/dist/utils/cli.d.ts +1 -1
- package/dist/utils/cli.d.ts.map +1 -1
- package/dist/utils/cli.js +23 -0
- package/dist/utils/cli.js.map +1 -1
- package/dist/utils/env-loader.d.ts +23 -0
- package/dist/utils/env-loader.d.ts.map +1 -0
- package/dist/utils/env-loader.js +73 -0
- package/dist/utils/env-loader.js.map +1 -0
- package/dist/utils/load-env.d.ts +2 -0
- package/dist/utils/load-env.d.ts.map +1 -0
- package/dist/utils/load-env.js +5 -0
- package/dist/utils/load-env.js.map +1 -0
- package/dist/utils/model-cache.js +1 -1
- package/dist/utils/model-cache.js.map +1 -1
- package/dist/utils/model-downloader.d.ts +14 -0
- package/dist/utils/model-downloader.d.ts.map +1 -1
- package/dist/utils/model-downloader.js +19 -3
- package/dist/utils/model-downloader.js.map +1 -1
- package/dist/utils/package-version.d.ts +9 -0
- package/dist/utils/package-version.d.ts.map +1 -0
- package/dist/utils/package-version.js +39 -0
- package/dist/utils/package-version.js.map +1 -0
- package/dist/utils/path-safety.d.ts +16 -0
- package/dist/utils/path-safety.d.ts.map +1 -0
- package/dist/utils/path-safety.js +78 -0
- package/dist/utils/path-safety.js.map +1 -0
- package/docs/IMPROVEMENT_ROADMAP.md +184 -0
- package/docs/docker-tests/TEST-V1.7.8.Dockerfile +2 -2
- package/docs/docker-tests/TEST-V1.7.9-NODE20.Dockerfile +2 -2
- package/docs/docker-tests/TEST-V1.7.9.Dockerfile +2 -2
- package/docs/embeddings/EMBEDDING_GEOMETRY.md +935 -0
- package/docs/guides/CLAUDE-CODE-INTEGRATION.md +25 -8
- package/docs/guides/PROXY-ARCHITECTURE-AND-EXTENSION.md +22 -9
- package/docs/guides/STANDALONE_PROXY_GUIDE.md +16 -6
- package/docs/integrations/FASTMCP_CLI_INTEGRATION.md +1 -1
- package/docs/plans/requesty/02-architecture.md +5 -6
- package/docs/plans/requesty/03-implementation-phases.md +3 -4
- package/docs/plans/requesty/05-migration-guide.md +2 -2
- package/package.json +76 -32
- package/scripts/postinstall.js +45 -4
- package/scripts/validate-providers.sh +7 -4
- package/validation/quick-wins/test-logging.ts +7 -0
- package/validation/quick-wins/test-retry.ts +7 -0
- package/validation/sdk-integration-test.ts +208 -0
- package/wasm/reasoningbank/reasoningbank_wasm.d.ts +34 -31
- package/wasm/reasoningbank/reasoningbank_wasm.js +5 -1
- package/wasm/reasoningbank/reasoningbank_wasm_bg.js +416 -465
- package/wasm/reasoningbank/reasoningbank_wasm_bg.wasm +0 -0
- package/wasm/reasoningbank/reasoningbank_wasm_bg.wasm.d.ts +13 -12
- package/.claude/agents/.claude-flow/metrics/agent-metrics.json +0 -1
- package/.claude/agents/.claude-flow/metrics/performance.json +0 -87
- package/.claude/agents/.claude-flow/metrics/task-metrics.json +0 -10
- package/.claude/agents/data/ml/data-ml-model.md +0 -193
- package/.claude/agents/development/backend/dev-backend-api.md +0 -142
- package/.claude/agents/documentation/api-docs/docs-api-openapi.md +0 -174
- package/.claude/agents/test-neural.md +0 -14
- package/.claude/helpers/auto-memory-hook.mjs +0 -350
- package/.claude/mcp.json +0 -13
- package/.claude/settings-backup.json +0 -130
- package/.claude/settings-optimized.json +0 -116
- package/.claude/settings-simple.json +0 -78
- package/.claude/settings.json +0 -114
- package/.claude/settings.local.json +0 -14
- package/.claude/skills/.claude-flow/metrics/agent-metrics.json +0 -1
- package/.claude/skills/.claude-flow/metrics/performance.json +0 -87
- package/.claude/skills/.claude-flow/metrics/task-metrics.json +0 -10
- package/.claude/skills/skill-builder/.claude-flow/metrics/agent-metrics.json +0 -1
- package/.claude/skills/skill-builder/.claude-flow/metrics/performance.json +0 -87
- package/.claude/skills/skill-builder/.claude-flow/metrics/task-metrics.json +0 -10
- package/dist/agentdb/benchmarks/comprehensive-benchmark.js +0 -664
- package/dist/agentdb/benchmarks/frontier-benchmark.js +0 -419
- package/dist/agentdb/benchmarks/reflexion-benchmark.js +0 -370
- package/dist/agentdb/cli/agentdb-cli.js +0 -717
- package/dist/agentdb/controllers/CausalMemoryGraph.js +0 -322
- package/dist/agentdb/controllers/CausalRecall.js +0 -281
- package/dist/agentdb/controllers/EmbeddingService.d.ts +0 -37
- package/dist/agentdb/controllers/EmbeddingService.d.ts.map +0 -1
- package/dist/agentdb/controllers/EmbeddingService.js +0 -119
- package/dist/agentdb/controllers/EmbeddingService.js.map +0 -1
- package/dist/agentdb/controllers/ExplainableRecall.js +0 -387
- package/dist/agentdb/controllers/NightlyLearner.js +0 -382
- package/dist/agentdb/controllers/ReflexionMemory.js +0 -239
- package/dist/agentdb/controllers/SkillLibrary.js +0 -276
- package/dist/agentdb/controllers/frontier-index.js +0 -9
- package/dist/agentdb/controllers/index.js +0 -8
- package/dist/agentdb/optimizations/BatchOperations.js +0 -198
- package/dist/agentdb/optimizations/QueryOptimizer.js +0 -225
- package/dist/agentdb/optimizations/index.js +0 -7
- package/dist/agentdb/tests/frontier-features.test.js +0 -665
- package/dist/agentic-flow/src/agentdb/index.d.ts +0 -20
- package/dist/agentic-flow/src/agentdb/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/agentdb/index.js +0 -34
- package/dist/agentic-flow/src/agentdb/index.js.map +0 -1
- package/dist/agentic-flow/src/agentdb/validate-frontier.cjs +0 -416
- package/dist/agentic-flow/src/agentdb/validate-frontier.cjs.map +0 -1
- package/dist/agentic-flow/src/agentdb/validate-frontier.d.cts +0 -2
- package/dist/agentic-flow/src/agentdb/validate-frontier.d.cts.map +0 -1
- package/dist/agentic-flow/src/agents/claudeAgent.d.ts +0 -6
- package/dist/agentic-flow/src/agents/claudeAgent.d.ts.map +0 -1
- package/dist/agentic-flow/src/agents/claudeAgent.js +0 -339
- package/dist/agentic-flow/src/agents/claudeAgent.js.map +0 -1
- package/dist/agentic-flow/src/agents/claudeAgentDirect.d.ts +0 -6
- package/dist/agentic-flow/src/agents/claudeAgentDirect.d.ts.map +0 -1
- package/dist/agentic-flow/src/agents/claudeAgentDirect.js +0 -171
- package/dist/agentic-flow/src/agents/claudeAgentDirect.js.map +0 -1
- package/dist/agentic-flow/src/agents/claudeFlowAgent.d.ts +0 -32
- package/dist/agentic-flow/src/agents/claudeFlowAgent.d.ts.map +0 -1
- package/dist/agentic-flow/src/agents/claudeFlowAgent.js +0 -116
- package/dist/agentic-flow/src/agents/claudeFlowAgent.js.map +0 -1
- package/dist/agentic-flow/src/agents/codeReviewAgent.d.ts +0 -4
- package/dist/agentic-flow/src/agents/codeReviewAgent.d.ts.map +0 -1
- package/dist/agentic-flow/src/agents/codeReviewAgent.js +0 -35
- package/dist/agentic-flow/src/agents/codeReviewAgent.js.map +0 -1
- package/dist/agentic-flow/src/agents/dataAgent.d.ts +0 -4
- package/dist/agentic-flow/src/agents/dataAgent.d.ts.map +0 -1
- package/dist/agentic-flow/src/agents/dataAgent.js +0 -35
- package/dist/agentic-flow/src/agents/dataAgent.js.map +0 -1
- package/dist/agentic-flow/src/agents/directApiAgent.d.ts +0 -10
- package/dist/agentic-flow/src/agents/directApiAgent.d.ts.map +0 -1
- package/dist/agentic-flow/src/agents/directApiAgent.js +0 -383
- package/dist/agentic-flow/src/agents/directApiAgent.js.map +0 -1
- package/dist/agentic-flow/src/agents/webResearchAgent.d.ts +0 -4
- package/dist/agentic-flow/src/agents/webResearchAgent.d.ts.map +0 -1
- package/dist/agentic-flow/src/agents/webResearchAgent.js +0 -36
- package/dist/agentic-flow/src/agents/webResearchAgent.js.map +0 -1
- package/dist/agentic-flow/src/billing/cli.d.ts +0 -29
- package/dist/agentic-flow/src/billing/cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/billing/cli.js +0 -350
- package/dist/agentic-flow/src/billing/cli.js.map +0 -1
- package/dist/agentic-flow/src/billing/coupons/manager.d.ts +0 -43
- package/dist/agentic-flow/src/billing/coupons/manager.d.ts.map +0 -1
- package/dist/agentic-flow/src/billing/coupons/manager.js +0 -171
- package/dist/agentic-flow/src/billing/coupons/manager.js.map +0 -1
- package/dist/agentic-flow/src/billing/index.d.ts +0 -100
- package/dist/agentic-flow/src/billing/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/billing/index.js +0 -205
- package/dist/agentic-flow/src/billing/index.js.map +0 -1
- package/dist/agentic-flow/src/billing/mcp/tools.d.ts +0 -39
- package/dist/agentic-flow/src/billing/mcp/tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/billing/mcp/tools.js +0 -239
- package/dist/agentic-flow/src/billing/mcp/tools.js.map +0 -1
- package/dist/agentic-flow/src/billing/metering/engine.d.ts +0 -58
- package/dist/agentic-flow/src/billing/metering/engine.d.ts.map +0 -1
- package/dist/agentic-flow/src/billing/metering/engine.js +0 -260
- package/dist/agentic-flow/src/billing/metering/engine.js.map +0 -1
- package/dist/agentic-flow/src/billing/payments/processor.d.ts +0 -68
- package/dist/agentic-flow/src/billing/payments/processor.d.ts.map +0 -1
- package/dist/agentic-flow/src/billing/payments/processor.js +0 -158
- package/dist/agentic-flow/src/billing/payments/processor.js.map +0 -1
- package/dist/agentic-flow/src/billing/pricing/tiers.d.ts +0 -20
- package/dist/agentic-flow/src/billing/pricing/tiers.d.ts.map +0 -1
- package/dist/agentic-flow/src/billing/pricing/tiers.js +0 -252
- package/dist/agentic-flow/src/billing/pricing/tiers.js.map +0 -1
- package/dist/agentic-flow/src/billing/storage/adapters.d.ts +0 -90
- package/dist/agentic-flow/src/billing/storage/adapters.d.ts.map +0 -1
- package/dist/agentic-flow/src/billing/storage/adapters.js +0 -351
- package/dist/agentic-flow/src/billing/storage/adapters.js.map +0 -1
- package/dist/agentic-flow/src/billing/subscriptions/manager.d.ts +0 -57
- package/dist/agentic-flow/src/billing/subscriptions/manager.d.ts.map +0 -1
- package/dist/agentic-flow/src/billing/subscriptions/manager.js +0 -273
- package/dist/agentic-flow/src/billing/subscriptions/manager.js.map +0 -1
- package/dist/agentic-flow/src/billing/types.d.ts +0 -255
- package/dist/agentic-flow/src/billing/types.d.ts.map +0 -1
- package/dist/agentic-flow/src/billing/types.js +0 -78
- package/dist/agentic-flow/src/billing/types.js.map +0 -1
- package/dist/agentic-flow/src/cli/agent-manager.d.ts +0 -57
- package/dist/agentic-flow/src/cli/agent-manager.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/agent-manager.js +0 -452
- package/dist/agentic-flow/src/cli/agent-manager.js.map +0 -1
- package/dist/agentic-flow/src/cli/autopilot-cli.d.ts +0 -8
- package/dist/agentic-flow/src/cli/autopilot-cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/autopilot-cli.js +0 -458
- package/dist/agentic-flow/src/cli/autopilot-cli.js.map +0 -1
- package/dist/agentic-flow/src/cli/claude-code-wrapper.d.ts +0 -21
- package/dist/agentic-flow/src/cli/claude-code-wrapper.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/claude-code-wrapper.js +0 -351
- package/dist/agentic-flow/src/cli/claude-code-wrapper.js.map +0 -1
- package/dist/agentic-flow/src/cli/config-wizard.d.ts +0 -21
- package/dist/agentic-flow/src/cli/config-wizard.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/config-wizard.js +0 -369
- package/dist/agentic-flow/src/cli/config-wizard.js.map +0 -1
- package/dist/agentic-flow/src/cli/daemon-cli.d.ts +0 -3
- package/dist/agentic-flow/src/cli/daemon-cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/daemon-cli.js +0 -225
- package/dist/agentic-flow/src/cli/daemon-cli.js.map +0 -1
- package/dist/agentic-flow/src/cli/doctor-cli.d.ts +0 -6
- package/dist/agentic-flow/src/cli/doctor-cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/doctor-cli.js +0 -192
- package/dist/agentic-flow/src/cli/doctor-cli.js.map +0 -1
- package/dist/agentic-flow/src/cli/federation-cli.d.ts +0 -54
- package/dist/agentic-flow/src/cli/federation-cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/federation-cli.js +0 -432
- package/dist/agentic-flow/src/cli/federation-cli.js.map +0 -1
- package/dist/agentic-flow/src/cli/hivemind-cli.d.ts +0 -3
- package/dist/agentic-flow/src/cli/hivemind-cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/hivemind-cli.js +0 -218
- package/dist/agentic-flow/src/cli/hivemind-cli.js.map +0 -1
- package/dist/agentic-flow/src/cli/hooks-cli.d.ts +0 -3
- package/dist/agentic-flow/src/cli/hooks-cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/hooks-cli.js +0 -259
- package/dist/agentic-flow/src/cli/hooks-cli.js.map +0 -1
- package/dist/agentic-flow/src/cli/mcp-manager.d.ts +0 -12
- package/dist/agentic-flow/src/cli/mcp-manager.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/mcp-manager.js +0 -475
- package/dist/agentic-flow/src/cli/mcp-manager.js.map +0 -1
- package/dist/agentic-flow/src/cli/mcp.d.ts +0 -11
- package/dist/agentic-flow/src/cli/mcp.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/mcp.js +0 -136
- package/dist/agentic-flow/src/cli/mcp.js.map +0 -1
- package/dist/agentic-flow/src/cli/memory-cli.d.ts +0 -2
- package/dist/agentic-flow/src/cli/memory-cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/memory-cli.js +0 -318
- package/dist/agentic-flow/src/cli/memory-cli.js.map +0 -1
- package/dist/agentic-flow/src/cli/session-cli.d.ts +0 -3
- package/dist/agentic-flow/src/cli/session-cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/session-cli.js +0 -259
- package/dist/agentic-flow/src/cli/session-cli.js.map +0 -1
- package/dist/agentic-flow/src/cli/swarm-cli.d.ts +0 -6
- package/dist/agentic-flow/src/cli/swarm-cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/swarm-cli.js +0 -256
- package/dist/agentic-flow/src/cli/swarm-cli.js.map +0 -1
- package/dist/agentic-flow/src/cli/task-cli.d.ts +0 -6
- package/dist/agentic-flow/src/cli/task-cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli/task-cli.js +0 -257
- package/dist/agentic-flow/src/cli/task-cli.js.map +0 -1
- package/dist/agentic-flow/src/cli-proxy.d.ts +0 -7
- package/dist/agentic-flow/src/cli-proxy.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli-proxy.js +0 -1220
- package/dist/agentic-flow/src/cli-proxy.js.map +0 -1
- package/dist/agentic-flow/src/cli-standalone-proxy.d.ts +0 -17
- package/dist/agentic-flow/src/cli-standalone-proxy.d.ts.map +0 -1
- package/dist/agentic-flow/src/cli-standalone-proxy.js +0 -198
- package/dist/agentic-flow/src/cli-standalone-proxy.js.map +0 -1
- package/dist/agentic-flow/src/config/claudeFlow.d.ts +0 -33
- package/dist/agentic-flow/src/config/claudeFlow.d.ts.map +0 -1
- package/dist/agentic-flow/src/config/claudeFlow.js +0 -68
- package/dist/agentic-flow/src/config/claudeFlow.js.map +0 -1
- package/dist/agentic-flow/src/config/quic.d.ts +0 -58
- package/dist/agentic-flow/src/config/quic.d.ts.map +0 -1
- package/dist/agentic-flow/src/config/quic.js +0 -207
- package/dist/agentic-flow/src/config/quic.js.map +0 -1
- package/dist/agentic-flow/src/config/tools.d.ts +0 -17
- package/dist/agentic-flow/src/config/tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/config/tools.js +0 -34
- package/dist/agentic-flow/src/config/tools.js.map +0 -1
- package/dist/agentic-flow/src/coordination/attention-coordinator.d.ts +0 -52
- package/dist/agentic-flow/src/coordination/attention-coordinator.d.ts.map +0 -1
- package/dist/agentic-flow/src/coordination/attention-coordinator.js +0 -94
- package/dist/agentic-flow/src/coordination/attention-coordinator.js.map +0 -1
- package/dist/agentic-flow/src/coordination/autopilot-learning.d.ts +0 -124
- package/dist/agentic-flow/src/coordination/autopilot-learning.d.ts.map +0 -1
- package/dist/agentic-flow/src/coordination/autopilot-learning.js +0 -306
- package/dist/agentic-flow/src/coordination/autopilot-learning.js.map +0 -1
- package/dist/agentic-flow/src/coordination/drift-detector.d.ts +0 -86
- package/dist/agentic-flow/src/coordination/drift-detector.d.ts.map +0 -1
- package/dist/agentic-flow/src/coordination/drift-detector.js +0 -218
- package/dist/agentic-flow/src/coordination/drift-detector.js.map +0 -1
- package/dist/agentic-flow/src/coordination/graph-state-manager.d.ts +0 -69
- package/dist/agentic-flow/src/coordination/graph-state-manager.d.ts.map +0 -1
- package/dist/agentic-flow/src/coordination/graph-state-manager.js +0 -118
- package/dist/agentic-flow/src/coordination/graph-state-manager.js.map +0 -1
- package/dist/agentic-flow/src/coordination/self-improvement-pipeline.d.ts +0 -70
- package/dist/agentic-flow/src/coordination/self-improvement-pipeline.d.ts.map +0 -1
- package/dist/agentic-flow/src/coordination/self-improvement-pipeline.js +0 -144
- package/dist/agentic-flow/src/coordination/self-improvement-pipeline.js.map +0 -1
- package/dist/agentic-flow/src/coordination/swarm-completion.d.ts +0 -126
- package/dist/agentic-flow/src/coordination/swarm-completion.d.ts.map +0 -1
- package/dist/agentic-flow/src/coordination/swarm-completion.js +0 -368
- package/dist/agentic-flow/src/coordination/swarm-completion.js.map +0 -1
- package/dist/agentic-flow/src/core/long-running-agent.d.ts +0 -92
- package/dist/agentic-flow/src/core/long-running-agent.d.ts.map +0 -1
- package/dist/agentic-flow/src/core/long-running-agent.js +0 -220
- package/dist/agentic-flow/src/core/long-running-agent.js.map +0 -1
- package/dist/agentic-flow/src/core/provider-manager.d.ts +0 -145
- package/dist/agentic-flow/src/core/provider-manager.d.ts.map +0 -1
- package/dist/agentic-flow/src/core/provider-manager.js +0 -435
- package/dist/agentic-flow/src/core/provider-manager.js.map +0 -1
- package/dist/agentic-flow/src/dashboard/demo.d.ts +0 -8
- package/dist/agentic-flow/src/dashboard/demo.d.ts.map +0 -1
- package/dist/agentic-flow/src/dashboard/demo.js +0 -222
- package/dist/agentic-flow/src/dashboard/demo.js.map +0 -1
- package/dist/agentic-flow/src/dashboard/explainability-dashboard.d.ts +0 -45
- package/dist/agentic-flow/src/dashboard/explainability-dashboard.d.ts.map +0 -1
- package/dist/agentic-flow/src/dashboard/explainability-dashboard.js +0 -330
- package/dist/agentic-flow/src/dashboard/explainability-dashboard.js.map +0 -1
- package/dist/agentic-flow/src/db/sql-adapter.d.ts +0 -31
- package/dist/agentic-flow/src/db/sql-adapter.d.ts.map +0 -1
- package/dist/agentic-flow/src/db/sql-adapter.js +0 -100
- package/dist/agentic-flow/src/db/sql-adapter.js.map +0 -1
- package/dist/agentic-flow/src/examples/multi-agent-orchestration.d.ts +0 -3
- package/dist/agentic-flow/src/examples/multi-agent-orchestration.d.ts.map +0 -1
- package/dist/agentic-flow/src/examples/multi-agent-orchestration.js +0 -46
- package/dist/agentic-flow/src/examples/multi-agent-orchestration.js.map +0 -1
- package/dist/agentic-flow/src/examples/use-goal-planner.d.ts +0 -3
- package/dist/agentic-flow/src/examples/use-goal-planner.d.ts.map +0 -1
- package/dist/agentic-flow/src/examples/use-goal-planner.js +0 -53
- package/dist/agentic-flow/src/examples/use-goal-planner.js.map +0 -1
- package/dist/agentic-flow/src/examples/use-provider-fallback.d.ts +0 -13
- package/dist/agentic-flow/src/examples/use-provider-fallback.d.ts.map +0 -1
- package/dist/agentic-flow/src/examples/use-provider-fallback.js +0 -177
- package/dist/agentic-flow/src/examples/use-provider-fallback.js.map +0 -1
- package/dist/agentic-flow/src/federation/EphemeralAgent.d.ts +0 -84
- package/dist/agentic-flow/src/federation/EphemeralAgent.d.ts.map +0 -1
- package/dist/agentic-flow/src/federation/EphemeralAgent.js +0 -259
- package/dist/agentic-flow/src/federation/EphemeralAgent.js.map +0 -1
- package/dist/agentic-flow/src/federation/FederationHub.d.ts +0 -89
- package/dist/agentic-flow/src/federation/FederationHub.d.ts.map +0 -1
- package/dist/agentic-flow/src/federation/FederationHub.js +0 -284
- package/dist/agentic-flow/src/federation/FederationHub.js.map +0 -1
- package/dist/agentic-flow/src/federation/FederationHubClient.d.ts +0 -70
- package/dist/agentic-flow/src/federation/FederationHubClient.d.ts.map +0 -1
- package/dist/agentic-flow/src/federation/FederationHubClient.js +0 -213
- package/dist/agentic-flow/src/federation/FederationHubClient.js.map +0 -1
- package/dist/agentic-flow/src/federation/FederationHubServer.d.ts +0 -100
- package/dist/agentic-flow/src/federation/FederationHubServer.d.ts.map +0 -1
- package/dist/agentic-flow/src/federation/FederationHubServer.js +0 -437
- package/dist/agentic-flow/src/federation/FederationHubServer.js.map +0 -1
- package/dist/agentic-flow/src/federation/SecurityManager.d.ts +0 -80
- package/dist/agentic-flow/src/federation/SecurityManager.d.ts.map +0 -1
- package/dist/agentic-flow/src/federation/SecurityManager.js +0 -192
- package/dist/agentic-flow/src/federation/SecurityManager.js.map +0 -1
- package/dist/agentic-flow/src/federation/debug/agent-debug-stream.d.ts +0 -171
- package/dist/agentic-flow/src/federation/debug/agent-debug-stream.d.ts.map +0 -1
- package/dist/agentic-flow/src/federation/debug/agent-debug-stream.js +0 -475
- package/dist/agentic-flow/src/federation/debug/agent-debug-stream.js.map +0 -1
- package/dist/agentic-flow/src/federation/debug/debug-stream.d.ts +0 -157
- package/dist/agentic-flow/src/federation/debug/debug-stream.d.ts.map +0 -1
- package/dist/agentic-flow/src/federation/debug/debug-stream.js +0 -420
- package/dist/agentic-flow/src/federation/debug/debug-stream.js.map +0 -1
- package/dist/agentic-flow/src/federation/index.d.ts +0 -13
- package/dist/agentic-flow/src/federation/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/federation/index.js +0 -13
- package/dist/agentic-flow/src/federation/index.js.map +0 -1
- package/dist/agentic-flow/src/federation/integrations/realtime-federation.d.ts +0 -144
- package/dist/agentic-flow/src/federation/integrations/realtime-federation.d.ts.map +0 -1
- package/dist/agentic-flow/src/federation/integrations/realtime-federation.js +0 -405
- package/dist/agentic-flow/src/federation/integrations/realtime-federation.js.map +0 -1
- package/dist/agentic-flow/src/federation/integrations/supabase-adapter-debug.d.ts +0 -91
- package/dist/agentic-flow/src/federation/integrations/supabase-adapter-debug.d.ts.map +0 -1
- package/dist/agentic-flow/src/federation/integrations/supabase-adapter-debug.js +0 -401
- package/dist/agentic-flow/src/federation/integrations/supabase-adapter-debug.js.map +0 -1
- package/dist/agentic-flow/src/federation/integrations/supabase-adapter.d.ts +0 -89
- package/dist/agentic-flow/src/federation/integrations/supabase-adapter.d.ts.map +0 -1
- package/dist/agentic-flow/src/federation/integrations/supabase-adapter.js +0 -259
- package/dist/agentic-flow/src/federation/integrations/supabase-adapter.js.map +0 -1
- package/dist/agentic-flow/src/health.d.ts +0 -28
- package/dist/agentic-flow/src/health.d.ts.map +0 -1
- package/dist/agentic-flow/src/health.js +0 -112
- package/dist/agentic-flow/src/health.js.map +0 -1
- package/dist/agentic-flow/src/hooks/parallel-validation.d.ts +0 -51
- package/dist/agentic-flow/src/hooks/parallel-validation.d.ts.map +0 -1
- package/dist/agentic-flow/src/hooks/parallel-validation.js +0 -167
- package/dist/agentic-flow/src/hooks/parallel-validation.js.map +0 -1
- package/dist/agentic-flow/src/hooks/swarm-learning-optimizer.d.ts +0 -89
- package/dist/agentic-flow/src/hooks/swarm-learning-optimizer.d.ts.map +0 -1
- package/dist/agentic-flow/src/hooks/swarm-learning-optimizer.js +0 -351
- package/dist/agentic-flow/src/hooks/swarm-learning-optimizer.js.map +0 -1
- package/dist/agentic-flow/src/index.d.ts +0 -4
- package/dist/agentic-flow/src/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/index.js +0 -210
- package/dist/agentic-flow/src/index.js.map +0 -1
- package/dist/agentic-flow/src/mcp/claudeFlowSdkServer.d.ts +0 -6
- package/dist/agentic-flow/src/mcp/claudeFlowSdkServer.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/claudeFlowSdkServer.js +0 -203
- package/dist/agentic-flow/src/mcp/claudeFlowSdkServer.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/servers/claude-flow-sdk.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/servers/claude-flow-sdk.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/servers/claude-flow-sdk.js +0 -199
- package/dist/agentic-flow/src/mcp/fastmcp/servers/claude-flow-sdk.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/servers/http-sse.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/servers/http-sse.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/servers/http-sse.js +0 -374
- package/dist/agentic-flow/src/mcp/fastmcp/servers/http-sse.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/servers/http-streaming-updated.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/servers/http-streaming-updated.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/servers/http-streaming-updated.js +0 -422
- package/dist/agentic-flow/src/mcp/fastmcp/servers/http-streaming-updated.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/servers/poc-stdio.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/servers/poc-stdio.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/servers/poc-stdio.js +0 -83
- package/dist/agentic-flow/src/mcp/fastmcp/servers/poc-stdio.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/servers/stdio-full.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/servers/stdio-full.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/servers/stdio-full.js +0 -836
- package/dist/agentic-flow/src/mcp/fastmcp/servers/stdio-full.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/add-agent.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/add-agent.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/add-agent.js +0 -108
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/add-agent.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/add-command.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/add-command.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/add-command.js +0 -118
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/add-command.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/execute.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/execute.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/execute.js +0 -57
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/execute.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/list.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/list.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/list.js +0 -83
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/list.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/parallel.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/parallel.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/parallel.js +0 -64
- package/dist/agentic-flow/src/mcp/fastmcp/tools/agent/parallel.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/attention-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/attention-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/attention-tools.js +0 -313
- package/dist/agentic-flow/src/mcp/fastmcp/tools/attention-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/autopilot-tools.d.ts +0 -9
- package/dist/agentic-flow/src/mcp/fastmcp/tools/autopilot-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/autopilot-tools.js +0 -463
- package/dist/agentic-flow/src/mcp/fastmcp/tools/autopilot-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/consensus-tools.d.ts +0 -11
- package/dist/agentic-flow/src/mcp/fastmcp/tools/consensus-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/consensus-tools.js +0 -333
- package/dist/agentic-flow/src/mcp/fastmcp/tools/consensus-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/cost-optimizer-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/cost-optimizer-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/cost-optimizer-tools.js +0 -192
- package/dist/agentic-flow/src/mcp/fastmcp/tools/cost-optimizer-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/daa-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/daa-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/daa-tools.js +0 -468
- package/dist/agentic-flow/src/mcp/fastmcp/tools/daa-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/explainability-tools.d.ts +0 -555
- package/dist/agentic-flow/src/mcp/fastmcp/tools/explainability-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/explainability-tools.js +0 -404
- package/dist/agentic-flow/src/mcp/fastmcp/tools/explainability-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/github-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/github-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/github-tools.js +0 -153
- package/dist/agentic-flow/src/mcp/fastmcp/tools/github-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/gnn-tools.d.ts +0 -996
- package/dist/agentic-flow/src/mcp/fastmcp/tools/gnn-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/gnn-tools.js +0 -293
- package/dist/agentic-flow/src/mcp/fastmcp/tools/gnn-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/hidden-controllers.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/hidden-controllers.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/hidden-controllers.js +0 -533
- package/dist/agentic-flow/src/mcp/fastmcp/tools/hidden-controllers.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/infrastructure-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/infrastructure-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/infrastructure-tools.js +0 -263
- package/dist/agentic-flow/src/mcp/fastmcp/tools/infrastructure-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/memory-tools.d.ts +0 -38
- package/dist/agentic-flow/src/mcp/fastmcp/tools/memory-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/memory-tools.js +0 -302
- package/dist/agentic-flow/src/mcp/fastmcp/tools/memory-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/neural-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/neural-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/neural-tools.js +0 -162
- package/dist/agentic-flow/src/mcp/fastmcp/tools/neural-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/performance-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/performance-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/performance-tools.js +0 -569
- package/dist/agentic-flow/src/mcp/fastmcp/tools/performance-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/quantization-tools.d.ts +0 -7
- package/dist/agentic-flow/src/mcp/fastmcp/tools/quantization-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/quantization-tools.js +0 -325
- package/dist/agentic-flow/src/mcp/fastmcp/tools/quantization-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/quic-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/quic-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/quic-tools.js +0 -424
- package/dist/agentic-flow/src/mcp/fastmcp/tools/quic-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/ruvector-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/ruvector-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/ruvector-tools.js +0 -145
- package/dist/agentic-flow/src/mcp/fastmcp/tools/ruvector-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/rvf-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/rvf-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/rvf-tools.js +0 -447
- package/dist/agentic-flow/src/mcp/fastmcp/tools/rvf-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/session-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/session-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/session-tools.js +0 -170
- package/dist/agentic-flow/src/mcp/fastmcp/tools/session-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/sona-rvf-tools.d.ts +0 -2
- package/dist/agentic-flow/src/mcp/fastmcp/tools/sona-rvf-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/sona-rvf-tools.js +0 -216
- package/dist/agentic-flow/src/mcp/fastmcp/tools/sona-rvf-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/sona-tools.d.ts +0 -111
- package/dist/agentic-flow/src/mcp/fastmcp/tools/sona-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/sona-tools.js +0 -585
- package/dist/agentic-flow/src/mcp/fastmcp/tools/sona-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/streaming-tools.d.ts +0 -19
- package/dist/agentic-flow/src/mcp/fastmcp/tools/streaming-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/streaming-tools.js +0 -470
- package/dist/agentic-flow/src/mcp/fastmcp/tools/streaming-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/init.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/init.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/init.js +0 -42
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/init.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/orchestrate.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/orchestrate.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/orchestrate.js +0 -48
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/orchestrate.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/spawn.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/spawn.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/spawn.js +0 -62
- package/dist/agentic-flow/src/mcp/fastmcp/tools/swarm/spawn.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/workflow-tools.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/tools/workflow-tools.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/tools/workflow-tools.js +0 -452
- package/dist/agentic-flow/src/mcp/fastmcp/tools/workflow-tools.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/types/index.d.ts +0 -33
- package/dist/agentic-flow/src/mcp/fastmcp/types/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp/types/index.js +0 -3
- package/dist/agentic-flow/src/mcp/fastmcp/types/index.js.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp-fixes.d.ts +0 -13
- package/dist/agentic-flow/src/mcp/fastmcp-fixes.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/fastmcp-fixes.js +0 -14
- package/dist/agentic-flow/src/mcp/fastmcp-fixes.js.map +0 -1
- package/dist/agentic-flow/src/mcp/middleware/apply-rate-limit.js +0 -88
- package/dist/agentic-flow/src/mcp/middleware/apply-rate-limit.js.map +0 -1
- package/dist/agentic-flow/src/mcp/middleware/rate-limiter.d.ts +0 -97
- package/dist/agentic-flow/src/mcp/middleware/rate-limiter.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/middleware/rate-limiter.js +0 -166
- package/dist/agentic-flow/src/mcp/middleware/rate-limiter.js.map +0 -1
- package/dist/agentic-flow/src/mcp/standalone-stdio-fixed.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/standalone-stdio-fixed.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/standalone-stdio-fixed.js +0 -27
- package/dist/agentic-flow/src/mcp/standalone-stdio-fixed.js.map +0 -1
- package/dist/agentic-flow/src/mcp/standalone-stdio.d.ts +0 -3
- package/dist/agentic-flow/src/mcp/standalone-stdio.d.ts.map +0 -1
- package/dist/agentic-flow/src/mcp/standalone-stdio.js +0 -838
- package/dist/agentic-flow/src/mcp/standalone-stdio.js.map +0 -1
- package/dist/agentic-flow/src/memory/SharedMemoryPool.d.ts +0 -129
- package/dist/agentic-flow/src/memory/SharedMemoryPool.d.ts.map +0 -1
- package/dist/agentic-flow/src/memory/SharedMemoryPool.js +0 -244
- package/dist/agentic-flow/src/memory/SharedMemoryPool.js.map +0 -1
- package/dist/agentic-flow/src/memory/index.d.ts +0 -8
- package/dist/agentic-flow/src/memory/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/memory/index.js +0 -7
- package/dist/agentic-flow/src/memory/index.js.map +0 -1
- package/dist/agentic-flow/src/orchestration/index.d.ts +0 -11
- package/dist/agentic-flow/src/orchestration/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/orchestration/index.js +0 -10
- package/dist/agentic-flow/src/orchestration/index.js.map +0 -1
- package/dist/agentic-flow/src/orchestration/memory-plane-types.d.ts +0 -23
- package/dist/agentic-flow/src/orchestration/memory-plane-types.d.ts.map +0 -1
- package/dist/agentic-flow/src/orchestration/memory-plane-types.js +0 -5
- package/dist/agentic-flow/src/orchestration/memory-plane-types.js.map +0 -1
- package/dist/agentic-flow/src/orchestration/memory-plane.d.ts +0 -41
- package/dist/agentic-flow/src/orchestration/memory-plane.d.ts.map +0 -1
- package/dist/agentic-flow/src/orchestration/memory-plane.js +0 -84
- package/dist/agentic-flow/src/orchestration/memory-plane.js.map +0 -1
- package/dist/agentic-flow/src/orchestration/orchestration-client.d.ts +0 -104
- package/dist/agentic-flow/src/orchestration/orchestration-client.d.ts.map +0 -1
- package/dist/agentic-flow/src/orchestration/orchestration-client.js +0 -94
- package/dist/agentic-flow/src/orchestration/orchestration-client.js.map +0 -1
- package/dist/agentic-flow/src/orchestration/orchestration-runtime.d.ts +0 -26
- package/dist/agentic-flow/src/orchestration/orchestration-runtime.d.ts.map +0 -1
- package/dist/agentic-flow/src/orchestration/orchestration-runtime.js +0 -78
- package/dist/agentic-flow/src/orchestration/orchestration-runtime.js.map +0 -1
- package/dist/agentic-flow/src/orchestration/orchestration-types.d.ts +0 -124
- package/dist/agentic-flow/src/orchestration/orchestration-types.d.ts.map +0 -1
- package/dist/agentic-flow/src/orchestration/orchestration-types.js +0 -7
- package/dist/agentic-flow/src/orchestration/orchestration-types.js.map +0 -1
- package/dist/agentic-flow/src/proxy/adaptive-proxy.d.ts +0 -51
- package/dist/agentic-flow/src/proxy/adaptive-proxy.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/adaptive-proxy.js +0 -225
- package/dist/agentic-flow/src/proxy/adaptive-proxy.js.map +0 -1
- package/dist/agentic-flow/src/proxy/anthropic-to-gemini.d.ts +0 -20
- package/dist/agentic-flow/src/proxy/anthropic-to-gemini.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/anthropic-to-gemini.js +0 -446
- package/dist/agentic-flow/src/proxy/anthropic-to-gemini.js.map +0 -1
- package/dist/agentic-flow/src/proxy/anthropic-to-onnx.d.ts +0 -17
- package/dist/agentic-flow/src/proxy/anthropic-to-onnx.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/anthropic-to-onnx.js +0 -214
- package/dist/agentic-flow/src/proxy/anthropic-to-onnx.js.map +0 -1
- package/dist/agentic-flow/src/proxy/anthropic-to-openrouter.d.ts +0 -28
- package/dist/agentic-flow/src/proxy/anthropic-to-openrouter.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/anthropic-to-openrouter.js +0 -623
- package/dist/agentic-flow/src/proxy/anthropic-to-openrouter.js.map +0 -1
- package/dist/agentic-flow/src/proxy/anthropic-to-requesty.d.ts +0 -33
- package/dist/agentic-flow/src/proxy/anthropic-to-requesty.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/anthropic-to-requesty.js +0 -712
- package/dist/agentic-flow/src/proxy/anthropic-to-requesty.js.map +0 -1
- package/dist/agentic-flow/src/proxy/http2-proxy-optimized.d.ts +0 -63
- package/dist/agentic-flow/src/proxy/http2-proxy-optimized.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/http2-proxy-optimized.js +0 -192
- package/dist/agentic-flow/src/proxy/http2-proxy-optimized.js.map +0 -1
- package/dist/agentic-flow/src/proxy/http2-proxy.d.ts +0 -43
- package/dist/agentic-flow/src/proxy/http2-proxy.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/http2-proxy.js +0 -382
- package/dist/agentic-flow/src/proxy/http2-proxy.js.map +0 -1
- package/dist/agentic-flow/src/proxy/http3-proxy.d.ts +0 -18
- package/dist/agentic-flow/src/proxy/http3-proxy.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/http3-proxy.js +0 -52
- package/dist/agentic-flow/src/proxy/http3-proxy.js.map +0 -1
- package/dist/agentic-flow/src/proxy/provider-instructions.d.ts +0 -37
- package/dist/agentic-flow/src/proxy/provider-instructions.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/provider-instructions.js +0 -347
- package/dist/agentic-flow/src/proxy/provider-instructions.js.map +0 -1
- package/dist/agentic-flow/src/proxy/quic-proxy.d.ts +0 -58
- package/dist/agentic-flow/src/proxy/quic-proxy.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/quic-proxy.js +0 -236
- package/dist/agentic-flow/src/proxy/quic-proxy.js.map +0 -1
- package/dist/agentic-flow/src/proxy/tool-emulation.d.ts +0 -121
- package/dist/agentic-flow/src/proxy/tool-emulation.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/tool-emulation.js +0 -366
- package/dist/agentic-flow/src/proxy/tool-emulation.js.map +0 -1
- package/dist/agentic-flow/src/proxy/websocket-proxy.d.ts +0 -39
- package/dist/agentic-flow/src/proxy/websocket-proxy.d.ts.map +0 -1
- package/dist/agentic-flow/src/proxy/websocket-proxy.js +0 -407
- package/dist/agentic-flow/src/proxy/websocket-proxy.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/AdvancedMemory.d.ts +0 -125
- package/dist/agentic-flow/src/reasoningbank/AdvancedMemory.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/AdvancedMemory.js +0 -248
- package/dist/agentic-flow/src/reasoningbank/AdvancedMemory.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/HybridBackend.d.ts +0 -105
- package/dist/agentic-flow/src/reasoningbank/HybridBackend.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/HybridBackend.js +0 -317
- package/dist/agentic-flow/src/reasoningbank/HybridBackend.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/backend-selector.d.ts +0 -80
- package/dist/agentic-flow/src/reasoningbank/backend-selector.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/backend-selector.js +0 -148
- package/dist/agentic-flow/src/reasoningbank/backend-selector.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/benchmark.d.ts +0 -14
- package/dist/agentic-flow/src/reasoningbank/benchmark.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/benchmark.js +0 -334
- package/dist/agentic-flow/src/reasoningbank/benchmark.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/config/reasoningbank-types.d.ts +0 -57
- package/dist/agentic-flow/src/reasoningbank/config/reasoningbank-types.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/config/reasoningbank-types.js +0 -5
- package/dist/agentic-flow/src/reasoningbank/config/reasoningbank-types.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/core/consolidate.d.ts +0 -21
- package/dist/agentic-flow/src/reasoningbank/core/consolidate.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/core/consolidate.js +0 -140
- package/dist/agentic-flow/src/reasoningbank/core/consolidate.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/core/distill.d.ts +0 -22
- package/dist/agentic-flow/src/reasoningbank/core/distill.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/core/distill.js +0 -169
- package/dist/agentic-flow/src/reasoningbank/core/distill.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/core/judge.d.ts +0 -17
- package/dist/agentic-flow/src/reasoningbank/core/judge.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/core/judge.js +0 -138
- package/dist/agentic-flow/src/reasoningbank/core/judge.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/core/matts.d.ts +0 -46
- package/dist/agentic-flow/src/reasoningbank/core/matts.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/core/matts.js +0 -237
- package/dist/agentic-flow/src/reasoningbank/core/matts.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/core/retrieve.d.ts +0 -35
- package/dist/agentic-flow/src/reasoningbank/core/retrieve.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/core/retrieve.js +0 -87
- package/dist/agentic-flow/src/reasoningbank/core/retrieve.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/db/queries.d.ts +0 -88
- package/dist/agentic-flow/src/reasoningbank/db/queries.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/db/queries.js +0 -340
- package/dist/agentic-flow/src/reasoningbank/db/queries.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/db/schema.d.ts +0 -81
- package/dist/agentic-flow/src/reasoningbank/db/schema.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/db/schema.js +0 -5
- package/dist/agentic-flow/src/reasoningbank/db/schema.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/demo-comparison.d.ts +0 -10
- package/dist/agentic-flow/src/reasoningbank/demo-comparison.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/demo-comparison.js +0 -502
- package/dist/agentic-flow/src/reasoningbank/demo-comparison.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/hooks/post-task.d.ts +0 -9
- package/dist/agentic-flow/src/reasoningbank/hooks/post-task.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/hooks/post-task.js +0 -110
- package/dist/agentic-flow/src/reasoningbank/hooks/post-task.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/hooks/pre-task.d.ts +0 -9
- package/dist/agentic-flow/src/reasoningbank/hooks/pre-task.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/hooks/pre-task.js +0 -69
- package/dist/agentic-flow/src/reasoningbank/hooks/pre-task.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/index-new.d.ts +0 -49
- package/dist/agentic-flow/src/reasoningbank/index-new.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/index-new.js +0 -88
- package/dist/agentic-flow/src/reasoningbank/index-new.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/index.d.ts +0 -51
- package/dist/agentic-flow/src/reasoningbank/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/index.js +0 -91
- package/dist/agentic-flow/src/reasoningbank/index.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/test-integration.d.ts +0 -7
- package/dist/agentic-flow/src/reasoningbank/test-integration.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/test-integration.js +0 -91
- package/dist/agentic-flow/src/reasoningbank/test-integration.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/test-retrieval.d.ts +0 -6
- package/dist/agentic-flow/src/reasoningbank/test-retrieval.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/test-retrieval.js +0 -177
- package/dist/agentic-flow/src/reasoningbank/test-retrieval.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/test-validation.d.ts +0 -7
- package/dist/agentic-flow/src/reasoningbank/test-validation.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/test-validation.js +0 -173
- package/dist/agentic-flow/src/reasoningbank/test-validation.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/types/index.d.ts +0 -123
- package/dist/agentic-flow/src/reasoningbank/types/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/types/index.js +0 -6
- package/dist/agentic-flow/src/reasoningbank/types/index.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/utils/config.d.ts +0 -61
- package/dist/agentic-flow/src/reasoningbank/utils/config.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/utils/config.js +0 -170
- package/dist/agentic-flow/src/reasoningbank/utils/config.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/utils/embeddings.d.ts +0 -21
- package/dist/agentic-flow/src/reasoningbank/utils/embeddings.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/utils/embeddings.js +0 -156
- package/dist/agentic-flow/src/reasoningbank/utils/embeddings.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/utils/mmr.d.ts +0 -23
- package/dist/agentic-flow/src/reasoningbank/utils/mmr.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/utils/mmr.js +0 -65
- package/dist/agentic-flow/src/reasoningbank/utils/mmr.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/utils/pii-scrubber.d.ts +0 -46
- package/dist/agentic-flow/src/reasoningbank/utils/pii-scrubber.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/utils/pii-scrubber.js +0 -99
- package/dist/agentic-flow/src/reasoningbank/utils/pii-scrubber.js.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/wasm-adapter.d.ts +0 -104
- package/dist/agentic-flow/src/reasoningbank/wasm-adapter.d.ts.map +0 -1
- package/dist/agentic-flow/src/reasoningbank/wasm-adapter.js +0 -125
- package/dist/agentic-flow/src/reasoningbank/wasm-adapter.js.map +0 -1
- package/dist/agentic-flow/src/router/model-mapping.d.ts +0 -31
- package/dist/agentic-flow/src/router/model-mapping.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/model-mapping.js +0 -132
- package/dist/agentic-flow/src/router/model-mapping.js.map +0 -1
- package/dist/agentic-flow/src/router/providers/anthropic.d.ts +0 -17
- package/dist/agentic-flow/src/router/providers/anthropic.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/providers/anthropic.js +0 -98
- package/dist/agentic-flow/src/router/providers/anthropic.js.map +0 -1
- package/dist/agentic-flow/src/router/providers/gemini.d.ts +0 -17
- package/dist/agentic-flow/src/router/providers/gemini.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/providers/gemini.js +0 -104
- package/dist/agentic-flow/src/router/providers/gemini.js.map +0 -1
- package/dist/agentic-flow/src/router/providers/onnx-local-optimized.d.ts +0 -71
- package/dist/agentic-flow/src/router/providers/onnx-local-optimized.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/providers/onnx-local-optimized.js +0 -168
- package/dist/agentic-flow/src/router/providers/onnx-local-optimized.js.map +0 -1
- package/dist/agentic-flow/src/router/providers/onnx-local.d.ts +0 -75
- package/dist/agentic-flow/src/router/providers/onnx-local.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/providers/onnx-local.js +0 -295
- package/dist/agentic-flow/src/router/providers/onnx-local.js.map +0 -1
- package/dist/agentic-flow/src/router/providers/onnx-phi4.d.ts +0 -64
- package/dist/agentic-flow/src/router/providers/onnx-phi4.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/providers/onnx-phi4.js +0 -191
- package/dist/agentic-flow/src/router/providers/onnx-phi4.js.map +0 -1
- package/dist/agentic-flow/src/router/providers/onnx.d.ts +0 -65
- package/dist/agentic-flow/src/router/providers/onnx.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/providers/onnx.js +0 -265
- package/dist/agentic-flow/src/router/providers/onnx.js.map +0 -1
- package/dist/agentic-flow/src/router/providers/openrouter.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/providers/openrouter.js +0 -246
- package/dist/agentic-flow/src/router/providers/openrouter.js.map +0 -1
- package/dist/agentic-flow/src/router/router.d.ts +0 -26
- package/dist/agentic-flow/src/router/router.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/router.js +0 -350
- package/dist/agentic-flow/src/router/router.js.map +0 -1
- package/dist/agentic-flow/src/router/test-integration.d.ts +0 -13
- package/dist/agentic-flow/src/router/test-integration.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/test-integration.js +0 -141
- package/dist/agentic-flow/src/router/test-integration.js.map +0 -1
- package/dist/agentic-flow/src/router/test-onnx-benchmark.d.ts +0 -7
- package/dist/agentic-flow/src/router/test-onnx-benchmark.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/test-onnx-benchmark.js +0 -146
- package/dist/agentic-flow/src/router/test-onnx-benchmark.js.map +0 -1
- package/dist/agentic-flow/src/router/test-onnx-integration.d.ts +0 -8
- package/dist/agentic-flow/src/router/test-onnx-integration.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/test-onnx-integration.js +0 -129
- package/dist/agentic-flow/src/router/test-onnx-integration.js.map +0 -1
- package/dist/agentic-flow/src/router/test-onnx-local.d.ts +0 -6
- package/dist/agentic-flow/src/router/test-onnx-local.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/test-onnx-local.js +0 -38
- package/dist/agentic-flow/src/router/test-onnx-local.js.map +0 -1
- package/dist/agentic-flow/src/router/test-onnx.d.ts +0 -7
- package/dist/agentic-flow/src/router/test-onnx.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/test-onnx.js +0 -149
- package/dist/agentic-flow/src/router/test-onnx.js.map +0 -1
- package/dist/agentic-flow/src/router/test-openrouter.d.ts +0 -3
- package/dist/agentic-flow/src/router/test-openrouter.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/test-openrouter.js +0 -122
- package/dist/agentic-flow/src/router/test-openrouter.js.map +0 -1
- package/dist/agentic-flow/src/router/test-phi4.d.ts +0 -6
- package/dist/agentic-flow/src/router/test-phi4.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/test-phi4.js +0 -138
- package/dist/agentic-flow/src/router/test-phi4.js.map +0 -1
- package/dist/agentic-flow/src/router/types.d.ts +0 -209
- package/dist/agentic-flow/src/router/types.d.ts.map +0 -1
- package/dist/agentic-flow/src/router/types.js +0 -3
- package/dist/agentic-flow/src/router/types.js.map +0 -1
- package/dist/agentic-flow/src/sdk/index.d.ts +0 -14
- package/dist/agentic-flow/src/sdk/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/sdk/index.js +0 -27
- package/dist/agentic-flow/src/sdk/index.js.map +0 -1
- package/dist/agentic-flow/src/security/index.d.ts +0 -13
- package/dist/agentic-flow/src/security/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/security/index.js +0 -14
- package/dist/agentic-flow/src/security/index.js.map +0 -1
- package/dist/agentic-flow/src/security/input-validation.d.ts +0 -60
- package/dist/agentic-flow/src/security/input-validation.d.ts.map +0 -1
- package/dist/agentic-flow/src/security/input-validation.js +0 -192
- package/dist/agentic-flow/src/security/input-validation.js.map +0 -1
- package/dist/agentic-flow/src/security/path-validator.d.ts +0 -47
- package/dist/agentic-flow/src/security/path-validator.d.ts.map +0 -1
- package/dist/agentic-flow/src/security/path-validator.js +0 -144
- package/dist/agentic-flow/src/security/path-validator.js.map +0 -1
- package/dist/agentic-flow/src/security/rate-limiter.d.ts +0 -68
- package/dist/agentic-flow/src/security/rate-limiter.d.ts.map +0 -1
- package/dist/agentic-flow/src/security/rate-limiter.js +0 -133
- package/dist/agentic-flow/src/security/rate-limiter.js.map +0 -1
- package/dist/agentic-flow/src/security/secret-redaction.d.ts +0 -39
- package/dist/agentic-flow/src/security/secret-redaction.d.ts.map +0 -1
- package/dist/agentic-flow/src/security/secret-redaction.js +0 -128
- package/dist/agentic-flow/src/security/secret-redaction.js.map +0 -1
- package/dist/agentic-flow/src/services/agentdb-phase4-methods.d.ts +0 -70
- package/dist/agentic-flow/src/services/agentdb-phase4-methods.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/agentdb-phase4-methods.js +0 -129
- package/dist/agentic-flow/src/services/agentdb-phase4-methods.js.map +0 -1
- package/dist/agentic-flow/src/services/agentdb-service.d.ts +0 -347
- package/dist/agentic-flow/src/services/agentdb-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/agentdb-service.js +0 -1419
- package/dist/agentic-flow/src/services/agentdb-service.js.map +0 -1
- package/dist/agentic-flow/src/services/consensus-service.d.ts +0 -125
- package/dist/agentic-flow/src/services/consensus-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/consensus-service.js +0 -399
- package/dist/agentic-flow/src/services/consensus-service.js.map +0 -1
- package/dist/agentic-flow/src/services/cost-optimizer-service.d.ts +0 -95
- package/dist/agentic-flow/src/services/cost-optimizer-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/cost-optimizer-service.js +0 -244
- package/dist/agentic-flow/src/services/cost-optimizer-service.js.map +0 -1
- package/dist/agentic-flow/src/services/direct-call-bridge.d.ts +0 -72
- package/dist/agentic-flow/src/services/direct-call-bridge.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/direct-call-bridge.js +0 -180
- package/dist/agentic-flow/src/services/direct-call-bridge.js.map +0 -1
- package/dist/agentic-flow/src/services/explainability-service.d.ts +0 -182
- package/dist/agentic-flow/src/services/explainability-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/explainability-service.js +0 -417
- package/dist/agentic-flow/src/services/explainability-service.js.map +0 -1
- package/dist/agentic-flow/src/services/github-service.d.ts +0 -106
- package/dist/agentic-flow/src/services/github-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/github-service.js +0 -295
- package/dist/agentic-flow/src/services/github-service.js.map +0 -1
- package/dist/agentic-flow/src/services/gnn-router-service.d.ts +0 -151
- package/dist/agentic-flow/src/services/gnn-router-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/gnn-router-service.js +0 -373
- package/dist/agentic-flow/src/services/gnn-router-service.js.map +0 -1
- package/dist/agentic-flow/src/services/hook-service.d.ts +0 -86
- package/dist/agentic-flow/src/services/hook-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/hook-service.js +0 -234
- package/dist/agentic-flow/src/services/hook-service.js.map +0 -1
- package/dist/agentic-flow/src/services/quantization-service.d.ts +0 -167
- package/dist/agentic-flow/src/services/quantization-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/quantization-service.js +0 -498
- package/dist/agentic-flow/src/services/quantization-service.js.map +0 -1
- package/dist/agentic-flow/src/services/rl-training-service.d.ts +0 -233
- package/dist/agentic-flow/src/services/rl-training-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/rl-training-service.js +0 -401
- package/dist/agentic-flow/src/services/rl-training-service.js.map +0 -1
- package/dist/agentic-flow/src/services/ruvector-service.d.ts +0 -95
- package/dist/agentic-flow/src/services/ruvector-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/ruvector-service.js +0 -210
- package/dist/agentic-flow/src/services/ruvector-service.js.map +0 -1
- package/dist/agentic-flow/src/services/session-service.d.ts +0 -24
- package/dist/agentic-flow/src/services/session-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/session-service.js +0 -92
- package/dist/agentic-flow/src/services/session-service.js.map +0 -1
- package/dist/agentic-flow/src/services/sona-rvf-service.d.ts +0 -80
- package/dist/agentic-flow/src/services/sona-rvf-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/sona-rvf-service.js +0 -169
- package/dist/agentic-flow/src/services/sona-rvf-service.js.map +0 -1
- package/dist/agentic-flow/src/services/streaming-service.d.ts +0 -113
- package/dist/agentic-flow/src/services/streaming-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/streaming-service.js +0 -495
- package/dist/agentic-flow/src/services/streaming-service.js.map +0 -1
- package/dist/agentic-flow/src/services/swarm-service.d.ts +0 -106
- package/dist/agentic-flow/src/services/swarm-service.d.ts.map +0 -1
- package/dist/agentic-flow/src/services/swarm-service.js +0 -321
- package/dist/agentic-flow/src/services/swarm-service.js.map +0 -1
- package/dist/agentic-flow/src/swarm/index.d.ts +0 -51
- package/dist/agentic-flow/src/swarm/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/swarm/index.js +0 -134
- package/dist/agentic-flow/src/swarm/index.js.map +0 -1
- package/dist/agentic-flow/src/swarm/quic-coordinator.d.ts +0 -149
- package/dist/agentic-flow/src/swarm/quic-coordinator.d.ts.map +0 -1
- package/dist/agentic-flow/src/swarm/quic-coordinator.js +0 -461
- package/dist/agentic-flow/src/swarm/quic-coordinator.js.map +0 -1
- package/dist/agentic-flow/src/swarm/transport-router.d.ts +0 -124
- package/dist/agentic-flow/src/swarm/transport-router.d.ts.map +0 -1
- package/dist/agentic-flow/src/swarm/transport-router.js +0 -375
- package/dist/agentic-flow/src/swarm/transport-router.js.map +0 -1
- package/dist/agentic-flow/src/transport/index.d.ts +0 -2
- package/dist/agentic-flow/src/transport/index.d.ts.map +0 -1
- package/dist/agentic-flow/src/transport/index.js +0 -3
- package/dist/agentic-flow/src/transport/index.js.map +0 -1
- package/dist/agentic-flow/src/transport/quic-handshake.d.ts +0 -66
- package/dist/agentic-flow/src/transport/quic-handshake.d.ts.map +0 -1
- package/dist/agentic-flow/src/transport/quic-handshake.js +0 -199
- package/dist/agentic-flow/src/transport/quic-handshake.js.map +0 -1
- package/dist/agentic-flow/src/transport/quic.d.ts +0 -184
- package/dist/agentic-flow/src/transport/quic.d.ts.map +0 -1
- package/dist/agentic-flow/src/transport/quic.js +0 -454
- package/dist/agentic-flow/src/transport/quic.js.map +0 -1
- package/dist/agentic-flow/src/utils/agentBoosterPreprocessor.d.ts +0 -76
- package/dist/agentic-flow/src/utils/agentBoosterPreprocessor.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/agentBoosterPreprocessor.js +0 -289
- package/dist/agentic-flow/src/utils/agentBoosterPreprocessor.js.map +0 -1
- package/dist/agentic-flow/src/utils/agentLoader.d.ts +0 -22
- package/dist/agentic-flow/src/utils/agentLoader.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/agentLoader.js +0 -162
- package/dist/agentic-flow/src/utils/agentLoader.js.map +0 -1
- package/dist/agentic-flow/src/utils/agentdb-runtime-patch.d.ts +0 -28
- package/dist/agentic-flow/src/utils/agentdb-runtime-patch.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/agentdb-runtime-patch.js +0 -178
- package/dist/agentic-flow/src/utils/agentdb-runtime-patch.js.map +0 -1
- package/dist/agentic-flow/src/utils/auth.d.ts +0 -13
- package/dist/agentic-flow/src/utils/auth.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/auth.js +0 -53
- package/dist/agentic-flow/src/utils/auth.js.map +0 -1
- package/dist/agentic-flow/src/utils/cli.d.ts +0 -31
- package/dist/agentic-flow/src/utils/cli.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/cli.js +0 -344
- package/dist/agentic-flow/src/utils/cli.js.map +0 -1
- package/dist/agentic-flow/src/utils/compression-middleware.d.ts +0 -55
- package/dist/agentic-flow/src/utils/compression-middleware.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/compression-middleware.js +0 -150
- package/dist/agentic-flow/src/utils/compression-middleware.js.map +0 -1
- package/dist/agentic-flow/src/utils/connection-pool.d.ts +0 -30
- package/dist/agentic-flow/src/utils/connection-pool.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/connection-pool.js +0 -185
- package/dist/agentic-flow/src/utils/connection-pool.js.map +0 -1
- package/dist/agentic-flow/src/utils/logger.d.ts +0 -19
- package/dist/agentic-flow/src/utils/logger.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/logger.js +0 -58
- package/dist/agentic-flow/src/utils/logger.js.map +0 -1
- package/dist/agentic-flow/src/utils/math.d.ts +0 -12
- package/dist/agentic-flow/src/utils/math.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/math.js +0 -14
- package/dist/agentic-flow/src/utils/math.js.map +0 -1
- package/dist/agentic-flow/src/utils/mcpCommands.d.ts +0 -2
- package/dist/agentic-flow/src/utils/mcpCommands.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/mcpCommands.js +0 -215
- package/dist/agentic-flow/src/utils/mcpCommands.js.map +0 -1
- package/dist/agentic-flow/src/utils/model-downloader.d.ts +0 -63
- package/dist/agentic-flow/src/utils/model-downloader.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/model-downloader.js +0 -183
- package/dist/agentic-flow/src/utils/model-downloader.js.map +0 -1
- package/dist/agentic-flow/src/utils/modelCapabilities.d.ts +0 -30
- package/dist/agentic-flow/src/utils/modelCapabilities.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/modelCapabilities.js +0 -277
- package/dist/agentic-flow/src/utils/modelCapabilities.js.map +0 -1
- package/dist/agentic-flow/src/utils/modelOptimizer.d.ts +0 -207
- package/dist/agentic-flow/src/utils/modelOptimizer.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/modelOptimizer.js +0 -415
- package/dist/agentic-flow/src/utils/modelOptimizer.js.map +0 -1
- package/dist/agentic-flow/src/utils/rate-limiter.d.ts +0 -17
- package/dist/agentic-flow/src/utils/rate-limiter.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/rate-limiter.js +0 -49
- package/dist/agentic-flow/src/utils/rate-limiter.js.map +0 -1
- package/dist/agentic-flow/src/utils/reasoningbankCommands.d.ts +0 -6
- package/dist/agentic-flow/src/utils/reasoningbankCommands.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/reasoningbankCommands.js +0 -205
- package/dist/agentic-flow/src/utils/reasoningbankCommands.js.map +0 -1
- package/dist/agentic-flow/src/utils/response-cache.d.ts +0 -94
- package/dist/agentic-flow/src/utils/response-cache.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/response-cache.js +0 -212
- package/dist/agentic-flow/src/utils/response-cache.js.map +0 -1
- package/dist/agentic-flow/src/utils/retry.d.ts +0 -9
- package/dist/agentic-flow/src/utils/retry.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/retry.js +0 -55
- package/dist/agentic-flow/src/utils/retry.js.map +0 -1
- package/dist/agentic-flow/src/utils/streaming-optimizer.d.ts +0 -37
- package/dist/agentic-flow/src/utils/streaming-optimizer.d.ts.map +0 -1
- package/dist/agentic-flow/src/utils/streaming-optimizer.js +0 -142
- package/dist/agentic-flow/src/utils/streaming-optimizer.js.map +0 -1
- package/dist/cli/autopilot-cli.d.ts +0 -8
- package/dist/cli/autopilot-cli.d.ts.map +0 -1
- package/dist/cli/autopilot-cli.js +0 -458
- package/dist/cli/autopilot-cli.js.map +0 -1
- package/dist/cli/daemon-cli.d.ts +0 -3
- package/dist/cli/daemon-cli.d.ts.map +0 -1
- package/dist/cli/daemon-cli.js +0 -225
- package/dist/cli/daemon-cli.js.map +0 -1
- package/dist/cli/doctor-cli.d.ts +0 -6
- package/dist/cli/doctor-cli.d.ts.map +0 -1
- package/dist/cli/doctor-cli.js +0 -192
- package/dist/cli/doctor-cli.js.map +0 -1
- package/dist/cli/hivemind-cli.d.ts +0 -3
- package/dist/cli/hivemind-cli.d.ts.map +0 -1
- package/dist/cli/hivemind-cli.js +0 -218
- package/dist/cli/hivemind-cli.js.map +0 -1
- package/dist/cli/hooks-cli.d.ts +0 -3
- package/dist/cli/hooks-cli.d.ts.map +0 -1
- package/dist/cli/hooks-cli.js +0 -259
- package/dist/cli/hooks-cli.js.map +0 -1
- package/dist/cli/memory-cli.d.ts +0 -2
- package/dist/cli/memory-cli.d.ts.map +0 -1
- package/dist/cli/memory-cli.js +0 -318
- package/dist/cli/memory-cli.js.map +0 -1
- package/dist/cli/session-cli.d.ts +0 -3
- package/dist/cli/session-cli.d.ts.map +0 -1
- package/dist/cli/session-cli.js +0 -259
- package/dist/cli/session-cli.js.map +0 -1
- package/dist/cli/skills-manager.js +0 -1297
- package/dist/cli/swarm-cli.d.ts +0 -6
- package/dist/cli/swarm-cli.d.ts.map +0 -1
- package/dist/cli/swarm-cli.js +0 -256
- package/dist/cli/swarm-cli.js.map +0 -1
- package/dist/cli/task-cli.d.ts +0 -6
- package/dist/cli/task-cli.d.ts.map +0 -1
- package/dist/cli/task-cli.js +0 -257
- package/dist/cli/task-cli.js.map +0 -1
- package/dist/cli/update-message.js +0 -175
- package/dist/coordination/drift-detector.d.ts +0 -86
- package/dist/coordination/drift-detector.d.ts.map +0 -1
- package/dist/coordination/drift-detector.js +0 -218
- package/dist/coordination/drift-detector.js.map +0 -1
- package/dist/coordination/graph-state-manager.d.ts +0 -69
- package/dist/coordination/graph-state-manager.d.ts.map +0 -1
- package/dist/coordination/graph-state-manager.js +0 -118
- package/dist/coordination/graph-state-manager.js.map +0 -1
- package/dist/coordination/self-improvement-pipeline.d.ts +0 -70
- package/dist/coordination/self-improvement-pipeline.d.ts.map +0 -1
- package/dist/coordination/self-improvement-pipeline.js +0 -144
- package/dist/coordination/self-improvement-pipeline.js.map +0 -1
- package/dist/coordination/swarm-completion.d.ts +0 -126
- package/dist/coordination/swarm-completion.d.ts.map +0 -1
- package/dist/coordination/swarm-completion.js +0 -368
- package/dist/coordination/swarm-completion.js.map +0 -1
- package/dist/dashboard/demo.d.ts +0 -8
- package/dist/dashboard/demo.d.ts.map +0 -1
- package/dist/dashboard/demo.js +0 -222
- package/dist/dashboard/demo.js.map +0 -1
- package/dist/dashboard/explainability-dashboard.d.ts +0 -45
- package/dist/dashboard/explainability-dashboard.d.ts.map +0 -1
- package/dist/dashboard/explainability-dashboard.js +0 -330
- package/dist/dashboard/explainability-dashboard.js.map +0 -1
- package/dist/db/sql-adapter.d.ts +0 -25
- package/dist/db/sql-adapter.d.ts.map +0 -1
- package/dist/db/sql-adapter.js +0 -90
- package/dist/db/sql-adapter.js.map +0 -1
- package/dist/mcp/fastmcp/tools/attention-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/attention-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/attention-tools.js +0 -313
- package/dist/mcp/fastmcp/tools/attention-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/autopilot-tools.d.ts +0 -9
- package/dist/mcp/fastmcp/tools/autopilot-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/autopilot-tools.js +0 -463
- package/dist/mcp/fastmcp/tools/autopilot-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/consensus-tools.d.ts +0 -11
- package/dist/mcp/fastmcp/tools/consensus-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/consensus-tools.js +0 -422
- package/dist/mcp/fastmcp/tools/consensus-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/cost-optimizer-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/cost-optimizer-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/cost-optimizer-tools.js +0 -192
- package/dist/mcp/fastmcp/tools/cost-optimizer-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/daa-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/daa-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/daa-tools.js +0 -468
- package/dist/mcp/fastmcp/tools/daa-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/explainability-tools.d.ts +0 -582
- package/dist/mcp/fastmcp/tools/explainability-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/explainability-tools.js +0 -429
- package/dist/mcp/fastmcp/tools/explainability-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/github-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/github-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/github-tools.js +0 -153
- package/dist/mcp/fastmcp/tools/github-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/gnn-tools.d.ts +0 -996
- package/dist/mcp/fastmcp/tools/gnn-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/gnn-tools.js +0 -293
- package/dist/mcp/fastmcp/tools/gnn-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/hidden-controllers.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/hidden-controllers.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/hidden-controllers.js +0 -533
- package/dist/mcp/fastmcp/tools/hidden-controllers.js.map +0 -1
- package/dist/mcp/fastmcp/tools/infrastructure-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/infrastructure-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/infrastructure-tools.js +0 -263
- package/dist/mcp/fastmcp/tools/infrastructure-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/memory-tools.d.ts +0 -38
- package/dist/mcp/fastmcp/tools/memory-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/memory-tools.js +0 -353
- package/dist/mcp/fastmcp/tools/memory-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/neural-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/neural-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/neural-tools.js +0 -162
- package/dist/mcp/fastmcp/tools/neural-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/performance-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/performance-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/performance-tools.js +0 -569
- package/dist/mcp/fastmcp/tools/performance-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/quantization-tools.d.ts +0 -7
- package/dist/mcp/fastmcp/tools/quantization-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/quantization-tools.js +0 -325
- package/dist/mcp/fastmcp/tools/quantization-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/quic-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/quic-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/quic-tools.js +0 -424
- package/dist/mcp/fastmcp/tools/quic-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/ruvector-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/ruvector-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/ruvector-tools.js +0 -145
- package/dist/mcp/fastmcp/tools/ruvector-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/rvf-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/rvf-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/rvf-tools.js +0 -447
- package/dist/mcp/fastmcp/tools/rvf-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/session-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/session-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/session-tools.js +0 -170
- package/dist/mcp/fastmcp/tools/session-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/sona-rvf-tools.d.ts +0 -2
- package/dist/mcp/fastmcp/tools/sona-rvf-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/sona-rvf-tools.js +0 -216
- package/dist/mcp/fastmcp/tools/sona-rvf-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/sona-tools.d.ts +0 -111
- package/dist/mcp/fastmcp/tools/sona-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/sona-tools.js +0 -615
- package/dist/mcp/fastmcp/tools/sona-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/streaming-tools.d.ts +0 -19
- package/dist/mcp/fastmcp/tools/streaming-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/streaming-tools.js +0 -470
- package/dist/mcp/fastmcp/tools/streaming-tools.js.map +0 -1
- package/dist/mcp/fastmcp/tools/workflow-tools.d.ts +0 -3
- package/dist/mcp/fastmcp/tools/workflow-tools.d.ts.map +0 -1
- package/dist/mcp/fastmcp/tools/workflow-tools.js +0 -452
- package/dist/mcp/fastmcp/tools/workflow-tools.js.map +0 -1
- package/dist/mcp/middleware/apply-rate-limit.js +0 -88
- package/dist/mcp/middleware/apply-rate-limit.js.map +0 -1
- package/dist/mcp/middleware/rate-limiter.d.ts +0 -97
- package/dist/mcp/middleware/rate-limiter.d.ts.map +0 -1
- package/dist/mcp/middleware/rate-limiter.js +0 -166
- package/dist/mcp/middleware/rate-limiter.js.map +0 -1
- package/dist/mcp/standalone-stdio-fixed.d.ts +0 -3
- package/dist/mcp/standalone-stdio-fixed.d.ts.map +0 -1
- package/dist/mcp/standalone-stdio-fixed.js +0 -27
- package/dist/mcp/standalone-stdio-fixed.js.map +0 -1
- package/dist/memory/index.d.ts +0 -8
- package/dist/memory/index.d.ts.map +0 -1
- package/dist/memory/index.js +0 -7
- package/dist/memory/index.js.map +0 -1
- package/dist/packages/agentdb/src/backends/GraphBackend.d.ts +0 -196
- package/dist/packages/agentdb/src/backends/GraphBackend.d.ts.map +0 -1
- package/dist/packages/agentdb/src/backends/GraphBackend.js +0 -33
- package/dist/packages/agentdb/src/backends/GraphBackend.js.map +0 -1
- package/dist/packages/agentdb/src/backends/LearningBackend.d.ts +0 -148
- package/dist/packages/agentdb/src/backends/LearningBackend.d.ts.map +0 -1
- package/dist/packages/agentdb/src/backends/LearningBackend.js +0 -27
- package/dist/packages/agentdb/src/backends/LearningBackend.js.map +0 -1
- package/dist/packages/agentdb/src/backends/VectorBackend.d.ts +0 -121
- package/dist/packages/agentdb/src/backends/VectorBackend.d.ts.map +0 -1
- package/dist/packages/agentdb/src/backends/VectorBackend.js +0 -14
- package/dist/packages/agentdb/src/backends/VectorBackend.js.map +0 -1
- package/dist/packages/agentdb/src/backends/factory.d.ts +0 -74
- package/dist/packages/agentdb/src/backends/factory.d.ts.map +0 -1
- package/dist/packages/agentdb/src/backends/factory.js +0 -273
- package/dist/packages/agentdb/src/backends/factory.js.map +0 -1
- package/dist/packages/agentdb/src/backends/graph/GraphDatabaseAdapter.d.ts +0 -151
- package/dist/packages/agentdb/src/backends/graph/GraphDatabaseAdapter.d.ts.map +0 -1
- package/dist/packages/agentdb/src/backends/graph/GraphDatabaseAdapter.js +0 -224
- package/dist/packages/agentdb/src/backends/graph/GraphDatabaseAdapter.js.map +0 -1
- package/dist/packages/agentdb/src/backends/hnswlib/HNSWLibBackend.d.ts +0 -92
- package/dist/packages/agentdb/src/backends/hnswlib/HNSWLibBackend.d.ts.map +0 -1
- package/dist/packages/agentdb/src/backends/hnswlib/HNSWLibBackend.js +0 -322
- package/dist/packages/agentdb/src/backends/hnswlib/HNSWLibBackend.js.map +0 -1
- package/dist/packages/agentdb/src/backends/ruvector/GuardedVectorBackend.d.ts +0 -93
- package/dist/packages/agentdb/src/backends/ruvector/GuardedVectorBackend.d.ts.map +0 -1
- package/dist/packages/agentdb/src/backends/ruvector/GuardedVectorBackend.js +0 -182
- package/dist/packages/agentdb/src/backends/ruvector/GuardedVectorBackend.js.map +0 -1
- package/dist/packages/agentdb/src/backends/ruvector/RuVectorBackend.d.ts +0 -108
- package/dist/packages/agentdb/src/backends/ruvector/RuVectorBackend.d.ts.map +0 -1
- package/dist/packages/agentdb/src/backends/ruvector/RuVectorBackend.js +0 -441
- package/dist/packages/agentdb/src/backends/ruvector/RuVectorBackend.js.map +0 -1
- package/dist/packages/agentdb/src/backends/ruvector/RuVectorLearning.d.ts +0 -108
- package/dist/packages/agentdb/src/backends/ruvector/RuVectorLearning.d.ts.map +0 -1
- package/dist/packages/agentdb/src/backends/ruvector/RuVectorLearning.js +0 -194
- package/dist/packages/agentdb/src/backends/ruvector/RuVectorLearning.js.map +0 -1
- package/dist/packages/agentdb/src/consensus/RaftConsensus.d.ts +0 -220
- package/dist/packages/agentdb/src/consensus/RaftConsensus.d.ts.map +0 -1
- package/dist/packages/agentdb/src/consensus/RaftConsensus.js +0 -762
- package/dist/packages/agentdb/src/consensus/RaftConsensus.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/AttentionService.d.ts +0 -280
- package/dist/packages/agentdb/src/controllers/AttentionService.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/AttentionService.js +0 -849
- package/dist/packages/agentdb/src/controllers/AttentionService.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/CausalMemoryGraph.d.ts +0 -179
- package/dist/packages/agentdb/src/controllers/CausalMemoryGraph.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/CausalMemoryGraph.js +0 -527
- package/dist/packages/agentdb/src/controllers/CausalMemoryGraph.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/CausalRecall.d.ts +0 -135
- package/dist/packages/agentdb/src/controllers/CausalRecall.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/CausalRecall.js +0 -339
- package/dist/packages/agentdb/src/controllers/CausalRecall.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/ContextSynthesizer.d.ts +0 -65
- package/dist/packages/agentdb/src/controllers/ContextSynthesizer.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/ContextSynthesizer.js +0 -208
- package/dist/packages/agentdb/src/controllers/ContextSynthesizer.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/EmbeddingService.d.ts +0 -37
- package/dist/packages/agentdb/src/controllers/EmbeddingService.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/EmbeddingService.js +0 -136
- package/dist/packages/agentdb/src/controllers/EmbeddingService.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/EnhancedEmbeddingService.d.ts +0 -46
- package/dist/packages/agentdb/src/controllers/EnhancedEmbeddingService.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/EnhancedEmbeddingService.js +0 -105
- package/dist/packages/agentdb/src/controllers/EnhancedEmbeddingService.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/ExplainableRecall.d.ts +0 -193
- package/dist/packages/agentdb/src/controllers/ExplainableRecall.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/ExplainableRecall.js +0 -518
- package/dist/packages/agentdb/src/controllers/ExplainableRecall.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/HNSWIndex.d.ts +0 -128
- package/dist/packages/agentdb/src/controllers/HNSWIndex.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/HNSWIndex.js +0 -361
- package/dist/packages/agentdb/src/controllers/HNSWIndex.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/HierarchicalMemory.d.ts +0 -197
- package/dist/packages/agentdb/src/controllers/HierarchicalMemory.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/HierarchicalMemory.js +0 -519
- package/dist/packages/agentdb/src/controllers/HierarchicalMemory.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/LearningSystem.d.ts +0 -211
- package/dist/packages/agentdb/src/controllers/LearningSystem.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/LearningSystem.js +0 -1046
- package/dist/packages/agentdb/src/controllers/LearningSystem.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/MMRDiversityRanker.d.ts +0 -50
- package/dist/packages/agentdb/src/controllers/MMRDiversityRanker.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/MMRDiversityRanker.js +0 -130
- package/dist/packages/agentdb/src/controllers/MMRDiversityRanker.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/MemoryConsolidation.d.ts +0 -142
- package/dist/packages/agentdb/src/controllers/MemoryConsolidation.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/MemoryConsolidation.js +0 -479
- package/dist/packages/agentdb/src/controllers/MemoryConsolidation.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/MetadataFilter.d.ts +0 -70
- package/dist/packages/agentdb/src/controllers/MetadataFilter.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/MetadataFilter.js +0 -243
- package/dist/packages/agentdb/src/controllers/MetadataFilter.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/NightlyLearner.d.ts +0 -147
- package/dist/packages/agentdb/src/controllers/NightlyLearner.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/NightlyLearner.js +0 -520
- package/dist/packages/agentdb/src/controllers/NightlyLearner.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/QUICClient.d.ts +0 -109
- package/dist/packages/agentdb/src/controllers/QUICClient.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/QUICClient.js +0 -299
- package/dist/packages/agentdb/src/controllers/QUICClient.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/QUICConnection.d.ts +0 -122
- package/dist/packages/agentdb/src/controllers/QUICConnection.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/QUICConnection.js +0 -329
- package/dist/packages/agentdb/src/controllers/QUICConnection.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/QUICConnectionPool.d.ts +0 -83
- package/dist/packages/agentdb/src/controllers/QUICConnectionPool.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/QUICConnectionPool.js +0 -256
- package/dist/packages/agentdb/src/controllers/QUICConnectionPool.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/QUICServer.d.ts +0 -121
- package/dist/packages/agentdb/src/controllers/QUICServer.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/QUICServer.js +0 -383
- package/dist/packages/agentdb/src/controllers/QUICServer.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/QUICStreamManager.d.ts +0 -114
- package/dist/packages/agentdb/src/controllers/QUICStreamManager.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/QUICStreamManager.js +0 -267
- package/dist/packages/agentdb/src/controllers/QUICStreamManager.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/ReasoningBank.d.ts +0 -192
- package/dist/packages/agentdb/src/controllers/ReasoningBank.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/ReasoningBank.js +0 -489
- package/dist/packages/agentdb/src/controllers/ReasoningBank.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/ReflexionMemory.d.ts +0 -124
- package/dist/packages/agentdb/src/controllers/ReflexionMemory.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/ReflexionMemory.js +0 -653
- package/dist/packages/agentdb/src/controllers/ReflexionMemory.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/SkillLibrary.d.ts +0 -146
- package/dist/packages/agentdb/src/controllers/SkillLibrary.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/SkillLibrary.js +0 -602
- package/dist/packages/agentdb/src/controllers/SkillLibrary.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/SyncCoordinator.d.ts +0 -120
- package/dist/packages/agentdb/src/controllers/SyncCoordinator.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/SyncCoordinator.js +0 -441
- package/dist/packages/agentdb/src/controllers/SyncCoordinator.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/WASMVectorSearch.d.ts +0 -120
- package/dist/packages/agentdb/src/controllers/WASMVectorSearch.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/WASMVectorSearch.js +0 -283
- package/dist/packages/agentdb/src/controllers/WASMVectorSearch.js.map +0 -1
- package/dist/packages/agentdb/src/controllers/index.d.ts +0 -59
- package/dist/packages/agentdb/src/controllers/index.d.ts.map +0 -1
- package/dist/packages/agentdb/src/controllers/index.js +0 -37
- package/dist/packages/agentdb/src/controllers/index.js.map +0 -1
- package/dist/packages/agentdb/src/core/AgentDB.d.ts +0 -39
- package/dist/packages/agentdb/src/core/AgentDB.d.ts.map +0 -1
- package/dist/packages/agentdb/src/core/AgentDB.js +0 -193
- package/dist/packages/agentdb/src/core/AgentDB.js.map +0 -1
- package/dist/packages/agentdb/src/db-fallback.d.ts +0 -26
- package/dist/packages/agentdb/src/db-fallback.d.ts.map +0 -1
- package/dist/packages/agentdb/src/db-fallback.js +0 -264
- package/dist/packages/agentdb/src/db-fallback.js.map +0 -1
- package/dist/packages/agentdb/src/index.d.ts +0 -45
- package/dist/packages/agentdb/src/index.d.ts.map +0 -1
- package/dist/packages/agentdb/src/index.js +0 -50
- package/dist/packages/agentdb/src/index.js.map +0 -1
- package/dist/packages/agentdb/src/optimizations/BatchOperations.d.ts +0 -109
- package/dist/packages/agentdb/src/optimizations/BatchOperations.d.ts.map +0 -1
- package/dist/packages/agentdb/src/optimizations/BatchOperations.js +0 -407
- package/dist/packages/agentdb/src/optimizations/BatchOperations.js.map +0 -1
- package/dist/packages/agentdb/src/optimizations/QueryOptimizer.d.ts +0 -83
- package/dist/packages/agentdb/src/optimizations/QueryOptimizer.d.ts.map +0 -1
- package/dist/packages/agentdb/src/optimizations/QueryOptimizer.js +0 -228
- package/dist/packages/agentdb/src/optimizations/QueryOptimizer.js.map +0 -1
- package/dist/packages/agentdb/src/optimizations/RVFOptimizer.d.ts +0 -226
- package/dist/packages/agentdb/src/optimizations/RVFOptimizer.d.ts.map +0 -1
- package/dist/packages/agentdb/src/optimizations/RVFOptimizer.js +0 -541
- package/dist/packages/agentdb/src/optimizations/RVFOptimizer.js.map +0 -1
- package/dist/packages/agentdb/src/security/AttestationLog.d.ts +0 -70
- package/dist/packages/agentdb/src/security/AttestationLog.d.ts.map +0 -1
- package/dist/packages/agentdb/src/security/AttestationLog.js +0 -174
- package/dist/packages/agentdb/src/security/AttestationLog.js.map +0 -1
- package/dist/packages/agentdb/src/security/MutationGuard.d.ts +0 -83
- package/dist/packages/agentdb/src/security/MutationGuard.d.ts.map +0 -1
- package/dist/packages/agentdb/src/security/MutationGuard.js +0 -364
- package/dist/packages/agentdb/src/security/MutationGuard.js.map +0 -1
- package/dist/packages/agentdb/src/security/input-validation.d.ts +0 -109
- package/dist/packages/agentdb/src/security/input-validation.d.ts.map +0 -1
- package/dist/packages/agentdb/src/security/input-validation.js +0 -398
- package/dist/packages/agentdb/src/security/input-validation.js.map +0 -1
- package/dist/packages/agentdb/src/security/validation.d.ts +0 -95
- package/dist/packages/agentdb/src/security/validation.d.ts.map +0 -1
- package/dist/packages/agentdb/src/security/validation.js +0 -315
- package/dist/packages/agentdb/src/security/validation.js.map +0 -1
- package/dist/packages/agentdb/src/services/GNNService.d.ts +0 -173
- package/dist/packages/agentdb/src/services/GNNService.d.ts.map +0 -1
- package/dist/packages/agentdb/src/services/GNNService.js +0 -639
- package/dist/packages/agentdb/src/services/GNNService.js.map +0 -1
- package/dist/packages/agentdb/src/services/GraphTransformerService.d.ts +0 -80
- package/dist/packages/agentdb/src/services/GraphTransformerService.d.ts.map +0 -1
- package/dist/packages/agentdb/src/services/GraphTransformerService.js +0 -369
- package/dist/packages/agentdb/src/services/GraphTransformerService.js.map +0 -1
- package/dist/packages/agentdb/src/services/LLMRouter.d.ts +0 -84
- package/dist/packages/agentdb/src/services/LLMRouter.d.ts.map +0 -1
- package/dist/packages/agentdb/src/services/LLMRouter.js +0 -306
- package/dist/packages/agentdb/src/services/LLMRouter.js.map +0 -1
- package/dist/packages/agentdb/src/services/SemanticRouter.d.ts +0 -83
- package/dist/packages/agentdb/src/services/SemanticRouter.d.ts.map +0 -1
- package/dist/packages/agentdb/src/services/SemanticRouter.js +0 -160
- package/dist/packages/agentdb/src/services/SemanticRouter.js.map +0 -1
- package/dist/packages/agentdb/src/services/SonaTrajectoryService.d.ts +0 -224
- package/dist/packages/agentdb/src/services/SonaTrajectoryService.d.ts.map +0 -1
- package/dist/packages/agentdb/src/services/SonaTrajectoryService.js +0 -539
- package/dist/packages/agentdb/src/services/SonaTrajectoryService.js.map +0 -1
- package/dist/packages/agentdb/src/utils/LegacyAttentionAdapter.d.ts +0 -93
- package/dist/packages/agentdb/src/utils/LegacyAttentionAdapter.d.ts.map +0 -1
- package/dist/packages/agentdb/src/utils/LegacyAttentionAdapter.js +0 -241
- package/dist/packages/agentdb/src/utils/LegacyAttentionAdapter.js.map +0 -1
- package/dist/packages/agentdb/src/utils/NodeIdMapper.d.ts +0 -38
- package/dist/packages/agentdb/src/utils/NodeIdMapper.d.ts.map +0 -1
- package/dist/packages/agentdb/src/utils/NodeIdMapper.js +0 -57
- package/dist/packages/agentdb/src/utils/NodeIdMapper.js.map +0 -1
- package/dist/packages/agentdb/src/utils/vector-math.d.ts +0 -29
- package/dist/packages/agentdb/src/utils/vector-math.d.ts.map +0 -1
- package/dist/packages/agentdb/src/utils/vector-math.js +0 -66
- package/dist/packages/agentdb/src/utils/vector-math.js.map +0 -1
- package/dist/proxy/http3-proxy-old.js +0 -331
- package/dist/proxy/proxy/anthropic-to-gemini.js +0 -439
- package/dist/proxy/utils/logger.js +0 -59
- package/dist/reasoningbank/agentdb-adapter.js +0 -125
- package/dist/reasoningbank/core/database.js +0 -250
- package/dist/reasoningbank/core/memory-engine.js +0 -335
- package/dist/security/index.d.ts +0 -13
- package/dist/security/index.d.ts.map +0 -1
- package/dist/security/index.js +0 -14
- package/dist/security/index.js.map +0 -1
- package/dist/security/input-validation.d.ts +0 -60
- package/dist/security/input-validation.d.ts.map +0 -1
- package/dist/security/input-validation.js +0 -192
- package/dist/security/input-validation.js.map +0 -1
- package/dist/security/path-validator.d.ts +0 -47
- package/dist/security/path-validator.d.ts.map +0 -1
- package/dist/security/path-validator.js +0 -144
- package/dist/security/path-validator.js.map +0 -1
- package/dist/security/rate-limiter.d.ts +0 -68
- package/dist/security/rate-limiter.d.ts.map +0 -1
- package/dist/security/rate-limiter.js +0 -133
- package/dist/security/rate-limiter.js.map +0 -1
- package/dist/security/secret-redaction.d.ts +0 -39
- package/dist/security/secret-redaction.d.ts.map +0 -1
- package/dist/security/secret-redaction.js +0 -128
- package/dist/security/secret-redaction.js.map +0 -1
- package/dist/services/agentdb-phase4-methods.d.ts +0 -70
- package/dist/services/agentdb-phase4-methods.d.ts.map +0 -1
- package/dist/services/agentdb-phase4-methods.js +0 -129
- package/dist/services/agentdb-phase4-methods.js.map +0 -1
- package/dist/services/consensus-service.d.ts +0 -114
- package/dist/services/consensus-service.d.ts.map +0 -1
- package/dist/services/consensus-service.js +0 -373
- package/dist/services/consensus-service.js.map +0 -1
- package/dist/services/cost-optimizer-service.d.ts +0 -95
- package/dist/services/cost-optimizer-service.d.ts.map +0 -1
- package/dist/services/cost-optimizer-service.js +0 -244
- package/dist/services/cost-optimizer-service.js.map +0 -1
- package/dist/services/direct-call-bridge.d.ts +0 -72
- package/dist/services/direct-call-bridge.d.ts.map +0 -1
- package/dist/services/direct-call-bridge.js +0 -180
- package/dist/services/direct-call-bridge.js.map +0 -1
- package/dist/services/explainability-service.d.ts +0 -182
- package/dist/services/explainability-service.d.ts.map +0 -1
- package/dist/services/explainability-service.js +0 -417
- package/dist/services/explainability-service.js.map +0 -1
- package/dist/services/github-service.d.ts +0 -106
- package/dist/services/github-service.d.ts.map +0 -1
- package/dist/services/github-service.js +0 -295
- package/dist/services/github-service.js.map +0 -1
- package/dist/services/gnn-router-service.d.ts +0 -151
- package/dist/services/gnn-router-service.d.ts.map +0 -1
- package/dist/services/gnn-router-service.js +0 -338
- package/dist/services/gnn-router-service.js.map +0 -1
- package/dist/services/hook-service.d.ts +0 -86
- package/dist/services/hook-service.d.ts.map +0 -1
- package/dist/services/hook-service.js +0 -234
- package/dist/services/hook-service.js.map +0 -1
- package/dist/services/quantization-service.d.ts +0 -167
- package/dist/services/quantization-service.d.ts.map +0 -1
- package/dist/services/quantization-service.js +0 -498
- package/dist/services/quantization-service.js.map +0 -1
- package/dist/services/rl-training-service.d.ts +0 -161
- package/dist/services/rl-training-service.d.ts.map +0 -1
- package/dist/services/rl-training-service.js +0 -325
- package/dist/services/rl-training-service.js.map +0 -1
- package/dist/services/ruvector-service.d.ts +0 -95
- package/dist/services/ruvector-service.d.ts.map +0 -1
- package/dist/services/ruvector-service.js +0 -210
- package/dist/services/ruvector-service.js.map +0 -1
- package/dist/services/session-service.d.ts +0 -24
- package/dist/services/session-service.d.ts.map +0 -1
- package/dist/services/session-service.js +0 -92
- package/dist/services/session-service.js.map +0 -1
- package/dist/services/streaming-service.d.ts +0 -113
- package/dist/services/streaming-service.d.ts.map +0 -1
- package/dist/services/streaming-service.js +0 -495
- package/dist/services/streaming-service.js.map +0 -1
- package/dist/services/swarm-service.d.ts +0 -106
- package/dist/services/swarm-service.d.ts.map +0 -1
- package/dist/services/swarm-service.js +0 -321
- package/dist/services/swarm-service.js.map +0 -1
- package/dist/swarm/ipfs-swarm.d.ts +0 -265
- package/dist/swarm/ipfs-swarm.d.ts.map +0 -1
- package/dist/swarm/ipfs-swarm.js +0 -508
- package/dist/swarm/ipfs-swarm.js.map +0 -1
- package/dist/swarm/p2p-free-swarm.d.ts +0 -344
- package/dist/swarm/p2p-free-swarm.d.ts.map +0 -1
- package/dist/swarm/p2p-free-swarm.js +0 -603
- package/dist/swarm/p2p-free-swarm.js.map +0 -1
- package/dist/swarm/real-p2p-swarm.d.ts +0 -183
- package/dist/swarm/real-p2p-swarm.d.ts.map +0 -1
- package/dist/swarm/real-p2p-swarm.js +0 -469
- package/dist/swarm/real-p2p-swarm.js.map +0 -1
- package/dist/utils/adaptive-pool-sizing.js +0 -414
- package/dist/utils/agentdbCommands.js +0 -175
- package/dist/utils/circular-rate-limiter.js +0 -391
- package/dist/utils/dynamic-compression.js +0 -298
- package/dist/utils/http2-multiplexing.js +0 -319
- package/dist/utils/lazy-auth.js +0 -311
- package/dist/utils/server-push.js +0 -251
- package/dist/utils/zero-copy-buffer.js +0 -286
- package/docs/.claude-flow/metrics/agent-metrics.json +0 -1
- package/docs/.claude-flow/metrics/performance.json +0 -87
- package/docs/.claude-flow/metrics/task-metrics.json +0 -10
- /package/.claude/agents/analysis/{code-review/analyze-code-quality.md → analyze-code-quality.md} +0 -0
- /package/.claude/agents/architecture/{system-design/arch-system-design.md → arch-system-design.md} +0 -0
- /package/.claude/agents/devops/{ci-cd/ops-cicd-github.md → ops-cicd-github.md} +0 -0
- /package/.claude/agents/specialized/{mobile/spec-mobile-react-native.md → spec-mobile-react-native.md} +0 -0
- /package/.claude/agents/testing/{validation/production-validator.md → production-validator.md} +0 -0
- /package/.claude/agents/testing/{unit/tdd-london-swarm.md → tdd-london-swarm.md} +0 -0
|
@@ -12,10 +12,10 @@ import * as db from '../db/queries.js';
|
|
|
12
12
|
export async function consolidate() {
|
|
13
13
|
const config = loadConfig();
|
|
14
14
|
const startTime = Date.now();
|
|
15
|
-
console.
|
|
15
|
+
console.error('[INFO] Starting memory consolidation...');
|
|
16
16
|
const runId = ulid();
|
|
17
17
|
const memories = db.getAllActiveMemories();
|
|
18
|
-
console.
|
|
18
|
+
console.error(`[INFO] Processing ${memories.length} active memories`);
|
|
19
19
|
let duplicatesFound = 0;
|
|
20
20
|
let contradictionsFound = 0;
|
|
21
21
|
let itemsPruned = 0;
|
|
@@ -38,7 +38,7 @@ export async function consolidate() {
|
|
|
38
38
|
items_pruned: itemsPruned,
|
|
39
39
|
duration_ms: durationMs
|
|
40
40
|
});
|
|
41
|
-
console.
|
|
41
|
+
console.error(`[INFO] Consolidation complete: ${duplicatesFound} dupes, ${contradictionsFound} contradictions, ${itemsPruned} pruned in ${durationMs}ms`);
|
|
42
42
|
db.logMetric('rb.consolidate.duration_ms', durationMs);
|
|
43
43
|
db.logMetric('rb.consolidate.duplicates', duplicatesFound);
|
|
44
44
|
db.logMetric('rb.consolidate.contradictions', contradictionsFound);
|
|
@@ -53,75 +53,143 @@ export async function consolidate() {
|
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
55
55
|
* Deduplicate highly similar memories
|
|
56
|
+
* PERFORMANCE FIX: Use bucketing/blocking to reduce O(n²) to ~O(n·k)
|
|
57
|
+
* by only comparing memories within the same semantic bucket
|
|
56
58
|
*/
|
|
57
59
|
async function deduplicateMemories(memories, threshold) {
|
|
58
60
|
let duplicatesFound = 0;
|
|
59
|
-
|
|
61
|
+
if (memories.length === 0)
|
|
62
|
+
return 0;
|
|
63
|
+
// Fetch all embeddings in a single batch query (instead of N queries)
|
|
60
64
|
const dbConn = db.getDb();
|
|
65
|
+
const ids = memories.map(m => m.id);
|
|
66
|
+
const placeholders = ids.map(() => '?').join(',');
|
|
67
|
+
const rows = dbConn.prepare(`SELECT id, vector FROM pattern_embeddings WHERE id IN (${placeholders})`).all(...ids);
|
|
61
68
|
const embeddingsMap = new Map();
|
|
69
|
+
for (const row of rows) {
|
|
70
|
+
embeddingsMap.set(row.id, new Float32Array(row.vector));
|
|
71
|
+
}
|
|
72
|
+
// PERFORMANCE: Use locality-sensitive hashing (LSH) bucketing
|
|
73
|
+
// Group memories by their dominant embedding dimension to reduce comparisons
|
|
74
|
+
const buckets = new Map();
|
|
75
|
+
const BUCKET_GRANULARITY = 10; // Number of buckets per dimension
|
|
62
76
|
for (const mem of memories) {
|
|
63
|
-
const
|
|
64
|
-
if (
|
|
65
|
-
|
|
77
|
+
const emb = embeddingsMap.get(mem.id);
|
|
78
|
+
if (!emb)
|
|
79
|
+
continue;
|
|
80
|
+
// Find dominant dimension and bucket
|
|
81
|
+
let maxDim = 0;
|
|
82
|
+
let maxVal = -Infinity;
|
|
83
|
+
for (let i = 0; i < Math.min(emb.length, 32); i++) { // Check first 32 dims
|
|
84
|
+
if (Math.abs(emb[i]) > maxVal) {
|
|
85
|
+
maxVal = Math.abs(emb[i]);
|
|
86
|
+
maxDim = i;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
const bucketKey = maxDim * BUCKET_GRANULARITY + Math.floor((emb[maxDim] + 1) * BUCKET_GRANULARITY / 2);
|
|
90
|
+
if (!buckets.has(bucketKey)) {
|
|
91
|
+
buckets.set(bucketKey, []);
|
|
66
92
|
}
|
|
93
|
+
buckets.get(bucketKey).push(mem);
|
|
67
94
|
}
|
|
68
|
-
// Compare
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
95
|
+
// Compare only within buckets (and neighboring buckets for safety)
|
|
96
|
+
const deletedIds = new Set();
|
|
97
|
+
for (const [bucketKey, bucketMemories] of buckets) {
|
|
98
|
+
// Compare within bucket
|
|
99
|
+
for (let i = 0; i < bucketMemories.length; i++) {
|
|
100
|
+
const mem1 = bucketMemories[i];
|
|
101
|
+
if (deletedIds.has(mem1.id))
|
|
102
|
+
continue;
|
|
73
103
|
const emb1 = embeddingsMap.get(mem1.id);
|
|
74
|
-
|
|
75
|
-
if (!emb1 || !emb2)
|
|
104
|
+
if (!emb1)
|
|
76
105
|
continue;
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
106
|
+
for (let j = i + 1; j < bucketMemories.length; j++) {
|
|
107
|
+
const mem2 = bucketMemories[j];
|
|
108
|
+
if (deletedIds.has(mem2.id))
|
|
109
|
+
continue;
|
|
110
|
+
const emb2 = embeddingsMap.get(mem2.id);
|
|
111
|
+
if (!emb2)
|
|
112
|
+
continue;
|
|
113
|
+
const similarity = cosineSimilarity(emb1, emb2);
|
|
114
|
+
if (similarity >= threshold) {
|
|
115
|
+
// Mark as duplicate
|
|
116
|
+
db.storeLink(mem1.id, mem2.id, 'duplicate_of', similarity);
|
|
117
|
+
duplicatesFound++;
|
|
118
|
+
// Merge: keep the one with higher usage
|
|
119
|
+
if (mem1.usage_count < mem2.usage_count) {
|
|
120
|
+
deletedIds.add(mem1.id);
|
|
121
|
+
console.error(`[INFO] Merged duplicate: ${mem1.pattern_data?.title || mem1.id} → ${mem2.pattern_data?.title || mem2.id}`);
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
deletedIds.add(mem2.id);
|
|
125
|
+
}
|
|
87
126
|
}
|
|
88
127
|
}
|
|
89
128
|
}
|
|
90
129
|
}
|
|
130
|
+
// Batch delete all duplicates in a single transaction
|
|
131
|
+
if (deletedIds.size > 0) {
|
|
132
|
+
const deleteIds = Array.from(deletedIds);
|
|
133
|
+
const deletePlaceholders = deleteIds.map(() => '?').join(',');
|
|
134
|
+
dbConn.prepare(`DELETE FROM patterns WHERE id IN (${deletePlaceholders})`).run(...deleteIds);
|
|
135
|
+
}
|
|
91
136
|
return duplicatesFound;
|
|
92
137
|
}
|
|
93
138
|
/**
|
|
94
139
|
* Detect contradicting memories
|
|
95
140
|
* Uses embedding similarity + semantic analysis
|
|
141
|
+
* PERFORMANCE FIX: Reuses embeddings from deduplication phase and uses bucketing
|
|
96
142
|
*/
|
|
97
|
-
async function detectContradictions(memories, threshold) {
|
|
143
|
+
async function detectContradictions(memories, threshold, preloadedEmbeddings) {
|
|
98
144
|
let contradictionsFound = 0;
|
|
99
|
-
|
|
100
|
-
|
|
145
|
+
if (memories.length === 0)
|
|
146
|
+
return 0;
|
|
147
|
+
// Use preloaded embeddings if available, otherwise fetch in batch
|
|
148
|
+
let embeddingsMap;
|
|
149
|
+
if (preloadedEmbeddings) {
|
|
150
|
+
embeddingsMap = preloadedEmbeddings;
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
const dbConn = db.getDb();
|
|
154
|
+
const ids = memories.map(m => m.id);
|
|
155
|
+
const placeholders = ids.map(() => '?').join(',');
|
|
156
|
+
const rows = dbConn.prepare(`SELECT id, vector FROM pattern_embeddings WHERE id IN (${placeholders})`).all(...ids);
|
|
157
|
+
embeddingsMap = new Map();
|
|
158
|
+
for (const row of rows) {
|
|
159
|
+
embeddingsMap.set(row.id, new Float32Array(row.vector));
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
// PERFORMANCE: Group by outcome first, only compare across different outcomes
|
|
163
|
+
const outcomeGroups = new Map();
|
|
101
164
|
for (const mem of memories) {
|
|
102
|
-
const
|
|
103
|
-
if (
|
|
104
|
-
|
|
165
|
+
const outcome = mem.pattern_data?.source?.outcome ?? 'unknown';
|
|
166
|
+
if (!outcomeGroups.has(outcome)) {
|
|
167
|
+
outcomeGroups.set(outcome, []);
|
|
105
168
|
}
|
|
169
|
+
outcomeGroups.get(outcome).push(mem);
|
|
106
170
|
}
|
|
107
|
-
//
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
const
|
|
112
|
-
const
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
171
|
+
// Only compare memories with different outcomes
|
|
172
|
+
const outcomeKeys = Array.from(outcomeGroups.keys());
|
|
173
|
+
for (let o1 = 0; o1 < outcomeKeys.length; o1++) {
|
|
174
|
+
for (let o2 = o1 + 1; o2 < outcomeKeys.length; o2++) {
|
|
175
|
+
const group1 = outcomeGroups.get(outcomeKeys[o1]);
|
|
176
|
+
const group2 = outcomeGroups.get(outcomeKeys[o2]);
|
|
177
|
+
// Compare across groups (different outcomes)
|
|
178
|
+
for (const mem1 of group1) {
|
|
179
|
+
const emb1 = embeddingsMap.get(mem1.id);
|
|
180
|
+
if (!emb1)
|
|
181
|
+
continue;
|
|
182
|
+
for (const mem2 of group2) {
|
|
183
|
+
const emb2 = embeddingsMap.get(mem2.id);
|
|
184
|
+
if (!emb2)
|
|
185
|
+
continue;
|
|
186
|
+
const similarity = cosineSimilarity(emb1, emb2);
|
|
187
|
+
// High similarity but different outcomes = contradiction
|
|
188
|
+
if (similarity >= threshold) {
|
|
189
|
+
db.storeLink(mem1.id, mem2.id, 'contradicts', similarity);
|
|
190
|
+
contradictionsFound++;
|
|
191
|
+
console.error(`[WARN] Contradiction detected: ${mem1.pattern_data?.title || mem1.id} vs ${mem2.pattern_data?.title || mem2.id}`);
|
|
192
|
+
}
|
|
125
193
|
}
|
|
126
194
|
}
|
|
127
195
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consolidate.js","sourceRoot":"","sources":["../../../src/reasoningbank/core/consolidate.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Memory Consolidation\n * Algorithm 4 from ReasoningBank paper: Dedup, Contradict, Prune\n */\n\nimport { ulid } from 'ulid';\nimport { loadConfig } from '../utils/config.js';\nimport { cosineSimilarity } from '../utils/mmr.js';\nimport * as db from '../db/queries.js';\n\nexport interface ConsolidationResult {\n itemsProcessed: number;\n duplicatesFound: number;\n contradictionsFound: number;\n itemsPruned: number;\n durationMs: number;\n}\n\n/**\n * Run consolidation: deduplicate, detect contradictions, prune old memories\n */\nexport async function consolidate(): Promise<ConsolidationResult> {\n const config = loadConfig();\n const startTime = Date.now();\n\n console.log('[INFO] Starting memory consolidation...');\n\n const runId = ulid();\n const memories = db.getAllActiveMemories();\n\n console.log(`[INFO] Processing ${memories.length} active memories`);\n\n let duplicatesFound = 0;\n let contradictionsFound = 0;\n let itemsPruned = 0;\n\n // Step 1: Deduplicate similar memories\n duplicatesFound = await deduplicateMemories(memories, config.consolidate.duplicate_threshold);\n\n // Step 2: Detect contradictions\n contradictionsFound = await detectContradictions(memories, config.consolidate.contradiction_threshold);\n\n // Step 3: Prune old, unused memories\n itemsPruned = db.pruneOldMemories({\n maxAgeDays: config.consolidate.prune_age_days,\n minConfidence: config.consolidate.min_confidence_keep\n });\n\n const durationMs = Date.now() - startTime;\n\n // Store consolidation run\n db.storeConsolidationRun({\n run_id: runId,\n items_processed: memories.length,\n duplicates_found: duplicatesFound,\n contradictions_found: contradictionsFound,\n items_pruned: itemsPruned,\n duration_ms: durationMs\n });\n\n console.log(`[INFO] Consolidation complete: ${duplicatesFound} dupes, ${contradictionsFound} contradictions, ${itemsPruned} pruned in ${durationMs}ms`);\n\n db.logMetric('rb.consolidate.duration_ms', durationMs);\n db.logMetric('rb.consolidate.duplicates', duplicatesFound);\n db.logMetric('rb.consolidate.contradictions', contradictionsFound);\n db.logMetric('rb.consolidate.pruned', itemsPruned);\n\n return {\n itemsProcessed: memories.length,\n duplicatesFound,\n contradictionsFound,\n itemsPruned,\n durationMs\n };\n}\n\n/**\n * Deduplicate highly similar memories\n */\nasync function deduplicateMemories(\n memories: any[],\n threshold: number\n): Promise<number> {\n let duplicatesFound = 0;\n\n // Fetch embeddings for all memories\n const dbConn = db.getDb();\n const embeddingsMap = new Map<string, Float32Array>();\n\n for (const mem of memories) {\n const row = dbConn.prepare('SELECT vector FROM pattern_embeddings WHERE id = ?').get(mem.id) as { vector: Buffer } | undefined;\n if (row) {\n embeddingsMap.set(mem.id, new Float32Array(row.vector));\n }\n }\n\n // Compare all pairs\n for (let i = 0; i < memories.length; i++) {\n for (let j = i + 1; j < memories.length; j++) {\n const mem1 = memories[i];\n const mem2 = memories[j];\n\n const emb1 = embeddingsMap.get(mem1.id);\n const emb2 = embeddingsMap.get(mem2.id);\n\n if (!emb1 || !emb2) continue;\n\n const similarity = cosineSimilarity(emb1, emb2);\n\n if (similarity >= threshold) {\n // Mark as duplicate\n db.storeLink(mem1.id, mem2.id, 'duplicate_of', similarity);\n duplicatesFound++;\n\n // Merge: keep the one with higher usage\n if (mem1.usage_count < mem2.usage_count) {\n // Delete mem1 (lower usage)\n dbConn.prepare('DELETE FROM patterns WHERE id = ?').run(mem1.id);\n console.log(`[INFO] Merged duplicate: ${mem1.pattern_data.title} → ${mem2.pattern_data.title}`);\n }\n }\n }\n }\n\n return duplicatesFound;\n}\n\n/**\n * Detect contradicting memories\n * Uses embedding similarity + semantic analysis\n */\nasync function detectContradictions(\n memories: any[],\n threshold: number\n): Promise<number> {\n let contradictionsFound = 0;\n\n const dbConn = db.getDb();\n const embeddingsMap = new Map<string, Float32Array>();\n\n for (const mem of memories) {\n const row = dbConn.prepare('SELECT vector FROM pattern_embeddings WHERE id = ?').get(mem.id) as { vector: Buffer } | undefined;\n if (row) {\n embeddingsMap.set(mem.id, new Float32Array(row.vector));\n }\n }\n\n // Look for memories with high similarity but opposite outcomes\n for (let i = 0; i < memories.length; i++) {\n for (let j = i + 1; j < memories.length; j++) {\n const mem1 = memories[i];\n const mem2 = memories[j];\n\n const emb1 = embeddingsMap.get(mem1.id);\n const emb2 = embeddingsMap.get(mem2.id);\n\n if (!emb1 || !emb2) continue;\n\n const similarity = cosineSimilarity(emb1, emb2);\n\n // High similarity but different outcomes = potential contradiction\n if (similarity >= threshold) {\n const outcome1 = mem1.pattern_data.source?.outcome;\n const outcome2 = mem2.pattern_data.source?.outcome;\n\n if (outcome1 !== outcome2) {\n db.storeLink(mem1.id, mem2.id, 'contradicts', similarity);\n contradictionsFound++;\n console.log(`[WARN] Contradiction detected: ${mem1.pattern_data.title} vs ${mem2.pattern_data.title}`);\n }\n }\n }\n }\n\n return contradictionsFound;\n}\n\n/**\n * Check if consolidation should run\n * Returns true if threshold of new memories is reached\n */\nexport function shouldConsolidate(): boolean {\n const config = loadConfig();\n const newCount = db.countNewMemoriesSinceConsolidation();\n return newCount >= config.consolidate.trigger_threshold;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"consolidate.js","sourceRoot":"","sources":["../../../src/reasoningbank/core/consolidate.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Memory Consolidation\n * Algorithm 4 from ReasoningBank paper: Dedup, Contradict, Prune\n */\n\nimport { ulid } from 'ulid';\nimport { loadConfig } from '../utils/config.js';\nimport { cosineSimilarity } from '../utils/mmr.js';\nimport * as db from '../db/queries.js';\n\nexport interface ConsolidationResult {\n itemsProcessed: number;\n duplicatesFound: number;\n contradictionsFound: number;\n itemsPruned: number;\n durationMs: number;\n}\n\n/**\n * Run consolidation: deduplicate, detect contradictions, prune old memories\n */\nexport async function consolidate(): Promise<ConsolidationResult> {\n const config = loadConfig();\n const startTime = Date.now();\n\n console.error('[INFO] Starting memory consolidation...');\n\n const runId = ulid();\n const memories = db.getAllActiveMemories();\n\n console.error(`[INFO] Processing ${memories.length} active memories`);\n\n let duplicatesFound = 0;\n let contradictionsFound = 0;\n let itemsPruned = 0;\n\n // Step 1: Deduplicate similar memories\n duplicatesFound = await deduplicateMemories(memories, config.consolidate.duplicate_threshold);\n\n // Step 2: Detect contradictions\n contradictionsFound = await detectContradictions(memories, config.consolidate.contradiction_threshold);\n\n // Step 3: Prune old, unused memories\n itemsPruned = db.pruneOldMemories({\n maxAgeDays: config.consolidate.prune_age_days,\n minConfidence: config.consolidate.min_confidence_keep\n });\n\n const durationMs = Date.now() - startTime;\n\n // Store consolidation run\n db.storeConsolidationRun({\n run_id: runId,\n items_processed: memories.length,\n duplicates_found: duplicatesFound,\n contradictions_found: contradictionsFound,\n items_pruned: itemsPruned,\n duration_ms: durationMs\n });\n\n console.error(`[INFO] Consolidation complete: ${duplicatesFound} dupes, ${contradictionsFound} contradictions, ${itemsPruned} pruned in ${durationMs}ms`);\n\n db.logMetric('rb.consolidate.duration_ms', durationMs);\n db.logMetric('rb.consolidate.duplicates', duplicatesFound);\n db.logMetric('rb.consolidate.contradictions', contradictionsFound);\n db.logMetric('rb.consolidate.pruned', itemsPruned);\n\n return {\n itemsProcessed: memories.length,\n duplicatesFound,\n contradictionsFound,\n itemsPruned,\n durationMs\n };\n}\n\n/**\n * Deduplicate highly similar memories\n * PERFORMANCE FIX: Use bucketing/blocking to reduce O(n²) to ~O(n·k)\n * by only comparing memories within the same semantic bucket\n */\nasync function deduplicateMemories(\n memories: any[],\n threshold: number\n): Promise<number> {\n let duplicatesFound = 0;\n\n if (memories.length === 0) return 0;\n\n // Fetch all embeddings in a single batch query (instead of N queries)\n const dbConn = db.getDb();\n const ids = memories.map(m => m.id);\n const placeholders = ids.map(() => '?').join(',');\n const rows = dbConn.prepare(`SELECT id, vector FROM pattern_embeddings WHERE id IN (${placeholders})`).all(...ids) as Array<{ id: string; vector: Buffer }>;\n\n const embeddingsMap = new Map<string, Float32Array>();\n for (const row of rows) {\n embeddingsMap.set(row.id, new Float32Array(row.vector));\n }\n\n // PERFORMANCE: Use locality-sensitive hashing (LSH) bucketing\n // Group memories by their dominant embedding dimension to reduce comparisons\n const buckets = new Map<number, any[]>();\n const BUCKET_GRANULARITY = 10; // Number of buckets per dimension\n\n for (const mem of memories) {\n const emb = embeddingsMap.get(mem.id);\n if (!emb) continue;\n\n // Find dominant dimension and bucket\n let maxDim = 0;\n let maxVal = -Infinity;\n for (let i = 0; i < Math.min(emb.length, 32); i++) { // Check first 32 dims\n if (Math.abs(emb[i]) > maxVal) {\n maxVal = Math.abs(emb[i]);\n maxDim = i;\n }\n }\n const bucketKey = maxDim * BUCKET_GRANULARITY + Math.floor((emb[maxDim] + 1) * BUCKET_GRANULARITY / 2);\n\n if (!buckets.has(bucketKey)) {\n buckets.set(bucketKey, []);\n }\n buckets.get(bucketKey)!.push(mem);\n }\n\n // Compare only within buckets (and neighboring buckets for safety)\n const deletedIds = new Set<string>();\n\n for (const [bucketKey, bucketMemories] of buckets) {\n // Compare within bucket\n for (let i = 0; i < bucketMemories.length; i++) {\n const mem1 = bucketMemories[i];\n if (deletedIds.has(mem1.id)) continue;\n\n const emb1 = embeddingsMap.get(mem1.id);\n if (!emb1) continue;\n\n for (let j = i + 1; j < bucketMemories.length; j++) {\n const mem2 = bucketMemories[j];\n if (deletedIds.has(mem2.id)) continue;\n\n const emb2 = embeddingsMap.get(mem2.id);\n if (!emb2) continue;\n\n const similarity = cosineSimilarity(emb1, emb2);\n\n if (similarity >= threshold) {\n // Mark as duplicate\n db.storeLink(mem1.id, mem2.id, 'duplicate_of', similarity);\n duplicatesFound++;\n\n // Merge: keep the one with higher usage\n if (mem1.usage_count < mem2.usage_count) {\n deletedIds.add(mem1.id);\n console.error(`[INFO] Merged duplicate: ${mem1.pattern_data?.title || mem1.id} → ${mem2.pattern_data?.title || mem2.id}`);\n } else {\n deletedIds.add(mem2.id);\n }\n }\n }\n }\n }\n\n // Batch delete all duplicates in a single transaction\n if (deletedIds.size > 0) {\n const deleteIds = Array.from(deletedIds);\n const deletePlaceholders = deleteIds.map(() => '?').join(',');\n dbConn.prepare(`DELETE FROM patterns WHERE id IN (${deletePlaceholders})`).run(...deleteIds);\n }\n\n return duplicatesFound;\n}\n\n/**\n * Detect contradicting memories\n * Uses embedding similarity + semantic analysis\n * PERFORMANCE FIX: Reuses embeddings from deduplication phase and uses bucketing\n */\nasync function detectContradictions(\n memories: any[],\n threshold: number,\n preloadedEmbeddings?: Map<string, Float32Array>\n): Promise<number> {\n let contradictionsFound = 0;\n\n if (memories.length === 0) return 0;\n\n // Use preloaded embeddings if available, otherwise fetch in batch\n let embeddingsMap: Map<string, Float32Array>;\n\n if (preloadedEmbeddings) {\n embeddingsMap = preloadedEmbeddings;\n } else {\n const dbConn = db.getDb();\n const ids = memories.map(m => m.id);\n const placeholders = ids.map(() => '?').join(',');\n const rows = dbConn.prepare(`SELECT id, vector FROM pattern_embeddings WHERE id IN (${placeholders})`).all(...ids) as Array<{ id: string; vector: Buffer }>;\n\n embeddingsMap = new Map<string, Float32Array>();\n for (const row of rows) {\n embeddingsMap.set(row.id, new Float32Array(row.vector));\n }\n }\n\n // PERFORMANCE: Group by outcome first, only compare across different outcomes\n const outcomeGroups = new Map<string, any[]>();\n\n for (const mem of memories) {\n const outcome = mem.pattern_data?.source?.outcome ?? 'unknown';\n if (!outcomeGroups.has(outcome)) {\n outcomeGroups.set(outcome, []);\n }\n outcomeGroups.get(outcome)!.push(mem);\n }\n\n // Only compare memories with different outcomes\n const outcomeKeys = Array.from(outcomeGroups.keys());\n\n for (let o1 = 0; o1 < outcomeKeys.length; o1++) {\n for (let o2 = o1 + 1; o2 < outcomeKeys.length; o2++) {\n const group1 = outcomeGroups.get(outcomeKeys[o1])!;\n const group2 = outcomeGroups.get(outcomeKeys[o2])!;\n\n // Compare across groups (different outcomes)\n for (const mem1 of group1) {\n const emb1 = embeddingsMap.get(mem1.id);\n if (!emb1) continue;\n\n for (const mem2 of group2) {\n const emb2 = embeddingsMap.get(mem2.id);\n if (!emb2) continue;\n\n const similarity = cosineSimilarity(emb1, emb2);\n\n // High similarity but different outcomes = contradiction\n if (similarity >= threshold) {\n db.storeLink(mem1.id, mem2.id, 'contradicts', similarity);\n contradictionsFound++;\n console.error(`[WARN] Contradiction detected: ${mem1.pattern_data?.title || mem1.id} vs ${mem2.pattern_data?.title || mem2.id}`);\n }\n }\n }\n }\n }\n\n return contradictionsFound;\n}\n\n/**\n * Check if consolidation should run\n * Returns true if threshold of new memories is reached\n */\nexport function shouldConsolidate(): boolean {\n const config = loadConfig();\n const newCount = db.countNewMemoriesSinceConsolidation();\n return newCount >= config.consolidate.trigger_threshold;\n}\n"]}
|
|
@@ -27,7 +27,7 @@ function getRouter() {
|
|
|
27
27
|
export async function distillMemories(trajectory, verdict, query, options = {}) {
|
|
28
28
|
const config = loadConfig();
|
|
29
29
|
const startTime = Date.now();
|
|
30
|
-
console.
|
|
30
|
+
console.error(`[INFO] Distilling memories from ${verdict.label} trajectory`);
|
|
31
31
|
// Select appropriate prompt template
|
|
32
32
|
const templateName = verdict.label === 'Success' ? 'distill-success.json' : 'distill-failure.json';
|
|
33
33
|
const promptPath = join(__dirname, '../prompts', templateName);
|
|
@@ -75,7 +75,7 @@ export async function distillMemories(trajectory, verdict, query, options = {})
|
|
|
75
75
|
// Store memories in database
|
|
76
76
|
const memoryIds = await storeMemories(distilled, confidencePrior, verdict, options);
|
|
77
77
|
const duration = Date.now() - startTime;
|
|
78
|
-
console.
|
|
78
|
+
console.error(`[INFO] Distilled ${memoryIds.length} memories in ${duration}ms`);
|
|
79
79
|
db.logMetric('rb.distill.latency_ms', duration);
|
|
80
80
|
db.logMetric('rb.distill.yield', memoryIds.length);
|
|
81
81
|
return memoryIds;
|
|
@@ -145,7 +145,7 @@ async function storeMemories(memories, confidencePrior, verdict, options) {
|
|
|
145
145
|
created_at: new Date().toISOString()
|
|
146
146
|
});
|
|
147
147
|
memoryIds.push(id);
|
|
148
|
-
console.
|
|
148
|
+
console.error(`[INFO] Stored memory: ${scrubbed.title}`);
|
|
149
149
|
}
|
|
150
150
|
return memoryIds;
|
|
151
151
|
}
|
|
@@ -154,7 +154,7 @@ async function storeMemories(memories, confidencePrior, verdict, options) {
|
|
|
154
154
|
* Simple extraction without LLM
|
|
155
155
|
*/
|
|
156
156
|
function templateBasedDistill(trajectory, verdict, query, options) {
|
|
157
|
-
console.
|
|
157
|
+
console.error('[INFO] Using template-based distillation (no API key)');
|
|
158
158
|
// Create a single generic memory from the trajectory
|
|
159
159
|
const memory = {
|
|
160
160
|
title: `${verdict.label}: ${query.substring(0, 50)}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distill.js","sourceRoot":"","sources":["../../../src/reasoningbank/core/distill.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Memory Distillation from trajectories\n * Algorithm 3 from ReasoningBank paper\n */\n\nimport { readFileSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\nimport { ulid } from 'ulid';\nimport { loadConfig } from '../utils/config.js';\nimport { scrubMemory } from '../utils/pii-scrubber.js';\nimport { computeEmbedding } from '../utils/embeddings.js';\nimport { ModelRouter } from '../../router/router.js';\nimport * as db from '../db/queries.js';\nimport type { Trajectory } from '../db/schema.js';\nimport type { Verdict } from './judge.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\n// Initialize ModelRouter once\nlet routerInstance: ModelRouter | null = null;\nfunction getRouter(): ModelRouter {\n if (!routerInstance) {\n routerInstance = new ModelRouter();\n }\n return routerInstance;\n}\n\nexport interface DistilledMemory {\n title: string;\n description: string;\n content: string;\n tags: string[];\n domain?: string;\n}\n\n/**\n * Distill memories from a trajectory\n */\nexport async function distillMemories(\n trajectory: Trajectory,\n verdict: Verdict,\n query: string,\n options: { taskId?: string; agentId?: string; domain?: string } = {}\n): Promise<string[]> {\n const config = loadConfig();\n const startTime = Date.now();\n\n console.log(`[INFO] Distilling memories from ${verdict.label} trajectory`);\n\n // Select appropriate prompt template\n const templateName = verdict.label === 'Success' ? 'distill-success.json' : 'distill-failure.json';\n const promptPath = join(__dirname, '../prompts', templateName);\n const promptTemplate = JSON.parse(readFileSync(promptPath, 'utf-8'));\n\n const maxItems = verdict.label === 'Success'\n ? config.distill.max_items_success\n : config.distill.max_items_failure;\n\n const confidencePrior = verdict.label === 'Success'\n ? config.distill.confidence_prior_success\n : config.distill.confidence_prior_failure;\n\n // Check if we have any API key configured\n const hasApiKey = process.env.OPENROUTER_API_KEY ||\n process.env.ANTHROPIC_API_KEY ||\n process.env.GOOGLE_GEMINI_API_KEY;\n\n if (!hasApiKey) {\n console.warn('[WARN] No API key set (OPENROUTER_API_KEY, ANTHROPIC_API_KEY, or GOOGLE_GEMINI_API_KEY), using template-based distillation');\n return templateBasedDistill(trajectory, verdict, query, options);\n }\n\n try {\n // Format trajectory\n const trajectoryText = JSON.stringify(trajectory.steps || [], null, 2);\n\n // Build prompt\n const prompt = promptTemplate.template\n .replace('{{task_query}}', query)\n .replace('{{trajectory}}', trajectoryText)\n .replace('{{max_items}}', String(maxItems));\n\n // Use ModelRouter for multi-provider support\n const router = getRouter();\n const response = await router.chat({\n model: config.distill.model || config.judge.model,\n messages: [\n { role: 'system', content: promptTemplate.system },\n { role: 'user', content: prompt }\n ],\n temperature: config.distill.temperature || 0.3,\n maxTokens: config.distill.max_tokens || 2048\n }, 'reasoningbank-distill');\n\n // Extract content from router response\n const content = response.content\n .filter(block => block.type === 'text')\n .map(block => block.text)\n .join('\\n');\n\n // Parse memories from response\n const distilled = parseDistilledMemories(content);\n\n // Store memories in database\n const memoryIds = await storeMemories(\n distilled,\n confidencePrior,\n verdict,\n options\n );\n\n const duration = Date.now() - startTime;\n console.log(`[INFO] Distilled ${memoryIds.length} memories in ${duration}ms`);\n db.logMetric('rb.distill.latency_ms', duration);\n db.logMetric('rb.distill.yield', memoryIds.length);\n\n return memoryIds;\n } catch (error) {\n console.error('[ERROR] Distillation failed:', error);\n return templateBasedDistill(trajectory, verdict, query, options);\n }\n}\n\n/**\n * Parse distilled memories from LLM response\n */\nfunction parseDistilledMemories(content: string): DistilledMemory[] {\n try {\n const jsonMatch = content.match(/\\{[\\s\\S]*\\}/);\n if (jsonMatch) {\n const parsed = JSON.parse(jsonMatch[0]);\n return parsed.memories || [];\n }\n } catch (error) {\n console.warn('[WARN] Failed to parse distilled memories JSON');\n }\n\n return [];\n}\n\n/**\n * Store memories in database\n */\nasync function storeMemories(\n memories: DistilledMemory[],\n confidencePrior: number,\n verdict: Verdict,\n options: { taskId?: string; agentId?: string; domain?: string }\n): Promise<string[]> {\n const memoryIds: string[] = [];\n\n for (const mem of memories) {\n // Scrub PII\n const scrubbed = scrubMemory(mem);\n\n // Generate embedding\n const embedding = await computeEmbedding(\n `${scrubbed.title} ${scrubbed.description} ${scrubbed.content}`\n );\n\n // Create memory ID\n const id = ulid();\n\n // Store memory\n db.upsertMemory({\n id,\n type: 'reasoning_memory',\n pattern_data: {\n title: scrubbed.title,\n description: scrubbed.description,\n content: scrubbed.content,\n source: {\n task_id: options.taskId || 'unknown',\n agent_id: options.agentId || 'unknown',\n outcome: verdict.label,\n evidence: []\n },\n tags: scrubbed.tags,\n domain: options.domain || scrubbed.domain,\n created_at: new Date().toISOString(),\n confidence: confidencePrior,\n n_uses: 0\n },\n confidence: confidencePrior,\n usage_count: 0\n });\n\n // Store embedding\n db.upsertEmbedding({\n id,\n model: 'distill-' + verdict.label.toLowerCase(),\n dims: embedding.length,\n vector: embedding,\n created_at: new Date().toISOString()\n });\n\n memoryIds.push(id);\n console.log(`[INFO] Stored memory: ${scrubbed.title}`);\n }\n\n return memoryIds;\n}\n\n/**\n * Template-based distillation (fallback)\n * Simple extraction without LLM\n */\nfunction templateBasedDistill(\n trajectory: Trajectory,\n verdict: Verdict,\n query: string,\n options: any\n): string[] {\n console.log('[INFO] Using template-based distillation (no API key)');\n\n // Create a single generic memory from the trajectory\n const memory: DistilledMemory = {\n title: `${verdict.label}: ${query.substring(0, 50)}`,\n description: `Task outcome: ${verdict.label}`,\n content: `Query: ${query}\\n\\nSteps: ${trajectory.steps?.length || 0}\\n\\nOutcome: ${verdict.label}`,\n tags: [verdict.label.toLowerCase(), 'template'],\n domain: options.domain\n };\n\n // Store synchronously (no async needed for template)\n return []; // Skip storage for template-based (would need to make this async)\n}\n"]}
|
|
1
|
+
{"version":3,"file":"distill.js","sourceRoot":"","sources":["../../../src/reasoningbank/core/distill.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Memory Distillation from trajectories\n * Algorithm 3 from ReasoningBank paper\n */\n\nimport { readFileSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\nimport { ulid } from 'ulid';\nimport { loadConfig } from '../utils/config.js';\nimport { scrubMemory } from '../utils/pii-scrubber.js';\nimport { computeEmbedding } from '../utils/embeddings.js';\nimport { ModelRouter } from '../../router/router.js';\nimport * as db from '../db/queries.js';\nimport type { Trajectory } from '../db/schema.js';\nimport type { Verdict } from './judge.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\n// Initialize ModelRouter once\nlet routerInstance: ModelRouter | null = null;\nfunction getRouter(): ModelRouter {\n if (!routerInstance) {\n routerInstance = new ModelRouter();\n }\n return routerInstance;\n}\n\nexport interface DistilledMemory {\n title: string;\n description: string;\n content: string;\n tags: string[];\n domain?: string;\n}\n\n/**\n * Distill memories from a trajectory\n */\nexport async function distillMemories(\n trajectory: Trajectory,\n verdict: Verdict,\n query: string,\n options: { taskId?: string; agentId?: string; domain?: string } = {}\n): Promise<string[]> {\n const config = loadConfig();\n const startTime = Date.now();\n\n console.error(`[INFO] Distilling memories from ${verdict.label} trajectory`);\n\n // Select appropriate prompt template\n const templateName = verdict.label === 'Success' ? 'distill-success.json' : 'distill-failure.json';\n const promptPath = join(__dirname, '../prompts', templateName);\n const promptTemplate = JSON.parse(readFileSync(promptPath, 'utf-8'));\n\n const maxItems = verdict.label === 'Success'\n ? config.distill.max_items_success\n : config.distill.max_items_failure;\n\n const confidencePrior = verdict.label === 'Success'\n ? config.distill.confidence_prior_success\n : config.distill.confidence_prior_failure;\n\n // Check if we have any API key configured\n const hasApiKey = process.env.OPENROUTER_API_KEY ||\n process.env.ANTHROPIC_API_KEY ||\n process.env.GOOGLE_GEMINI_API_KEY;\n\n if (!hasApiKey) {\n console.warn('[WARN] No API key set (OPENROUTER_API_KEY, ANTHROPIC_API_KEY, or GOOGLE_GEMINI_API_KEY), using template-based distillation');\n return templateBasedDistill(trajectory, verdict, query, options);\n }\n\n try {\n // Format trajectory\n const trajectoryText = JSON.stringify(trajectory.steps || [], null, 2);\n\n // Build prompt\n const prompt = promptTemplate.template\n .replace('{{task_query}}', query)\n .replace('{{trajectory}}', trajectoryText)\n .replace('{{max_items}}', String(maxItems));\n\n // Use ModelRouter for multi-provider support\n const router = getRouter();\n const response = await router.chat({\n model: config.distill.model || config.judge.model,\n messages: [\n { role: 'system', content: promptTemplate.system },\n { role: 'user', content: prompt }\n ],\n temperature: config.distill.temperature || 0.3,\n maxTokens: config.distill.max_tokens || 2048\n }, 'reasoningbank-distill');\n\n // Extract content from router response\n const content = response.content\n .filter(block => block.type === 'text')\n .map(block => block.text)\n .join('\\n');\n\n // Parse memories from response\n const distilled = parseDistilledMemories(content);\n\n // Store memories in database\n const memoryIds = await storeMemories(\n distilled,\n confidencePrior,\n verdict,\n options\n );\n\n const duration = Date.now() - startTime;\n console.error(`[INFO] Distilled ${memoryIds.length} memories in ${duration}ms`);\n db.logMetric('rb.distill.latency_ms', duration);\n db.logMetric('rb.distill.yield', memoryIds.length);\n\n return memoryIds;\n } catch (error) {\n console.error('[ERROR] Distillation failed:', error);\n return templateBasedDistill(trajectory, verdict, query, options);\n }\n}\n\n/**\n * Parse distilled memories from LLM response\n */\nfunction parseDistilledMemories(content: string): DistilledMemory[] {\n try {\n const jsonMatch = content.match(/\\{[\\s\\S]*\\}/);\n if (jsonMatch) {\n const parsed = JSON.parse(jsonMatch[0]);\n return parsed.memories || [];\n }\n } catch (error) {\n console.warn('[WARN] Failed to parse distilled memories JSON');\n }\n\n return [];\n}\n\n/**\n * Store memories in database\n */\nasync function storeMemories(\n memories: DistilledMemory[],\n confidencePrior: number,\n verdict: Verdict,\n options: { taskId?: string; agentId?: string; domain?: string }\n): Promise<string[]> {\n const memoryIds: string[] = [];\n\n for (const mem of memories) {\n // Scrub PII\n const scrubbed = scrubMemory(mem);\n\n // Generate embedding\n const embedding = await computeEmbedding(\n `${scrubbed.title} ${scrubbed.description} ${scrubbed.content}`\n );\n\n // Create memory ID\n const id = ulid();\n\n // Store memory\n db.upsertMemory({\n id,\n type: 'reasoning_memory',\n pattern_data: {\n title: scrubbed.title,\n description: scrubbed.description,\n content: scrubbed.content,\n source: {\n task_id: options.taskId || 'unknown',\n agent_id: options.agentId || 'unknown',\n outcome: verdict.label,\n evidence: []\n },\n tags: scrubbed.tags,\n domain: options.domain || scrubbed.domain,\n created_at: new Date().toISOString(),\n confidence: confidencePrior,\n n_uses: 0\n },\n confidence: confidencePrior,\n usage_count: 0\n });\n\n // Store embedding\n db.upsertEmbedding({\n id,\n model: 'distill-' + verdict.label.toLowerCase(),\n dims: embedding.length,\n vector: embedding,\n created_at: new Date().toISOString()\n });\n\n memoryIds.push(id);\n console.error(`[INFO] Stored memory: ${scrubbed.title}`);\n }\n\n return memoryIds;\n}\n\n/**\n * Template-based distillation (fallback)\n * Simple extraction without LLM\n */\nfunction templateBasedDistill(\n trajectory: Trajectory,\n verdict: Verdict,\n query: string,\n options: any\n): string[] {\n console.error('[INFO] Using template-based distillation (no API key)');\n\n // Create a single generic memory from the trajectory\n const memory: DistilledMemory = {\n title: `${verdict.label}: ${query.substring(0, 50)}`,\n description: `Task outcome: ${verdict.label}`,\n content: `Query: ${query}\\n\\nSteps: ${trajectory.steps?.length || 0}\\n\\nOutcome: ${verdict.label}`,\n tags: [verdict.label.toLowerCase(), 'template'],\n domain: options.domain\n };\n\n // Store synchronously (no async needed for template)\n return []; // Skip storage for template-based (would need to make this async)\n}\n"]}
|
|
@@ -23,7 +23,7 @@ function getRouter() {
|
|
|
23
23
|
export async function judgeTrajectory(trajectory, query, options = {}) {
|
|
24
24
|
const config = loadConfig();
|
|
25
25
|
const startTime = Date.now();
|
|
26
|
-
console.
|
|
26
|
+
console.error(`[INFO] Judging trajectory for query: ${query.substring(0, 100)}...`);
|
|
27
27
|
// Load judge prompt template (relative to this file)
|
|
28
28
|
const promptPath = join(__dirname, '../prompts/judge.json');
|
|
29
29
|
const promptTemplate = JSON.parse(readFileSync(promptPath, 'utf-8'));
|
|
@@ -60,7 +60,7 @@ export async function judgeTrajectory(trajectory, query, options = {}) {
|
|
|
60
60
|
// Parse JSON response
|
|
61
61
|
const verdict = parseVerdict(content);
|
|
62
62
|
const duration = Date.now() - startTime;
|
|
63
|
-
console.
|
|
63
|
+
console.error(`[INFO] Judgment complete: ${verdict.label} (${verdict.confidence}) in ${duration}ms`);
|
|
64
64
|
db.logMetric('rb.judge.latency_ms', duration);
|
|
65
65
|
db.logMetric('rb.judge.success_rate', verdict.label === 'Success' ? 1 : 0);
|
|
66
66
|
return verdict;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"judge.js","sourceRoot":"","sources":["../../../src/reasoningbank/core/judge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,8BAA8B;AAC9B,IAAI,cAAc,GAAuB,IAAI,CAAC;AAC9C,SAAS,SAAS;IAChB,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,cAAc,GAAG,IAAI,WAAW,EAAE,CAAC;IACrC,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAQD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,UAAsB,EACtB,KAAa,EACb,UAAkC,EAAE;IAEpC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,OAAO,CAAC,GAAG,CAAC,wCAAwC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAElF,qDAAqD;IACrD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;IAC5D,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;IAErE,iCAAiC;IACjC,MAAM,cAAc,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAEpD,0CAA0C;IAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAC9B,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAC7B,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAEpD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,mHAAmH,CAAC,CAAC;QAClI,OAAO,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,CAAC;QACH,mDAAmD;QACnD,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ;aACnC,OAAO,CAAC,gBAAgB,EAAE,KAAK,CAAC;aAChC,OAAO,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;QAE7C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YACjC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK;YACzB,QAAQ,EAAE;gBACR,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,MAAM,EAAE;gBAClD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;aAClC;YACD,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW;YACrC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;SACnC,EAAE,qBAAqB,CAAC,CAAC;QAE1B,uCAAuC;QACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO;aAC7B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;aACtC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;aACxB,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,sBAAsB;QACtB,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAEtC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,6BAA6B,OAAO,CAAC,KAAK,KAAK,OAAO,CAAC,UAAU,QAAQ,QAAQ,IAAI,CAAC,CAAC;QACnG,EAAE,CAAC,SAAS,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;QAC9C,EAAE,CAAC,SAAS,CAAC,uBAAuB,EAAE,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE3E,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QAC1D,OAAO,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,UAAsB;IAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC;IACrC,IAAI,SAAS,GAAG,EAAE,CAAC;IAEnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;IACzE,CAAC;IAED,OAAO,SAAS,IAAI,mBAAmB,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,OAAe;IACnC,IAAI,CAAC;QACH,oCAAoC;QACpC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC/C,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACxC,OAAO;gBACL,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK,IAAI,SAAS;gBACzD,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,IAAI,MAAM,CAAC,UAAU,IAAI,GAAG;gBAClE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE;aACzD,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;IAC3E,CAAC;IAED,iCAAiC;IACjC,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAE1E,OAAO;QACL,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QACxC,UAAU,EAAE,GAAG;QACf,OAAO,EAAE,CAAC,sCAAsC,CAAC;KAClD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,UAAsB,EAAE,KAAa;IAC3D,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC;IAErC,6BAA6B;IAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CACrD,CAAC;IAEF,kCAAkC;IAClC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CACxD,CAAC;IAEF,oEAAoE;IACpE,MAAM,SAAS,GAAG,CAAC,SAAS,IAAI,aAAa,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAElE,OAAO;QACL,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QACxC,UAAU,EAAE,GAAG,EAAE,+BAA+B;QAChD,OAAO,EAAE;YACP,iCAAiC;YACjC,UAAU,KAAK,CAAC,MAAM,EAAE;YACxB,WAAW,SAAS,EAAE;YACtB,uBAAuB,aAAa,EAAE;SACvC;KACF,CAAC;AACJ,CAAC;AAED,8CAA8C;AAC9C,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC","sourcesContent":["/**\n * LLM-as-Judge for trajectory evaluation\n * Algorithm 2 from ReasoningBank paper\n */\n\nimport { readFileSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\nimport { loadConfig } from '../utils/config.js';\nimport { ModelRouter } from '../../router/router.js';\nimport type { Trajectory } from '../db/schema.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\n// Initialize ModelRouter once\nlet routerInstance: ModelRouter | null = null;\nfunction getRouter(): ModelRouter {\n if (!routerInstance) {\n routerInstance = new ModelRouter();\n }\n return routerInstance;\n}\n\nexport interface Verdict {\n label: 'Success' | 'Failure';\n confidence: number;\n reasons: string[];\n}\n\n/**\n * Judge a task trajectory using LLM evaluation\n */\nexport async function judgeTrajectory(\n trajectory: Trajectory,\n query: string,\n options: { useCache?: boolean } = {}\n): Promise<Verdict> {\n const config = loadConfig();\n const startTime = Date.now();\n\n console.log(`[INFO] Judging trajectory for query: ${query.substring(0, 100)}...`);\n\n // Load judge prompt template (relative to this file)\n const promptPath = join(__dirname, '../prompts/judge.json');\n const promptTemplate = JSON.parse(readFileSync(promptPath, 'utf-8'));\n\n // Format trajectory for judgment\n const trajectoryText = formatTrajectory(trajectory);\n\n // Check if we have any API key configured\n const hasApiKey = process.env.OPENROUTER_API_KEY ||\n process.env.ANTHROPIC_API_KEY ||\n process.env.GOOGLE_GEMINI_API_KEY;\n\n if (!hasApiKey) {\n console.warn('[WARN] No API key set (OPENROUTER_API_KEY, ANTHROPIC_API_KEY, or GOOGLE_GEMINI_API_KEY), using heuristic judgment');\n return heuristicJudge(trajectory, query);\n }\n\n try {\n // Call LLM API with judge prompt using ModelRouter\n const prompt = promptTemplate.template\n .replace('{{task_query}}', query)\n .replace('{{trajectory}}', trajectoryText);\n\n const router = getRouter();\n const response = await router.chat({\n model: config.judge.model,\n messages: [\n { role: 'system', content: promptTemplate.system },\n { role: 'user', content: prompt }\n ],\n temperature: config.judge.temperature,\n maxTokens: config.judge.max_tokens\n }, 'reasoningbank-judge');\n\n // Extract content from router response\n const content = response.content\n .filter(block => block.type === 'text')\n .map(block => block.text)\n .join('\\n');\n\n // Parse JSON response\n const verdict = parseVerdict(content);\n\n const duration = Date.now() - startTime;\n console.log(`[INFO] Judgment complete: ${verdict.label} (${verdict.confidence}) in ${duration}ms`);\n db.logMetric('rb.judge.latency_ms', duration);\n db.logMetric('rb.judge.success_rate', verdict.label === 'Success' ? 1 : 0);\n\n return verdict;\n } catch (error) {\n console.error('[ERROR] Judge failed:', error);\n console.warn('[WARN] Falling back to heuristic judgment');\n return heuristicJudge(trajectory, query);\n }\n}\n\n/**\n * Format trajectory for LLM consumption\n */\nfunction formatTrajectory(trajectory: Trajectory): string {\n const steps = trajectory.steps || [];\n let formatted = '';\n\n for (let i = 0; i < steps.length; i++) {\n formatted += `Step ${i + 1}: ${JSON.stringify(steps[i], null, 2)}\\n\\n`;\n }\n\n return formatted || 'No steps recorded';\n}\n\n/**\n * Parse verdict from LLM response\n */\nfunction parseVerdict(content: string): Verdict {\n try {\n // Try to extract JSON from response\n const jsonMatch = content.match(/\\{[\\s\\S]*\\}/);\n if (jsonMatch) {\n const parsed = JSON.parse(jsonMatch[0]);\n return {\n label: parsed.verdict?.label || parsed.label || 'Failure',\n confidence: parsed.verdict?.confidence || parsed.confidence || 0.5,\n reasons: parsed.verdict?.reasons || parsed.reasons || []\n };\n }\n } catch (error) {\n console.warn('[WARN] Failed to parse verdict JSON, using text analysis');\n }\n\n // Fallback: text-based detection\n const lower = content.toLowerCase();\n const isSuccess = lower.includes('success') && !lower.includes('failure');\n\n return {\n label: isSuccess ? 'Success' : 'Failure',\n confidence: 0.6,\n reasons: ['Parsed from text (JSON parse failed)']\n };\n}\n\n/**\n * Heuristic judgment when LLM is unavailable\n * Simple rule-based classification\n */\nfunction heuristicJudge(trajectory: Trajectory, query: string): Verdict {\n const steps = trajectory.steps || [];\n\n // Check for error indicators\n const hasErrors = steps.some(step =>\n JSON.stringify(step).toLowerCase().includes('error')\n );\n\n // Check for completion indicators\n const hasCompletion = steps.some(step =>\n JSON.stringify(step).toLowerCase().includes('complete')\n );\n\n // Simple heuristic: success if no errors and has completion markers\n const isSuccess = !hasErrors && hasCompletion && steps.length > 0;\n\n return {\n label: isSuccess ? 'Success' : 'Failure',\n confidence: 0.5, // Low confidence for heuristic\n reasons: [\n `Heuristic judgment (no API key)`,\n `Steps: ${steps.length}`,\n `Errors: ${hasErrors}`,\n `Completion markers: ${hasCompletion}`\n ]\n };\n}\n\n// Import db late to avoid circular dependency\nimport * as db from '../db/queries.js';\n"]}
|
|
1
|
+
{"version":3,"file":"judge.js","sourceRoot":"","sources":["../../../src/reasoningbank/core/judge.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * LLM-as-Judge for trajectory evaluation\n * Algorithm 2 from ReasoningBank paper\n */\n\nimport { readFileSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\nimport { loadConfig } from '../utils/config.js';\nimport { ModelRouter } from '../../router/router.js';\nimport type { Trajectory } from '../db/schema.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\n// Initialize ModelRouter once\nlet routerInstance: ModelRouter | null = null;\nfunction getRouter(): ModelRouter {\n if (!routerInstance) {\n routerInstance = new ModelRouter();\n }\n return routerInstance;\n}\n\nexport interface Verdict {\n label: 'Success' | 'Failure';\n confidence: number;\n reasons: string[];\n}\n\n/**\n * Judge a task trajectory using LLM evaluation\n */\nexport async function judgeTrajectory(\n trajectory: Trajectory,\n query: string,\n options: { useCache?: boolean } = {}\n): Promise<Verdict> {\n const config = loadConfig();\n const startTime = Date.now();\n\n console.error(`[INFO] Judging trajectory for query: ${query.substring(0, 100)}...`);\n\n // Load judge prompt template (relative to this file)\n const promptPath = join(__dirname, '../prompts/judge.json');\n const promptTemplate = JSON.parse(readFileSync(promptPath, 'utf-8'));\n\n // Format trajectory for judgment\n const trajectoryText = formatTrajectory(trajectory);\n\n // Check if we have any API key configured\n const hasApiKey = process.env.OPENROUTER_API_KEY ||\n process.env.ANTHROPIC_API_KEY ||\n process.env.GOOGLE_GEMINI_API_KEY;\n\n if (!hasApiKey) {\n console.warn('[WARN] No API key set (OPENROUTER_API_KEY, ANTHROPIC_API_KEY, or GOOGLE_GEMINI_API_KEY), using heuristic judgment');\n return heuristicJudge(trajectory, query);\n }\n\n try {\n // Call LLM API with judge prompt using ModelRouter\n const prompt = promptTemplate.template\n .replace('{{task_query}}', query)\n .replace('{{trajectory}}', trajectoryText);\n\n const router = getRouter();\n const response = await router.chat({\n model: config.judge.model,\n messages: [\n { role: 'system', content: promptTemplate.system },\n { role: 'user', content: prompt }\n ],\n temperature: config.judge.temperature,\n maxTokens: config.judge.max_tokens\n }, 'reasoningbank-judge');\n\n // Extract content from router response\n const content = response.content\n .filter(block => block.type === 'text')\n .map(block => block.text)\n .join('\\n');\n\n // Parse JSON response\n const verdict = parseVerdict(content);\n\n const duration = Date.now() - startTime;\n console.error(`[INFO] Judgment complete: ${verdict.label} (${verdict.confidence}) in ${duration}ms`);\n db.logMetric('rb.judge.latency_ms', duration);\n db.logMetric('rb.judge.success_rate', verdict.label === 'Success' ? 1 : 0);\n\n return verdict;\n } catch (error) {\n console.error('[ERROR] Judge failed:', error);\n console.warn('[WARN] Falling back to heuristic judgment');\n return heuristicJudge(trajectory, query);\n }\n}\n\n/**\n * Format trajectory for LLM consumption\n */\nfunction formatTrajectory(trajectory: Trajectory): string {\n const steps = trajectory.steps || [];\n let formatted = '';\n\n for (let i = 0; i < steps.length; i++) {\n formatted += `Step ${i + 1}: ${JSON.stringify(steps[i], null, 2)}\\n\\n`;\n }\n\n return formatted || 'No steps recorded';\n}\n\n/**\n * Parse verdict from LLM response\n */\nfunction parseVerdict(content: string): Verdict {\n try {\n // Try to extract JSON from response\n const jsonMatch = content.match(/\\{[\\s\\S]*\\}/);\n if (jsonMatch) {\n const parsed = JSON.parse(jsonMatch[0]);\n return {\n label: parsed.verdict?.label || parsed.label || 'Failure',\n confidence: parsed.verdict?.confidence || parsed.confidence || 0.5,\n reasons: parsed.verdict?.reasons || parsed.reasons || []\n };\n }\n } catch (error) {\n console.warn('[WARN] Failed to parse verdict JSON, using text analysis');\n }\n\n // Fallback: text-based detection\n const lower = content.toLowerCase();\n const isSuccess = lower.includes('success') && !lower.includes('failure');\n\n return {\n label: isSuccess ? 'Success' : 'Failure',\n confidence: 0.6,\n reasons: ['Parsed from text (JSON parse failed)']\n };\n}\n\n/**\n * Heuristic judgment when LLM is unavailable\n * Simple rule-based classification\n */\nfunction heuristicJudge(trajectory: Trajectory, query: string): Verdict {\n const steps = trajectory.steps || [];\n\n // Check for error indicators\n const hasErrors = steps.some(step =>\n JSON.stringify(step).toLowerCase().includes('error')\n );\n\n // Check for completion indicators\n const hasCompletion = steps.some(step =>\n JSON.stringify(step).toLowerCase().includes('complete')\n );\n\n // Simple heuristic: success if no errors and has completion markers\n const isSuccess = !hasErrors && hasCompletion && steps.length > 0;\n\n return {\n label: isSuccess ? 'Success' : 'Failure',\n confidence: 0.5, // Low confidence for heuristic\n reasons: [\n `Heuristic judgment (no API key)`,\n `Steps: ${steps.length}`,\n `Errors: ${hasErrors}`,\n `Completion markers: ${hasCompletion}`\n ]\n };\n}\n\n// Import db late to avoid circular dependency\nimport * as db from '../db/queries.js';\n"]}
|
|
@@ -35,7 +35,7 @@ export async function mattsParallel(taskFn, query, options = {}) {
|
|
|
35
35
|
const k = options.k || config.matts.parallel_k;
|
|
36
36
|
const runId = ulid();
|
|
37
37
|
const startTime = Date.now();
|
|
38
|
-
console.
|
|
38
|
+
console.error(`[INFO] Starting MaTTS parallel mode with k=${k}`);
|
|
39
39
|
// Store MaTTS run
|
|
40
40
|
db.storeMattsRun({
|
|
41
41
|
run_id: runId,
|
|
@@ -48,7 +48,7 @@ export async function mattsParallel(taskFn, query, options = {}) {
|
|
|
48
48
|
const trajectories = [];
|
|
49
49
|
// Execute k independent rollouts
|
|
50
50
|
for (let i = 0; i < k; i++) {
|
|
51
|
-
console.
|
|
51
|
+
console.error(`[INFO] MaTTS parallel rollout ${i + 1}/${k}`);
|
|
52
52
|
try {
|
|
53
53
|
const trajectory = await taskFn();
|
|
54
54
|
const verdict = await judgeTrajectory(trajectory, query);
|
|
@@ -79,7 +79,7 @@ export async function mattsParallel(taskFn, query, options = {}) {
|
|
|
79
79
|
const aggregatedMemories = await aggregateMemories(trajectories, query, options);
|
|
80
80
|
const successRate = trajectories.filter(t => t.verdict.label === 'Success').length / trajectories.length;
|
|
81
81
|
const duration = Date.now() - startTime;
|
|
82
|
-
console.
|
|
82
|
+
console.error(`[INFO] MaTTS parallel complete: ${trajectories.length} trajectories, ${successRate * 100}% success in ${duration}ms`);
|
|
83
83
|
db.logMetric('rb.matts.parallel.duration_ms', duration);
|
|
84
84
|
db.logMetric('rb.matts.parallel.success_rate', successRate);
|
|
85
85
|
db.logMetric('rb.matts.parallel.memories', aggregatedMemories.length);
|
|
@@ -102,7 +102,7 @@ export async function mattsSequential(taskFn, query, options = {}) {
|
|
|
102
102
|
const r = options.r || config.matts.sequential_r || config.matts.sequential_k;
|
|
103
103
|
const runId = ulid();
|
|
104
104
|
const startTime = Date.now();
|
|
105
|
-
console.
|
|
105
|
+
console.error(`[INFO] Starting MaTTS sequential mode with r=${r}`);
|
|
106
106
|
db.storeMattsRun({
|
|
107
107
|
run_id: runId,
|
|
108
108
|
task_id: options.taskId || 'matts-seq-' + runId,
|
|
@@ -115,7 +115,7 @@ export async function mattsSequential(taskFn, query, options = {}) {
|
|
|
115
115
|
let previousMemories = [];
|
|
116
116
|
// Iterative refinement
|
|
117
117
|
for (let i = 0; i < r; i++) {
|
|
118
|
-
console.
|
|
118
|
+
console.error(`[INFO] MaTTS sequential iteration ${i + 1}/${r}`);
|
|
119
119
|
try {
|
|
120
120
|
// Retrieve relevant memories (including from previous iterations)
|
|
121
121
|
const memories = await retrieveMemories(query, {
|
|
@@ -131,7 +131,7 @@ export async function mattsSequential(taskFn, query, options = {}) {
|
|
|
131
131
|
});
|
|
132
132
|
// If success and stop_on_success is true, break early
|
|
133
133
|
if (verdict.label === 'Success' && (config.matts.sequential_stop_on_success ?? true)) {
|
|
134
|
-
console.
|
|
134
|
+
console.error(`[INFO] Success achieved at iteration ${i + 1}, stopping early`);
|
|
135
135
|
break;
|
|
136
136
|
}
|
|
137
137
|
// Distill memories from this iteration
|
|
@@ -157,7 +157,7 @@ export async function mattsSequential(taskFn, query, options = {}) {
|
|
|
157
157
|
}
|
|
158
158
|
const successRate = trajectories.filter(t => t.verdict.label === 'Success').length / trajectories.length;
|
|
159
159
|
const duration = Date.now() - startTime;
|
|
160
|
-
console.
|
|
160
|
+
console.error(`[INFO] MaTTS sequential complete: ${trajectories.length} iterations, ${successRate * 100}% success in ${duration}ms`);
|
|
161
161
|
db.logMetric('rb.matts.sequential.duration_ms', duration);
|
|
162
162
|
db.logMetric('rb.matts.sequential.success_rate', successRate);
|
|
163
163
|
return {
|
|
@@ -174,7 +174,7 @@ export async function mattsSequential(taskFn, query, options = {}) {
|
|
|
174
174
|
* Aggregate memories from multiple trajectories using self-contrast
|
|
175
175
|
*/
|
|
176
176
|
async function aggregateMemories(trajectories, query, options) {
|
|
177
|
-
console.
|
|
177
|
+
console.error('[INFO] Aggregating memories via self-contrast');
|
|
178
178
|
// Load aggregation prompt
|
|
179
179
|
const promptPath = join(__dirname, '../prompts', 'matts-aggregate.json');
|
|
180
180
|
const promptTemplate = JSON.parse(readFileSync(promptPath, 'utf-8'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"matts.js","sourceRoot":"","sources":["../../../src/reasoningbank/core/matts.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * MaTTS: Memory-aware Test-Time Scaling\n * Algorithm 5 from ReasoningBank paper\n *\n * Two modes:\n * - Parallel: k independent rollouts with self-contrast aggregation\n * - Sequential: r iterative refinements with check-and-correct\n */\n\nimport { readFileSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\nimport { ulid } from 'ulid';\nimport { loadConfig } from '../utils/config.js';\nimport { retrieveMemories } from './retrieve.js';\nimport { judgeTrajectory } from './judge.js';\nimport { distillMemories } from './distill.js';\nimport { ModelRouter } from '../../router/router.js';\nimport * as db from '../db/queries.js';\nimport type { Trajectory } from '../db/schema.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\n// Initialize ModelRouter once\nlet routerInstance: ModelRouter | null = null;\nfunction getRouter(): ModelRouter {\n if (!routerInstance) {\n routerInstance = new ModelRouter();\n }\n return routerInstance;\n}\n\nexport interface MattsResult {\n runId: string;\n mode: 'parallel' | 'sequential';\n k: number;\n trajectories: Array<{\n id: string;\n verdict: { label: string; confidence: number };\n trajectory: Trajectory;\n }>;\n aggregatedMemories: string[];\n successRate: number;\n duration: number;\n}\n\n/**\n * Run MaTTS in parallel mode\n * Execute k independent rollouts and aggregate via self-contrast\n */\nexport async function mattsParallel(\n taskFn: () => Promise<Trajectory>,\n query: string,\n options: { k?: number; taskId?: string; agentId?: string; domain?: string } = {}\n): Promise<MattsResult> {\n const config = loadConfig();\n const k = options.k || config.matts.parallel_k;\n const runId = ulid();\n const startTime = Date.now();\n\n console.log(`[INFO] Starting MaTTS parallel mode with k=${k}`);\n\n // Store MaTTS run\n db.storeMattsRun({\n run_id: runId,\n task_id: options.taskId || 'matts-' + runId,\n mode: 'parallel',\n k,\n status: 'running',\n summary: undefined\n });\n\n const trajectories: MattsResult['trajectories'] = [];\n\n // Execute k independent rollouts\n for (let i = 0; i < k; i++) {\n console.log(`[INFO] MaTTS parallel rollout ${i + 1}/${k}`);\n\n try {\n const trajectory = await taskFn();\n const verdict = await judgeTrajectory(trajectory, query);\n\n trajectories.push({\n id: ulid(),\n verdict,\n trajectory\n });\n\n // Store trajectory\n db.storeTrajectory({\n task_id: options.taskId || 'matts-' + runId,\n agent_id: options.agentId || 'matts-agent',\n query,\n trajectory_json: JSON.stringify(trajectory),\n started_at: new Date().toISOString(),\n ended_at: new Date().toISOString(),\n judge_label: verdict.label,\n judge_conf: verdict.confidence,\n judge_reasons: JSON.stringify(verdict.reasons),\n matts_run_id: runId\n });\n } catch (error) {\n console.error(`[ERROR] MaTTS rollout ${i + 1} failed:`, error);\n }\n }\n\n // Aggregate memories via self-contrast\n const aggregatedMemories = await aggregateMemories(trajectories, query, options);\n\n const successRate = trajectories.filter(t => t.verdict.label === 'Success').length / trajectories.length;\n const duration = Date.now() - startTime;\n\n console.log(`[INFO] MaTTS parallel complete: ${trajectories.length} trajectories, ${successRate * 100}% success in ${duration}ms`);\n\n db.logMetric('rb.matts.parallel.duration_ms', duration);\n db.logMetric('rb.matts.parallel.success_rate', successRate);\n db.logMetric('rb.matts.parallel.memories', aggregatedMemories.length);\n\n return {\n runId,\n mode: 'parallel',\n k,\n trajectories,\n aggregatedMemories,\n successRate,\n duration\n };\n}\n\n/**\n * Run MaTTS in sequential mode\n * Iterative refinement with check-and-correct\n */\nexport async function mattsSequential(\n taskFn: (memories: any[]) => Promise<Trajectory>,\n query: string,\n options: { r?: number; taskId?: string; agentId?: string; domain?: string } = {}\n): Promise<MattsResult> {\n const config = loadConfig();\n const r = options.r || config.matts.sequential_r || config.matts.sequential_k;\n const runId = ulid();\n const startTime = Date.now();\n\n console.log(`[INFO] Starting MaTTS sequential mode with r=${r}`);\n\n db.storeMattsRun({\n run_id: runId,\n task_id: options.taskId || 'matts-seq-' + runId,\n mode: 'sequential',\n k: r,\n status: 'running',\n summary: undefined\n });\n\n const trajectories: MattsResult['trajectories'] = [];\n let previousMemories: any[] = [];\n\n // Iterative refinement\n for (let i = 0; i < r; i++) {\n console.log(`[INFO] MaTTS sequential iteration ${i + 1}/${r}`);\n\n try {\n // Retrieve relevant memories (including from previous iterations)\n const memories = await retrieveMemories(query, {\n domain: options.domain\n });\n\n // Execute with memories\n const trajectory = await taskFn([...memories, ...previousMemories]);\n const verdict = await judgeTrajectory(trajectory, query);\n\n trajectories.push({\n id: ulid(),\n verdict,\n trajectory\n });\n\n // If success and stop_on_success is true, break early\n if (verdict.label === 'Success' && (config.matts.sequential_stop_on_success ?? true)) {\n console.log(`[INFO] Success achieved at iteration ${i + 1}, stopping early`);\n break;\n }\n\n // Distill memories from this iteration\n const newMemories = await distillMemories(trajectory, verdict, query, options);\n previousMemories = [...previousMemories, ...newMemories];\n\n // Store trajectory\n db.storeTrajectory({\n task_id: options.taskId || 'matts-seq-' + runId,\n agent_id: options.agentId || 'matts-agent',\n query,\n trajectory_json: JSON.stringify(trajectory),\n started_at: new Date().toISOString(),\n ended_at: new Date().toISOString(),\n judge_label: verdict.label,\n judge_conf: verdict.confidence,\n judge_reasons: JSON.stringify(verdict.reasons),\n matts_run_id: runId\n });\n } catch (error) {\n console.error(`[ERROR] MaTTS iteration ${i + 1} failed:`, error);\n }\n }\n\n const successRate = trajectories.filter(t => t.verdict.label === 'Success').length / trajectories.length;\n const duration = Date.now() - startTime;\n\n console.log(`[INFO] MaTTS sequential complete: ${trajectories.length} iterations, ${successRate * 100}% success in ${duration}ms`);\n\n db.logMetric('rb.matts.sequential.duration_ms', duration);\n db.logMetric('rb.matts.sequential.success_rate', successRate);\n\n return {\n runId,\n mode: 'sequential',\n k: r,\n trajectories,\n aggregatedMemories: previousMemories,\n successRate,\n duration\n };\n}\n\n/**\n * Aggregate memories from multiple trajectories using self-contrast\n */\nasync function aggregateMemories(\n trajectories: MattsResult['trajectories'],\n query: string,\n options: any\n): Promise<string[]> {\n console.log('[INFO] Aggregating memories via self-contrast');\n\n // Load aggregation prompt\n const promptPath = join(__dirname, '../prompts', 'matts-aggregate.json');\n const promptTemplate = JSON.parse(readFileSync(promptPath, 'utf-8'));\n\n // Format trajectories for comparison\n const trajectoryTexts = trajectories.map((t, i) => ({\n id: t.id,\n label: t.verdict.label,\n confidence: t.verdict.confidence,\n steps: JSON.stringify(t.trajectory.steps || [], null, 2)\n }));\n\n // Check if we have any API key configured\n const hasApiKey = process.env.OPENROUTER_API_KEY ||\n process.env.ANTHROPIC_API_KEY ||\n process.env.GOOGLE_GEMINI_API_KEY;\n\n if (!hasApiKey) {\n console.warn('[WARN] No API key set, skipping aggregation');\n return [];\n }\n\n try {\n const prompt = promptTemplate.template\n .replace('{{k}}', String(trajectories.length))\n .replace('{{task_query}}', query)\n .replace('{{trajectories}}', JSON.stringify(trajectoryTexts, null, 2));\n\n // Use ModelRouter for multi-provider support\n const router = getRouter();\n const response = await router.chat({\n model: promptTemplate.model,\n messages: [\n { role: 'system', content: promptTemplate.system },\n { role: 'user', content: prompt }\n ],\n temperature: promptTemplate.temperature,\n maxTokens: promptTemplate.max_tokens\n }, 'reasoningbank-matts-aggregate');\n\n // Extract content from router response\n const content = response.content\n .filter(block => block.type === 'text')\n .map(block => block.text)\n .join('\\n');\n\n // Parse and store aggregated memories\n const jsonMatch = content.match(/\\{[\\s\\S]*\\}/);\n if (jsonMatch) {\n const parsed = JSON.parse(jsonMatch[0]);\n const memories = parsed.memories || [];\n\n // Store with boosted confidence\n const memoryIds: string[] = [];\n for (const mem of memories) {\n const verdict = { label: 'Success' as const, confidence: 0.9, reasons: [] };\n const ids = await distillMemories(\n { steps: [] },\n verdict,\n query,\n options\n );\n memoryIds.push(...ids);\n }\n\n return memoryIds;\n }\n } catch (error) {\n console.error('[ERROR] Memory aggregation failed:', error);\n }\n\n return [];\n}\n"]}
|
|
1
|
+
{"version":3,"file":"matts.js","sourceRoot":"","sources":["../../../src/reasoningbank/core/matts.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * MaTTS: Memory-aware Test-Time Scaling\n * Algorithm 5 from ReasoningBank paper\n *\n * Two modes:\n * - Parallel: k independent rollouts with self-contrast aggregation\n * - Sequential: r iterative refinements with check-and-correct\n */\n\nimport { readFileSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\nimport { ulid } from 'ulid';\nimport { loadConfig } from '../utils/config.js';\nimport { retrieveMemories } from './retrieve.js';\nimport { judgeTrajectory } from './judge.js';\nimport { distillMemories } from './distill.js';\nimport { ModelRouter } from '../../router/router.js';\nimport * as db from '../db/queries.js';\nimport type { Trajectory } from '../db/schema.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\n// Initialize ModelRouter once\nlet routerInstance: ModelRouter | null = null;\nfunction getRouter(): ModelRouter {\n if (!routerInstance) {\n routerInstance = new ModelRouter();\n }\n return routerInstance;\n}\n\nexport interface MattsResult {\n runId: string;\n mode: 'parallel' | 'sequential';\n k: number;\n trajectories: Array<{\n id: string;\n verdict: { label: string; confidence: number };\n trajectory: Trajectory;\n }>;\n aggregatedMemories: string[];\n successRate: number;\n duration: number;\n}\n\n/**\n * Run MaTTS in parallel mode\n * Execute k independent rollouts and aggregate via self-contrast\n */\nexport async function mattsParallel(\n taskFn: () => Promise<Trajectory>,\n query: string,\n options: { k?: number; taskId?: string; agentId?: string; domain?: string } = {}\n): Promise<MattsResult> {\n const config = loadConfig();\n const k = options.k || config.matts.parallel_k;\n const runId = ulid();\n const startTime = Date.now();\n\n console.error(`[INFO] Starting MaTTS parallel mode with k=${k}`);\n\n // Store MaTTS run\n db.storeMattsRun({\n run_id: runId,\n task_id: options.taskId || 'matts-' + runId,\n mode: 'parallel',\n k,\n status: 'running',\n summary: undefined\n });\n\n const trajectories: MattsResult['trajectories'] = [];\n\n // Execute k independent rollouts\n for (let i = 0; i < k; i++) {\n console.error(`[INFO] MaTTS parallel rollout ${i + 1}/${k}`);\n\n try {\n const trajectory = await taskFn();\n const verdict = await judgeTrajectory(trajectory, query);\n\n trajectories.push({\n id: ulid(),\n verdict,\n trajectory\n });\n\n // Store trajectory\n db.storeTrajectory({\n task_id: options.taskId || 'matts-' + runId,\n agent_id: options.agentId || 'matts-agent',\n query,\n trajectory_json: JSON.stringify(trajectory),\n started_at: new Date().toISOString(),\n ended_at: new Date().toISOString(),\n judge_label: verdict.label,\n judge_conf: verdict.confidence,\n judge_reasons: JSON.stringify(verdict.reasons),\n matts_run_id: runId\n });\n } catch (error) {\n console.error(`[ERROR] MaTTS rollout ${i + 1} failed:`, error);\n }\n }\n\n // Aggregate memories via self-contrast\n const aggregatedMemories = await aggregateMemories(trajectories, query, options);\n\n const successRate = trajectories.filter(t => t.verdict.label === 'Success').length / trajectories.length;\n const duration = Date.now() - startTime;\n\n console.error(`[INFO] MaTTS parallel complete: ${trajectories.length} trajectories, ${successRate * 100}% success in ${duration}ms`);\n\n db.logMetric('rb.matts.parallel.duration_ms', duration);\n db.logMetric('rb.matts.parallel.success_rate', successRate);\n db.logMetric('rb.matts.parallel.memories', aggregatedMemories.length);\n\n return {\n runId,\n mode: 'parallel',\n k,\n trajectories,\n aggregatedMemories,\n successRate,\n duration\n };\n}\n\n/**\n * Run MaTTS in sequential mode\n * Iterative refinement with check-and-correct\n */\nexport async function mattsSequential(\n taskFn: (memories: any[]) => Promise<Trajectory>,\n query: string,\n options: { r?: number; taskId?: string; agentId?: string; domain?: string } = {}\n): Promise<MattsResult> {\n const config = loadConfig();\n const r = options.r || config.matts.sequential_r || config.matts.sequential_k;\n const runId = ulid();\n const startTime = Date.now();\n\n console.error(`[INFO] Starting MaTTS sequential mode with r=${r}`);\n\n db.storeMattsRun({\n run_id: runId,\n task_id: options.taskId || 'matts-seq-' + runId,\n mode: 'sequential',\n k: r,\n status: 'running',\n summary: undefined\n });\n\n const trajectories: MattsResult['trajectories'] = [];\n let previousMemories: any[] = [];\n\n // Iterative refinement\n for (let i = 0; i < r; i++) {\n console.error(`[INFO] MaTTS sequential iteration ${i + 1}/${r}`);\n\n try {\n // Retrieve relevant memories (including from previous iterations)\n const memories = await retrieveMemories(query, {\n domain: options.domain\n });\n\n // Execute with memories\n const trajectory = await taskFn([...memories, ...previousMemories]);\n const verdict = await judgeTrajectory(trajectory, query);\n\n trajectories.push({\n id: ulid(),\n verdict,\n trajectory\n });\n\n // If success and stop_on_success is true, break early\n if (verdict.label === 'Success' && (config.matts.sequential_stop_on_success ?? true)) {\n console.error(`[INFO] Success achieved at iteration ${i + 1}, stopping early`);\n break;\n }\n\n // Distill memories from this iteration\n const newMemories = await distillMemories(trajectory, verdict, query, options);\n previousMemories = [...previousMemories, ...newMemories];\n\n // Store trajectory\n db.storeTrajectory({\n task_id: options.taskId || 'matts-seq-' + runId,\n agent_id: options.agentId || 'matts-agent',\n query,\n trajectory_json: JSON.stringify(trajectory),\n started_at: new Date().toISOString(),\n ended_at: new Date().toISOString(),\n judge_label: verdict.label,\n judge_conf: verdict.confidence,\n judge_reasons: JSON.stringify(verdict.reasons),\n matts_run_id: runId\n });\n } catch (error) {\n console.error(`[ERROR] MaTTS iteration ${i + 1} failed:`, error);\n }\n }\n\n const successRate = trajectories.filter(t => t.verdict.label === 'Success').length / trajectories.length;\n const duration = Date.now() - startTime;\n\n console.error(`[INFO] MaTTS sequential complete: ${trajectories.length} iterations, ${successRate * 100}% success in ${duration}ms`);\n\n db.logMetric('rb.matts.sequential.duration_ms', duration);\n db.logMetric('rb.matts.sequential.success_rate', successRate);\n\n return {\n runId,\n mode: 'sequential',\n k: r,\n trajectories,\n aggregatedMemories: previousMemories,\n successRate,\n duration\n };\n}\n\n/**\n * Aggregate memories from multiple trajectories using self-contrast\n */\nasync function aggregateMemories(\n trajectories: MattsResult['trajectories'],\n query: string,\n options: any\n): Promise<string[]> {\n console.error('[INFO] Aggregating memories via self-contrast');\n\n // Load aggregation prompt\n const promptPath = join(__dirname, '../prompts', 'matts-aggregate.json');\n const promptTemplate = JSON.parse(readFileSync(promptPath, 'utf-8'));\n\n // Format trajectories for comparison\n const trajectoryTexts = trajectories.map((t, i) => ({\n id: t.id,\n label: t.verdict.label,\n confidence: t.verdict.confidence,\n steps: JSON.stringify(t.trajectory.steps || [], null, 2)\n }));\n\n // Check if we have any API key configured\n const hasApiKey = process.env.OPENROUTER_API_KEY ||\n process.env.ANTHROPIC_API_KEY ||\n process.env.GOOGLE_GEMINI_API_KEY;\n\n if (!hasApiKey) {\n console.warn('[WARN] No API key set, skipping aggregation');\n return [];\n }\n\n try {\n const prompt = promptTemplate.template\n .replace('{{k}}', String(trajectories.length))\n .replace('{{task_query}}', query)\n .replace('{{trajectories}}', JSON.stringify(trajectoryTexts, null, 2));\n\n // Use ModelRouter for multi-provider support\n const router = getRouter();\n const response = await router.chat({\n model: promptTemplate.model,\n messages: [\n { role: 'system', content: promptTemplate.system },\n { role: 'user', content: prompt }\n ],\n temperature: promptTemplate.temperature,\n maxTokens: promptTemplate.max_tokens\n }, 'reasoningbank-matts-aggregate');\n\n // Extract content from router response\n const content = response.content\n .filter(block => block.type === 'text')\n .map(block => block.text)\n .join('\\n');\n\n // Parse and store aggregated memories\n const jsonMatch = content.match(/\\{[\\s\\S]*\\}/);\n if (jsonMatch) {\n const parsed = JSON.parse(jsonMatch[0]);\n const memories = parsed.memories || [];\n\n // Store with boosted confidence\n const memoryIds: string[] = [];\n for (const mem of memories) {\n const verdict = { label: 'Success' as const, confidence: 0.9, reasons: [] };\n const ids = await distillMemories(\n { steps: [] },\n verdict,\n query,\n options\n );\n memoryIds.push(...ids);\n }\n\n return memoryIds;\n }\n } catch (error) {\n console.error('[ERROR] Memory aggregation failed:', error);\n }\n\n return [];\n}\n"]}
|