@kilnai/core 0.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/dist/agents/circuit-breaker.d.ts +26 -0
- package/dist/agents/circuit-breaker.d.ts.map +1 -0
- package/dist/agents/circuit-breaker.js +90 -0
- package/dist/agents/circuit-breaker.js.map +1 -0
- package/dist/agents/context-compressor.d.ts +13 -0
- package/dist/agents/context-compressor.d.ts.map +1 -0
- package/dist/agents/context-compressor.js +21 -0
- package/dist/agents/context-compressor.js.map +1 -0
- package/dist/agents/index.d.ts +68 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/index.js +13 -0
- package/dist/agents/index.js.map +1 -0
- package/dist/agents/infrastructure/anthropic.d.ts +24 -0
- package/dist/agents/infrastructure/anthropic.d.ts.map +1 -0
- package/dist/agents/infrastructure/anthropic.js +226 -0
- package/dist/agents/infrastructure/anthropic.js.map +1 -0
- package/dist/agents/infrastructure/deepseek.d.ts +10 -0
- package/dist/agents/infrastructure/deepseek.d.ts.map +1 -0
- package/dist/agents/infrastructure/deepseek.js +14 -0
- package/dist/agents/infrastructure/deepseek.js.map +1 -0
- package/dist/agents/infrastructure/ollama.d.ts +20 -0
- package/dist/agents/infrastructure/ollama.d.ts.map +1 -0
- package/dist/agents/infrastructure/ollama.js +128 -0
- package/dist/agents/infrastructure/ollama.js.map +1 -0
- package/dist/agents/infrastructure/openai-compat.d.ts +25 -0
- package/dist/agents/infrastructure/openai-compat.d.ts.map +1 -0
- package/dist/agents/infrastructure/openai-compat.js +211 -0
- package/dist/agents/infrastructure/openai-compat.js.map +1 -0
- package/dist/agents/infrastructure/openai.d.ts +12 -0
- package/dist/agents/infrastructure/openai.d.ts.map +1 -0
- package/dist/agents/infrastructure/openai.js +16 -0
- package/dist/agents/infrastructure/openai.js.map +1 -0
- package/dist/agents/infrastructure/retry.d.ts +10 -0
- package/dist/agents/infrastructure/retry.d.ts.map +1 -0
- package/dist/agents/infrastructure/retry.js +22 -0
- package/dist/agents/infrastructure/retry.js.map +1 -0
- package/dist/agents/mcp-client.d.ts +22 -0
- package/dist/agents/mcp-client.d.ts.map +1 -0
- package/dist/agents/mcp-client.js +104 -0
- package/dist/agents/mcp-client.js.map +1 -0
- package/dist/agents/model-pricing.d.ts +9 -0
- package/dist/agents/model-pricing.d.ts.map +1 -0
- package/dist/agents/model-pricing.js +17 -0
- package/dist/agents/model-pricing.js.map +1 -0
- package/dist/agents/provider-registry.d.ts +25 -0
- package/dist/agents/provider-registry.d.ts.map +1 -0
- package/dist/agents/provider-registry.js +62 -0
- package/dist/agents/provider-registry.js.map +1 -0
- package/dist/agents/tool-cache.d.ts +13 -0
- package/dist/agents/tool-cache.d.ts.map +1 -0
- package/dist/agents/tool-cache.js +52 -0
- package/dist/agents/tool-cache.js.map +1 -0
- package/dist/agents/tool-rag.d.ts +15 -0
- package/dist/agents/tool-rag.d.ts.map +1 -0
- package/dist/agents/tool-rag.js +92 -0
- package/dist/agents/tool-rag.js.map +1 -0
- package/dist/agents/tool-registry.d.ts +29 -0
- package/dist/agents/tool-registry.d.ts.map +1 -0
- package/dist/agents/tool-registry.js +64 -0
- package/dist/agents/tool-registry.js.map +1 -0
- package/dist/cost/cost-tracker.d.ts +27 -0
- package/dist/cost/cost-tracker.d.ts.map +1 -0
- package/dist/cost/cost-tracker.js +103 -0
- package/dist/cost/cost-tracker.js.map +1 -0
- package/dist/cost/index.d.ts +30 -0
- package/dist/cost/index.d.ts.map +1 -0
- package/dist/cost/index.js +2 -0
- package/dist/cost/index.js.map +1 -0
- package/dist/domain/domain-package-adapter.d.ts +13 -0
- package/dist/domain/domain-package-adapter.d.ts.map +1 -0
- package/dist/domain/domain-package-adapter.js +66 -0
- package/dist/domain/domain-package-adapter.js.map +1 -0
- package/dist/domain/domain-registry.d.ts +26 -0
- package/dist/domain/domain-registry.d.ts.map +1 -0
- package/dist/domain/domain-registry.js +119 -0
- package/dist/domain/domain-registry.js.map +1 -0
- package/dist/domain/index.d.ts +22 -0
- package/dist/domain/index.d.ts.map +1 -0
- package/dist/domain/index.js +30 -0
- package/dist/domain/index.js.map +1 -0
- package/dist/domain/yaml-parser.d.ts +18 -0
- package/dist/domain/yaml-parser.d.ts.map +1 -0
- package/dist/domain/yaml-parser.js +47 -0
- package/dist/domain/yaml-parser.js.map +1 -0
- package/dist/domain/yaml-schema.d.ts +26 -0
- package/dist/domain/yaml-schema.d.ts.map +1 -0
- package/dist/domain/yaml-schema.js +66 -0
- package/dist/domain/yaml-schema.js.map +1 -0
- package/dist/engine/composites/app.d.ts +39 -0
- package/dist/engine/composites/app.d.ts.map +1 -0
- package/dist/engine/composites/app.js +125 -0
- package/dist/engine/composites/app.js.map +1 -0
- package/dist/engine/composites/router.d.ts +20 -0
- package/dist/engine/composites/router.d.ts.map +1 -0
- package/dist/engine/composites/router.js +31 -0
- package/dist/engine/composites/router.js.map +1 -0
- package/dist/engine/composites/team.d.ts +36 -0
- package/dist/engine/composites/team.d.ts.map +1 -0
- package/dist/engine/composites/team.js +100 -0
- package/dist/engine/composites/team.js.map +1 -0
- package/dist/engine/domain/a2a-config.d.ts +53 -0
- package/dist/engine/domain/a2a-config.d.ts.map +1 -0
- package/dist/engine/domain/a2a-config.js +32 -0
- package/dist/engine/domain/a2a-config.js.map +1 -0
- package/dist/engine/domain/agent.d.ts +18 -0
- package/dist/engine/domain/agent.d.ts.map +1 -0
- package/dist/engine/domain/agent.js +4 -0
- package/dist/engine/domain/agent.js.map +1 -0
- package/dist/engine/domain/capability.d.ts +24 -0
- package/dist/engine/domain/capability.d.ts.map +1 -0
- package/dist/engine/domain/capability.js +3 -0
- package/dist/engine/domain/capability.js.map +1 -0
- package/dist/engine/domain/channel.d.ts +37 -0
- package/dist/engine/domain/channel.d.ts.map +1 -0
- package/dist/engine/domain/channel.js +4 -0
- package/dist/engine/domain/channel.js.map +1 -0
- package/dist/engine/domain/chunker.d.ts +22 -0
- package/dist/engine/domain/chunker.d.ts.map +1 -0
- package/dist/engine/domain/chunker.js +3 -0
- package/dist/engine/domain/chunker.js.map +1 -0
- package/dist/engine/domain/content.d.ts +57 -0
- package/dist/engine/domain/content.d.ts.map +1 -0
- package/dist/engine/domain/content.js +63 -0
- package/dist/engine/domain/content.js.map +1 -0
- package/dist/engine/domain/cron.d.ts +15 -0
- package/dist/engine/domain/cron.d.ts.map +1 -0
- package/dist/engine/domain/cron.js +114 -0
- package/dist/engine/domain/cron.js.map +1 -0
- package/dist/engine/domain/embedding.d.ts +9 -0
- package/dist/engine/domain/embedding.d.ts.map +1 -0
- package/dist/engine/domain/embedding.js +4 -0
- package/dist/engine/domain/embedding.js.map +1 -0
- package/dist/engine/domain/eval-config.d.ts +36 -0
- package/dist/engine/domain/eval-config.d.ts.map +1 -0
- package/dist/engine/domain/eval-config.js +155 -0
- package/dist/engine/domain/eval-config.js.map +1 -0
- package/dist/engine/domain/knowledge-config.d.ts +34 -0
- package/dist/engine/domain/knowledge-config.d.ts.map +1 -0
- package/dist/engine/domain/knowledge-config.js +62 -0
- package/dist/engine/domain/knowledge-config.js.map +1 -0
- package/dist/engine/domain/mcp-config.d.ts +15 -0
- package/dist/engine/domain/mcp-config.d.ts.map +1 -0
- package/dist/engine/domain/mcp-config.js +26 -0
- package/dist/engine/domain/mcp-config.js.map +1 -0
- package/dist/engine/domain/memory.d.ts +17 -0
- package/dist/engine/domain/memory.d.ts.map +1 -0
- package/dist/engine/domain/memory.js +4 -0
- package/dist/engine/domain/memory.js.map +1 -0
- package/dist/engine/domain/modality.d.ts +5 -0
- package/dist/engine/domain/modality.d.ts.map +1 -0
- package/dist/engine/domain/modality.js +19 -0
- package/dist/engine/domain/modality.js.map +1 -0
- package/dist/engine/domain/orchestrator-config.d.ts +11 -0
- package/dist/engine/domain/orchestrator-config.d.ts.map +1 -0
- package/dist/engine/domain/orchestrator-config.js +4 -0
- package/dist/engine/domain/orchestrator-config.js.map +1 -0
- package/dist/engine/domain/prompt-assembler.d.ts +32 -0
- package/dist/engine/domain/prompt-assembler.d.ts.map +1 -0
- package/dist/engine/domain/prompt-assembler.js +60 -0
- package/dist/engine/domain/prompt-assembler.js.map +1 -0
- package/dist/engine/domain/safety-config.d.ts +51 -0
- package/dist/engine/domain/safety-config.d.ts.map +1 -0
- package/dist/engine/domain/safety-config.js +74 -0
- package/dist/engine/domain/safety-config.js.map +1 -0
- package/dist/engine/domain/speech-config.d.ts +53 -0
- package/dist/engine/domain/speech-config.d.ts.map +1 -0
- package/dist/engine/domain/speech-config.js +26 -0
- package/dist/engine/domain/speech-config.js.map +1 -0
- package/dist/engine/domain/task.d.ts +16 -0
- package/dist/engine/domain/task.d.ts.map +1 -0
- package/dist/engine/domain/task.js +4 -0
- package/dist/engine/domain/task.js.map +1 -0
- package/dist/engine/domain/tool-selection-config.d.ts +12 -0
- package/dist/engine/domain/tool-selection-config.d.ts.map +1 -0
- package/dist/engine/domain/tool-selection-config.js +22 -0
- package/dist/engine/domain/tool-selection-config.js.map +1 -0
- package/dist/engine/domain/trigger.d.ts +43 -0
- package/dist/engine/domain/trigger.d.ts.map +1 -0
- package/dist/engine/domain/trigger.js +39 -0
- package/dist/engine/domain/trigger.js.map +1 -0
- package/dist/engine/domain/vector-store.d.ts +27 -0
- package/dist/engine/domain/vector-store.d.ts.map +1 -0
- package/dist/engine/domain/vector-store.js +3 -0
- package/dist/engine/domain/vector-store.js.map +1 -0
- package/dist/engine/domain/workflow.d.ts +11 -0
- package/dist/engine/domain/workflow.d.ts.map +1 -0
- package/dist/engine/domain/workflow.js +4 -0
- package/dist/engine/domain/workflow.js.map +1 -0
- package/dist/engine/error-catalog.d.ts +8 -0
- package/dist/engine/error-catalog.d.ts.map +1 -0
- package/dist/engine/error-catalog.js +335 -0
- package/dist/engine/error-catalog.js.map +1 -0
- package/dist/engine/errors.d.ts +18 -0
- package/dist/engine/errors.d.ts.map +1 -0
- package/dist/engine/errors.js +20 -0
- package/dist/engine/errors.js.map +1 -0
- package/dist/engine/gateway/delegation-config.d.ts +52 -0
- package/dist/engine/gateway/delegation-config.d.ts.map +1 -0
- package/dist/engine/gateway/delegation-config.js +48 -0
- package/dist/engine/gateway/delegation-config.js.map +1 -0
- package/dist/engine/gateway/gateway-config.d.ts +33 -0
- package/dist/engine/gateway/gateway-config.d.ts.map +1 -0
- package/dist/engine/gateway/gateway-config.js +61 -0
- package/dist/engine/gateway/gateway-config.js.map +1 -0
- package/dist/engine/gateway/gateway-loader.d.ts +10 -0
- package/dist/engine/gateway/gateway-loader.d.ts.map +1 -0
- package/dist/engine/gateway/gateway-loader.js +150 -0
- package/dist/engine/gateway/gateway-loader.js.map +1 -0
- package/dist/engine/gateway/mode-b-config.d.ts +44 -0
- package/dist/engine/gateway/mode-b-config.d.ts.map +1 -0
- package/dist/engine/gateway/mode-b-config.js +45 -0
- package/dist/engine/gateway/mode-b-config.js.map +1 -0
- package/dist/engine/gateway/mode-b-loader.d.ts +14 -0
- package/dist/engine/gateway/mode-b-loader.d.ts.map +1 -0
- package/dist/engine/gateway/mode-b-loader.js +104 -0
- package/dist/engine/gateway/mode-b-loader.js.map +1 -0
- package/dist/engine/gateway/observability-config.d.ts +19 -0
- package/dist/engine/gateway/observability-config.d.ts.map +1 -0
- package/dist/engine/gateway/observability-config.js +27 -0
- package/dist/engine/gateway/observability-config.js.map +1 -0
- package/dist/engine/gateway/tenant-config.d.ts +59 -0
- package/dist/engine/gateway/tenant-config.d.ts.map +1 -0
- package/dist/engine/gateway/tenant-config.js +44 -0
- package/dist/engine/gateway/tenant-config.js.map +1 -0
- package/dist/engine/index.d.ts +49 -0
- package/dist/engine/index.d.ts.map +1 -0
- package/dist/engine/index.js +27 -0
- package/dist/engine/index.js.map +1 -0
- package/dist/engine/loader/app-loader.d.ts +18 -0
- package/dist/engine/loader/app-loader.d.ts.map +1 -0
- package/dist/engine/loader/app-loader.js +947 -0
- package/dist/engine/loader/app-loader.js.map +1 -0
- package/dist/engine/loader/preset-loader.d.ts +13 -0
- package/dist/engine/loader/preset-loader.d.ts.map +1 -0
- package/dist/engine/loader/preset-loader.js +51 -0
- package/dist/engine/loader/preset-loader.js.map +1 -0
- package/dist/eval/dataset-loader.d.ts +3 -0
- package/dist/eval/dataset-loader.d.ts.map +1 -0
- package/dist/eval/dataset-loader.js +70 -0
- package/dist/eval/dataset-loader.js.map +1 -0
- package/dist/eval/experiment-comparator.d.ts +16 -0
- package/dist/eval/experiment-comparator.d.ts.map +1 -0
- package/dist/eval/experiment-comparator.js +34 -0
- package/dist/eval/experiment-comparator.js.map +1 -0
- package/dist/eval/experiment-runner.d.ts +20 -0
- package/dist/eval/experiment-runner.d.ts.map +1 -0
- package/dist/eval/experiment-runner.js +54 -0
- package/dist/eval/experiment-runner.js.map +1 -0
- package/dist/eval/index.d.ts +21 -0
- package/dist/eval/index.d.ts.map +1 -0
- package/dist/eval/index.js +19 -0
- package/dist/eval/index.js.map +1 -0
- package/dist/eval/scorer-factory.d.ts +4 -0
- package/dist/eval/scorer-factory.d.ts.map +1 -0
- package/dist/eval/scorer-factory.js +67 -0
- package/dist/eval/scorer-factory.js.map +1 -0
- package/dist/eval/scorers/coherence-scorer.d.ts +8 -0
- package/dist/eval/scorers/coherence-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/coherence-scorer.js +22 -0
- package/dist/eval/scorers/coherence-scorer.js.map +1 -0
- package/dist/eval/scorers/composite-scorer.d.ts +8 -0
- package/dist/eval/scorers/composite-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/composite-scorer.js +19 -0
- package/dist/eval/scorers/composite-scorer.js.map +1 -0
- package/dist/eval/scorers/contains-scorer.d.ts +8 -0
- package/dist/eval/scorers/contains-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/contains-scorer.js +30 -0
- package/dist/eval/scorers/contains-scorer.js.map +1 -0
- package/dist/eval/scorers/cost-scorer.d.ts +8 -0
- package/dist/eval/scorers/cost-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/cost-scorer.js +19 -0
- package/dist/eval/scorers/cost-scorer.js.map +1 -0
- package/dist/eval/scorers/custom-prompt-scorer.d.ts +9 -0
- package/dist/eval/scorers/custom-prompt-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/custom-prompt-scorer.js +24 -0
- package/dist/eval/scorers/custom-prompt-scorer.js.map +1 -0
- package/dist/eval/scorers/exact-match-scorer.d.ts +6 -0
- package/dist/eval/scorers/exact-match-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/exact-match-scorer.js +16 -0
- package/dist/eval/scorers/exact-match-scorer.js.map +1 -0
- package/dist/eval/scorers/faithfulness-scorer.d.ts +8 -0
- package/dist/eval/scorers/faithfulness-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/faithfulness-scorer.js +27 -0
- package/dist/eval/scorers/faithfulness-scorer.js.map +1 -0
- package/dist/eval/scorers/hallucination-scorer.d.ts +8 -0
- package/dist/eval/scorers/hallucination-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/hallucination-scorer.js +31 -0
- package/dist/eval/scorers/hallucination-scorer.js.map +1 -0
- package/dist/eval/scorers/json-validity-scorer.d.ts +8 -0
- package/dist/eval/scorers/json-validity-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/json-validity-scorer.js +32 -0
- package/dist/eval/scorers/json-validity-scorer.js.map +1 -0
- package/dist/eval/scorers/latency-scorer.d.ts +8 -0
- package/dist/eval/scorers/latency-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/latency-scorer.js +19 -0
- package/dist/eval/scorers/latency-scorer.js.map +1 -0
- package/dist/eval/scorers/length-scorer.d.ts +9 -0
- package/dist/eval/scorers/length-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/length-scorer.js +26 -0
- package/dist/eval/scorers/length-scorer.js.map +1 -0
- package/dist/eval/scorers/parse-llm-response.d.ts +5 -0
- package/dist/eval/scorers/parse-llm-response.d.ts.map +1 -0
- package/dist/eval/scorers/parse-llm-response.js +13 -0
- package/dist/eval/scorers/parse-llm-response.js.map +1 -0
- package/dist/eval/scorers/relevance-scorer.d.ts +8 -0
- package/dist/eval/scorers/relevance-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/relevance-scorer.js +23 -0
- package/dist/eval/scorers/relevance-scorer.js.map +1 -0
- package/dist/eval/scorers/toxicity-scorer.d.ts +8 -0
- package/dist/eval/scorers/toxicity-scorer.d.ts.map +1 -0
- package/dist/eval/scorers/toxicity-scorer.js +26 -0
- package/dist/eval/scorers/toxicity-scorer.js.map +1 -0
- package/dist/eval/types.d.ts +51 -0
- package/dist/eval/types.d.ts.map +1 -0
- package/dist/eval/types.js +3 -0
- package/dist/eval/types.js.map +1 -0
- package/dist/events/event-bus.d.ts +36 -0
- package/dist/events/event-bus.d.ts.map +1 -0
- package/dist/events/event-bus.js +116 -0
- package/dist/events/event-bus.js.map +1 -0
- package/dist/events/event-store.d.ts +11 -0
- package/dist/events/event-store.d.ts.map +1 -0
- package/dist/events/event-store.js +2 -0
- package/dist/events/event-store.js.map +1 -0
- package/dist/events/index.d.ts +295 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +48 -0
- package/dist/events/index.js.map +1 -0
- package/dist/events/trace.d.ts +30 -0
- package/dist/events/trace.d.ts.map +1 -0
- package/dist/events/trace.js +45 -0
- package/dist/events/trace.js.map +1 -0
- package/dist/index.d.ts +58 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +42 -0
- package/dist/index.js.map +1 -0
- package/dist/knowledge/index.d.ts +10 -0
- package/dist/knowledge/index.d.ts.map +1 -0
- package/dist/knowledge/index.js +9 -0
- package/dist/knowledge/index.js.map +1 -0
- package/dist/knowledge/infrastructure/memory-vector-store.d.ts +12 -0
- package/dist/knowledge/infrastructure/memory-vector-store.d.ts.map +1 -0
- package/dist/knowledge/infrastructure/memory-vector-store.js +71 -0
- package/dist/knowledge/infrastructure/memory-vector-store.js.map +1 -0
- package/dist/knowledge/infrastructure/ollama-embedding.d.ts +15 -0
- package/dist/knowledge/infrastructure/ollama-embedding.d.ts.map +1 -0
- package/dist/knowledge/infrastructure/ollama-embedding.js +38 -0
- package/dist/knowledge/infrastructure/ollama-embedding.js.map +1 -0
- package/dist/knowledge/infrastructure/openai-embedding.d.ts +18 -0
- package/dist/knowledge/infrastructure/openai-embedding.d.ts.map +1 -0
- package/dist/knowledge/infrastructure/openai-embedding.js +66 -0
- package/dist/knowledge/infrastructure/openai-embedding.js.map +1 -0
- package/dist/knowledge/knowledge-capability.d.ts +15 -0
- package/dist/knowledge/knowledge-capability.d.ts.map +1 -0
- package/dist/knowledge/knowledge-capability.js +36 -0
- package/dist/knowledge/knowledge-capability.js.map +1 -0
- package/dist/knowledge/markdown-chunker.d.ts +8 -0
- package/dist/knowledge/markdown-chunker.d.ts.map +1 -0
- package/dist/knowledge/markdown-chunker.js +146 -0
- package/dist/knowledge/markdown-chunker.js.map +1 -0
- package/dist/knowledge/recursive-chunker.d.ts +8 -0
- package/dist/knowledge/recursive-chunker.d.ts.map +1 -0
- package/dist/knowledge/recursive-chunker.js +73 -0
- package/dist/knowledge/recursive-chunker.js.map +1 -0
- package/dist/knowledge/reranker.d.ts +5 -0
- package/dist/knowledge/reranker.d.ts.map +1 -0
- package/dist/knowledge/reranker.js +3 -0
- package/dist/knowledge/reranker.js.map +1 -0
- package/dist/knowledge/retrieval-pipeline.d.ts +26 -0
- package/dist/knowledge/retrieval-pipeline.d.ts.map +1 -0
- package/dist/knowledge/retrieval-pipeline.js +56 -0
- package/dist/knowledge/retrieval-pipeline.js.map +1 -0
- package/dist/memory/chunk-importer.d.ts +16 -0
- package/dist/memory/chunk-importer.d.ts.map +1 -0
- package/dist/memory/chunk-importer.js +58 -0
- package/dist/memory/chunk-importer.js.map +1 -0
- package/dist/memory/compactor.d.ts +59 -0
- package/dist/memory/compactor.d.ts.map +1 -0
- package/dist/memory/compactor.js +100 -0
- package/dist/memory/compactor.js.map +1 -0
- package/dist/memory/decay-curves.d.ts +33 -0
- package/dist/memory/decay-curves.d.ts.map +1 -0
- package/dist/memory/decay-curves.js +48 -0
- package/dist/memory/decay-curves.js.map +1 -0
- package/dist/memory/developer-identity.d.ts +7 -0
- package/dist/memory/developer-identity.d.ts.map +1 -0
- package/dist/memory/developer-identity.js +20 -0
- package/dist/memory/developer-identity.js.map +1 -0
- package/dist/memory/git-sync-manager.d.ts +28 -0
- package/dist/memory/git-sync-manager.d.ts.map +1 -0
- package/dist/memory/git-sync-manager.js +77 -0
- package/dist/memory/git-sync-manager.js.map +1 -0
- package/dist/memory/index.d.ts +46 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +11 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/memory-manager.d.ts +34 -0
- package/dist/memory/memory-manager.d.ts.map +1 -0
- package/dist/memory/memory-manager.js +151 -0
- package/dist/memory/memory-manager.js.map +1 -0
- package/dist/memory/project-store.d.ts +28 -0
- package/dist/memory/project-store.d.ts.map +1 -0
- package/dist/memory/project-store.js +159 -0
- package/dist/memory/project-store.js.map +1 -0
- package/dist/memory/sqlite-store.d.ts +41 -0
- package/dist/memory/sqlite-store.d.ts.map +1 -0
- package/dist/memory/sqlite-store.js +320 -0
- package/dist/memory/sqlite-store.js.map +1 -0
- package/dist/observability/index.d.ts +5 -0
- package/dist/observability/index.d.ts.map +1 -0
- package/dist/observability/index.js +3 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/observability/otel-exporter.d.ts +41 -0
- package/dist/observability/otel-exporter.d.ts.map +1 -0
- package/dist/observability/otel-exporter.js +166 -0
- package/dist/observability/otel-exporter.js.map +1 -0
- package/dist/observability/span-mapper.d.ts +24 -0
- package/dist/observability/span-mapper.d.ts.map +1 -0
- package/dist/observability/span-mapper.js +375 -0
- package/dist/observability/span-mapper.js.map +1 -0
- package/dist/orchestrator/checkpoint-store.d.ts +9 -0
- package/dist/orchestrator/checkpoint-store.d.ts.map +1 -0
- package/dist/orchestrator/checkpoint-store.js +2 -0
- package/dist/orchestrator/checkpoint-store.js.map +1 -0
- package/dist/orchestrator/checkpoint-types.d.ts +30 -0
- package/dist/orchestrator/checkpoint-types.d.ts.map +1 -0
- package/dist/orchestrator/checkpoint-types.js +2 -0
- package/dist/orchestrator/checkpoint-types.js.map +1 -0
- package/dist/orchestrator/guardrails.d.ts +23 -0
- package/dist/orchestrator/guardrails.d.ts.map +1 -0
- package/dist/orchestrator/guardrails.js +136 -0
- package/dist/orchestrator/guardrails.js.map +1 -0
- package/dist/orchestrator/index.d.ts +45 -0
- package/dist/orchestrator/index.d.ts.map +1 -0
- package/dist/orchestrator/index.js +8 -0
- package/dist/orchestrator/index.js.map +1 -0
- package/dist/orchestrator/interrupt.d.ts +20 -0
- package/dist/orchestrator/interrupt.d.ts.map +1 -0
- package/dist/orchestrator/interrupt.js +4 -0
- package/dist/orchestrator/interrupt.js.map +1 -0
- package/dist/orchestrator/orchestrator.d.ts +170 -0
- package/dist/orchestrator/orchestrator.d.ts.map +1 -0
- package/dist/orchestrator/orchestrator.js +509 -0
- package/dist/orchestrator/orchestrator.js.map +1 -0
- package/dist/orchestrator/phase-machine.d.ts +48 -0
- package/dist/orchestrator/phase-machine.d.ts.map +1 -0
- package/dist/orchestrator/phase-machine.js +176 -0
- package/dist/orchestrator/phase-machine.js.map +1 -0
- package/dist/orchestrator/schemas.d.ts +145 -0
- package/dist/orchestrator/schemas.d.ts.map +1 -0
- package/dist/orchestrator/schemas.js +126 -0
- package/dist/orchestrator/schemas.js.map +1 -0
- package/dist/orchestrator/sqlite-checkpoint-store.d.ts +15 -0
- package/dist/orchestrator/sqlite-checkpoint-store.d.ts.map +1 -0
- package/dist/orchestrator/sqlite-checkpoint-store.js +98 -0
- package/dist/orchestrator/sqlite-checkpoint-store.js.map +1 -0
- package/dist/orchestrator/strategies/index.d.ts +28 -0
- package/dist/orchestrator/strategies/index.d.ts.map +1 -0
- package/dist/orchestrator/strategies/index.js +20 -0
- package/dist/orchestrator/strategies/index.js.map +1 -0
- package/dist/orchestrator/strategies/sequential-strategy.d.ts +13 -0
- package/dist/orchestrator/strategies/sequential-strategy.d.ts.map +1 -0
- package/dist/orchestrator/strategies/sequential-strategy.js +29 -0
- package/dist/orchestrator/strategies/sequential-strategy.js.map +1 -0
- package/dist/orchestrator/strategies/supervisor-strategy.d.ts +43 -0
- package/dist/orchestrator/strategies/supervisor-strategy.d.ts.map +1 -0
- package/dist/orchestrator/strategies/supervisor-strategy.js +118 -0
- package/dist/orchestrator/strategies/supervisor-strategy.js.map +1 -0
- package/dist/orchestrator/strategies/swarm-strategy.d.ts +36 -0
- package/dist/orchestrator/strategies/swarm-strategy.d.ts.map +1 -0
- package/dist/orchestrator/strategies/swarm-strategy.js +126 -0
- package/dist/orchestrator/strategies/swarm-strategy.js.map +1 -0
- package/dist/package/index.d.ts +7 -0
- package/dist/package/index.d.ts.map +1 -0
- package/dist/package/index.js +6 -0
- package/dist/package/index.js.map +1 -0
- package/dist/package/security.d.ts +18 -0
- package/dist/package/security.d.ts.map +1 -0
- package/dist/package/security.js +110 -0
- package/dist/package/security.js.map +1 -0
- package/dist/package/types.d.ts +34 -0
- package/dist/package/types.d.ts.map +1 -0
- package/dist/package/types.js +4 -0
- package/dist/package/types.js.map +1 -0
- package/dist/package/yaml-parser.d.ts +22 -0
- package/dist/package/yaml-parser.d.ts.map +1 -0
- package/dist/package/yaml-parser.js +109 -0
- package/dist/package/yaml-parser.js.map +1 -0
- package/dist/package/yaml-schema.d.ts +42 -0
- package/dist/package/yaml-schema.d.ts.map +1 -0
- package/dist/package/yaml-schema.js +141 -0
- package/dist/package/yaml-schema.js.map +1 -0
- package/dist/safety/content-classifier.d.ts +31 -0
- package/dist/safety/content-classifier.d.ts.map +1 -0
- package/dist/safety/content-classifier.js +107 -0
- package/dist/safety/content-classifier.js.map +1 -0
- package/dist/safety/index.d.ts +10 -0
- package/dist/safety/index.d.ts.map +1 -0
- package/dist/safety/index.js +10 -0
- package/dist/safety/index.js.map +1 -0
- package/dist/safety/pii-scanner.d.ts +26 -0
- package/dist/safety/pii-scanner.d.ts.map +1 -0
- package/dist/safety/pii-scanner.js +82 -0
- package/dist/safety/pii-scanner.js.map +1 -0
- package/dist/safety/rails.d.ts +33 -0
- package/dist/safety/rails.d.ts.map +1 -0
- package/dist/safety/rails.js +134 -0
- package/dist/safety/rails.js.map +1 -0
- package/dist/safety/safety-pipeline.d.ts +41 -0
- package/dist/safety/safety-pipeline.d.ts.map +1 -0
- package/dist/safety/safety-pipeline.js +153 -0
- package/dist/safety/safety-pipeline.js.map +1 -0
- package/dist/safety/types.d.ts +38 -0
- package/dist/safety/types.d.ts.map +1 -0
- package/dist/safety/types.js +3 -0
- package/dist/safety/types.js.map +1 -0
- package/dist/sandbox/index.d.ts +17 -0
- package/dist/sandbox/index.d.ts.map +1 -0
- package/dist/sandbox/index.js +4 -0
- package/dist/sandbox/index.js.map +1 -0
- package/dist/sandbox/network-filter.d.ts +13 -0
- package/dist/sandbox/network-filter.d.ts.map +1 -0
- package/dist/sandbox/network-filter.js +43 -0
- package/dist/sandbox/network-filter.js.map +1 -0
- package/dist/sandbox/path-validator.d.ts +16 -0
- package/dist/sandbox/path-validator.d.ts.map +1 -0
- package/dist/sandbox/path-validator.js +47 -0
- package/dist/sandbox/path-validator.js.map +1 -0
- package/dist/sandbox/policies.d.ts +38 -0
- package/dist/sandbox/policies.d.ts.map +1 -0
- package/dist/sandbox/policies.js +145 -0
- package/dist/sandbox/policies.js.map +1 -0
- package/dist/security/audit-log.d.ts +17 -0
- package/dist/security/audit-log.d.ts.map +1 -0
- package/dist/security/audit-log.js +214 -0
- package/dist/security/audit-log.js.map +1 -0
- package/dist/security/guardian.d.ts +24 -0
- package/dist/security/guardian.d.ts.map +1 -0
- package/dist/security/guardian.js +177 -0
- package/dist/security/guardian.js.map +1 -0
- package/dist/security/index.d.ts +10 -0
- package/dist/security/index.d.ts.map +1 -0
- package/dist/security/index.js +7 -0
- package/dist/security/index.js.map +1 -0
- package/dist/security/prompt-scanner.d.ts +23 -0
- package/dist/security/prompt-scanner.d.ts.map +1 -0
- package/dist/security/prompt-scanner.js +376 -0
- package/dist/security/prompt-scanner.js.map +1 -0
- package/dist/security/secret-store.d.ts +18 -0
- package/dist/security/secret-store.d.ts.map +1 -0
- package/dist/security/secret-store.js +123 -0
- package/dist/security/secret-store.js.map +1 -0
- package/dist/security/self-audit.d.ts +33 -0
- package/dist/security/self-audit.d.ts.map +1 -0
- package/dist/security/self-audit.js +142 -0
- package/dist/security/self-audit.js.map +1 -0
- package/dist/security/types.d.ts +107 -0
- package/dist/security/types.d.ts.map +1 -0
- package/dist/security/types.js +3 -0
- package/dist/security/types.js.map +1 -0
- package/dist/skill/index.d.ts +7 -0
- package/dist/skill/index.d.ts.map +1 -0
- package/dist/skill/index.js +4 -0
- package/dist/skill/index.js.map +1 -0
- package/dist/skill/skill-registry.d.ts +26 -0
- package/dist/skill/skill-registry.d.ts.map +1 -0
- package/dist/skill/skill-registry.js +81 -0
- package/dist/skill/skill-registry.js.map +1 -0
- package/dist/skill/types.d.ts +17 -0
- package/dist/skill/types.d.ts.map +1 -0
- package/dist/skill/types.js +2 -0
- package/dist/skill/types.js.map +1 -0
- package/dist/skill/yaml-parser.d.ts +18 -0
- package/dist/skill/yaml-parser.d.ts.map +1 -0
- package/dist/skill/yaml-parser.js +61 -0
- package/dist/skill/yaml-parser.js.map +1 -0
- package/dist/skill/yaml-schema.d.ts +20 -0
- package/dist/skill/yaml-schema.d.ts.map +1 -0
- package/dist/skill/yaml-schema.js +80 -0
- package/dist/skill/yaml-schema.js.map +1 -0
- package/dist/tree/batch-executor.d.ts +28 -0
- package/dist/tree/batch-executor.d.ts.map +1 -0
- package/dist/tree/batch-executor.js +78 -0
- package/dist/tree/batch-executor.js.map +1 -0
- package/dist/tree/index.d.ts +26 -0
- package/dist/tree/index.d.ts.map +1 -0
- package/dist/tree/index.js +3 -0
- package/dist/tree/index.js.map +1 -0
- package/dist/tree/task-tree.d.ts +74 -0
- package/dist/tree/task-tree.d.ts.map +1 -0
- package/dist/tree/task-tree.js +262 -0
- package/dist/tree/task-tree.js.map +1 -0
- package/dist/verification/coverage-parser.d.ts +6 -0
- package/dist/verification/coverage-parser.d.ts.map +1 -0
- package/dist/verification/coverage-parser.js +29 -0
- package/dist/verification/coverage-parser.js.map +1 -0
- package/dist/verification/gate-runner.d.ts +18 -0
- package/dist/verification/gate-runner.d.ts.map +1 -0
- package/dist/verification/gate-runner.js +63 -0
- package/dist/verification/gate-runner.js.map +1 -0
- package/dist/verification/index.d.ts +24 -0
- package/dist/verification/index.d.ts.map +1 -0
- package/dist/verification/index.js +4 -0
- package/dist/verification/index.js.map +1 -0
- package/dist/verification/verification-loop.d.ts +32 -0
- package/dist/verification/verification-loop.d.ts.map +1 -0
- package/dist/verification/verification-loop.js +71 -0
- package/dist/verification/verification-loop.js.map +1 -0
- package/package.json +58 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface McpServerConfig {
|
|
2
|
+
readonly name: string;
|
|
3
|
+
readonly url: string;
|
|
4
|
+
readonly env?: Record<string, string>;
|
|
5
|
+
readonly reconnect?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export interface McpConfig {
|
|
8
|
+
readonly servers: readonly McpServerConfig[];
|
|
9
|
+
}
|
|
10
|
+
export interface McpValidationError {
|
|
11
|
+
readonly field: string;
|
|
12
|
+
readonly message: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function validateMcpConfig(config: McpConfig): McpValidationError[];
|
|
15
|
+
//# sourceMappingURL=mcp-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-config.d.ts","sourceRoot":"","sources":["../../../src/engine/domain/mcp-config.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,OAAO,EAAE,SAAS,eAAe,EAAE,CAAC;CAC9C;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,EAAE,CA0BzE"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// McpConfig types -- YAML configuration for MCP server connections
|
|
2
|
+
export function validateMcpConfig(config) {
|
|
3
|
+
const errors = [];
|
|
4
|
+
if (!config.servers || !Array.isArray(config.servers) || config.servers.length === 0) {
|
|
5
|
+
errors.push({ field: "servers", message: "must be a non-empty array" });
|
|
6
|
+
return errors;
|
|
7
|
+
}
|
|
8
|
+
const serverNames = new Set();
|
|
9
|
+
for (let i = 0; i < config.servers.length; i++) {
|
|
10
|
+
const server = config.servers[i];
|
|
11
|
+
if (!server.name || typeof server.name !== "string") {
|
|
12
|
+
errors.push({ field: `servers[${i}].name`, message: "must be a non-empty string" });
|
|
13
|
+
}
|
|
14
|
+
else if (serverNames.has(server.name)) {
|
|
15
|
+
errors.push({ field: `servers[${i}].name`, message: "duplicate server name" });
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
serverNames.add(server.name);
|
|
19
|
+
}
|
|
20
|
+
if (!server.url || typeof server.url !== "string") {
|
|
21
|
+
errors.push({ field: `servers[${i}].url`, message: "must be a non-empty string" });
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return errors;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=mcp-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-config.js","sourceRoot":"","sources":["../../../src/engine/domain/mcp-config.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAkBnE,MAAM,UAAU,iBAAiB,CAAC,MAAiB;IACjD,MAAM,MAAM,GAAyB,EAAE,CAAC;IAExC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrF,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;QACxE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC;QAElC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpD,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;QACtF,CAAC;aAAM,IAAI,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC,CAAC;QACjF,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAClD,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Scope-based access control for memory */
|
|
2
|
+
export type MemoryScope = "user" | `agent:${string}` | `team:${string}` | `project:${string}` | "org";
|
|
3
|
+
/** A single entry in the memory system */
|
|
4
|
+
export interface MemoryEntry {
|
|
5
|
+
readonly id: string;
|
|
6
|
+
readonly content: string;
|
|
7
|
+
readonly tags: readonly string[];
|
|
8
|
+
readonly createdAt: Date;
|
|
9
|
+
readonly metadata?: Record<string, unknown>;
|
|
10
|
+
}
|
|
11
|
+
/** Unified storage interface with scope-based access */
|
|
12
|
+
export interface Memory {
|
|
13
|
+
store(scope: MemoryScope, entry: MemoryEntry): Promise<string>;
|
|
14
|
+
recall(scope: MemoryScope, query: string, budget?: number): Promise<MemoryEntry[]>;
|
|
15
|
+
forget(scope: MemoryScope, id: string): Promise<void>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/engine/domain/memory.ts"],"names":[],"mappings":"AAGA,4CAA4C;AAC5C,MAAM,MAAM,WAAW,GACnB,MAAM,GACN,SAAS,MAAM,EAAE,GACjB,QAAQ,MAAM,EAAE,GAChB,WAAW,MAAM,EAAE,GACnB,KAAK,CAAC;AAEV,0CAA0C;AAC1C,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C;AAED,wDAAwD;AACxD,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/D,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACnF,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/engine/domain/memory.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,yDAAyD"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export type Modality = "text" | "image" | "audio" | "file";
|
|
2
|
+
export declare const VALID_MODALITIES: readonly Modality[];
|
|
3
|
+
/** Validate a modalities array. Returns error messages for invalid entries. */
|
|
4
|
+
export declare function validateModalities(modalities: readonly string[]): readonly string[];
|
|
5
|
+
//# sourceMappingURL=modality.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modality.d.ts","sourceRoot":"","sources":["../../../src/engine/domain/modality.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3D,eAAO,MAAM,gBAAgB,EAAE,SAAS,QAAQ,EAAuC,CAAC;AAExF,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,CAanF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// Engine primitive: Modality -- supported content modalities for agents and channels
|
|
2
|
+
// Zero external dependencies
|
|
3
|
+
export const VALID_MODALITIES = ["text", "image", "audio", "file"];
|
|
4
|
+
/** Validate a modalities array. Returns error messages for invalid entries. */
|
|
5
|
+
export function validateModalities(modalities) {
|
|
6
|
+
const errors = [];
|
|
7
|
+
const seen = new Set();
|
|
8
|
+
for (const m of modalities) {
|
|
9
|
+
if (!VALID_MODALITIES.includes(m)) {
|
|
10
|
+
errors.push(`unknown modality "${m}", must be one of: ${VALID_MODALITIES.join(", ")}`);
|
|
11
|
+
}
|
|
12
|
+
if (seen.has(m)) {
|
|
13
|
+
errors.push(`duplicate modality "${m}"`);
|
|
14
|
+
}
|
|
15
|
+
seen.add(m);
|
|
16
|
+
}
|
|
17
|
+
return errors;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=modality.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modality.js","sourceRoot":"","sources":["../../../src/engine/domain/modality.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,6BAA6B;AAI7B,MAAM,CAAC,MAAM,gBAAgB,GAAwB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAExF,+EAA+E;AAC/E,MAAM,UAAU,kBAAkB,CAAC,UAA6B;IAC9D,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAa,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,sBAAsB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzF,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACd,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/** Orchestrator configuration */
|
|
2
|
+
export interface OrchestratorConfig {
|
|
3
|
+
readonly requireApproval: boolean;
|
|
4
|
+
readonly maxDepth: number;
|
|
5
|
+
readonly parallelWorkers: number;
|
|
6
|
+
readonly phases: readonly string[];
|
|
7
|
+
readonly maxIterations?: number;
|
|
8
|
+
/** Phase after which to pause for approval. Defaults to "architect" when requireApproval is true. */
|
|
9
|
+
readonly approvalAfterPhase?: string;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=orchestrator-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator-config.d.ts","sourceRoot":"","sources":["../../../src/engine/domain/orchestrator-config.ts"],"names":[],"mappings":"AAGA,iCAAiC;AACjC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,qGAAqG;IACrG,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator-config.js","sourceRoot":"","sources":["../../../src/engine/domain/orchestrator-config.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,yFAAyF"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { Agent } from "./agent.js";
|
|
2
|
+
/** Context for assembling agent prompts with team and capability info */
|
|
3
|
+
export interface PromptContext {
|
|
4
|
+
readonly teamName?: string;
|
|
5
|
+
readonly teamMode?: string;
|
|
6
|
+
readonly teammates?: readonly {
|
|
7
|
+
name: string;
|
|
8
|
+
role: string;
|
|
9
|
+
}[];
|
|
10
|
+
readonly capabilities?: readonly {
|
|
11
|
+
name: string;
|
|
12
|
+
description: string;
|
|
13
|
+
}[];
|
|
14
|
+
readonly qualityGates?: readonly {
|
|
15
|
+
name: string;
|
|
16
|
+
description: string;
|
|
17
|
+
}[];
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Assemble a system prompt from Agent identity fields + team context.
|
|
21
|
+
* Pure function, zero dependencies.
|
|
22
|
+
*
|
|
23
|
+
* Assembly order:
|
|
24
|
+
* 1. Identity: "You are {name}, {role}. Your goal: {goal}"
|
|
25
|
+
* 2. Backstory: "{backstory}" (if provided and non-empty)
|
|
26
|
+
* 3. Instructions: "## Operating Rules\n{instructions}" (if provided and non-empty)
|
|
27
|
+
* 4. Team context: "Team '{teamName}', {mode} mode. Teammates: {name + role for each}" (if context provided)
|
|
28
|
+
* 5. Capabilities: "## Available Tools\n{capability descriptions}" (if capabilities provided)
|
|
29
|
+
* 6. Quality gates: "## Quality Standards\n{gate descriptions}" (if gates provided)
|
|
30
|
+
*/
|
|
31
|
+
export declare function assembleAgentPrompt(agent: Agent, context?: PromptContext): string;
|
|
32
|
+
//# sourceMappingURL=prompt-assembler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt-assembler.d.ts","sourceRoot":"","sources":["../../../src/engine/domain/prompt-assembler.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,yEAAyE;AACzE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC/D,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzE,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC1E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAsDjF"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
// Engine primitive: System prompt assembler -- pure function, zero dependencies
|
|
2
|
+
// Assembles system prompts from Agent identity fields + team context
|
|
3
|
+
/**
|
|
4
|
+
* Assemble a system prompt from Agent identity fields + team context.
|
|
5
|
+
* Pure function, zero dependencies.
|
|
6
|
+
*
|
|
7
|
+
* Assembly order:
|
|
8
|
+
* 1. Identity: "You are {name}, {role}. Your goal: {goal}"
|
|
9
|
+
* 2. Backstory: "{backstory}" (if provided and non-empty)
|
|
10
|
+
* 3. Instructions: "## Operating Rules\n{instructions}" (if provided and non-empty)
|
|
11
|
+
* 4. Team context: "Team '{teamName}', {mode} mode. Teammates: {name + role for each}" (if context provided)
|
|
12
|
+
* 5. Capabilities: "## Available Tools\n{capability descriptions}" (if capabilities provided)
|
|
13
|
+
* 6. Quality gates: "## Quality Standards\n{gate descriptions}" (if gates provided)
|
|
14
|
+
*/
|
|
15
|
+
export function assembleAgentPrompt(agent, context) {
|
|
16
|
+
const sections = [];
|
|
17
|
+
// 1. Identity section (always present)
|
|
18
|
+
sections.push(`You are ${agent.name}, ${agent.role}. Your goal: ${agent.goal}`);
|
|
19
|
+
// 2. Backstory section (optional, skip empty strings)
|
|
20
|
+
if (agent.backstory && agent.backstory.trim() !== "") {
|
|
21
|
+
sections.push(agent.backstory);
|
|
22
|
+
}
|
|
23
|
+
// 3. Instructions section (optional)
|
|
24
|
+
if (agent.instructions) {
|
|
25
|
+
sections.push(`## Operating Rules\n${agent.instructions}`);
|
|
26
|
+
}
|
|
27
|
+
// 4. Team context section (if context provided)
|
|
28
|
+
if (context) {
|
|
29
|
+
const teamParts = [];
|
|
30
|
+
if (context.teamName) {
|
|
31
|
+
const mode = context.teamMode ?? "sequential";
|
|
32
|
+
teamParts.push(`You are part of team '${context.teamName}' in ${mode} mode.`);
|
|
33
|
+
}
|
|
34
|
+
if (context.teammates && context.teammates.length > 0) {
|
|
35
|
+
const teammateList = context.teammates
|
|
36
|
+
.map(tm => `${tm.name} (${tm.role})`)
|
|
37
|
+
.join(", ");
|
|
38
|
+
teamParts.push(`Teammates: ${teammateList}`);
|
|
39
|
+
}
|
|
40
|
+
if (teamParts.length > 0) {
|
|
41
|
+
sections.push(teamParts.join("\n"));
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
// 5. Capabilities section (if provided)
|
|
45
|
+
if (context?.capabilities && context.capabilities.length > 0) {
|
|
46
|
+
const capLines = context.capabilities
|
|
47
|
+
.map(cap => `- ${cap.name}: ${cap.description}`)
|
|
48
|
+
.join("\n");
|
|
49
|
+
sections.push(`## Available Tools\n${capLines}`);
|
|
50
|
+
}
|
|
51
|
+
// 6. Quality gates section (if provided)
|
|
52
|
+
if (context?.qualityGates && context.qualityGates.length > 0) {
|
|
53
|
+
const gateLines = context.qualityGates
|
|
54
|
+
.map(gate => `- ${gate.name}: ${gate.description}`)
|
|
55
|
+
.join("\n");
|
|
56
|
+
sections.push(`## Quality Standards\n${gateLines}`);
|
|
57
|
+
}
|
|
58
|
+
return sections.join("\n\n");
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=prompt-assembler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt-assembler.js","sourceRoot":"","sources":["../../../src/engine/domain/prompt-assembler.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,qEAAqE;AAarE;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAY,EAAE,OAAuB;IACvE,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,uCAAuC;IACvC,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,gBAAgB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAEhF,sDAAsD;IACtD,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACrD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED,qCAAqC;IACrC,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,uBAAuB,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,gDAAgD;IAChD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,SAAS,GAAa,EAAE,CAAC;QAE/B,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,IAAI,YAAY,CAAC;YAC9C,SAAS,CAAC,IAAI,CAAC,yBAAyB,OAAO,CAAC,QAAQ,QAAQ,IAAI,QAAQ,CAAC,CAAC;QAChF,CAAC;QAED,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS;iBACnC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI,GAAG,CAAC;iBACpC,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,SAAS,CAAC,IAAI,CAAC,cAAc,YAAY,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,wCAAwC;IACxC,IAAI,OAAO,EAAE,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7D,MAAM,QAAQ,GAAG,OAAO,CAAC,YAAY;aAClC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC;aAC/C,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,QAAQ,CAAC,IAAI,CAAC,uBAAuB,QAAQ,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,yCAAyC;IACzC,IAAI,OAAO,EAAE,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7D,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY;aACnC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;aAClD,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,QAAQ,CAAC,IAAI,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
export type PiiType = "email" | "phone" | "ssn" | "credit_card" | "ip_address" | "date_of_birth";
|
|
2
|
+
export type PiiAction = "detect" | "redact" | "block";
|
|
3
|
+
export interface PiiConfig {
|
|
4
|
+
readonly detect: readonly PiiType[];
|
|
5
|
+
readonly action: PiiAction;
|
|
6
|
+
readonly deepScan?: boolean;
|
|
7
|
+
readonly allowlist?: readonly string[];
|
|
8
|
+
}
|
|
9
|
+
export type ContentCategory = "hate" | "violence" | "sexual" | "self_harm" | "harassment" | "misinformation";
|
|
10
|
+
export type ContentAction = "block" | "warn" | "log";
|
|
11
|
+
export interface ContentCategoryConfig {
|
|
12
|
+
readonly threshold: number;
|
|
13
|
+
readonly action: ContentAction;
|
|
14
|
+
}
|
|
15
|
+
export interface ContentConfig {
|
|
16
|
+
readonly enabled: boolean;
|
|
17
|
+
readonly categories: Partial<Record<ContentCategory, ContentCategoryConfig>>;
|
|
18
|
+
readonly deepScan?: boolean;
|
|
19
|
+
}
|
|
20
|
+
export type RailType = "topic" | "competitor" | "escalation" | "compliance";
|
|
21
|
+
export interface TopicRailConfig {
|
|
22
|
+
readonly type: "topic";
|
|
23
|
+
readonly block?: readonly string[];
|
|
24
|
+
readonly escalate?: readonly string[];
|
|
25
|
+
}
|
|
26
|
+
export interface CompetitorRailConfig {
|
|
27
|
+
readonly type: "competitor";
|
|
28
|
+
readonly competitors: readonly string[];
|
|
29
|
+
readonly response: string;
|
|
30
|
+
}
|
|
31
|
+
export interface EscalationRailConfig {
|
|
32
|
+
readonly type: "escalation";
|
|
33
|
+
readonly triggers: readonly string[];
|
|
34
|
+
}
|
|
35
|
+
export interface ComplianceRailConfig {
|
|
36
|
+
readonly type: "compliance";
|
|
37
|
+
readonly required?: readonly string[];
|
|
38
|
+
readonly forbid?: readonly string[];
|
|
39
|
+
}
|
|
40
|
+
export type RailConfig = TopicRailConfig | CompetitorRailConfig | EscalationRailConfig | ComplianceRailConfig;
|
|
41
|
+
export interface SafetyConfig {
|
|
42
|
+
readonly pii?: PiiConfig;
|
|
43
|
+
readonly content?: ContentConfig;
|
|
44
|
+
readonly rails?: readonly RailConfig[];
|
|
45
|
+
}
|
|
46
|
+
export interface SafetyValidationError {
|
|
47
|
+
readonly field: string;
|
|
48
|
+
readonly message: string;
|
|
49
|
+
}
|
|
50
|
+
export declare function validateSafetyConfig(config: SafetyConfig): SafetyValidationError[];
|
|
51
|
+
//# sourceMappingURL=safety-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safety-config.d.ts","sourceRoot":"","sources":["../../../src/engine/domain/safety-config.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,GAAG,aAAa,GAAG,YAAY,GAAG,eAAe,CAAC;AAEjG,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEtD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,YAAY,GAAG,gBAAgB,CAAC;AAE7G,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;AAErD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;CAChC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAC7E,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,CAAC;AAE5E,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED,MAAM,MAAM,UAAU,GAAG,eAAe,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,oBAAoB,CAAC;AAE9G,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAOD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,qBAAqB,EAAE,CAqElF"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
// SafetyConfig types -- YAML configuration for enterprise safety (PII, content, rails)
|
|
2
|
+
const VALID_PII_TYPES = ["email", "phone", "ssn", "credit_card", "ip_address", "date_of_birth"];
|
|
3
|
+
const VALID_PII_ACTIONS = ["detect", "redact", "block"];
|
|
4
|
+
const VALID_CONTENT_ACTIONS = ["block", "warn", "log"];
|
|
5
|
+
const VALID_CONTENT_CATEGORIES = ["hate", "violence", "sexual", "self_harm", "harassment", "misinformation"];
|
|
6
|
+
export function validateSafetyConfig(config) {
|
|
7
|
+
const errors = [];
|
|
8
|
+
if (config.pii) {
|
|
9
|
+
const pii = config.pii;
|
|
10
|
+
if (!Array.isArray(pii.detect) || pii.detect.length === 0) {
|
|
11
|
+
errors.push({ field: "pii.detect", message: "must be a non-empty array" });
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
for (let i = 0; i < pii.detect.length; i++) {
|
|
15
|
+
if (!VALID_PII_TYPES.includes(pii.detect[i])) {
|
|
16
|
+
errors.push({ field: `pii.detect[${i}]`, message: `must be one of: ${VALID_PII_TYPES.join(", ")}` });
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
if (!pii.action) {
|
|
21
|
+
errors.push({ field: "pii.action", message: "required" });
|
|
22
|
+
}
|
|
23
|
+
else if (!VALID_PII_ACTIONS.includes(pii.action)) {
|
|
24
|
+
errors.push({ field: "pii.action", message: `must be one of: ${VALID_PII_ACTIONS.join(", ")}` });
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
if (config.content) {
|
|
28
|
+
const content = config.content;
|
|
29
|
+
for (const category of VALID_CONTENT_CATEGORIES) {
|
|
30
|
+
const catConfig = content.categories[category];
|
|
31
|
+
if (catConfig) {
|
|
32
|
+
if (typeof catConfig.threshold !== "number" || catConfig.threshold < 0 || catConfig.threshold > 1) {
|
|
33
|
+
errors.push({ field: `content.categories.${category}.threshold`, message: "must be a number between 0 and 1" });
|
|
34
|
+
}
|
|
35
|
+
if (!VALID_CONTENT_ACTIONS.includes(catConfig.action)) {
|
|
36
|
+
errors.push({ field: `content.categories.${category}.action`, message: `must be one of: ${VALID_CONTENT_ACTIONS.join(", ")}` });
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
if (config.rails) {
|
|
42
|
+
for (let i = 0; i < config.rails.length; i++) {
|
|
43
|
+
const rail = config.rails[i];
|
|
44
|
+
if (rail.type === "topic") {
|
|
45
|
+
if ((!rail.block || rail.block.length === 0) && (!rail.escalate || rail.escalate.length === 0)) {
|
|
46
|
+
errors.push({ field: `rails[${i}]`, message: "topic rail must have at least 'block' or 'escalate'" });
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
else if (rail.type === "competitor") {
|
|
50
|
+
if (!Array.isArray(rail.competitors) || rail.competitors.length === 0) {
|
|
51
|
+
errors.push({ field: `rails[${i}].competitors`, message: "must be a non-empty array" });
|
|
52
|
+
}
|
|
53
|
+
if (!rail.response || typeof rail.response !== "string" || rail.response.trim() === "") {
|
|
54
|
+
errors.push({ field: `rails[${i}].response`, message: "must be a non-empty string" });
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
else if (rail.type === "escalation") {
|
|
58
|
+
if (!Array.isArray(rail.triggers) || rail.triggers.length === 0) {
|
|
59
|
+
errors.push({ field: `rails[${i}].triggers`, message: "must be a non-empty array" });
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
else if (rail.type === "compliance") {
|
|
63
|
+
if ((!rail.required || rail.required.length === 0) && (!rail.forbid || rail.forbid.length === 0)) {
|
|
64
|
+
errors.push({ field: `rails[${i}]`, message: "compliance rail must have at least 'required' or 'forbid'" });
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
errors.push({ field: `rails[${i}].type`, message: `unknown rail type: ${rail.type}` });
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return errors;
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=safety-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safety-config.js","sourceRoot":"","sources":["../../../src/engine/domain/safety-config.ts"],"names":[],"mappings":"AAAA,uFAAuF;AAkEvF,MAAM,eAAe,GAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,CAAC,CAAC;AACpH,MAAM,iBAAiB,GAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC9E,MAAM,qBAAqB,GAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AACjF,MAAM,wBAAwB,GAA+B,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAEzI,MAAM,UAAU,oBAAoB,CAAC,MAAoB;IACvD,MAAM,MAAM,GAA4B,EAAE,CAAC;IAE3C,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;QAEvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC;oBAC9C,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,mBAAmB,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACvG,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;QAC5D,CAAC;aAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACnD,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,mBAAmB,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACnG,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAE/B,KAAK,MAAM,QAAQ,IAAI,wBAAwB,EAAE,CAAC;YAChD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,SAAS,GAAG,CAAC,IAAI,SAAS,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;oBAClG,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,sBAAsB,QAAQ,YAAY,EAAE,OAAO,EAAE,kCAAkC,EAAE,CAAC,CAAC;gBAClH,CAAC;gBACD,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;oBACtD,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,sBAAsB,QAAQ,SAAS,EAAE,OAAO,EAAE,mBAAmB,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBAClI,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC;YAE9B,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC1B,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC/F,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,qDAAqD,EAAE,CAAC,CAAC;gBACxG,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACtE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,eAAe,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;gBAC1F,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;oBACvF,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;gBACxF,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAChE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;gBACvF,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACtC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;oBACjG,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,2DAA2D,EAAE,CAAC,CAAC;gBAC9G,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,sBAAuB,IAAyB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC/G,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/** Speech-to-text adapter interface */
|
|
2
|
+
export interface SttAdapter {
|
|
3
|
+
readonly name: string;
|
|
4
|
+
transcribe(audio: Uint8Array, mimeType: string): Promise<SttResult>;
|
|
5
|
+
}
|
|
6
|
+
/** Result from speech-to-text transcription */
|
|
7
|
+
export interface SttResult {
|
|
8
|
+
readonly text: string;
|
|
9
|
+
readonly confidence?: number;
|
|
10
|
+
readonly durationMs?: number;
|
|
11
|
+
}
|
|
12
|
+
/** Text-to-speech adapter interface */
|
|
13
|
+
export interface TtsAdapter {
|
|
14
|
+
readonly name: string;
|
|
15
|
+
synthesize(text: string, options?: TtsOptions): Promise<TtsResult>;
|
|
16
|
+
}
|
|
17
|
+
/** Options for text-to-speech synthesis */
|
|
18
|
+
export interface TtsOptions {
|
|
19
|
+
readonly voice?: string;
|
|
20
|
+
readonly speed?: number;
|
|
21
|
+
readonly format?: string;
|
|
22
|
+
}
|
|
23
|
+
/** Result from text-to-speech synthesis */
|
|
24
|
+
export interface TtsResult {
|
|
25
|
+
readonly audio: Uint8Array;
|
|
26
|
+
readonly mimeType: string;
|
|
27
|
+
readonly durationMs?: number;
|
|
28
|
+
}
|
|
29
|
+
/** Voice channel configuration */
|
|
30
|
+
export interface VoiceConfig {
|
|
31
|
+
readonly stt: SttProviderConfig;
|
|
32
|
+
readonly tts: TtsProviderConfig;
|
|
33
|
+
}
|
|
34
|
+
/** STT provider configuration from YAML */
|
|
35
|
+
export interface SttProviderConfig {
|
|
36
|
+
readonly provider: "openai" | "deepgram";
|
|
37
|
+
readonly model?: string;
|
|
38
|
+
readonly apiKeyEnv?: string;
|
|
39
|
+
readonly language?: string;
|
|
40
|
+
}
|
|
41
|
+
/** TTS provider configuration from YAML */
|
|
42
|
+
export interface TtsProviderConfig {
|
|
43
|
+
readonly provider: "openai" | "elevenlabs";
|
|
44
|
+
readonly model?: string;
|
|
45
|
+
readonly apiKeyEnv?: string;
|
|
46
|
+
readonly voice?: string;
|
|
47
|
+
}
|
|
48
|
+
/** Validate a VoiceConfig. Returns validation errors. */
|
|
49
|
+
export declare function validateVoiceConfig(config: VoiceConfig): readonly {
|
|
50
|
+
field: string;
|
|
51
|
+
message: string;
|
|
52
|
+
}[];
|
|
53
|
+
//# sourceMappingURL=speech-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"speech-config.d.ts","sourceRoot":"","sources":["../../../src/engine/domain/speech-config.ts"],"names":[],"mappings":"AAGA,uCAAuC;AACvC,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;CACrE;AAED,+CAA+C;AAC/C,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,uCAAuC;AACvC,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;CACpE;AAED,2CAA2C;AAC3C,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,2CAA2C;AAC3C,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,kCAAkC;AAClC,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAC;IAChC,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAC;CACjC;AAED,2CAA2C;AAC3C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,UAAU,CAAC;IACzC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,2CAA2C;AAC3C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,yDAAyD;AACzD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,CAsBtG"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// Engine primitive: Speech config -- STT/TTS interfaces for voice channel
|
|
2
|
+
// Zero external dependencies
|
|
3
|
+
/** Validate a VoiceConfig. Returns validation errors. */
|
|
4
|
+
export function validateVoiceConfig(config) {
|
|
5
|
+
const errors = [];
|
|
6
|
+
if (!config.stt) {
|
|
7
|
+
errors.push({ field: "voice.stt", message: "must be defined" });
|
|
8
|
+
}
|
|
9
|
+
else {
|
|
10
|
+
const validSttProviders = ["openai", "deepgram"];
|
|
11
|
+
if (!validSttProviders.includes(config.stt.provider)) {
|
|
12
|
+
errors.push({ field: "voice.stt.provider", message: `must be one of: ${validSttProviders.join(", ")}` });
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
if (!config.tts) {
|
|
16
|
+
errors.push({ field: "voice.tts", message: "must be defined" });
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
const validTtsProviders = ["openai", "elevenlabs"];
|
|
20
|
+
if (!validTtsProviders.includes(config.tts.provider)) {
|
|
21
|
+
errors.push({ field: "voice.tts.provider", message: `must be one of: ${validTtsProviders.join(", ")}` });
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return errors;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=speech-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"speech-config.js","sourceRoot":"","sources":["../../../src/engine/domain/speech-config.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,6BAA6B;AAyD7B,yDAAyD;AACzD,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACrD,MAAM,MAAM,GAAyC,EAAE,CAAC;IAExD,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,MAAM,iBAAiB,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACjD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrD,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,mBAAmB,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3G,CAAC;IACH,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,MAAM,iBAAiB,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACnD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrD,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,mBAAmB,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3G,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** Status of a task in the exploration tree */
|
|
2
|
+
export type TaskStatus = "proposed" | "active" | "completed" | "pruned";
|
|
3
|
+
/** Action to take on a task after evaluation */
|
|
4
|
+
export type TreeAction = "deepen" | "branch" | "prune";
|
|
5
|
+
/** A unit of work in a tree structure with scoring and exploration actions */
|
|
6
|
+
export interface Task {
|
|
7
|
+
readonly id: string;
|
|
8
|
+
readonly statement: string;
|
|
9
|
+
readonly status: TaskStatus;
|
|
10
|
+
readonly parentId?: string;
|
|
11
|
+
readonly depth: number;
|
|
12
|
+
readonly priority: number;
|
|
13
|
+
readonly children: readonly Task[];
|
|
14
|
+
readonly evidence: readonly string[];
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=task.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/engine/domain/task.ts"],"names":[],"mappings":"AAGA,+CAA+C;AAC/C,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;AAExE,gDAAgD;AAChD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEvD,8EAA8E;AAC9E,MAAM,WAAW,IAAI;IACnB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/engine/domain/task.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,2DAA2D"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type ToolSelectionStrategy = "all" | "rag";
|
|
2
|
+
export interface ToolSelectionConfig {
|
|
3
|
+
readonly strategy: ToolSelectionStrategy;
|
|
4
|
+
readonly maxTools?: number;
|
|
5
|
+
readonly threshold?: number;
|
|
6
|
+
}
|
|
7
|
+
export interface ToolSelectionValidationError {
|
|
8
|
+
readonly field: string;
|
|
9
|
+
readonly message: string;
|
|
10
|
+
}
|
|
11
|
+
export declare function validateToolSelectionConfig(config: ToolSelectionConfig): ToolSelectionValidationError[];
|
|
12
|
+
//# sourceMappingURL=tool-selection-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-selection-config.d.ts","sourceRoot":"","sources":["../../../src/engine/domain/tool-selection-config.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,qBAAqB,GAAG,KAAK,GAAG,KAAK,CAAC;AAElD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,mBAAmB,GAAG,4BAA4B,EAAE,CAwBvG"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// ToolSelectionConfig types -- YAML configuration for tool selection strategy
|
|
2
|
+
export function validateToolSelectionConfig(config) {
|
|
3
|
+
const errors = [];
|
|
4
|
+
if (!config.strategy || !["all", "rag"].includes(config.strategy)) {
|
|
5
|
+
errors.push({ field: "strategy", message: "must be 'all' or 'rag'" });
|
|
6
|
+
}
|
|
7
|
+
if (config.maxTools !== undefined) {
|
|
8
|
+
if (typeof config.maxTools !== "number" || config.maxTools <= 0) {
|
|
9
|
+
errors.push({ field: "maxTools", message: "must be a positive number" });
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
if (config.threshold !== undefined) {
|
|
13
|
+
if (typeof config.threshold !== "number" || config.threshold <= 0) {
|
|
14
|
+
errors.push({ field: "threshold", message: "must be a positive number" });
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
if (config.maxTools !== undefined && config.threshold !== undefined && config.maxTools >= config.threshold) {
|
|
18
|
+
errors.push({ field: "maxTools", message: "must be less than threshold" });
|
|
19
|
+
}
|
|
20
|
+
return errors;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=tool-selection-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-selection-config.js","sourceRoot":"","sources":["../../../src/engine/domain/tool-selection-config.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAe9E,MAAM,UAAU,2BAA2B,CAAC,MAA2B;IACrE,MAAM,MAAM,GAAmC,EAAE,CAAC;IAElD,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,EAAE,CAAC;YAChE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC;YAClE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QAC3G,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/** Supported trigger types */
|
|
2
|
+
export type TriggerType = "webhook" | "event" | "schedule";
|
|
3
|
+
/** Webhook trigger: HTTP endpoint that starts a workflow */
|
|
4
|
+
export interface WebhookTrigger {
|
|
5
|
+
readonly name: string;
|
|
6
|
+
readonly type: "webhook";
|
|
7
|
+
readonly team: string;
|
|
8
|
+
readonly task?: string;
|
|
9
|
+
readonly enabled?: boolean;
|
|
10
|
+
readonly path: string;
|
|
11
|
+
readonly method?: "POST" | "PUT";
|
|
12
|
+
readonly secretEnv?: string;
|
|
13
|
+
}
|
|
14
|
+
/** Event trigger: activates on internal EventBus events */
|
|
15
|
+
export interface EventTrigger {
|
|
16
|
+
readonly name: string;
|
|
17
|
+
readonly type: "event";
|
|
18
|
+
readonly team: string;
|
|
19
|
+
readonly task?: string;
|
|
20
|
+
readonly enabled?: boolean;
|
|
21
|
+
readonly event: string;
|
|
22
|
+
readonly filter?: Record<string, unknown>;
|
|
23
|
+
}
|
|
24
|
+
/** Schedule trigger: cron-based periodic activation */
|
|
25
|
+
export interface ScheduleTrigger {
|
|
26
|
+
readonly name: string;
|
|
27
|
+
readonly type: "schedule";
|
|
28
|
+
readonly team: string;
|
|
29
|
+
readonly task?: string;
|
|
30
|
+
readonly enabled?: boolean;
|
|
31
|
+
readonly cron: string;
|
|
32
|
+
readonly timezone?: string;
|
|
33
|
+
}
|
|
34
|
+
/** Union of all trigger types */
|
|
35
|
+
export type Trigger = WebhookTrigger | EventTrigger | ScheduleTrigger;
|
|
36
|
+
/** Trigger validation error */
|
|
37
|
+
export interface TriggerValidationError {
|
|
38
|
+
readonly field: string;
|
|
39
|
+
readonly message: string;
|
|
40
|
+
}
|
|
41
|
+
/** Validate a trigger configuration */
|
|
42
|
+
export declare function validateTrigger(trigger: Trigger, teamNames: readonly string[]): TriggerValidationError[];
|
|
43
|
+
//# sourceMappingURL=trigger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trigger.d.ts","sourceRoot":"","sources":["../../../src/engine/domain/trigger.ts"],"names":[],"mappings":"AAGA,8BAA8B;AAC9B,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AAE3D,4DAA4D;AAC5D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,2DAA2D;AAC3D,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C;AAED,uDAAuD;AACvD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,iCAAiC;AACjC,MAAM,MAAM,OAAO,GAAG,cAAc,GAAG,YAAY,GAAG,eAAe,CAAC;AAEtE,+BAA+B;AAC/B,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,uCAAuC;AACvC,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,MAAM,EAAE,GAAG,sBAAsB,EAAE,CAqCxG"}
|