@measureoneinc/savant 1.0.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/README-SDK.md +148 -0
- package/dist/ai/agents/domain-identifier.agent.d.ts +34 -0
- package/dist/ai/agents/domain-identifier.agent.d.ts.map +1 -0
- package/dist/ai/agents/domain-identifier.agent.js +176 -0
- package/dist/ai/agents/domain-identifier.agent.js.map +1 -0
- package/dist/ai/agents/dynamic-agent.d.ts +105 -0
- package/dist/ai/agents/dynamic-agent.d.ts.map +1 -0
- package/dist/ai/agents/dynamic-agent.js +505 -0
- package/dist/ai/agents/dynamic-agent.js.map +1 -0
- package/dist/ai/agents/executor.agent.d.ts +25 -0
- package/dist/ai/agents/executor.agent.d.ts.map +1 -0
- package/dist/ai/agents/executor.agent.js +44 -0
- package/dist/ai/agents/executor.agent.js.map +1 -0
- package/dist/ai/agents/index.d.ts +17 -0
- package/dist/ai/agents/index.d.ts.map +1 -0
- package/dist/ai/agents/index.js +29 -0
- package/dist/ai/agents/index.js.map +1 -0
- package/dist/ai/agents/knowledge.agent.d.ts +25 -0
- package/dist/ai/agents/knowledge.agent.d.ts.map +1 -0
- package/dist/ai/agents/knowledge.agent.js +42 -0
- package/dist/ai/agents/knowledge.agent.js.map +1 -0
- package/dist/ai/agents/learning.agent.d.ts +63 -0
- package/dist/ai/agents/learning.agent.d.ts.map +1 -0
- package/dist/ai/agents/learning.agent.js +288 -0
- package/dist/ai/agents/learning.agent.js.map +1 -0
- package/dist/ai/agents/orchestrator.agent.d.ts +26 -0
- package/dist/ai/agents/orchestrator.agent.d.ts.map +1 -0
- package/dist/ai/agents/orchestrator.agent.js +42 -0
- package/dist/ai/agents/orchestrator.agent.js.map +1 -0
- package/dist/ai/agents/planner.agent.d.ts +25 -0
- package/dist/ai/agents/planner.agent.d.ts.map +1 -0
- package/dist/ai/agents/planner.agent.js +36 -0
- package/dist/ai/agents/planner.agent.js.map +1 -0
- package/dist/ai/agents/response-parser.d.ts +23 -0
- package/dist/ai/agents/response-parser.d.ts.map +1 -0
- package/dist/ai/agents/response-parser.js +313 -0
- package/dist/ai/agents/response-parser.js.map +1 -0
- package/dist/ai/agents/summarizer.agent.d.ts +38 -0
- package/dist/ai/agents/summarizer.agent.d.ts.map +1 -0
- package/dist/ai/agents/summarizer.agent.js +245 -0
- package/dist/ai/agents/summarizer.agent.js.map +1 -0
- package/dist/ai/instructions/domain-identifier.instructions.d.ts +10 -0
- package/dist/ai/instructions/domain-identifier.instructions.d.ts.map +1 -0
- package/dist/ai/instructions/domain-identifier.instructions.js +63 -0
- package/dist/ai/instructions/domain-identifier.instructions.js.map +1 -0
- package/dist/ai/instructions/executor.instructions.d.ts +11 -0
- package/dist/ai/instructions/executor.instructions.d.ts.map +1 -0
- package/dist/ai/instructions/executor.instructions.js +218 -0
- package/dist/ai/instructions/executor.instructions.js.map +1 -0
- package/dist/ai/instructions/knowledge.instructions.d.ts +11 -0
- package/dist/ai/instructions/knowledge.instructions.d.ts.map +1 -0
- package/dist/ai/instructions/knowledge.instructions.js +145 -0
- package/dist/ai/instructions/knowledge.instructions.js.map +1 -0
- package/dist/ai/instructions/learning.instructions.d.ts +11 -0
- package/dist/ai/instructions/learning.instructions.d.ts.map +1 -0
- package/dist/ai/instructions/learning.instructions.js +226 -0
- package/dist/ai/instructions/learning.instructions.js.map +1 -0
- package/dist/ai/instructions/orchestrator.instructions.d.ts +11 -0
- package/dist/ai/instructions/orchestrator.instructions.d.ts.map +1 -0
- package/dist/ai/instructions/orchestrator.instructions.js +148 -0
- package/dist/ai/instructions/orchestrator.instructions.js.map +1 -0
- package/dist/ai/instructions/planner.instructions.d.ts +12 -0
- package/dist/ai/instructions/planner.instructions.d.ts.map +1 -0
- package/dist/ai/instructions/planner.instructions.js +129 -0
- package/dist/ai/instructions/planner.instructions.js.map +1 -0
- package/dist/ai/instructions/summarizer.instructions.d.ts +11 -0
- package/dist/ai/instructions/summarizer.instructions.d.ts.map +1 -0
- package/dist/ai/instructions/summarizer.instructions.js +84 -0
- package/dist/ai/instructions/summarizer.instructions.js.map +1 -0
- package/dist/ai/learning/execution-learner.d.ts +79 -0
- package/dist/ai/learning/execution-learner.d.ts.map +1 -0
- package/dist/ai/learning/execution-learner.js +536 -0
- package/dist/ai/learning/execution-learner.js.map +1 -0
- package/dist/ai/response_handlers/base-handler.d.ts +73 -0
- package/dist/ai/response_handlers/base-handler.d.ts.map +1 -0
- package/dist/ai/response_handlers/base-handler.js +153 -0
- package/dist/ai/response_handlers/base-handler.js.map +1 -0
- package/dist/ai/response_handlers/direct-response-handler.d.ts +18 -0
- package/dist/ai/response_handlers/direct-response-handler.d.ts.map +1 -0
- package/dist/ai/response_handlers/direct-response-handler.js +86 -0
- package/dist/ai/response_handlers/direct-response-handler.js.map +1 -0
- package/dist/ai/response_handlers/error-handler.d.ts +13 -0
- package/dist/ai/response_handlers/error-handler.d.ts.map +1 -0
- package/dist/ai/response_handlers/error-handler.js +72 -0
- package/dist/ai/response_handlers/error-handler.js.map +1 -0
- package/dist/ai/response_handlers/handler-registry.d.ts +51 -0
- package/dist/ai/response_handlers/handler-registry.d.ts.map +1 -0
- package/dist/ai/response_handlers/handler-registry.js +268 -0
- package/dist/ai/response_handlers/handler-registry.js.map +1 -0
- package/dist/ai/response_handlers/index.d.ts +16 -0
- package/dist/ai/response_handlers/index.d.ts.map +1 -0
- package/dist/ai/response_handlers/index.js +29 -0
- package/dist/ai/response_handlers/index.js.map +1 -0
- package/dist/ai/response_handlers/message-handler.d.ts +23 -0
- package/dist/ai/response_handlers/message-handler.d.ts.map +1 -0
- package/dist/ai/response_handlers/message-handler.js +193 -0
- package/dist/ai/response_handlers/message-handler.js.map +1 -0
- package/dist/ai/response_handlers/plan-ready-handler.d.ts +26 -0
- package/dist/ai/response_handlers/plan-ready-handler.d.ts.map +1 -0
- package/dist/ai/response_handlers/plan-ready-handler.js +394 -0
- package/dist/ai/response_handlers/plan-ready-handler.js.map +1 -0
- package/dist/ai/response_handlers/request-input-handler.d.ts +14 -0
- package/dist/ai/response_handlers/request-input-handler.d.ts.map +1 -0
- package/dist/ai/response_handlers/request-input-handler.js +87 -0
- package/dist/ai/response_handlers/request-input-handler.js.map +1 -0
- package/dist/ai/response_handlers/request-plan-handler.d.ts +18 -0
- package/dist/ai/response_handlers/request-plan-handler.d.ts.map +1 -0
- package/dist/ai/response_handlers/request-plan-handler.js +143 -0
- package/dist/ai/response_handlers/request-plan-handler.js.map +1 -0
- package/dist/ai/response_handlers/step-complete-handler.d.ts +22 -0
- package/dist/ai/response_handlers/step-complete-handler.d.ts.map +1 -0
- package/dist/ai/response_handlers/step-complete-handler.js +307 -0
- package/dist/ai/response_handlers/step-complete-handler.js.map +1 -0
- package/dist/ai/response_handlers/unknown-handler.d.ts +12 -0
- package/dist/ai/response_handlers/unknown-handler.d.ts.map +1 -0
- package/dist/ai/response_handlers/unknown-handler.js +27 -0
- package/dist/ai/response_handlers/unknown-handler.js.map +1 -0
- package/dist/ai/response_handlers/user-input-handler.d.ts +20 -0
- package/dist/ai/response_handlers/user-input-handler.d.ts.map +1 -0
- package/dist/ai/response_handlers/user-input-handler.js +69 -0
- package/dist/ai/response_handlers/user-input-handler.js.map +1 -0
- package/dist/ai/tools/log-step.d.ts +29 -0
- package/dist/ai/tools/log-step.d.ts.map +1 -0
- package/dist/ai/tools/log-step.js +47 -0
- package/dist/ai/tools/log-step.js.map +1 -0
- package/dist/app.d.ts +15 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +223 -0
- package/dist/app.js.map +1 -0
- package/dist/config/environment/local.d.ts +12 -0
- package/dist/config/environment/local.d.ts.map +1 -0
- package/dist/config/environment/local.js +124 -0
- package/dist/config/environment/local.js.map +1 -0
- package/dist/config/environment/production.d.ts +7 -0
- package/dist/config/environment/production.d.ts.map +1 -0
- package/dist/config/environment/production.js +105 -0
- package/dist/config/environment/production.js.map +1 -0
- package/dist/config/environment/test.d.ts +7 -0
- package/dist/config/environment/test.d.ts.map +1 -0
- package/dist/config/environment/test.js +97 -0
- package/dist/config/environment/test.js.map +1 -0
- package/dist/config/index.d.ts +219 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +360 -0
- package/dist/config/index.js.map +1 -0
- package/dist/controllers/agent_request.controller.d.ts +43 -0
- package/dist/controllers/agent_request.controller.d.ts.map +1 -0
- package/dist/controllers/agent_request.controller.js +141 -0
- package/dist/controllers/agent_request.controller.js.map +1 -0
- package/dist/controllers/base.controller.d.ts +208 -0
- package/dist/controllers/base.controller.d.ts.map +1 -0
- package/dist/controllers/base.controller.js +378 -0
- package/dist/controllers/base.controller.js.map +1 -0
- package/dist/controllers/conversations.controller.d.ts +31 -0
- package/dist/controllers/conversations.controller.d.ts.map +1 -0
- package/dist/controllers/conversations.controller.js +138 -0
- package/dist/controllers/conversations.controller.js.map +1 -0
- package/dist/controllers/knowledge.controller.d.ts +63 -0
- package/dist/controllers/knowledge.controller.d.ts.map +1 -0
- package/dist/controllers/knowledge.controller.js +311 -0
- package/dist/controllers/knowledge.controller.js.map +1 -0
- package/dist/controllers/mcp.controller.d.ts +25 -0
- package/dist/controllers/mcp.controller.d.ts.map +1 -0
- package/dist/controllers/mcp.controller.js +93 -0
- package/dist/controllers/mcp.controller.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +25 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/app-constants.d.ts +231 -0
- package/dist/lib/app-constants.d.ts.map +1 -0
- package/dist/lib/app-constants.js +240 -0
- package/dist/lib/app-constants.js.map +1 -0
- package/dist/lib/controller-utils.d.ts +48 -0
- package/dist/lib/controller-utils.d.ts.map +1 -0
- package/dist/lib/controller-utils.js +70 -0
- package/dist/lib/controller-utils.js.map +1 -0
- package/dist/lib/exceptions/app-exceptions.d.ts +158 -0
- package/dist/lib/exceptions/app-exceptions.d.ts.map +1 -0
- package/dist/lib/exceptions/app-exceptions.js +287 -0
- package/dist/lib/exceptions/app-exceptions.js.map +1 -0
- package/dist/lib/middleware/upload.middleware.d.ts +13 -0
- package/dist/lib/middleware/upload.middleware.d.ts.map +1 -0
- package/dist/lib/middleware/upload.middleware.js +35 -0
- package/dist/lib/middleware/upload.middleware.js.map +1 -0
- package/dist/lib/middleware/validation.middleware.d.ts +29 -0
- package/dist/lib/middleware/validation.middleware.d.ts.map +1 -0
- package/dist/lib/middleware/validation.middleware.js +219 -0
- package/dist/lib/middleware/validation.middleware.js.map +1 -0
- package/dist/lib/model/validation-schema/submit-message.schema.d.ts +3 -0
- package/dist/lib/model/validation-schema/submit-message.schema.d.ts.map +1 -0
- package/dist/lib/model/validation-schema/submit-message.schema.js +40 -0
- package/dist/lib/model/validation-schema/submit-message.schema.js.map +1 -0
- package/dist/lib/model/validation-schema/update-knowledge.schema.d.ts +3 -0
- package/dist/lib/model/validation-schema/update-knowledge.schema.d.ts.map +1 -0
- package/dist/lib/model/validation-schema/update-knowledge.schema.js +35 -0
- package/dist/lib/model/validation-schema/update-knowledge.schema.js.map +1 -0
- package/dist/lib/open-ai-event-processor.d.ts +101 -0
- package/dist/lib/open-ai-event-processor.d.ts.map +1 -0
- package/dist/lib/open-ai-event-processor.js +426 -0
- package/dist/lib/open-ai-event-processor.js.map +1 -0
- package/dist/lib/schemas/ai-responses.schema.d.ts +617 -0
- package/dist/lib/schemas/ai-responses.schema.d.ts.map +1 -0
- package/dist/lib/schemas/ai-responses.schema.js +377 -0
- package/dist/lib/schemas/ai-responses.schema.js.map +1 -0
- package/dist/lib/schemas/common.schemas.d.ts +84 -0
- package/dist/lib/schemas/common.schemas.d.ts.map +1 -0
- package/dist/lib/schemas/common.schemas.js +87 -0
- package/dist/lib/schemas/common.schemas.js.map +1 -0
- package/dist/lib/schemas/conversation.schema.d.ts +28 -0
- package/dist/lib/schemas/conversation.schema.d.ts.map +1 -0
- package/dist/lib/schemas/conversation.schema.js +31 -0
- package/dist/lib/schemas/conversation.schema.js.map +1 -0
- package/dist/lib/schemas/http-client.schema.d.ts +39 -0
- package/dist/lib/schemas/http-client.schema.d.ts.map +1 -0
- package/dist/lib/schemas/http-client.schema.js +36 -0
- package/dist/lib/schemas/http-client.schema.js.map +1 -0
- package/dist/lib/schemas/index.d.ts +95 -0
- package/dist/lib/schemas/index.d.ts.map +1 -0
- package/dist/lib/schemas/index.js +32 -0
- package/dist/lib/schemas/index.js.map +1 -0
- package/dist/lib/schemas/knowledge.schema.d.ts +145 -0
- package/dist/lib/schemas/knowledge.schema.d.ts.map +1 -0
- package/dist/lib/schemas/knowledge.schema.js +81 -0
- package/dist/lib/schemas/knowledge.schema.js.map +1 -0
- package/dist/lib/schemas/orchestration.schema.d.ts +168 -0
- package/dist/lib/schemas/orchestration.schema.d.ts.map +1 -0
- package/dist/lib/schemas/orchestration.schema.js +133 -0
- package/dist/lib/schemas/orchestration.schema.js.map +1 -0
- package/dist/lib/schemas/plan.schema.d.ts +103 -0
- package/dist/lib/schemas/plan.schema.d.ts.map +1 -0
- package/dist/lib/schemas/plan.schema.js +58 -0
- package/dist/lib/schemas/plan.schema.js.map +1 -0
- package/dist/lib/sequelize-service.d.ts +23 -0
- package/dist/lib/sequelize-service.d.ts.map +1 -0
- package/dist/lib/sequelize-service.js +446 -0
- package/dist/lib/sequelize-service.js.map +1 -0
- package/dist/lib/source-hash.d.ts +39 -0
- package/dist/lib/source-hash.d.ts.map +1 -0
- package/dist/lib/source-hash.js +56 -0
- package/dist/lib/source-hash.js.map +1 -0
- package/dist/lib/stable-stringify.d.ts +32 -0
- package/dist/lib/stable-stringify.d.ts.map +1 -0
- package/dist/lib/stable-stringify.js +72 -0
- package/dist/lib/stable-stringify.js.map +1 -0
- package/dist/lib/streaming-utils.d.ts +60 -0
- package/dist/lib/streaming-utils.d.ts.map +1 -0
- package/dist/lib/streaming-utils.js +190 -0
- package/dist/lib/streaming-utils.js.map +1 -0
- package/dist/lib/utils/conversation-builder.d.ts +36 -0
- package/dist/lib/utils/conversation-builder.d.ts.map +1 -0
- package/dist/lib/utils/conversation-builder.js +132 -0
- package/dist/lib/utils/conversation-builder.js.map +1 -0
- package/dist/lib/utils/domain-matcher.d.ts +25 -0
- package/dist/lib/utils/domain-matcher.d.ts.map +1 -0
- package/dist/lib/utils/domain-matcher.js +42 -0
- package/dist/lib/utils/domain-matcher.js.map +1 -0
- package/dist/lib/utils/file-util.d.ts +157 -0
- package/dist/lib/utils/file-util.d.ts.map +1 -0
- package/dist/lib/utils/file-util.js +373 -0
- package/dist/lib/utils/file-util.js.map +1 -0
- package/dist/lib/utils/html-summarizer.d.ts +27 -0
- package/dist/lib/utils/html-summarizer.d.ts.map +1 -0
- package/dist/lib/utils/html-summarizer.js +189 -0
- package/dist/lib/utils/html-summarizer.js.map +1 -0
- package/dist/lib/utils/http-client.d.ts +108 -0
- package/dist/lib/utils/http-client.d.ts.map +1 -0
- package/dist/lib/utils/http-client.js +298 -0
- package/dist/lib/utils/http-client.js.map +1 -0
- package/dist/lib/utils/index.d.ts +12 -0
- package/dist/lib/utils/index.d.ts.map +1 -0
- package/dist/lib/utils/index.js +28 -0
- package/dist/lib/utils/index.js.map +1 -0
- package/dist/lib/utils/logger.d.ts +30 -0
- package/dist/lib/utils/logger.d.ts.map +1 -0
- package/dist/lib/utils/logger.js +88 -0
- package/dist/lib/utils/logger.js.map +1 -0
- package/dist/lib/utils/mcp-utils.d.ts +208 -0
- package/dist/lib/utils/mcp-utils.d.ts.map +1 -0
- package/dist/lib/utils/mcp-utils.js +451 -0
- package/dist/lib/utils/mcp-utils.js.map +1 -0
- package/dist/lib/utils/sequelize-service.d.ts +153 -0
- package/dist/lib/utils/sequelize-service.d.ts.map +1 -0
- package/dist/lib/utils/sequelize-service.js +339 -0
- package/dist/lib/utils/sequelize-service.js.map +1 -0
- package/dist/lib/utils/tool-call-extractor.d.ts +36 -0
- package/dist/lib/utils/tool-call-extractor.d.ts.map +1 -0
- package/dist/lib/utils/tool-call-extractor.js +121 -0
- package/dist/lib/utils/tool-call-extractor.js.map +1 -0
- package/dist/lib/utils/zod-to-json-schema.d.ts +17 -0
- package/dist/lib/utils/zod-to-json-schema.d.ts.map +1 -0
- package/dist/lib/utils/zod-to-json-schema.js +53 -0
- package/dist/lib/utils/zod-to-json-schema.js.map +1 -0
- package/dist/models/AgentRequest.d.ts +33 -0
- package/dist/models/AgentRequest.d.ts.map +1 -0
- package/dist/models/AgentRequest.js +49 -0
- package/dist/models/AgentRequest.js.map +1 -0
- package/dist/models/AgentRun.d.ts +44 -0
- package/dist/models/AgentRun.d.ts.map +1 -0
- package/dist/models/AgentRun.js +53 -0
- package/dist/models/AgentRun.js.map +1 -0
- package/dist/models/AuditLog.d.ts +37 -0
- package/dist/models/AuditLog.d.ts.map +1 -0
- package/dist/models/AuditLog.js +46 -0
- package/dist/models/AuditLog.js.map +1 -0
- package/dist/models/Conversation.d.ts +39 -0
- package/dist/models/Conversation.d.ts.map +1 -0
- package/dist/models/Conversation.js +49 -0
- package/dist/models/Conversation.js.map +1 -0
- package/dist/models/Embedding.d.ts +56 -0
- package/dist/models/Embedding.d.ts.map +1 -0
- package/dist/models/Embedding.js +36 -0
- package/dist/models/Embedding.js.map +1 -0
- package/dist/models/ExecutionPattern.d.ts +57 -0
- package/dist/models/ExecutionPattern.d.ts.map +1 -0
- package/dist/models/ExecutionPattern.js +61 -0
- package/dist/models/ExecutionPattern.js.map +1 -0
- package/dist/models/Knowledge.d.ts +49 -0
- package/dist/models/Knowledge.d.ts.map +1 -0
- package/dist/models/Knowledge.js +67 -0
- package/dist/models/Knowledge.js.map +1 -0
- package/dist/models/KnowledgeRevision.d.ts +35 -0
- package/dist/models/KnowledgeRevision.d.ts.map +1 -0
- package/dist/models/KnowledgeRevision.js +51 -0
- package/dist/models/KnowledgeRevision.js.map +1 -0
- package/dist/models/Plan.d.ts +34 -0
- package/dist/models/Plan.d.ts.map +1 -0
- package/dist/models/Plan.js +43 -0
- package/dist/models/Plan.js.map +1 -0
- package/dist/models/PlanStep.d.ts +56 -0
- package/dist/models/PlanStep.d.ts.map +1 -0
- package/dist/models/PlanStep.js +65 -0
- package/dist/models/PlanStep.js.map +1 -0
- package/dist/models/SourceData.d.ts +39 -0
- package/dist/models/SourceData.d.ts.map +1 -0
- package/dist/models/SourceData.js +18 -0
- package/dist/models/SourceData.js.map +1 -0
- package/dist/models/index.d.ts +36 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +179 -0
- package/dist/models/index.js.map +1 -0
- package/dist/routes/agent.routes.d.ts +13 -0
- package/dist/routes/agent.routes.d.ts.map +1 -0
- package/dist/routes/agent.routes.js +27 -0
- package/dist/routes/agent.routes.js.map +1 -0
- package/dist/routes/agent_request.routes.d.ts +13 -0
- package/dist/routes/agent_request.routes.d.ts.map +1 -0
- package/dist/routes/agent_request.routes.js +65 -0
- package/dist/routes/agent_request.routes.js.map +1 -0
- package/dist/routes/knowledge.routes.d.ts +13 -0
- package/dist/routes/knowledge.routes.d.ts.map +1 -0
- package/dist/routes/knowledge.routes.js +91 -0
- package/dist/routes/knowledge.routes.js.map +1 -0
- package/dist/routes/mcp.routes.d.ts +14 -0
- package/dist/routes/mcp.routes.d.ts.map +1 -0
- package/dist/routes/mcp.routes.js +27 -0
- package/dist/routes/mcp.routes.js.map +1 -0
- package/dist/sdk/index.d.ts +13 -0
- package/dist/sdk/index.d.ts.map +1 -0
- package/dist/sdk/index.js +35 -0
- package/dist/sdk/index.js.map +1 -0
- package/dist/sdk/savant.sdk.d.ts +53 -0
- package/dist/sdk/savant.sdk.d.ts.map +1 -0
- package/dist/sdk/savant.sdk.js +120 -0
- package/dist/sdk/savant.sdk.js.map +1 -0
- package/dist/services/agent-request-service.d.ts +104 -0
- package/dist/services/agent-request-service.d.ts.map +1 -0
- package/dist/services/agent-request-service.js +319 -0
- package/dist/services/agent-request-service.js.map +1 -0
- package/dist/services/audit_log.service.d.ts +104 -0
- package/dist/services/audit_log.service.d.ts.map +1 -0
- package/dist/services/audit_log.service.js +339 -0
- package/dist/services/audit_log.service.js.map +1 -0
- package/dist/services/conversation.service.d.ts +90 -0
- package/dist/services/conversation.service.d.ts.map +1 -0
- package/dist/services/conversation.service.js +552 -0
- package/dist/services/conversation.service.js.map +1 -0
- package/dist/services/domain.service.d.ts +58 -0
- package/dist/services/domain.service.d.ts.map +1 -0
- package/dist/services/domain.service.js +244 -0
- package/dist/services/domain.service.js.map +1 -0
- package/dist/services/embedding.service.d.ts +132 -0
- package/dist/services/embedding.service.d.ts.map +1 -0
- package/dist/services/embedding.service.js +587 -0
- package/dist/services/embedding.service.js.map +1 -0
- package/dist/services/file_upload.service.d.ts +50 -0
- package/dist/services/file_upload.service.d.ts.map +1 -0
- package/dist/services/file_upload.service.js +172 -0
- package/dist/services/file_upload.service.js.map +1 -0
- package/dist/services/knowledge.service.d.ts +200 -0
- package/dist/services/knowledge.service.d.ts.map +1 -0
- package/dist/services/knowledge.service.js +784 -0
- package/dist/services/knowledge.service.js.map +1 -0
- package/dist/types/responses-api.types.d.ts +181 -0
- package/dist/types/responses-api.types.d.ts.map +1 -0
- package/dist/types/responses-api.types.js +12 -0
- package/dist/types/responses-api.types.js.map +1 -0
- package/package.json +145 -0
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @fileoverview Validation Middleware for Savant Orchestration Service
|
|
4
|
+
*
|
|
5
|
+
* Express middleware for request validation using validation functions.
|
|
6
|
+
* Provides consistent error handling for validation failures.
|
|
7
|
+
*
|
|
8
|
+
* @author MeasureOne, Inc.
|
|
9
|
+
* @version 1.0.0
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.validate_body = validate_body;
|
|
13
|
+
exports.validate_query = validate_query;
|
|
14
|
+
exports.validate_params = validate_params;
|
|
15
|
+
exports.require_request_body = require_request_body;
|
|
16
|
+
const zod_1 = require("zod");
|
|
17
|
+
const logger_1 = require("../utils/logger");
|
|
18
|
+
const logger = (0, logger_1.create_default_logger)('validation-middleware');
|
|
19
|
+
/**
|
|
20
|
+
* Create validation middleware for request body
|
|
21
|
+
* Accepts either a Zod schema or a validation function
|
|
22
|
+
*/
|
|
23
|
+
function validate_body(schema_or_validator) {
|
|
24
|
+
return (req, res, next) => {
|
|
25
|
+
try {
|
|
26
|
+
let validated_data;
|
|
27
|
+
// Check if it's a Zod schema
|
|
28
|
+
if (schema_or_validator instanceof zod_1.z.ZodType) {
|
|
29
|
+
validated_data = schema_or_validator.parse(req.body);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
// It's a validation function
|
|
33
|
+
validated_data = schema_or_validator(req.body);
|
|
34
|
+
}
|
|
35
|
+
// Replace request body with validated data
|
|
36
|
+
req.body = validated_data;
|
|
37
|
+
next();
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
logger.warn('Request validation failed', {
|
|
41
|
+
method: req.method,
|
|
42
|
+
url: req.originalUrl,
|
|
43
|
+
error: error instanceof Error ? error.message : 'Unknown validation error',
|
|
44
|
+
body: req.body
|
|
45
|
+
});
|
|
46
|
+
// Extract error message from Zod error if available
|
|
47
|
+
let error_message = 'Request validation failed';
|
|
48
|
+
if (error instanceof zod_1.z.ZodError) {
|
|
49
|
+
// Get the first error and format it nicely
|
|
50
|
+
const first_error = error.issues[0];
|
|
51
|
+
const field_name = first_error.path.join('.') || 'field';
|
|
52
|
+
// Format error message based on error type
|
|
53
|
+
if (first_error.code === 'too_small' && 'minimum' in first_error && first_error.minimum === 1) {
|
|
54
|
+
error_message = `${field_name} must not be null nor empty`;
|
|
55
|
+
}
|
|
56
|
+
else if (first_error.code === 'invalid_type' && 'received' in first_error) {
|
|
57
|
+
if (first_error.received === 'null') {
|
|
58
|
+
error_message = `${field_name} must not be null`;
|
|
59
|
+
}
|
|
60
|
+
else if (first_error.received === 'undefined') {
|
|
61
|
+
error_message = `${field_name} is required`;
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
error_message = `${field_name} ${first_error.message.toLowerCase()}`;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
// Use the Zod error message, but format it nicely
|
|
69
|
+
error_message = `${field_name} ${first_error.message.toLowerCase()}`;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
else if (error instanceof Error) {
|
|
73
|
+
error_message = error.message;
|
|
74
|
+
}
|
|
75
|
+
res.status(400).json({
|
|
76
|
+
error_code: 'BAD_REQUEST',
|
|
77
|
+
error_message: error_message,
|
|
78
|
+
timestamp: Date.now(),
|
|
79
|
+
http_code: 400
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Create validation middleware for query parameters
|
|
86
|
+
*/
|
|
87
|
+
function validate_query(validation_function) {
|
|
88
|
+
return (req, res, next) => {
|
|
89
|
+
try {
|
|
90
|
+
// Convert query string values to appropriate types
|
|
91
|
+
const query_data = { ...req.query };
|
|
92
|
+
// Convert numeric strings to numbers
|
|
93
|
+
Object.keys(query_data).forEach(key => {
|
|
94
|
+
const value = query_data[key];
|
|
95
|
+
if (typeof value === 'string') {
|
|
96
|
+
// Try to convert to number if it looks like a number
|
|
97
|
+
if (/^\d+$/.test(value)) {
|
|
98
|
+
query_data[key] = parseInt(value, 10);
|
|
99
|
+
}
|
|
100
|
+
else if (/^\d*\.\d+$/.test(value)) {
|
|
101
|
+
query_data[key] = parseFloat(value);
|
|
102
|
+
}
|
|
103
|
+
else if (value === 'true' || value === 'false') {
|
|
104
|
+
query_data[key] = value === 'true';
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
// Validate the query parameters
|
|
109
|
+
const validated_data = validation_function(query_data);
|
|
110
|
+
// Replace request query with validated data
|
|
111
|
+
req.query = validated_data;
|
|
112
|
+
next();
|
|
113
|
+
}
|
|
114
|
+
catch (error) {
|
|
115
|
+
logger.warn('Query validation failed', {
|
|
116
|
+
method: req.method,
|
|
117
|
+
url: req.originalUrl,
|
|
118
|
+
error: error instanceof Error ? error.message : 'Unknown validation error',
|
|
119
|
+
query: req.query
|
|
120
|
+
});
|
|
121
|
+
// Extract error message from Zod error if available
|
|
122
|
+
let error_message = 'Query parameter validation failed';
|
|
123
|
+
if (error instanceof zod_1.z.ZodError) {
|
|
124
|
+
const first_error = error.issues[0];
|
|
125
|
+
const field_name = first_error.path.join('.') || 'field';
|
|
126
|
+
if (first_error.code === 'too_small' && 'minimum' in first_error && first_error.minimum === 1) {
|
|
127
|
+
error_message = `${field_name} must not be null nor empty`;
|
|
128
|
+
}
|
|
129
|
+
else if (first_error.code === 'invalid_type' && 'received' in first_error) {
|
|
130
|
+
if (first_error.received === 'null') {
|
|
131
|
+
error_message = `${field_name} must not be null`;
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
error_message = `${field_name} ${first_error.message.toLowerCase()}`;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
error_message = `${field_name} ${first_error.message.toLowerCase()}`;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
else if (error instanceof Error) {
|
|
142
|
+
error_message = error.message;
|
|
143
|
+
}
|
|
144
|
+
res.status(400).json({
|
|
145
|
+
error_code: 'BAD_REQUEST',
|
|
146
|
+
error_message: error_message,
|
|
147
|
+
timestamp: Date.now(),
|
|
148
|
+
http_code: 400
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Create validation middleware for path parameters
|
|
155
|
+
*/
|
|
156
|
+
function validate_params(validation_function) {
|
|
157
|
+
return (req, res, next) => {
|
|
158
|
+
try {
|
|
159
|
+
// Validate the path parameters
|
|
160
|
+
const validated_data = validation_function(req.params);
|
|
161
|
+
// Replace request params with validated data
|
|
162
|
+
req.params = validated_data;
|
|
163
|
+
next();
|
|
164
|
+
}
|
|
165
|
+
catch (error) {
|
|
166
|
+
logger.warn('Path parameter validation failed', {
|
|
167
|
+
method: req.method,
|
|
168
|
+
url: req.originalUrl,
|
|
169
|
+
error: error instanceof Error ? error.message : 'Unknown validation error',
|
|
170
|
+
params: req.params
|
|
171
|
+
});
|
|
172
|
+
// Extract error message from Zod error if available
|
|
173
|
+
let error_message = 'Path parameter validation failed';
|
|
174
|
+
if (error instanceof zod_1.z.ZodError) {
|
|
175
|
+
const first_error = error.issues[0];
|
|
176
|
+
const field_name = first_error.path.join('.') || 'field';
|
|
177
|
+
if (first_error.code === 'too_small' && 'minimum' in first_error && first_error.minimum === 1) {
|
|
178
|
+
error_message = `${field_name} must not be null nor empty`;
|
|
179
|
+
}
|
|
180
|
+
else if (first_error.code === 'invalid_type' && 'received' in first_error) {
|
|
181
|
+
if (first_error.received === 'null') {
|
|
182
|
+
error_message = `${field_name} must not be null`;
|
|
183
|
+
}
|
|
184
|
+
else {
|
|
185
|
+
error_message = `${field_name} ${first_error.message.toLowerCase()}`;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
error_message = `${field_name} ${first_error.message.toLowerCase()}`;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
else if (error instanceof Error) {
|
|
193
|
+
error_message = error.message;
|
|
194
|
+
}
|
|
195
|
+
res.status(400).json({
|
|
196
|
+
error_code: 'BAD_REQUEST',
|
|
197
|
+
error_message: error_message,
|
|
198
|
+
timestamp: Date.now(),
|
|
199
|
+
http_code: 400
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Middleware to require request body
|
|
206
|
+
*/
|
|
207
|
+
function require_request_body(req, res, next) {
|
|
208
|
+
if (!req.body || Object.keys(req.body).length === 0) {
|
|
209
|
+
res.status(400).json({
|
|
210
|
+
error_code: 'BAD_REQUEST',
|
|
211
|
+
error_message: 'Request body is required',
|
|
212
|
+
timestamp: Date.now(),
|
|
213
|
+
http_code: 400
|
|
214
|
+
});
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
next();
|
|
218
|
+
}
|
|
219
|
+
//# sourceMappingURL=validation.middleware.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.middleware.js","sourceRoot":"","sources":["../../../src/lib/middleware/validation.middleware.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"submit-message.schema.d.ts","sourceRoot":"","sources":["../../../../src/lib/model/validation-schema/submit-message.schema.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,mBAAmB,qDAsCxB,CAAA;AAED,OAAO,EACH,mBAAmB,EACtB,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SubmitMessageSchema = void 0;
|
|
4
|
+
const express_validator_1 = require("express-validator");
|
|
5
|
+
const SubmitMessageSchema = () => {
|
|
6
|
+
return [
|
|
7
|
+
(0, express_validator_1.body)('agent_request_id')
|
|
8
|
+
.notEmpty().withMessage('agent_request_id cannot be null nor empty')
|
|
9
|
+
.isString().withMessage('Expected agent_request_id to be a valid string')
|
|
10
|
+
.trim().isLength({
|
|
11
|
+
min: 1
|
|
12
|
+
}).withMessage('agent_request_id must not be null nor empty'),
|
|
13
|
+
(0, express_validator_1.body)('conversation_id')
|
|
14
|
+
.notEmpty().withMessage('conversation_id cannot be null nor empty')
|
|
15
|
+
.isString().withMessage('Expected conversation_id to be a valid string')
|
|
16
|
+
.trim().isLength({
|
|
17
|
+
min: 1
|
|
18
|
+
}).withMessage('conversation_id must not be null nor empty'),
|
|
19
|
+
(0, express_validator_1.body)('message')
|
|
20
|
+
.notEmpty().withMessage('message is required')
|
|
21
|
+
.isObject().withMessage('Invalid type for field message'),
|
|
22
|
+
(0, express_validator_1.body)('message.role')
|
|
23
|
+
.notEmpty().withMessage('message.role cannot be null nor empty')
|
|
24
|
+
.isString().withMessage('Expected message.role to be a valid string')
|
|
25
|
+
.trim().isLength({
|
|
26
|
+
min: 1
|
|
27
|
+
}).withMessage('message.role must not be null nor empty'),
|
|
28
|
+
(0, express_validator_1.body)('message.content')
|
|
29
|
+
.optional(),
|
|
30
|
+
(0, express_validator_1.body)('step_id')
|
|
31
|
+
.optional()
|
|
32
|
+
.notEmpty().withMessage('step_id cannot be null nor empty if provided')
|
|
33
|
+
.isString().withMessage('Expected step_id to be a valid string')
|
|
34
|
+
.trim().isLength({
|
|
35
|
+
min: 1
|
|
36
|
+
}).withMessage('step_id must not be null nor empty if provided')
|
|
37
|
+
];
|
|
38
|
+
};
|
|
39
|
+
exports.SubmitMessageSchema = SubmitMessageSchema;
|
|
40
|
+
//# sourceMappingURL=submit-message.schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"submit-message.schema.js","sourceRoot":"","sources":["../../../../src/lib/model/validation-schema/submit-message.schema.ts"],"names":[],"mappings":";;;AAAA,yDAE2B;AAE3B,MAAM,mBAAmB,GAAG,GAAG,EAAE;IAC7B,OAAO;QACH,IAAA,wBAAI,EAAC,kBAAkB,CAAC;aACnB,QAAQ,EAAE,CAAC,WAAW,CAAC,2CAA2C,CAAC;aACnE,QAAQ,EAAE,CAAC,WAAW,CAAC,gDAAgD,CAAC;aACxE,IAAI,EAAE,CAAC,QAAQ,CAAC;YACb,GAAG,EAAE,CAAC;SACT,CAAC,CAAC,WAAW,CAAC,6CAA6C,CAAC;QAEjE,IAAA,wBAAI,EAAC,iBAAiB,CAAC;aAClB,QAAQ,EAAE,CAAC,WAAW,CAAC,0CAA0C,CAAC;aAClE,QAAQ,EAAE,CAAC,WAAW,CAAC,+CAA+C,CAAC;aACvE,IAAI,EAAE,CAAC,QAAQ,CAAC;YACb,GAAG,EAAE,CAAC;SACT,CAAC,CAAC,WAAW,CAAC,4CAA4C,CAAC;QAEhE,IAAA,wBAAI,EAAC,SAAS,CAAC;aACV,QAAQ,EAAE,CAAC,WAAW,CAAC,qBAAqB,CAAC;aAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC,gCAAgC,CAAC;QAE7D,IAAA,wBAAI,EAAC,cAAc,CAAC;aACf,QAAQ,EAAE,CAAC,WAAW,CAAC,uCAAuC,CAAC;aAC/D,QAAQ,EAAE,CAAC,WAAW,CAAC,4CAA4C,CAAC;aACpE,IAAI,EAAE,CAAC,QAAQ,CAAC;YACb,GAAG,EAAE,CAAC;SACT,CAAC,CAAC,WAAW,CAAC,yCAAyC,CAAC;QAE7D,IAAA,wBAAI,EAAC,iBAAiB,CAAC;aAClB,QAAQ,EAAE;QAEf,IAAA,wBAAI,EAAC,SAAS,CAAC;aACV,QAAQ,EAAE;aACV,QAAQ,EAAE,CAAC,WAAW,CAAC,8CAA8C,CAAC;aACtE,QAAQ,EAAE,CAAC,WAAW,CAAC,uCAAuC,CAAC;aAC/D,IAAI,EAAE,CAAC,QAAQ,CAAC;YACb,GAAG,EAAE,CAAC;SACT,CAAC,CAAC,WAAW,CAAC,gDAAgD,CAAC;KACvE,CAAA;AACL,CAAC,CAAA;AAGG,kDAAmB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-knowledge.schema.d.ts","sourceRoot":"","sources":["../../../../src/lib/model/validation-schema/update-knowledge.schema.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,qBAAqB,qDAiC1B,CAAA;AAED,OAAO,EACH,qBAAqB,EACxB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UpdateKnowledgeSchema = void 0;
|
|
4
|
+
const express_validator_1 = require("express-validator");
|
|
5
|
+
const UpdateKnowledgeSchema = () => {
|
|
6
|
+
return [
|
|
7
|
+
(0, express_validator_1.body)('id')
|
|
8
|
+
.notEmpty().withMessage('id cannot be null nor empty')
|
|
9
|
+
.isString().withMessage('Expected id to be a valid string')
|
|
10
|
+
.trim().isLength({
|
|
11
|
+
min: 1
|
|
12
|
+
}).withMessage('id must not be null nor empty'),
|
|
13
|
+
(0, express_validator_1.body)('source_data')
|
|
14
|
+
.notEmpty().withMessage('source_data is required')
|
|
15
|
+
.isObject().withMessage('Invalid type for field source_data'),
|
|
16
|
+
(0, express_validator_1.body)('source_data.source_type')
|
|
17
|
+
.notEmpty().withMessage('source_data.source_type cannot be null nor empty')
|
|
18
|
+
.isString().withMessage('Expected source_data.source_type to be a valid string'),
|
|
19
|
+
(0, express_validator_1.body)('source_data.mime_type')
|
|
20
|
+
.notEmpty().withMessage('source_data.mime_type cannot be null nor empty')
|
|
21
|
+
.isString().withMessage('Expected source_data.mime_type to be a valid string')
|
|
22
|
+
.trim().isLength({
|
|
23
|
+
min: 1
|
|
24
|
+
}).withMessage('source_data.mime_type must not be null nor empty'),
|
|
25
|
+
(0, express_validator_1.body)('source_data.content')
|
|
26
|
+
.optional()
|
|
27
|
+
.isString().withMessage('Expected source_data.content to be a valid string'),
|
|
28
|
+
(0, express_validator_1.body)('source_data.uri')
|
|
29
|
+
.optional()
|
|
30
|
+
.isString().withMessage('Expected source_data.uri to be a valid string')
|
|
31
|
+
.isURL().withMessage('source_data.uri must be a valid URL')
|
|
32
|
+
];
|
|
33
|
+
};
|
|
34
|
+
exports.UpdateKnowledgeSchema = UpdateKnowledgeSchema;
|
|
35
|
+
//# sourceMappingURL=update-knowledge.schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-knowledge.schema.js","sourceRoot":"","sources":["../../../../src/lib/model/validation-schema/update-knowledge.schema.ts"],"names":[],"mappings":";;;AAAA,yDAE2B;AAE3B,MAAM,qBAAqB,GAAG,GAAG,EAAE;IAC/B,OAAO;QACH,IAAA,wBAAI,EAAC,IAAI,CAAC;aACL,QAAQ,EAAE,CAAC,WAAW,CAAC,6BAA6B,CAAC;aACrD,QAAQ,EAAE,CAAC,WAAW,CAAC,kCAAkC,CAAC;aAC1D,IAAI,EAAE,CAAC,QAAQ,CAAC;YACb,GAAG,EAAE,CAAC;SACT,CAAC,CAAC,WAAW,CAAC,+BAA+B,CAAC;QAEnD,IAAA,wBAAI,EAAC,aAAa,CAAC;aACd,QAAQ,EAAE,CAAC,WAAW,CAAC,yBAAyB,CAAC;aACjD,QAAQ,EAAE,CAAC,WAAW,CAAC,oCAAoC,CAAC;QAEjE,IAAA,wBAAI,EAAC,yBAAyB,CAAC;aAC1B,QAAQ,EAAE,CAAC,WAAW,CAAC,kDAAkD,CAAC;aAC1E,QAAQ,EAAE,CAAC,WAAW,CAAC,uDAAuD,CAAC;QAEpF,IAAA,wBAAI,EAAC,uBAAuB,CAAC;aACxB,QAAQ,EAAE,CAAC,WAAW,CAAC,gDAAgD,CAAC;aACxE,QAAQ,EAAE,CAAC,WAAW,CAAC,qDAAqD,CAAC;aAC7E,IAAI,EAAE,CAAC,QAAQ,CAAC;YACb,GAAG,EAAE,CAAC;SACT,CAAC,CAAC,WAAW,CAAC,kDAAkD,CAAC;QAEtE,IAAA,wBAAI,EAAC,qBAAqB,CAAC;aACtB,QAAQ,EAAE;aACV,QAAQ,EAAE,CAAC,WAAW,CAAC,mDAAmD,CAAC;QAEhF,IAAA,wBAAI,EAAC,iBAAiB,CAAC;aAClB,QAAQ,EAAE;aACV,QAAQ,EAAE,CAAC,WAAW,CAAC,+CAA+C,CAAC;aACvE,KAAK,EAAE,CAAC,WAAW,CAAC,qCAAqC,CAAC;KAClE,CAAA;AACL,CAAC,CAAA;AAGG,sDAAqB"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Unified Event Processor for OpenAI Agent Events
|
|
3
|
+
*
|
|
4
|
+
* This module provides a centralized event processor that handles all OpenAI Agent
|
|
5
|
+
* streaming events in one place, eliminating the scattered event handling logic
|
|
6
|
+
* that was previously split across multiple files.
|
|
7
|
+
*
|
|
8
|
+
* @author MeasureOne
|
|
9
|
+
* @version 1.0.0
|
|
10
|
+
*/
|
|
11
|
+
import { StreamingUtils } from "./streaming-utils";
|
|
12
|
+
/**
|
|
13
|
+
* Unified event processor for OpenAI Agent streaming events
|
|
14
|
+
* Processes events and directly writes formatted output to the client
|
|
15
|
+
*/
|
|
16
|
+
export declare class OpenAIEventProcessor {
|
|
17
|
+
private streaming_utils;
|
|
18
|
+
private active_func_call_name?;
|
|
19
|
+
private active_func_args_buf;
|
|
20
|
+
private accumulated_text;
|
|
21
|
+
private content_buffer;
|
|
22
|
+
private last_content;
|
|
23
|
+
private last_content_at;
|
|
24
|
+
private last_stream_time;
|
|
25
|
+
private readonly stream_interval_ms;
|
|
26
|
+
private readonly min_chunk_size;
|
|
27
|
+
constructor(streaming_utils: StreamingUtils);
|
|
28
|
+
/**
|
|
29
|
+
* Process any event - handles both raw_model_stream_event and other event types
|
|
30
|
+
*/
|
|
31
|
+
process_event(type: string, data: any): void;
|
|
32
|
+
/**
|
|
33
|
+
* Extract inner event from the raw_model_stream_event wrapper
|
|
34
|
+
*/
|
|
35
|
+
private get_inner_event;
|
|
36
|
+
/**
|
|
37
|
+
* Extract text delta from various event formats
|
|
38
|
+
*/
|
|
39
|
+
private pick_text_delta;
|
|
40
|
+
/**
|
|
41
|
+
* Handle events by their type
|
|
42
|
+
*/
|
|
43
|
+
private handle_event_by_type;
|
|
44
|
+
/**
|
|
45
|
+
* Handle text deltas with buffering and deduplication
|
|
46
|
+
*/
|
|
47
|
+
private handle_text_delta;
|
|
48
|
+
/**
|
|
49
|
+
* Handle tool call started event
|
|
50
|
+
*/
|
|
51
|
+
private handle_tool_call_started;
|
|
52
|
+
/**
|
|
53
|
+
* Handle tool call delta event
|
|
54
|
+
*/
|
|
55
|
+
private handle_tool_call_delta;
|
|
56
|
+
/**
|
|
57
|
+
* Handle tool call completed event
|
|
58
|
+
*/
|
|
59
|
+
private handle_tool_call_completed;
|
|
60
|
+
/**
|
|
61
|
+
* Handle function call arguments delta for accumulation
|
|
62
|
+
*/
|
|
63
|
+
private handle_function_call_arguments_delta;
|
|
64
|
+
/**
|
|
65
|
+
* Handle function call completion with native handoff bridging
|
|
66
|
+
*/
|
|
67
|
+
private handle_function_call_completed;
|
|
68
|
+
/**
|
|
69
|
+
* Handle handoff started event
|
|
70
|
+
*/
|
|
71
|
+
private handle_handoff_started;
|
|
72
|
+
/**
|
|
73
|
+
* Handle handoff completed event
|
|
74
|
+
*/
|
|
75
|
+
private handle_handoff_completed;
|
|
76
|
+
/**
|
|
77
|
+
* Handle error event
|
|
78
|
+
*/
|
|
79
|
+
private handle_error;
|
|
80
|
+
/**
|
|
81
|
+
* Handle completion event
|
|
82
|
+
*/
|
|
83
|
+
private handle_completed;
|
|
84
|
+
/**
|
|
85
|
+
* Check if an event type is internal and should be filtered out
|
|
86
|
+
*/
|
|
87
|
+
private is_internal_event;
|
|
88
|
+
/**
|
|
89
|
+
* Flush any remaining content in the buffer
|
|
90
|
+
*/
|
|
91
|
+
flush_content(): void;
|
|
92
|
+
/**
|
|
93
|
+
* Handle special events that need custom processing
|
|
94
|
+
*/
|
|
95
|
+
private handle_special_event;
|
|
96
|
+
/**
|
|
97
|
+
* Reset the processor state
|
|
98
|
+
*/
|
|
99
|
+
reset(): void;
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=open-ai-event-processor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"open-ai-event-processor.d.ts","sourceRoot":"","sources":["../../src/lib/open-ai-event-processor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAKnD;;;GAGG;AACH,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,qBAAqB,CAAC,CAAS;IACvC,OAAO,CAAC,oBAAoB,CAA8B;IAC1D,OAAO,CAAC,gBAAgB,CAAM;IAC9B,OAAO,CAAC,cAAc,CAAM;IAC5B,OAAO,CAAC,YAAY,CAAM;IAC1B,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,gBAAgB,CAAc;IAGtC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAO;IAC1C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAM;gBAEzB,eAAe,EAAE,cAAc;IAI3C;;OAEG;IACI,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI;IA0BnD;;OAEG;IACH,OAAO,CAAC,eAAe;IAOvB;;OAEG;IACH,OAAO,CAAC,eAAe;IA4CvB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA+C5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA0CzB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAShC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAS9B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAoBlC;;OAEG;IACH,OAAO,CAAC,oCAAoC;IAgB5C;;OAEG;IACH,OAAO,CAAC,8BAA8B;IA2BtC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAU9B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAOhC;;OAEG;IACH,OAAO,CAAC,YAAY;IAOpB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAYxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAwBzB;;OAEG;IACI,aAAa,IAAI,IAAI;IAO5B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA4C5B;;OAEG;IACI,KAAK,IAAI,IAAI;CASvB"}
|