@pcircle/memesh 2.7.0 → 2.8.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.md +38 -34
- package/README.zh-TW.md +42 -46
- package/dist/cli/setup-wizard.d.ts.map +1 -1
- package/dist/cli/setup-wizard.js +0 -41
- package/dist/cli/setup-wizard.js.map +1 -1
- package/dist/cloud/MeMeshCloudClient.d.ts +88 -0
- package/dist/cloud/MeMeshCloudClient.d.ts.map +1 -0
- package/dist/cloud/MeMeshCloudClient.js +147 -0
- package/dist/cloud/MeMeshCloudClient.js.map +1 -0
- package/dist/cloud/index.d.ts +3 -0
- package/dist/cloud/index.d.ts.map +1 -0
- package/dist/cloud/index.js +2 -0
- package/dist/cloud/index.js.map +1 -0
- package/dist/config/index.d.ts +12 -2
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +10 -0
- package/dist/config/index.js.map +1 -1
- package/dist/core/AgentRegistry.d.ts +1 -2
- package/dist/core/AgentRegistry.d.ts.map +1 -1
- package/dist/core/AgentRegistry.js.map +1 -1
- package/dist/core/HookIntegration.d.ts +2 -5
- package/dist/core/HookIntegration.d.ts.map +1 -1
- package/dist/core/HookIntegration.js +9 -11
- package/dist/core/HookIntegration.js.map +1 -1
- package/dist/core/ServiceLocator.d.ts.map +1 -1
- package/dist/core/ServiceLocator.js +2 -1
- package/dist/core/ServiceLocator.js.map +1 -1
- package/dist/embeddings/EmbeddingService.d.ts +20 -0
- package/dist/embeddings/EmbeddingService.d.ts.map +1 -0
- package/dist/embeddings/EmbeddingService.js +109 -0
- package/dist/embeddings/EmbeddingService.js.map +1 -0
- package/dist/embeddings/ModelManager.d.ts +18 -0
- package/dist/embeddings/ModelManager.d.ts.map +1 -0
- package/dist/embeddings/ModelManager.js +84 -0
- package/dist/embeddings/ModelManager.js.map +1 -0
- package/dist/embeddings/VectorExtension.d.ts +19 -0
- package/dist/embeddings/VectorExtension.d.ts.map +1 -0
- package/dist/embeddings/VectorExtension.js +107 -0
- package/dist/embeddings/VectorExtension.js.map +1 -0
- package/dist/embeddings/index.d.ts +4 -0
- package/dist/embeddings/index.d.ts.map +1 -0
- package/dist/embeddings/index.js +4 -0
- package/dist/embeddings/index.js.map +1 -0
- package/dist/errors/ErrorClassifier.d.ts.map +1 -1
- package/dist/errors/ErrorClassifier.js +0 -27
- package/dist/errors/ErrorClassifier.js.map +1 -1
- package/dist/i18n/locales/en.js +1 -1
- package/dist/i18n/locales/en.js.map +1 -1
- package/dist/index.d.ts +0 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -76
- package/dist/index.js.map +1 -1
- package/dist/integrations/session-memory/SessionContextInjector.d.ts +30 -0
- package/dist/integrations/session-memory/SessionContextInjector.d.ts.map +1 -0
- package/dist/integrations/session-memory/SessionContextInjector.js +192 -0
- package/dist/integrations/session-memory/SessionContextInjector.js.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryIngester.d.ts +15 -0
- package/dist/integrations/session-memory/SessionMemoryIngester.d.ts.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryIngester.js +229 -0
- package/dist/integrations/session-memory/SessionMemoryIngester.js.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryParser.d.ts +16 -0
- package/dist/integrations/session-memory/SessionMemoryParser.d.ts.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryParser.js +271 -0
- package/dist/integrations/session-memory/SessionMemoryParser.js.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryPipeline.d.ts +20 -0
- package/dist/integrations/session-memory/SessionMemoryPipeline.d.ts.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryPipeline.js +60 -0
- package/dist/integrations/session-memory/SessionMemoryPipeline.js.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryWatcher.d.ts +27 -0
- package/dist/integrations/session-memory/SessionMemoryWatcher.d.ts.map +1 -0
- package/dist/integrations/session-memory/SessionMemoryWatcher.js +145 -0
- package/dist/integrations/session-memory/SessionMemoryWatcher.js.map +1 -0
- package/dist/integrations/session-memory/index.d.ts +9 -0
- package/dist/integrations/session-memory/index.d.ts.map +1 -0
- package/dist/integrations/session-memory/index.js +6 -0
- package/dist/integrations/session-memory/index.js.map +1 -0
- package/dist/integrations/session-memory/types.d.ts +74 -0
- package/dist/integrations/session-memory/types.d.ts.map +1 -0
- package/dist/integrations/session-memory/types.js +22 -0
- package/dist/integrations/session-memory/types.js.map +1 -0
- package/dist/knowledge-graph/index.d.ts.map +1 -1
- package/dist/knowledge-graph/index.js.map +1 -1
- package/dist/mcp/BuddyCommands.d.ts +0 -1
- package/dist/mcp/BuddyCommands.d.ts.map +1 -1
- package/dist/mcp/BuddyCommands.js +49 -215
- package/dist/mcp/BuddyCommands.js.map +1 -1
- package/dist/mcp/HumanInLoopUI.d.ts +1 -1
- package/dist/mcp/HumanInLoopUI.d.ts.map +1 -1
- package/dist/mcp/ServerInitializer.d.ts +3 -18
- package/dist/mcp/ServerInitializer.d.ts.map +1 -1
- package/dist/mcp/ServerInitializer.js +8 -41
- package/dist/mcp/ServerInitializer.js.map +1 -1
- package/dist/mcp/SessionBootstrapper.d.ts +3 -1
- package/dist/mcp/SessionBootstrapper.d.ts.map +1 -1
- package/dist/mcp/SessionBootstrapper.js +37 -25
- package/dist/mcp/SessionBootstrapper.js.map +1 -1
- package/dist/mcp/ToolDefinitions.d.ts +1 -0
- package/dist/mcp/ToolDefinitions.d.ts.map +1 -1
- package/dist/mcp/ToolDefinitions.js +67 -243
- package/dist/mcp/ToolDefinitions.js.map +1 -1
- package/dist/mcp/ToolRouter.d.ts +6 -9
- package/dist/mcp/ToolRouter.d.ts.map +1 -1
- package/dist/mcp/ToolRouter.js +44 -74
- package/dist/mcp/ToolRouter.js.map +1 -1
- package/dist/mcp/handlers/BuddyHandlers.d.ts +1 -3
- package/dist/mcp/handlers/BuddyHandlers.d.ts.map +1 -1
- package/dist/mcp/handlers/BuddyHandlers.js +2 -4
- package/dist/mcp/handlers/BuddyHandlers.js.map +1 -1
- package/dist/mcp/handlers/BuddyRecordMistake.d.ts +1 -1
- package/dist/mcp/handlers/BuddyRecordMistake.d.ts.map +1 -1
- package/dist/mcp/handlers/BuddyRecordMistake.js +1 -1
- package/dist/mcp/handlers/BuddyRecordMistake.js.map +1 -1
- package/dist/mcp/handlers/ToolHandlers.d.ts +1 -21
- package/dist/mcp/handlers/ToolHandlers.d.ts.map +1 -1
- package/dist/mcp/handlers/ToolHandlers.js +73 -302
- package/dist/mcp/handlers/ToolHandlers.js.map +1 -1
- package/dist/mcp/handlers/index.d.ts +0 -1
- package/dist/mcp/handlers/index.d.ts.map +1 -1
- package/dist/mcp/handlers/index.js +0 -1
- package/dist/mcp/handlers/index.js.map +1 -1
- package/dist/mcp/index.d.ts +1 -1
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/resources/best-practices.md +1 -1
- package/dist/mcp/resources/ccb-complete-guide.md +25 -70
- package/dist/mcp/resources/examples.md +1 -1
- package/dist/mcp/resources/handlers/TaskLogsHandler.d.ts.map +1 -1
- package/dist/mcp/resources/handlers/TaskLogsHandler.js +3 -4
- package/dist/mcp/resources/handlers/TaskLogsHandler.js.map +1 -1
- package/dist/mcp/resources/quick-reference.md +1 -1
- package/dist/mcp/resources/usage-guide.md +1 -1
- package/dist/mcp/schemas/OutputSchemas.d.ts +34 -372
- package/dist/mcp/schemas/OutputSchemas.d.ts.map +1 -1
- package/dist/mcp/schemas/OutputSchemas.js +17 -206
- package/dist/mcp/schemas/OutputSchemas.js.map +1 -1
- package/dist/mcp/server-bootstrap.js +37 -90
- package/dist/mcp/server-bootstrap.js.map +1 -1
- package/dist/mcp/server.d.ts +0 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +16 -29
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools/buddy-do.d.ts +1 -2
- package/dist/mcp/tools/buddy-do.d.ts.map +1 -1
- package/dist/mcp/tools/buddy-do.js +5 -27
- package/dist/mcp/tools/buddy-do.js.map +1 -1
- package/dist/mcp/tools/buddy-remember.d.ts +14 -1
- package/dist/mcp/tools/buddy-remember.d.ts.map +1 -1
- package/dist/mcp/tools/buddy-remember.js +154 -13
- package/dist/mcp/tools/buddy-remember.js.map +1 -1
- package/dist/mcp/tools/memesh-cloud-sync.d.ts +30 -0
- package/dist/mcp/tools/memesh-cloud-sync.d.ts.map +1 -0
- package/dist/mcp/tools/memesh-cloud-sync.js +185 -0
- package/dist/mcp/tools/memesh-cloud-sync.js.map +1 -0
- package/dist/mcp/validation.d.ts +1 -58
- package/dist/mcp/validation.d.ts.map +1 -1
- package/dist/mcp/validation.js +0 -47
- package/dist/mcp/validation.js.map +1 -1
- package/dist/memory/SmartMemoryQuery.d.ts.map +1 -1
- package/dist/memory/SmartMemoryQuery.js +3 -2
- package/dist/memory/SmartMemoryQuery.js.map +1 -1
- package/dist/memory/UnifiedMemoryStore.js +1 -1
- package/dist/memory/UnifiedMemoryStore.js.map +1 -1
- package/dist/memory/types/pattern-types.d.ts +1 -1
- package/dist/memory/types/pattern-types.d.ts.map +1 -1
- package/dist/prompts/templates/PromptTemplates.d.ts +1 -1
- package/dist/prompts/templates/PromptTemplates.d.ts.map +1 -1
- package/dist/prompts/templates/PromptTemplates.js.map +1 -1
- package/dist/telemetry/TelemetryStore.d.ts.map +1 -1
- package/dist/telemetry/TelemetryStore.js.map +1 -1
- package/dist/types/AgentClassification.d.ts +24 -0
- package/dist/types/AgentClassification.d.ts.map +1 -1
- package/dist/types/AgentClassification.js +12 -0
- package/dist/types/AgentClassification.js.map +1 -1
- package/dist/ui/UIEventBus.js +2 -2
- package/dist/ui/UIEventBus.js.map +1 -1
- package/dist/ui/design-tokens.d.ts.map +1 -1
- package/dist/ui/design-tokens.js +6 -7
- package/dist/ui/design-tokens.js.map +1 -1
- package/dist/utils/logger.js +1 -1
- package/dist/utils/logger.js.map +1 -1
- package/package.json +7 -5
- package/plugin.json +1 -1
- package/scripts/postinstall.js +10 -67
- package/dist/a2a/client/A2AClient.d.ts +0 -23
- package/dist/a2a/client/A2AClient.d.ts.map +0 -1
- package/dist/a2a/client/A2AClient.js +0 -260
- package/dist/a2a/client/A2AClient.js.map +0 -1
- package/dist/a2a/client/index.d.ts +0 -2
- package/dist/a2a/client/index.d.ts.map +0 -1
- package/dist/a2a/client/index.js +0 -2
- package/dist/a2a/client/index.js.map +0 -1
- package/dist/a2a/constants.d.ts +0 -34
- package/dist/a2a/constants.d.ts.map +0 -1
- package/dist/a2a/constants.js +0 -34
- package/dist/a2a/constants.js.map +0 -1
- package/dist/a2a/delegator/MCPTaskDelegator.d.ts +0 -19
- package/dist/a2a/delegator/MCPTaskDelegator.d.ts.map +0 -1
- package/dist/a2a/delegator/MCPTaskDelegator.js +0 -184
- package/dist/a2a/delegator/MCPTaskDelegator.js.map +0 -1
- package/dist/a2a/delegator/index.d.ts +0 -3
- package/dist/a2a/delegator/index.d.ts.map +0 -1
- package/dist/a2a/delegator/index.js +0 -2
- package/dist/a2a/delegator/index.js.map +0 -1
- package/dist/a2a/delegator/types.d.ts +0 -9
- package/dist/a2a/delegator/types.d.ts.map +0 -1
- package/dist/a2a/delegator/types.js +0 -2
- package/dist/a2a/delegator/types.js.map +0 -1
- package/dist/a2a/errors/ErrorCodes.d.ts +0 -26
- package/dist/a2a/errors/ErrorCodes.d.ts.map +0 -1
- package/dist/a2a/errors/ErrorCodes.js +0 -25
- package/dist/a2a/errors/ErrorCodes.js.map +0 -1
- package/dist/a2a/errors/ErrorMessages.d.ts +0 -28
- package/dist/a2a/errors/ErrorMessages.d.ts.map +0 -1
- package/dist/a2a/errors/ErrorMessages.js +0 -51
- package/dist/a2a/errors/ErrorMessages.js.map +0 -1
- package/dist/a2a/errors/index.d.ts +0 -3
- package/dist/a2a/errors/index.d.ts.map +0 -1
- package/dist/a2a/errors/index.js +0 -3
- package/dist/a2a/errors/index.js.map +0 -1
- package/dist/a2a/executor/TaskExecutor.d.ts +0 -11
- package/dist/a2a/executor/TaskExecutor.d.ts.map +0 -1
- package/dist/a2a/executor/TaskExecutor.js +0 -15
- package/dist/a2a/executor/TaskExecutor.js.map +0 -1
- package/dist/a2a/executor/index.d.ts +0 -2
- package/dist/a2a/executor/index.d.ts.map +0 -1
- package/dist/a2a/executor/index.js +0 -2
- package/dist/a2a/executor/index.js.map +0 -1
- package/dist/a2a/jobs/TimeoutChecker.d.ts +0 -49
- package/dist/a2a/jobs/TimeoutChecker.d.ts.map +0 -1
- package/dist/a2a/jobs/TimeoutChecker.js +0 -176
- package/dist/a2a/jobs/TimeoutChecker.js.map +0 -1
- package/dist/a2a/metrics/A2AMetrics.d.ts +0 -38
- package/dist/a2a/metrics/A2AMetrics.d.ts.map +0 -1
- package/dist/a2a/metrics/A2AMetrics.js +0 -142
- package/dist/a2a/metrics/A2AMetrics.js.map +0 -1
- package/dist/a2a/metrics/index.d.ts +0 -3
- package/dist/a2a/metrics/index.d.ts.map +0 -1
- package/dist/a2a/metrics/index.js +0 -2
- package/dist/a2a/metrics/index.js.map +0 -1
- package/dist/a2a/server/A2AServer.d.ts +0 -34
- package/dist/a2a/server/A2AServer.d.ts.map +0 -1
- package/dist/a2a/server/A2AServer.js +0 -160
- package/dist/a2a/server/A2AServer.js.map +0 -1
- package/dist/a2a/server/index.d.ts +0 -4
- package/dist/a2a/server/index.d.ts.map +0 -1
- package/dist/a2a/server/index.js +0 -4
- package/dist/a2a/server/index.js.map +0 -1
- package/dist/a2a/server/middleware/auth.d.ts +0 -6
- package/dist/a2a/server/middleware/auth.d.ts.map +0 -1
- package/dist/a2a/server/middleware/auth.js +0 -64
- package/dist/a2a/server/middleware/auth.js.map +0 -1
- package/dist/a2a/server/middleware/csrf.d.ts +0 -7
- package/dist/a2a/server/middleware/csrf.d.ts.map +0 -1
- package/dist/a2a/server/middleware/csrf.js +0 -169
- package/dist/a2a/server/middleware/csrf.js.map +0 -1
- package/dist/a2a/server/middleware/rateLimit.d.ts +0 -9
- package/dist/a2a/server/middleware/rateLimit.d.ts.map +0 -1
- package/dist/a2a/server/middleware/rateLimit.js +0 -192
- package/dist/a2a/server/middleware/rateLimit.js.map +0 -1
- package/dist/a2a/server/middleware/resourceProtection.d.ts +0 -17
- package/dist/a2a/server/middleware/resourceProtection.d.ts.map +0 -1
- package/dist/a2a/server/middleware/resourceProtection.js +0 -258
- package/dist/a2a/server/middleware/resourceProtection.js.map +0 -1
- package/dist/a2a/server/middleware/timeout.d.ts +0 -4
- package/dist/a2a/server/middleware/timeout.d.ts.map +0 -1
- package/dist/a2a/server/middleware/timeout.js +0 -56
- package/dist/a2a/server/middleware/timeout.js.map +0 -1
- package/dist/a2a/server/middleware.d.ts +0 -6
- package/dist/a2a/server/middleware.d.ts.map +0 -1
- package/dist/a2a/server/middleware.js +0 -72
- package/dist/a2a/server/middleware.js.map +0 -1
- package/dist/a2a/server/routes.d.ts +0 -18
- package/dist/a2a/server/routes.d.ts.map +0 -1
- package/dist/a2a/server/routes.js +0 -176
- package/dist/a2a/server/routes.js.map +0 -1
- package/dist/a2a/server/validation/index.d.ts +0 -2
- package/dist/a2a/server/validation/index.d.ts.map +0 -1
- package/dist/a2a/server/validation/index.js +0 -2
- package/dist/a2a/server/validation/index.js.map +0 -1
- package/dist/a2a/server/validation/sendMessageSchema.d.ts +0 -112
- package/dist/a2a/server/validation/sendMessageSchema.d.ts.map +0 -1
- package/dist/a2a/server/validation/sendMessageSchema.js +0 -143
- package/dist/a2a/server/validation/sendMessageSchema.js.map +0 -1
- package/dist/a2a/storage/AgentRegistry.d.ts +0 -26
- package/dist/a2a/storage/AgentRegistry.d.ts.map +0 -1
- package/dist/a2a/storage/AgentRegistry.js +0 -197
- package/dist/a2a/storage/AgentRegistry.js.map +0 -1
- package/dist/a2a/storage/TaskQueue.d.ts +0 -27
- package/dist/a2a/storage/TaskQueue.d.ts.map +0 -1
- package/dist/a2a/storage/TaskQueue.js +0 -339
- package/dist/a2a/storage/TaskQueue.js.map +0 -1
- package/dist/a2a/storage/index.d.ts +0 -3
- package/dist/a2a/storage/index.d.ts.map +0 -1
- package/dist/a2a/storage/index.js +0 -3
- package/dist/a2a/storage/index.js.map +0 -1
- package/dist/a2a/storage/inputValidation.d.ts +0 -18
- package/dist/a2a/storage/inputValidation.d.ts.map +0 -1
- package/dist/a2a/storage/inputValidation.js +0 -101
- package/dist/a2a/storage/inputValidation.js.map +0 -1
- package/dist/a2a/storage/registry-schemas.sql +0 -20
- package/dist/a2a/storage/schemas.sql +0 -64
- package/dist/a2a/types/agent-card.d.ts +0 -59
- package/dist/a2a/types/agent-card.d.ts.map +0 -1
- package/dist/a2a/types/agent-card.js +0 -2
- package/dist/a2a/types/agent-card.js.map +0 -1
- package/dist/a2a/types/index.d.ts +0 -6
- package/dist/a2a/types/index.d.ts.map +0 -1
- package/dist/a2a/types/index.js +0 -2
- package/dist/a2a/types/index.js.map +0 -1
- package/dist/a2a/types/message.d.ts +0 -16
- package/dist/a2a/types/message.d.ts.map +0 -1
- package/dist/a2a/types/message.js +0 -2
- package/dist/a2a/types/message.js.map +0 -1
- package/dist/a2a/types/protocol.d.ts +0 -60
- package/dist/a2a/types/protocol.d.ts.map +0 -1
- package/dist/a2a/types/protocol.js +0 -2
- package/dist/a2a/types/protocol.js.map +0 -1
- package/dist/a2a/types/rateLimit.d.ts +0 -26
- package/dist/a2a/types/rateLimit.d.ts.map +0 -1
- package/dist/a2a/types/rateLimit.js +0 -2
- package/dist/a2a/types/rateLimit.js.map +0 -1
- package/dist/a2a/types/task.d.ts +0 -73
- package/dist/a2a/types/task.d.ts.map +0 -1
- package/dist/a2a/types/task.js +0 -2
- package/dist/a2a/types/task.js.map +0 -1
- package/dist/agents/DevelopmentButler.d.ts +0 -89
- package/dist/agents/DevelopmentButler.d.ts.map +0 -1
- package/dist/agents/DevelopmentButler.js +0 -449
- package/dist/agents/DevelopmentButler.js.map +0 -1
- package/dist/agents/E2EHealingAgent.d.ts +0 -29
- package/dist/agents/E2EHealingAgent.d.ts.map +0 -1
- package/dist/agents/E2EHealingAgent.js +0 -148
- package/dist/agents/E2EHealingAgent.js.map +0 -1
- package/dist/agents/TestWriterAgent.d.ts +0 -26
- package/dist/agents/TestWriterAgent.d.ts.map +0 -1
- package/dist/agents/TestWriterAgent.js +0 -139
- package/dist/agents/TestWriterAgent.js.map +0 -1
- package/dist/agents/base/AgentExecutor.d.ts +0 -7
- package/dist/agents/base/AgentExecutor.d.ts.map +0 -1
- package/dist/agents/base/AgentExecutor.js +0 -13
- package/dist/agents/base/AgentExecutor.js.map +0 -1
- package/dist/agents/base/index.d.ts +0 -2
- package/dist/agents/base/index.d.ts.map +0 -1
- package/dist/agents/base/index.js +0 -2
- package/dist/agents/base/index.js.map +0 -1
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.d.ts +0 -24
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.d.ts.map +0 -1
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.js +0 -55
- package/dist/agents/e2e-healing/analyzers/EvidenceCollector.js.map +0 -1
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.d.ts +0 -22
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.d.ts.map +0 -1
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.js +0 -36
- package/dist/agents/e2e-healing/analyzers/FailureAnalyzer.js.map +0 -1
- package/dist/agents/e2e-healing/config.d.ts +0 -4
- package/dist/agents/e2e-healing/config.d.ts.map +0 -1
- package/dist/agents/e2e-healing/config.js +0 -28
- package/dist/agents/e2e-healing/config.js.map +0 -1
- package/dist/agents/e2e-healing/generators/FixGenerator.d.ts +0 -21
- package/dist/agents/e2e-healing/generators/FixGenerator.d.ts.map +0 -1
- package/dist/agents/e2e-healing/generators/FixGenerator.js +0 -33
- package/dist/agents/e2e-healing/generators/FixGenerator.js.map +0 -1
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.d.ts +0 -29
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.d.ts.map +0 -1
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.js +0 -70
- package/dist/agents/e2e-healing/orchestrator/TestOrchestrator.js.map +0 -1
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.d.ts +0 -30
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.d.ts.map +0 -1
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.js +0 -115
- package/dist/agents/e2e-healing/policy/GraduatedAutonomyPolicy.js.map +0 -1
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.d.ts +0 -19
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.d.ts.map +0 -1
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.js +0 -79
- package/dist/agents/e2e-healing/runners/PlaywrightRunner.js.map +0 -1
- package/dist/agents/e2e-healing/safety/CircuitBreaker.d.ts +0 -26
- package/dist/agents/e2e-healing/safety/CircuitBreaker.d.ts.map +0 -1
- package/dist/agents/e2e-healing/safety/CircuitBreaker.js +0 -75
- package/dist/agents/e2e-healing/safety/CircuitBreaker.js.map +0 -1
- package/dist/agents/e2e-healing/safety/RollbackManager.d.ts +0 -31
- package/dist/agents/e2e-healing/safety/RollbackManager.d.ts.map +0 -1
- package/dist/agents/e2e-healing/safety/RollbackManager.js +0 -130
- package/dist/agents/e2e-healing/safety/RollbackManager.js.map +0 -1
- package/dist/agents/e2e-healing/safety/SafetyGate.d.ts +0 -21
- package/dist/agents/e2e-healing/safety/SafetyGate.d.ts.map +0 -1
- package/dist/agents/e2e-healing/safety/SafetyGate.js +0 -62
- package/dist/agents/e2e-healing/safety/SafetyGate.js.map +0 -1
- package/dist/agents/e2e-healing/safety/ScopeLimiter.d.ts +0 -14
- package/dist/agents/e2e-healing/safety/ScopeLimiter.d.ts.map +0 -1
- package/dist/agents/e2e-healing/safety/ScopeLimiter.js +0 -36
- package/dist/agents/e2e-healing/safety/ScopeLimiter.js.map +0 -1
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.d.ts +0 -29
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.d.ts.map +0 -1
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.js +0 -86
- package/dist/agents/e2e-healing/sdk/AgentSDKAdapter.js.map +0 -1
- package/dist/agents/e2e-healing/types.d.ts +0 -46
- package/dist/agents/e2e-healing/types.d.ts.map +0 -1
- package/dist/agents/e2e-healing/types.js +0 -2
- package/dist/agents/e2e-healing/types.js.map +0 -1
- package/dist/agents/knowledge/KnowledgeGraph.d.ts +0 -26
- package/dist/agents/knowledge/KnowledgeGraph.d.ts.map +0 -1
- package/dist/agents/knowledge/KnowledgeGraph.js +0 -106
- package/dist/agents/knowledge/KnowledgeGraph.js.map +0 -1
- package/dist/agents/knowledge/KnowledgeGraphSQLite.d.ts +0 -42
- package/dist/agents/knowledge/KnowledgeGraphSQLite.d.ts.map +0 -1
- package/dist/agents/knowledge/KnowledgeGraphSQLite.js +0 -349
- package/dist/agents/knowledge/KnowledgeGraphSQLite.js.map +0 -1
- package/dist/agents/knowledge/index.d.ts +0 -94
- package/dist/agents/knowledge/index.d.ts.map +0 -1
- package/dist/agents/knowledge/index.js +0 -296
- package/dist/agents/knowledge/index.js.map +0 -1
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.d.ts +0 -25
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.d.ts.map +0 -1
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.js +0 -344
- package/dist/agents/knowledge/storage/KnowledgeGraphStore.js.map +0 -1
- package/dist/agents/knowledge/types.d.ts +0 -21
- package/dist/agents/knowledge/types.d.ts.map +0 -1
- package/dist/agents/knowledge/types.js +0 -2
- package/dist/agents/knowledge/types.js.map +0 -1
- package/dist/agents/templates/ci-templates.d.ts +0 -8
- package/dist/agents/templates/ci-templates.d.ts.map +0 -1
- package/dist/agents/templates/ci-templates.js +0 -119
- package/dist/agents/templates/ci-templates.js.map +0 -1
- package/dist/agents/templates/test-templates.d.ts +0 -18
- package/dist/agents/templates/test-templates.d.ts.map +0 -1
- package/dist/agents/templates/test-templates.js +0 -22
- package/dist/agents/templates/test-templates.js.map +0 -1
- package/dist/core/BackgroundExecutor.d.ts +0 -62
- package/dist/core/BackgroundExecutor.d.ts.map +0 -1
- package/dist/core/BackgroundExecutor.js +0 -600
- package/dist/core/BackgroundExecutor.js.map +0 -1
- package/dist/core/ClaudeMdRuleExtractor.d.ts +0 -16
- package/dist/core/ClaudeMdRuleExtractor.d.ts.map +0 -1
- package/dist/core/ClaudeMdRuleExtractor.js +0 -231
- package/dist/core/ClaudeMdRuleExtractor.js.map +0 -1
- package/dist/core/ExecutionMonitor.d.ts +0 -29
- package/dist/core/ExecutionMonitor.d.ts.map +0 -1
- package/dist/core/ExecutionMonitor.js +0 -124
- package/dist/core/ExecutionMonitor.js.map +0 -1
- package/dist/core/ExecutionQueue.d.ts +0 -21
- package/dist/core/ExecutionQueue.d.ts.map +0 -1
- package/dist/core/ExecutionQueue.js +0 -104
- package/dist/core/ExecutionQueue.js.map +0 -1
- package/dist/core/PromptEnhancer.d.ts +0 -13
- package/dist/core/PromptEnhancer.d.ts.map +0 -1
- package/dist/core/PromptEnhancer.js +0 -112
- package/dist/core/PromptEnhancer.js.map +0 -1
- package/dist/core/ResultHandler.d.ts +0 -9
- package/dist/core/ResultHandler.d.ts.map +0 -1
- package/dist/core/ResultHandler.js +0 -72
- package/dist/core/ResultHandler.js.map +0 -1
- package/dist/core/SessionContextMonitor.d.ts +0 -41
- package/dist/core/SessionContextMonitor.d.ts.map +0 -1
- package/dist/core/SessionContextMonitor.js +0 -159
- package/dist/core/SessionContextMonitor.js.map +0 -1
- package/dist/core/SessionTokenTracker.d.ts +0 -43
- package/dist/core/SessionTokenTracker.d.ts.map +0 -1
- package/dist/core/SessionTokenTracker.js +0 -132
- package/dist/core/SessionTokenTracker.js.map +0 -1
- package/dist/core/SkillsKnowledgeIntegrator.d.ts +0 -28
- package/dist/core/SkillsKnowledgeIntegrator.d.ts.map +0 -1
- package/dist/core/SkillsKnowledgeIntegrator.js +0 -149
- package/dist/core/SkillsKnowledgeIntegrator.js.map +0 -1
- package/dist/core/TaskScheduler.d.ts +0 -19
- package/dist/core/TaskScheduler.d.ts.map +0 -1
- package/dist/core/TaskScheduler.js +0 -59
- package/dist/core/TaskScheduler.js.map +0 -1
- package/dist/core/WorkflowEnforcementEngine.d.ts +0 -46
- package/dist/core/WorkflowEnforcementEngine.d.ts.map +0 -1
- package/dist/core/WorkflowEnforcementEngine.js +0 -277
- package/dist/core/WorkflowEnforcementEngine.js.map +0 -1
- package/dist/core/WorkflowGuidanceEngine.d.ts +0 -42
- package/dist/core/WorkflowGuidanceEngine.d.ts.map +0 -1
- package/dist/core/WorkflowGuidanceEngine.js +0 -141
- package/dist/core/WorkflowGuidanceEngine.js.map +0 -1
- package/dist/evolution/ABTestManager.d.ts +0 -21
- package/dist/evolution/ABTestManager.d.ts.map +0 -1
- package/dist/evolution/ABTestManager.js +0 -262
- package/dist/evolution/ABTestManager.js.map +0 -1
- package/dist/evolution/AgentEvolutionConfig.d.ts +0 -32
- package/dist/evolution/AgentEvolutionConfig.d.ts.map +0 -1
- package/dist/evolution/AgentEvolutionConfig.js +0 -311
- package/dist/evolution/AgentEvolutionConfig.js.map +0 -1
- package/dist/evolution/CloudEvolutionClient.d.ts +0 -39
- package/dist/evolution/CloudEvolutionClient.d.ts.map +0 -1
- package/dist/evolution/CloudEvolutionClient.js +0 -35
- package/dist/evolution/CloudEvolutionClient.js.map +0 -1
- package/dist/evolution/ContextMatcher.d.ts +0 -24
- package/dist/evolution/ContextMatcher.d.ts.map +0 -1
- package/dist/evolution/ContextMatcher.js +0 -85
- package/dist/evolution/ContextMatcher.js.map +0 -1
- package/dist/evolution/EvolutionBootstrap.d.ts +0 -69
- package/dist/evolution/EvolutionBootstrap.d.ts.map +0 -1
- package/dist/evolution/EvolutionBootstrap.js +0 -332
- package/dist/evolution/EvolutionBootstrap.js.map +0 -1
- package/dist/evolution/EvolutionMonitor.d.ts +0 -10
- package/dist/evolution/EvolutionMonitor.d.ts.map +0 -1
- package/dist/evolution/EvolutionMonitor.js +0 -17
- package/dist/evolution/EvolutionMonitor.js.map +0 -1
- package/dist/evolution/FeedbackCollector.d.ts +0 -19
- package/dist/evolution/FeedbackCollector.d.ts.map +0 -1
- package/dist/evolution/FeedbackCollector.js +0 -40
- package/dist/evolution/FeedbackCollector.js.map +0 -1
- package/dist/evolution/KnowledgeTransferManager.d.ts +0 -16
- package/dist/evolution/KnowledgeTransferManager.d.ts.map +0 -1
- package/dist/evolution/KnowledgeTransferManager.js +0 -50
- package/dist/evolution/KnowledgeTransferManager.js.map +0 -1
- package/dist/evolution/LearningManager.d.ts +0 -18
- package/dist/evolution/LearningManager.d.ts.map +0 -1
- package/dist/evolution/LearningManager.js +0 -87
- package/dist/evolution/LearningManager.js.map +0 -1
- package/dist/evolution/LocalMistakeDetector.d.ts +0 -20
- package/dist/evolution/LocalMistakeDetector.d.ts.map +0 -1
- package/dist/evolution/LocalMistakeDetector.js +0 -233
- package/dist/evolution/LocalMistakeDetector.js.map +0 -1
- package/dist/evolution/MultiObjectiveOptimizer.d.ts +0 -9
- package/dist/evolution/MultiObjectiveOptimizer.d.ts.map +0 -1
- package/dist/evolution/MultiObjectiveOptimizer.js +0 -107
- package/dist/evolution/MultiObjectiveOptimizer.js.map +0 -1
- package/dist/evolution/PatternExplainer.d.ts +0 -14
- package/dist/evolution/PatternExplainer.d.ts.map +0 -1
- package/dist/evolution/PatternExplainer.js +0 -113
- package/dist/evolution/PatternExplainer.js.map +0 -1
- package/dist/evolution/PerformanceTracker.d.ts +0 -29
- package/dist/evolution/PerformanceTracker.d.ts.map +0 -1
- package/dist/evolution/PerformanceTracker.js +0 -351
- package/dist/evolution/PerformanceTracker.js.map +0 -1
- package/dist/evolution/StatisticalAnalyzer.d.ts +0 -21
- package/dist/evolution/StatisticalAnalyzer.d.ts.map +0 -1
- package/dist/evolution/StatisticalAnalyzer.js +0 -271
- package/dist/evolution/StatisticalAnalyzer.js.map +0 -1
- package/dist/evolution/TransferabilityChecker.d.ts +0 -11
- package/dist/evolution/TransferabilityChecker.d.ts.map +0 -1
- package/dist/evolution/TransferabilityChecker.js +0 -78
- package/dist/evolution/TransferabilityChecker.js.map +0 -1
- package/dist/evolution/index.d.ts +0 -8
- package/dist/evolution/index.d.ts.map +0 -1
- package/dist/evolution/index.js +0 -6
- package/dist/evolution/index.js.map +0 -1
- package/dist/evolution/instrumentation/SpanTracker.d.ts +0 -64
- package/dist/evolution/instrumentation/SpanTracker.d.ts.map +0 -1
- package/dist/evolution/instrumentation/SpanTracker.js +0 -229
- package/dist/evolution/instrumentation/SpanTracker.js.map +0 -1
- package/dist/evolution/instrumentation/withEvolutionTracking.d.ts +0 -19
- package/dist/evolution/instrumentation/withEvolutionTracking.d.ts.map +0 -1
- package/dist/evolution/instrumentation/withEvolutionTracking.js +0 -253
- package/dist/evolution/instrumentation/withEvolutionTracking.js.map +0 -1
- package/dist/evolution/integration-test-scenarios.d.ts +0 -56
- package/dist/evolution/integration-test-scenarios.d.ts.map +0 -1
- package/dist/evolution/integration-test-scenarios.js +0 -131
- package/dist/evolution/integration-test-scenarios.js.map +0 -1
- package/dist/evolution/links/LinkManager.d.ts +0 -17
- package/dist/evolution/links/LinkManager.d.ts.map +0 -1
- package/dist/evolution/links/LinkManager.js +0 -41
- package/dist/evolution/links/LinkManager.js.map +0 -1
- package/dist/evolution/storage/EvolutionStore.d.ts +0 -87
- package/dist/evolution/storage/EvolutionStore.d.ts.map +0 -1
- package/dist/evolution/storage/EvolutionStore.js +0 -2
- package/dist/evolution/storage/EvolutionStore.js.map +0 -1
- package/dist/evolution/storage/IEvolutionStore.d.ts +0 -87
- package/dist/evolution/storage/IEvolutionStore.d.ts.map +0 -1
- package/dist/evolution/storage/IEvolutionStore.js +0 -2
- package/dist/evolution/storage/IEvolutionStore.js.map +0 -1
- package/dist/evolution/storage/SQLiteStore.d.ts +0 -116
- package/dist/evolution/storage/SQLiteStore.d.ts.map +0 -1
- package/dist/evolution/storage/SQLiteStore.js +0 -965
- package/dist/evolution/storage/SQLiteStore.js.map +0 -1
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.d.ts +0 -109
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.d.ts.map +0 -1
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.js +0 -1033
- package/dist/evolution/storage/deprecated/SQLiteStore.basic.js.map +0 -1
- package/dist/evolution/storage/index.d.ts +0 -6
- package/dist/evolution/storage/index.d.ts.map +0 -1
- package/dist/evolution/storage/index.js +0 -3
- package/dist/evolution/storage/index.js.map +0 -1
- package/dist/evolution/storage/migrations/MigrationManager.d.ts +0 -17
- package/dist/evolution/storage/migrations/MigrationManager.d.ts.map +0 -1
- package/dist/evolution/storage/migrations/MigrationManager.js +0 -242
- package/dist/evolution/storage/migrations/MigrationManager.js.map +0 -1
- package/dist/evolution/storage/repositories/AdaptationRepository.d.ts +0 -17
- package/dist/evolution/storage/repositories/AdaptationRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/AdaptationRepository.js +0 -82
- package/dist/evolution/storage/repositories/AdaptationRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/CostRecordsRepository.d.ts +0 -43
- package/dist/evolution/storage/repositories/CostRecordsRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/CostRecordsRepository.js +0 -157
- package/dist/evolution/storage/repositories/CostRecordsRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/ExecutionRepository.d.ts +0 -12
- package/dist/evolution/storage/repositories/ExecutionRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/ExecutionRepository.js +0 -87
- package/dist/evolution/storage/repositories/ExecutionRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/PatternRepository.d.ts +0 -12
- package/dist/evolution/storage/repositories/PatternRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/PatternRepository.js +0 -150
- package/dist/evolution/storage/repositories/PatternRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.d.ts +0 -39
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.js +0 -130
- package/dist/evolution/storage/repositories/PerformanceMetricsRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/RewardRepository.d.ts +0 -17
- package/dist/evolution/storage/repositories/RewardRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/RewardRepository.js +0 -82
- package/dist/evolution/storage/repositories/RewardRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/SpanRepository.d.ts +0 -14
- package/dist/evolution/storage/repositories/SpanRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/SpanRepository.js +0 -191
- package/dist/evolution/storage/repositories/SpanRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/StatsRepository.d.ts +0 -16
- package/dist/evolution/storage/repositories/StatsRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/StatsRepository.js +0 -271
- package/dist/evolution/storage/repositories/StatsRepository.js.map +0 -1
- package/dist/evolution/storage/repositories/TaskRepository.d.ts +0 -16
- package/dist/evolution/storage/repositories/TaskRepository.d.ts.map +0 -1
- package/dist/evolution/storage/repositories/TaskRepository.js +0 -93
- package/dist/evolution/storage/repositories/TaskRepository.js.map +0 -1
- package/dist/evolution/storage/schema.d.ts +0 -81
- package/dist/evolution/storage/schema.d.ts.map +0 -1
- package/dist/evolution/storage/schema.js +0 -241
- package/dist/evolution/storage/schema.js.map +0 -1
- package/dist/evolution/storage/types.d.ts +0 -402
- package/dist/evolution/storage/types.d.ts.map +0 -1
- package/dist/evolution/storage/types.js +0 -2
- package/dist/evolution/storage/types.js.map +0 -1
- package/dist/evolution/storage/validation.d.ts +0 -11
- package/dist/evolution/storage/validation.d.ts.map +0 -1
- package/dist/evolution/storage/validation.js +0 -84
- package/dist/evolution/storage/validation.js.map +0 -1
- package/dist/evolution/types.d.ts +0 -248
- package/dist/evolution/types.d.ts.map +0 -1
- package/dist/evolution/types.js +0 -13
- package/dist/evolution/types.js.map +0 -1
- package/dist/hooks/a2a-collaboration.d.ts +0 -30
- package/dist/hooks/a2a-collaboration.d.ts.map +0 -1
- package/dist/hooks/a2a-collaboration.js +0 -400
- package/dist/hooks/a2a-collaboration.js.map +0 -1
- package/dist/mcp/handlers/A2AToolHandlers.d.ts +0 -17
- package/dist/mcp/handlers/A2AToolHandlers.d.ts.map +0 -1
- package/dist/mcp/handlers/A2AToolHandlers.js +0 -221
- package/dist/mcp/handlers/A2AToolHandlers.js.map +0 -1
- package/dist/mcp/tools/a2a-list-tasks.d.ts +0 -13
- package/dist/mcp/tools/a2a-list-tasks.d.ts.map +0 -1
- package/dist/mcp/tools/a2a-list-tasks.js +0 -24
- package/dist/mcp/tools/a2a-list-tasks.js.map +0 -1
- package/dist/mcp/tools/a2a-report-result.d.ts +0 -35
- package/dist/mcp/tools/a2a-report-result.d.ts.map +0 -1
- package/dist/mcp/tools/a2a-report-result.js +0 -73
- package/dist/mcp/tools/a2a-report-result.js.map +0 -1
- package/dist/orchestrator/AgentRouter.d.ts +0 -20
- package/dist/orchestrator/AgentRouter.d.ts.map +0 -1
- package/dist/orchestrator/AgentRouter.js +0 -275
- package/dist/orchestrator/AgentRouter.js.map +0 -1
- package/dist/orchestrator/CostTracker.d.ts +0 -25
- package/dist/orchestrator/CostTracker.d.ts.map +0 -1
- package/dist/orchestrator/CostTracker.js +0 -199
- package/dist/orchestrator/CostTracker.js.map +0 -1
- package/dist/orchestrator/GlobalResourcePool.d.ts +0 -59
- package/dist/orchestrator/GlobalResourcePool.d.ts.map +0 -1
- package/dist/orchestrator/GlobalResourcePool.js +0 -291
- package/dist/orchestrator/GlobalResourcePool.js.map +0 -1
- package/dist/orchestrator/TaskAnalyzer.d.ts +0 -15
- package/dist/orchestrator/TaskAnalyzer.d.ts.map +0 -1
- package/dist/orchestrator/TaskAnalyzer.js +0 -234
- package/dist/orchestrator/TaskAnalyzer.js.map +0 -1
- package/dist/orchestrator/example.d.ts +0 -2
- package/dist/orchestrator/example.d.ts.map +0 -1
- package/dist/orchestrator/example.js +0 -118
- package/dist/orchestrator/example.js.map +0 -1
- package/dist/orchestrator/index.d.ts +0 -82
- package/dist/orchestrator/index.d.ts.map +0 -1
- package/dist/orchestrator/index.js +0 -370
- package/dist/orchestrator/index.js.map +0 -1
- package/dist/orchestrator/router.d.ts +0 -43
- package/dist/orchestrator/router.d.ts.map +0 -1
- package/dist/orchestrator/router.js +0 -95
- package/dist/orchestrator/router.js.map +0 -1
- package/dist/orchestrator/types.d.ts +0 -60
- package/dist/orchestrator/types.d.ts.map +0 -1
- package/dist/orchestrator/types.js +0 -2
- package/dist/orchestrator/types.js.map +0 -1
- package/dist/planning/TaskDecomposer.d.ts +0 -32
- package/dist/planning/TaskDecomposer.d.ts.map +0 -1
- package/dist/planning/TaskDecomposer.js +0 -152
- package/dist/planning/TaskDecomposer.js.map +0 -1
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { timingSafeEqual, createHash } from 'crypto';
|
|
2
|
-
import { logger } from '../../../utils/logger.js';
|
|
3
|
-
function constantTimeCompare(a, b) {
|
|
4
|
-
if (a.length !== b.length) {
|
|
5
|
-
const dummy = 'x'.repeat(b.length);
|
|
6
|
-
const bufferA = Buffer.from(a.length >= b.length ? a : dummy, 'utf8');
|
|
7
|
-
const bufferB = Buffer.from(b, 'utf8');
|
|
8
|
-
if (bufferA.length !== bufferB.length) {
|
|
9
|
-
return false;
|
|
10
|
-
}
|
|
11
|
-
timingSafeEqual(bufferA, bufferB);
|
|
12
|
-
return false;
|
|
13
|
-
}
|
|
14
|
-
try {
|
|
15
|
-
const bufferA = Buffer.from(a, 'utf8');
|
|
16
|
-
const bufferB = Buffer.from(b, 'utf8');
|
|
17
|
-
return timingSafeEqual(bufferA, bufferB);
|
|
18
|
-
}
|
|
19
|
-
catch (error) {
|
|
20
|
-
logger.error('Error in constant-time comparison', { error });
|
|
21
|
-
return false;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
export function authenticateToken(req, res, next) {
|
|
25
|
-
const authHeader = req.headers['authorization'];
|
|
26
|
-
const token = authHeader && authHeader.split(' ')[1];
|
|
27
|
-
const validToken = process.env.MEMESH_A2A_TOKEN;
|
|
28
|
-
if (!validToken) {
|
|
29
|
-
logger.error('MEMESH_A2A_TOKEN not configured');
|
|
30
|
-
res.status(500).json({
|
|
31
|
-
error: 'Server configuration error',
|
|
32
|
-
code: 'TOKEN_NOT_CONFIGURED'
|
|
33
|
-
});
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
if (!token) {
|
|
37
|
-
res.status(401).json({
|
|
38
|
-
error: 'Authentication token required',
|
|
39
|
-
code: 'AUTH_MISSING'
|
|
40
|
-
});
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
if (!constantTimeCompare(token, validToken)) {
|
|
44
|
-
res.status(401).json({
|
|
45
|
-
error: 'Invalid authentication token',
|
|
46
|
-
code: 'AUTH_INVALID'
|
|
47
|
-
});
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
const authReq = req;
|
|
51
|
-
const body = req.body;
|
|
52
|
-
if (body?.agentCard?.id) {
|
|
53
|
-
authReq.agentId = body.agentCard.id;
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
const tokenHash = createHash('sha256')
|
|
57
|
-
.update(token)
|
|
58
|
-
.digest('hex')
|
|
59
|
-
.substring(0, 16);
|
|
60
|
-
authReq.agentId = `token-${tokenHash}`;
|
|
61
|
-
}
|
|
62
|
-
next();
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=auth.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/a2a/server/middleware/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { Request, Response, NextFunction } from 'express';
|
|
2
|
-
export declare function startCsrfCleanup(): void;
|
|
3
|
-
export declare function stopCsrfCleanup(): void;
|
|
4
|
-
export declare function clearCsrfTokens(): void;
|
|
5
|
-
export declare function csrfTokenMiddleware(req: Request, res: Response, next: NextFunction): void;
|
|
6
|
-
export declare function csrfProtection(req: Request, res: Response, next: NextFunction): void;
|
|
7
|
-
//# sourceMappingURL=csrf.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"csrf.d.ts","sourceRoot":"","sources":["../../../../src/a2a/server/middleware/csrf.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAuL/D,wBAAgB,gBAAgB,IAAI,IAAI,CAWvC;AAKD,wBAAgB,eAAe,IAAI,IAAI,CAMtC;AAKD,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAaD,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,YAAY,GACjB,IAAI,CAoBN;AAoBD,wBAAgB,cAAc,CAC5B,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,YAAY,GACjB,IAAI,CAwGN"}
|
|
@@ -1,169 +0,0 @@
|
|
|
1
|
-
import { randomBytes } from 'crypto';
|
|
2
|
-
import { logger } from '../../../utils/logger.js';
|
|
3
|
-
import { LRUCache } from '../../../utils/lru-cache.js';
|
|
4
|
-
const CONFIG_BOUNDS = {
|
|
5
|
-
maxTokens: { min: 100, max: 1_000_000, default: 10_000 },
|
|
6
|
-
tokenExpirationMs: { min: 60_000, max: 86_400_000, default: 3_600_000 },
|
|
7
|
-
evictionWarningCooldownMs: { min: 1_000, max: 3_600_000, default: 60_000 },
|
|
8
|
-
};
|
|
9
|
-
function getConfigValue(envVar, defaultValue, min, max) {
|
|
10
|
-
const envValue = process.env[envVar];
|
|
11
|
-
if (!envValue) {
|
|
12
|
-
return defaultValue;
|
|
13
|
-
}
|
|
14
|
-
const parsed = parseInt(envValue, 10);
|
|
15
|
-
if (isNaN(parsed)) {
|
|
16
|
-
logger.warn(`[CSRF] Invalid ${envVar}="${envValue}" (not a number), using default ${defaultValue}`);
|
|
17
|
-
return defaultValue;
|
|
18
|
-
}
|
|
19
|
-
if (parsed < min || parsed > max) {
|
|
20
|
-
logger.warn(`[CSRF] Invalid ${envVar}=${parsed} (out of bounds [${min}, ${max}]), using default ${defaultValue}`);
|
|
21
|
-
return defaultValue;
|
|
22
|
-
}
|
|
23
|
-
return parsed;
|
|
24
|
-
}
|
|
25
|
-
const MAX_TOKENS = getConfigValue('CSRF_MAX_TOKENS', CONFIG_BOUNDS.maxTokens.default, CONFIG_BOUNDS.maxTokens.min, CONFIG_BOUNDS.maxTokens.max);
|
|
26
|
-
const TOKEN_EXPIRATION_MS = getConfigValue('CSRF_TOKEN_EXPIRATION_MS', CONFIG_BOUNDS.tokenExpirationMs.default, CONFIG_BOUNDS.tokenExpirationMs.min, CONFIG_BOUNDS.tokenExpirationMs.max);
|
|
27
|
-
const tokens = new LRUCache({
|
|
28
|
-
maxSize: MAX_TOKENS,
|
|
29
|
-
ttl: TOKEN_EXPIRATION_MS,
|
|
30
|
-
});
|
|
31
|
-
let lastEvictionWarningTime = 0;
|
|
32
|
-
const EVICTION_WARNING_COOLDOWN_MS = getConfigValue('CSRF_EVICTION_WARNING_COOLDOWN_MS', CONFIG_BOUNDS.evictionWarningCooldownMs.default, CONFIG_BOUNDS.evictionWarningCooldownMs.min, CONFIG_BOUNDS.evictionWarningCooldownMs.max);
|
|
33
|
-
logger.info('[CSRF] Configuration loaded', {
|
|
34
|
-
maxTokens: MAX_TOKENS,
|
|
35
|
-
tokenExpirationMs: TOKEN_EXPIRATION_MS,
|
|
36
|
-
evictionWarningCooldownMs: EVICTION_WARNING_COOLDOWN_MS,
|
|
37
|
-
});
|
|
38
|
-
const SAFE_METHODS = ['GET', 'HEAD', 'OPTIONS'];
|
|
39
|
-
function generateToken() {
|
|
40
|
-
return randomBytes(32).toString('hex');
|
|
41
|
-
}
|
|
42
|
-
function storeToken(token, expiration) {
|
|
43
|
-
const atCapacity = tokens.size() >= MAX_TOKENS;
|
|
44
|
-
tokens.set(token, expiration);
|
|
45
|
-
if (atCapacity) {
|
|
46
|
-
const now = Date.now();
|
|
47
|
-
if (now - lastEvictionWarningTime > EVICTION_WARNING_COOLDOWN_MS) {
|
|
48
|
-
lastEvictionWarningTime = now;
|
|
49
|
-
logger.warn('[CSRF] Token cache at capacity, LRU eviction triggered', {
|
|
50
|
-
maxTokens: MAX_TOKENS,
|
|
51
|
-
currentSize: tokens.size(),
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
function cleanupExpiredTokens() {
|
|
57
|
-
const cleaned = tokens.cleanupExpired();
|
|
58
|
-
if (cleaned > 0) {
|
|
59
|
-
logger.debug('[CSRF] Cleaned up expired tokens', { count: cleaned });
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
let cleanupInterval = null;
|
|
63
|
-
export function startCsrfCleanup() {
|
|
64
|
-
if (cleanupInterval) {
|
|
65
|
-
return;
|
|
66
|
-
}
|
|
67
|
-
cleanupInterval = setInterval(() => {
|
|
68
|
-
cleanupExpiredTokens();
|
|
69
|
-
}, 10 * 60 * 1000);
|
|
70
|
-
logger.info('[CSRF] Token cleanup started');
|
|
71
|
-
}
|
|
72
|
-
export function stopCsrfCleanup() {
|
|
73
|
-
if (cleanupInterval) {
|
|
74
|
-
clearInterval(cleanupInterval);
|
|
75
|
-
cleanupInterval = null;
|
|
76
|
-
logger.info('[CSRF] Token cleanup stopped');
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
export function clearCsrfTokens() {
|
|
80
|
-
tokens.clear();
|
|
81
|
-
}
|
|
82
|
-
export function csrfTokenMiddleware(req, res, next) {
|
|
83
|
-
const token = generateToken();
|
|
84
|
-
const expiration = Date.now() + TOKEN_EXPIRATION_MS;
|
|
85
|
-
storeToken(token, expiration);
|
|
86
|
-
res.cookie('XSRF-TOKEN', token, {
|
|
87
|
-
httpOnly: false,
|
|
88
|
-
secure: process.env.NODE_ENV === 'production',
|
|
89
|
-
sameSite: 'strict',
|
|
90
|
-
maxAge: TOKEN_EXPIRATION_MS,
|
|
91
|
-
});
|
|
92
|
-
res.setHeader('X-CSRF-Token', token);
|
|
93
|
-
next();
|
|
94
|
-
}
|
|
95
|
-
export function csrfProtection(req, res, next) {
|
|
96
|
-
if (SAFE_METHODS.includes(req.method)) {
|
|
97
|
-
return next();
|
|
98
|
-
}
|
|
99
|
-
const authHeader = req.header('Authorization');
|
|
100
|
-
if (authHeader?.startsWith('Bearer ')) {
|
|
101
|
-
logger.debug('[CSRF] Skipping CSRF check for Bearer token authentication', {
|
|
102
|
-
method: req.method,
|
|
103
|
-
path: req.path,
|
|
104
|
-
});
|
|
105
|
-
return next();
|
|
106
|
-
}
|
|
107
|
-
const token = req.header('X-CSRF-Token') ||
|
|
108
|
-
(req.body && req.body.csrf_token);
|
|
109
|
-
if (!token) {
|
|
110
|
-
logger.warn('[CSRF] Missing CSRF token', {
|
|
111
|
-
method: req.method,
|
|
112
|
-
path: req.path,
|
|
113
|
-
ip: req.ip,
|
|
114
|
-
});
|
|
115
|
-
res.status(403).json({
|
|
116
|
-
success: false,
|
|
117
|
-
error: {
|
|
118
|
-
code: 'CSRF_TOKEN_MISSING',
|
|
119
|
-
message: 'CSRF token required for this request',
|
|
120
|
-
},
|
|
121
|
-
});
|
|
122
|
-
return;
|
|
123
|
-
}
|
|
124
|
-
const entry = tokens.peek(token);
|
|
125
|
-
if (!entry) {
|
|
126
|
-
logger.warn('[CSRF] Invalid CSRF token', {
|
|
127
|
-
method: req.method,
|
|
128
|
-
path: req.path,
|
|
129
|
-
ip: req.ip,
|
|
130
|
-
});
|
|
131
|
-
res.status(403).json({
|
|
132
|
-
success: false,
|
|
133
|
-
error: {
|
|
134
|
-
code: 'CSRF_TOKEN_INVALID',
|
|
135
|
-
message: 'Invalid CSRF token',
|
|
136
|
-
},
|
|
137
|
-
});
|
|
138
|
-
return;
|
|
139
|
-
}
|
|
140
|
-
if (entry.value < Date.now()) {
|
|
141
|
-
logger.warn('[CSRF] Expired CSRF token', {
|
|
142
|
-
method: req.method,
|
|
143
|
-
path: req.path,
|
|
144
|
-
ip: req.ip,
|
|
145
|
-
});
|
|
146
|
-
tokens.delete(token);
|
|
147
|
-
res.status(403).json({
|
|
148
|
-
success: false,
|
|
149
|
-
error: {
|
|
150
|
-
code: 'CSRF_TOKEN_EXPIRED',
|
|
151
|
-
message: 'CSRF token expired, please refresh',
|
|
152
|
-
},
|
|
153
|
-
});
|
|
154
|
-
return;
|
|
155
|
-
}
|
|
156
|
-
tokens.delete(token);
|
|
157
|
-
const newToken = generateToken();
|
|
158
|
-
const newExpiration = Date.now() + TOKEN_EXPIRATION_MS;
|
|
159
|
-
storeToken(newToken, newExpiration);
|
|
160
|
-
res.setHeader('X-CSRF-Token', newToken);
|
|
161
|
-
res.cookie('XSRF-TOKEN', newToken, {
|
|
162
|
-
httpOnly: false,
|
|
163
|
-
secure: process.env.NODE_ENV === 'production',
|
|
164
|
-
sameSite: 'strict',
|
|
165
|
-
maxAge: TOKEN_EXPIRATION_MS,
|
|
166
|
-
});
|
|
167
|
-
next();
|
|
168
|
-
}
|
|
169
|
-
//# sourceMappingURL=csrf.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"csrf.js","sourceRoot":"","sources":["../../../../src/a2a/server/middleware/csrf.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { Response, NextFunction } from 'express';
|
|
2
|
-
import type { RateLimitStats } from '../../types/rateLimit.js';
|
|
3
|
-
import type { AuthenticatedRequest } from './auth.js';
|
|
4
|
-
export declare function startCleanup(): void;
|
|
5
|
-
export declare function stopCleanup(): void;
|
|
6
|
-
export declare function getRateLimitStats(): RateLimitStats[];
|
|
7
|
-
export declare function clearRateLimitData(): void;
|
|
8
|
-
export declare function rateLimitMiddleware(req: AuthenticatedRequest, res: Response, next: NextFunction): void;
|
|
9
|
-
//# sourceMappingURL=rateLimit.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rateLimit.d.ts","sourceRoot":"","sources":["../../../../src/a2a/server/middleware/rateLimit.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGtD,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAoPtD,wBAAgB,YAAY,IAAI,IAAI,CASnC;AAKD,wBAAgB,WAAW,IAAI,IAAI,CAMlC;AAKD,wBAAgB,iBAAiB,IAAI,cAAc,EAAE,CAEpD;AAKD,wBAAgB,kBAAkB,IAAI,IAAI,CAGzC;AAiBD,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,oBAAoB,EACzB,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,YAAY,GACjB,IAAI,CA0CN"}
|
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
import { logger } from '../../../utils/logger.js';
|
|
2
|
-
import { RATE_LIMITS, ENV_KEYS } from '../../constants.js';
|
|
3
|
-
const buckets = new Map();
|
|
4
|
-
const stats = new Map();
|
|
5
|
-
let cleanupTimer = null;
|
|
6
|
-
const refillGuard = new Set();
|
|
7
|
-
function getRateLimitConfig(endpoint) {
|
|
8
|
-
const envMap = {
|
|
9
|
-
'/a2a/send-message': ENV_KEYS.RATE_LIMIT_SEND_MESSAGE,
|
|
10
|
-
'/a2a/tasks/:taskId': ENV_KEYS.RATE_LIMIT_GET_TASK,
|
|
11
|
-
'/a2a/tasks': ENV_KEYS.RATE_LIMIT_LIST_TASKS,
|
|
12
|
-
'/a2a/tasks/:taskId/cancel': ENV_KEYS.RATE_LIMIT_CANCEL_TASK,
|
|
13
|
-
};
|
|
14
|
-
const defaultMap = {
|
|
15
|
-
'/a2a/send-message': RATE_LIMITS.SEND_MESSAGE_RPM,
|
|
16
|
-
'/a2a/tasks/:taskId': RATE_LIMITS.GET_TASK_RPM,
|
|
17
|
-
'/a2a/tasks': RATE_LIMITS.LIST_TASKS_RPM,
|
|
18
|
-
'/a2a/tasks/:taskId/cancel': RATE_LIMITS.CANCEL_TASK_RPM,
|
|
19
|
-
};
|
|
20
|
-
const envKey = envMap[endpoint];
|
|
21
|
-
if (envKey && process.env[envKey]) {
|
|
22
|
-
const parsed = parseInt(process.env[envKey], 10);
|
|
23
|
-
if (!isNaN(parsed) && parsed > 0) {
|
|
24
|
-
return parsed;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
if (defaultMap[endpoint]) {
|
|
28
|
-
return defaultMap[endpoint];
|
|
29
|
-
}
|
|
30
|
-
if (process.env[ENV_KEYS.RATE_LIMIT_DEFAULT]) {
|
|
31
|
-
const parsed = parseInt(process.env[ENV_KEYS.RATE_LIMIT_DEFAULT], 10);
|
|
32
|
-
if (!isNaN(parsed) && parsed > 0) {
|
|
33
|
-
return parsed;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
return RATE_LIMITS.DEFAULT_RPM;
|
|
37
|
-
}
|
|
38
|
-
function normalizeEndpoint(path) {
|
|
39
|
-
if (/^\/a2a\/tasks\/[^/]+$/.test(path)) {
|
|
40
|
-
return '/a2a/tasks/:taskId';
|
|
41
|
-
}
|
|
42
|
-
if (/^\/a2a\/tasks\/[^/]+\/cancel$/.test(path)) {
|
|
43
|
-
return '/a2a/tasks/:taskId/cancel';
|
|
44
|
-
}
|
|
45
|
-
return path;
|
|
46
|
-
}
|
|
47
|
-
function getBucket(agentId, endpoint) {
|
|
48
|
-
const key = `${agentId}:${endpoint}`;
|
|
49
|
-
let bucket = buckets.get(key);
|
|
50
|
-
if (!bucket) {
|
|
51
|
-
const maxTokens = getRateLimitConfig(endpoint);
|
|
52
|
-
const refillRate = maxTokens / 60_000;
|
|
53
|
-
bucket = {
|
|
54
|
-
tokens: maxTokens,
|
|
55
|
-
maxTokens,
|
|
56
|
-
lastRefill: Date.now(),
|
|
57
|
-
refillRate,
|
|
58
|
-
};
|
|
59
|
-
buckets.set(key, bucket);
|
|
60
|
-
}
|
|
61
|
-
return bucket;
|
|
62
|
-
}
|
|
63
|
-
function refillTokens(key, bucket) {
|
|
64
|
-
if (refillGuard.has(key)) {
|
|
65
|
-
return;
|
|
66
|
-
}
|
|
67
|
-
refillGuard.add(key);
|
|
68
|
-
try {
|
|
69
|
-
const now = Date.now();
|
|
70
|
-
const elapsed = now - bucket.lastRefill;
|
|
71
|
-
const tokensToAdd = elapsed * bucket.refillRate;
|
|
72
|
-
if (tokensToAdd > 0) {
|
|
73
|
-
bucket.tokens = Math.min(bucket.maxTokens, bucket.tokens + tokensToAdd);
|
|
74
|
-
bucket.lastRefill = now;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
finally {
|
|
78
|
-
refillGuard.delete(key);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
function tryConsume(key, bucket) {
|
|
82
|
-
refillTokens(key, bucket);
|
|
83
|
-
if (bucket.tokens >= 1) {
|
|
84
|
-
bucket.tokens -= 1;
|
|
85
|
-
return true;
|
|
86
|
-
}
|
|
87
|
-
return false;
|
|
88
|
-
}
|
|
89
|
-
function calculateRetryAfter(bucket) {
|
|
90
|
-
const tokensNeeded = 1 - bucket.tokens;
|
|
91
|
-
const msNeeded = tokensNeeded / bucket.refillRate;
|
|
92
|
-
return Math.ceil(msNeeded / 1000);
|
|
93
|
-
}
|
|
94
|
-
function updateStats(agentId, endpoint, exceeded) {
|
|
95
|
-
const key = `${agentId}:${endpoint}`;
|
|
96
|
-
let stat = stats.get(key);
|
|
97
|
-
if (!stat) {
|
|
98
|
-
stat = {
|
|
99
|
-
agentId,
|
|
100
|
-
endpoint,
|
|
101
|
-
limitExceeded: 0,
|
|
102
|
-
totalRequests: 0,
|
|
103
|
-
};
|
|
104
|
-
stats.set(key, stat);
|
|
105
|
-
}
|
|
106
|
-
stat.totalRequests += 1;
|
|
107
|
-
if (exceeded) {
|
|
108
|
-
stat.limitExceeded += 1;
|
|
109
|
-
stat.lastLimitHit = Date.now();
|
|
110
|
-
logger.warn('[Rate Limit] Limit exceeded', {
|
|
111
|
-
agentId,
|
|
112
|
-
endpoint,
|
|
113
|
-
totalExceeded: stat.limitExceeded,
|
|
114
|
-
totalRequests: stat.totalRequests,
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
function cleanup() {
|
|
119
|
-
const now = Date.now();
|
|
120
|
-
const expirationThreshold = 10 * 60_000;
|
|
121
|
-
for (const [key, bucket] of buckets.entries()) {
|
|
122
|
-
if (now - bucket.lastRefill > expirationThreshold) {
|
|
123
|
-
buckets.delete(key);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
for (const [key, stat] of stats.entries()) {
|
|
127
|
-
if (stat.lastLimitHit && now - stat.lastLimitHit > expirationThreshold) {
|
|
128
|
-
stats.delete(key);
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
logger.debug('[Rate Limit] Cleanup completed', {
|
|
132
|
-
remainingBuckets: buckets.size,
|
|
133
|
-
remainingStats: stats.size,
|
|
134
|
-
});
|
|
135
|
-
}
|
|
136
|
-
export function startCleanup() {
|
|
137
|
-
if (cleanupTimer) {
|
|
138
|
-
return;
|
|
139
|
-
}
|
|
140
|
-
cleanupTimer = setInterval(cleanup, RATE_LIMITS.CLEANUP_INTERVAL_MS);
|
|
141
|
-
logger.info('[Rate Limit] Cleanup started', {
|
|
142
|
-
intervalMs: RATE_LIMITS.CLEANUP_INTERVAL_MS,
|
|
143
|
-
});
|
|
144
|
-
}
|
|
145
|
-
export function stopCleanup() {
|
|
146
|
-
if (cleanupTimer) {
|
|
147
|
-
clearInterval(cleanupTimer);
|
|
148
|
-
cleanupTimer = null;
|
|
149
|
-
logger.info('[Rate Limit] Cleanup stopped');
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
export function getRateLimitStats() {
|
|
153
|
-
return Array.from(stats.values());
|
|
154
|
-
}
|
|
155
|
-
export function clearRateLimitData() {
|
|
156
|
-
buckets.clear();
|
|
157
|
-
stats.clear();
|
|
158
|
-
}
|
|
159
|
-
export function rateLimitMiddleware(req, res, next) {
|
|
160
|
-
const agentId = req.agentId;
|
|
161
|
-
if (!agentId) {
|
|
162
|
-
logger.error('[Rate Limit] Missing agentId in authenticated request');
|
|
163
|
-
res.status(500).json({
|
|
164
|
-
success: false,
|
|
165
|
-
error: {
|
|
166
|
-
code: 'INTERNAL_ERROR',
|
|
167
|
-
message: 'Internal server error',
|
|
168
|
-
},
|
|
169
|
-
});
|
|
170
|
-
return;
|
|
171
|
-
}
|
|
172
|
-
const endpoint = normalizeEndpoint(req.path);
|
|
173
|
-
const key = `${agentId}:${endpoint}`;
|
|
174
|
-
const bucket = getBucket(agentId, endpoint);
|
|
175
|
-
const allowed = tryConsume(key, bucket);
|
|
176
|
-
updateStats(agentId, endpoint, !allowed);
|
|
177
|
-
if (!allowed) {
|
|
178
|
-
const retryAfter = calculateRetryAfter(bucket);
|
|
179
|
-
res.setHeader('Retry-After', retryAfter.toString());
|
|
180
|
-
res.status(429).json({
|
|
181
|
-
success: false,
|
|
182
|
-
error: {
|
|
183
|
-
code: 'RATE_LIMIT_EXCEEDED',
|
|
184
|
-
message: `Rate limit exceeded. Try again in ${retryAfter} seconds.`,
|
|
185
|
-
retryAfter,
|
|
186
|
-
},
|
|
187
|
-
});
|
|
188
|
-
return;
|
|
189
|
-
}
|
|
190
|
-
next();
|
|
191
|
-
}
|
|
192
|
-
//# sourceMappingURL=rateLimit.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rateLimit.js","sourceRoot":"","sources":["../../../../src/a2a/server/middleware/rateLimit.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import type { Request, Response, NextFunction } from 'express';
|
|
2
|
-
export declare function startResourceProtectionCleanup(): void;
|
|
3
|
-
export declare function stopResourceProtectionCleanup(): void;
|
|
4
|
-
export declare function clearConnectionTracking(): void;
|
|
5
|
-
export declare function getConnectionStats(): {
|
|
6
|
-
totalIPs: number;
|
|
7
|
-
totalConnections: number;
|
|
8
|
-
topIPs: Array<{
|
|
9
|
-
ip: string;
|
|
10
|
-
connections: number;
|
|
11
|
-
}>;
|
|
12
|
-
};
|
|
13
|
-
export declare function connectionLimitMiddleware(): (req: Request, res: Response, next: NextFunction) => void;
|
|
14
|
-
export declare function payloadSizeLimitMiddleware(): (req: Request, res: Response, next: NextFunction) => void;
|
|
15
|
-
export declare function memoryPressureMiddleware(): (req: Request, res: Response, next: NextFunction) => void;
|
|
16
|
-
export declare function resourceProtectionMiddleware(): ((req: Request, res: Response, next: NextFunction) => void)[];
|
|
17
|
-
//# sourceMappingURL=resourceProtection.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resourceProtection.d.ts","sourceRoot":"","sources":["../../../../src/a2a/server/middleware/resourceProtection.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAuI/D,wBAAgB,8BAA8B,IAAI,IAAI,CAWrD;AAKD,wBAAgB,6BAA6B,IAAI,IAAI,CAMpD;AAKD,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAKD,wBAAgB,kBAAkB,IAAI;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACpD,CAkBA;AAaD,wBAAgB,yBAAyB,KAI/B,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,KAAG,IAAI,CAyF/D;AAeD,wBAAgB,0BAA0B,KAIhC,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,KAAG,IAAI,CA2C/D;AAqBD,wBAAgB,wBAAwB,KAG9B,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,KAAG,IAAI,CAiC/D;AA4BD,wBAAgB,4BAA4B,WA5O7B,OAAO,OAAO,QAAQ,QAAQ,YAAY,KAAG,IAAI,IAkP/D"}
|