@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
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
import { SESSION_MEMORY_SECTIONS, } from './types.js';
|
|
2
|
+
const NEGATIVE_KEYWORDS = [
|
|
3
|
+
'avoid',
|
|
4
|
+
"don't",
|
|
5
|
+
'failed',
|
|
6
|
+
'not work',
|
|
7
|
+
'should not',
|
|
8
|
+
'never',
|
|
9
|
+
'broke',
|
|
10
|
+
'wrong',
|
|
11
|
+
];
|
|
12
|
+
const POSITIVE_KEYWORDS = [
|
|
13
|
+
'works well',
|
|
14
|
+
'success',
|
|
15
|
+
'effective',
|
|
16
|
+
'recommended',
|
|
17
|
+
'best practice',
|
|
18
|
+
'good',
|
|
19
|
+
'helpful',
|
|
20
|
+
];
|
|
21
|
+
const ITALIC_LINE_PATTERN = /^_[^_]+_$/;
|
|
22
|
+
export class SessionMemoryParser {
|
|
23
|
+
static MAX_INPUT_SIZE = 10 * 1024 * 1024;
|
|
24
|
+
parse(markdown) {
|
|
25
|
+
if (markdown.length > SessionMemoryParser.MAX_INPUT_SIZE) {
|
|
26
|
+
throw new Error(`Input too large: ${markdown.length} bytes exceeds maximum of ${SessionMemoryParser.MAX_INPUT_SIZE}`);
|
|
27
|
+
}
|
|
28
|
+
const normalized = markdown.replace(/\r\n/g, '\n');
|
|
29
|
+
const rawSections = this.splitSections(normalized);
|
|
30
|
+
const titleContent = rawSections.get(SESSION_MEMORY_SECTIONS.TITLE);
|
|
31
|
+
const title = titleContent
|
|
32
|
+
? this.filterItalicLines(titleContent).trim()
|
|
33
|
+
: '';
|
|
34
|
+
const currentState = this.parseTextSection(rawSections.get(SESSION_MEMORY_SECTIONS.CURRENT_STATE));
|
|
35
|
+
const taskSpec = this.parseTextSection(rawSections.get(SESSION_MEMORY_SECTIONS.TASK_SPEC));
|
|
36
|
+
const codebaseDoc = this.parseTextSection(rawSections.get(SESSION_MEMORY_SECTIONS.CODEBASE));
|
|
37
|
+
const filesAndFunctions = this.parseFileReferences(rawSections.get(SESSION_MEMORY_SECTIONS.FILES));
|
|
38
|
+
const workflow = this.parseWorkflow(rawSections.get(SESSION_MEMORY_SECTIONS.WORKFLOW));
|
|
39
|
+
const errorsAndCorrections = this.parseErrors(rawSections.get(SESSION_MEMORY_SECTIONS.ERRORS));
|
|
40
|
+
const learnings = this.parseLearnings(rawSections.get(SESSION_MEMORY_SECTIONS.LEARNINGS));
|
|
41
|
+
const worklog = this.parseWorklog(rawSections.get(SESSION_MEMORY_SECTIONS.WORKLOG));
|
|
42
|
+
return {
|
|
43
|
+
title,
|
|
44
|
+
currentState,
|
|
45
|
+
taskSpec,
|
|
46
|
+
filesAndFunctions,
|
|
47
|
+
workflow,
|
|
48
|
+
errorsAndCorrections,
|
|
49
|
+
codebaseDoc,
|
|
50
|
+
learnings,
|
|
51
|
+
worklog,
|
|
52
|
+
rawSections,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
splitSections(markdown) {
|
|
56
|
+
const sections = new Map();
|
|
57
|
+
if (!markdown.trim()) {
|
|
58
|
+
return sections;
|
|
59
|
+
}
|
|
60
|
+
const lines = markdown.split('\n');
|
|
61
|
+
let currentHeader = null;
|
|
62
|
+
let currentContent = [];
|
|
63
|
+
for (const line of lines) {
|
|
64
|
+
const headerMatch = line.match(/^# (.+)$/);
|
|
65
|
+
if (headerMatch) {
|
|
66
|
+
if (currentHeader !== null) {
|
|
67
|
+
sections.set(currentHeader, currentContent.join('\n'));
|
|
68
|
+
}
|
|
69
|
+
currentHeader = headerMatch[1].trim();
|
|
70
|
+
currentContent = [];
|
|
71
|
+
}
|
|
72
|
+
else if (currentHeader !== null) {
|
|
73
|
+
currentContent.push(line);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if (currentHeader !== null) {
|
|
77
|
+
sections.set(currentHeader, currentContent.join('\n'));
|
|
78
|
+
}
|
|
79
|
+
return sections;
|
|
80
|
+
}
|
|
81
|
+
parseTextSection(raw) {
|
|
82
|
+
if (!raw)
|
|
83
|
+
return null;
|
|
84
|
+
const filtered = this.filterItalicLines(raw).trim();
|
|
85
|
+
return filtered || null;
|
|
86
|
+
}
|
|
87
|
+
filterItalicLines(content) {
|
|
88
|
+
return content
|
|
89
|
+
.split('\n')
|
|
90
|
+
.filter((line) => !ITALIC_LINE_PATTERN.test(line.trim()))
|
|
91
|
+
.join('\n');
|
|
92
|
+
}
|
|
93
|
+
parseFileReferences(raw) {
|
|
94
|
+
if (!raw)
|
|
95
|
+
return [];
|
|
96
|
+
const filtered = this.filterItalicLines(raw);
|
|
97
|
+
const results = [];
|
|
98
|
+
for (const line of filtered.split('\n')) {
|
|
99
|
+
const trimmed = line.trim();
|
|
100
|
+
if (!trimmed.startsWith('-') && !trimmed.startsWith('*'))
|
|
101
|
+
continue;
|
|
102
|
+
const content = trimmed.replace(/^[-*]\s+/, '');
|
|
103
|
+
const backtickMatch = content.match(/^`([^`]+)`\s*[-–—]\s*(.+)$/);
|
|
104
|
+
if (backtickMatch) {
|
|
105
|
+
results.push({
|
|
106
|
+
path: backtickMatch[1].trim(),
|
|
107
|
+
description: backtickMatch[2].trim(),
|
|
108
|
+
});
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
const plainMatch = content.match(/^(\S+(?:\/\S+)*\.\w+)\s*[-–—]\s*(.+)$/);
|
|
112
|
+
if (plainMatch) {
|
|
113
|
+
results.push({
|
|
114
|
+
path: plainMatch[1].trim(),
|
|
115
|
+
description: plainMatch[2].trim(),
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return results;
|
|
120
|
+
}
|
|
121
|
+
parseWorkflow(raw) {
|
|
122
|
+
if (!raw)
|
|
123
|
+
return [];
|
|
124
|
+
const filtered = this.filterItalicLines(raw);
|
|
125
|
+
const results = [];
|
|
126
|
+
const lines = filtered.split('\n');
|
|
127
|
+
let inCodeBlock = false;
|
|
128
|
+
let codeBlockContent = [];
|
|
129
|
+
for (let i = 0; i < lines.length; i++) {
|
|
130
|
+
const line = lines[i];
|
|
131
|
+
const trimmed = line.trim();
|
|
132
|
+
if (trimmed.startsWith('```') && !inCodeBlock) {
|
|
133
|
+
inCodeBlock = true;
|
|
134
|
+
codeBlockContent = [];
|
|
135
|
+
continue;
|
|
136
|
+
}
|
|
137
|
+
if (trimmed === '```' && inCodeBlock) {
|
|
138
|
+
inCodeBlock = false;
|
|
139
|
+
const command = codeBlockContent.join('\n').trim();
|
|
140
|
+
if (command) {
|
|
141
|
+
results.push({
|
|
142
|
+
command,
|
|
143
|
+
description: command,
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
continue;
|
|
147
|
+
}
|
|
148
|
+
if (inCodeBlock) {
|
|
149
|
+
codeBlockContent.push(line);
|
|
150
|
+
continue;
|
|
151
|
+
}
|
|
152
|
+
if (trimmed.startsWith('-') || trimmed.startsWith('*')) {
|
|
153
|
+
const content = trimmed.replace(/^[-*]\s+/, '');
|
|
154
|
+
const backtickMatch = content.match(/^`([^`]+)`\s*[-–—]\s*(.+)$/);
|
|
155
|
+
if (backtickMatch) {
|
|
156
|
+
results.push({
|
|
157
|
+
command: backtickMatch[1].trim(),
|
|
158
|
+
description: backtickMatch[2].trim(),
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
return results;
|
|
164
|
+
}
|
|
165
|
+
parseErrors(raw) {
|
|
166
|
+
if (!raw)
|
|
167
|
+
return [];
|
|
168
|
+
const filtered = this.filterItalicLines(raw);
|
|
169
|
+
const results = [];
|
|
170
|
+
const lines = filtered.split('\n');
|
|
171
|
+
let currentError = null;
|
|
172
|
+
for (const line of lines) {
|
|
173
|
+
const trimmed = line.trim();
|
|
174
|
+
if (!trimmed)
|
|
175
|
+
continue;
|
|
176
|
+
const isTopLevel = /^[-*]\s/.test(trimmed) && !/^\s{2,}/.test(line);
|
|
177
|
+
const isSubLevel = /^\s{2,}[-*]\s/.test(line);
|
|
178
|
+
if (isTopLevel) {
|
|
179
|
+
if (currentError?.error) {
|
|
180
|
+
results.push(this.finalizeError(currentError));
|
|
181
|
+
}
|
|
182
|
+
const content = trimmed.replace(/^[-*]\s+/, '');
|
|
183
|
+
const errorText = content.replace(/^Error:\s*/i, '');
|
|
184
|
+
currentError = { error: errorText };
|
|
185
|
+
}
|
|
186
|
+
else if (isSubLevel && currentError) {
|
|
187
|
+
const content = trimmed.replace(/^[-*]\s+/, '');
|
|
188
|
+
if (/^Correction:\s*/i.test(content)) {
|
|
189
|
+
currentError.correction = content.replace(/^Correction:\s*/i, '');
|
|
190
|
+
}
|
|
191
|
+
else if (/^Failed approach:\s*/i.test(content)) {
|
|
192
|
+
currentError.failedApproach = content.replace(/^Failed approach:\s*/i, '');
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
if (currentError?.error) {
|
|
197
|
+
results.push(this.finalizeError(currentError));
|
|
198
|
+
}
|
|
199
|
+
return results;
|
|
200
|
+
}
|
|
201
|
+
finalizeError(partial) {
|
|
202
|
+
return {
|
|
203
|
+
error: partial.error ?? '',
|
|
204
|
+
correction: partial.correction ?? '',
|
|
205
|
+
...(partial.failedApproach
|
|
206
|
+
? { failedApproach: partial.failedApproach }
|
|
207
|
+
: {}),
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
parseLearnings(raw) {
|
|
211
|
+
if (!raw)
|
|
212
|
+
return [];
|
|
213
|
+
const filtered = this.filterItalicLines(raw);
|
|
214
|
+
const results = [];
|
|
215
|
+
for (const line of filtered.split('\n')) {
|
|
216
|
+
const trimmed = line.trim();
|
|
217
|
+
if (!trimmed.startsWith('-') && !trimmed.startsWith('*'))
|
|
218
|
+
continue;
|
|
219
|
+
const content = trimmed.replace(/^[-*]\s+/, '').trim();
|
|
220
|
+
if (!content)
|
|
221
|
+
continue;
|
|
222
|
+
results.push({
|
|
223
|
+
content,
|
|
224
|
+
type: this.classifyLearning(content),
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
return results;
|
|
228
|
+
}
|
|
229
|
+
classifyLearning(content) {
|
|
230
|
+
const lower = content.toLowerCase();
|
|
231
|
+
for (const keyword of NEGATIVE_KEYWORDS) {
|
|
232
|
+
if (lower.includes(keyword)) {
|
|
233
|
+
return 'negative';
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
for (const keyword of POSITIVE_KEYWORDS) {
|
|
237
|
+
if (lower.includes(keyword)) {
|
|
238
|
+
return 'positive';
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
return 'neutral';
|
|
242
|
+
}
|
|
243
|
+
parseWorklog(raw) {
|
|
244
|
+
if (!raw)
|
|
245
|
+
return [];
|
|
246
|
+
const filtered = this.filterItalicLines(raw);
|
|
247
|
+
const results = [];
|
|
248
|
+
for (const line of filtered.split('\n')) {
|
|
249
|
+
const trimmed = line.trim();
|
|
250
|
+
if (!trimmed.startsWith('-') && !trimmed.startsWith('*'))
|
|
251
|
+
continue;
|
|
252
|
+
const content = trimmed.replace(/^[-*]\s+/, '').trim();
|
|
253
|
+
if (!content)
|
|
254
|
+
continue;
|
|
255
|
+
const markerMatch = content.match(/^\[([^\]]+)\]\s*(.+)$/);
|
|
256
|
+
if (markerMatch) {
|
|
257
|
+
results.push({
|
|
258
|
+
marker: markerMatch[1].trim(),
|
|
259
|
+
activity: markerMatch[2].trim(),
|
|
260
|
+
});
|
|
261
|
+
}
|
|
262
|
+
else {
|
|
263
|
+
results.push({
|
|
264
|
+
activity: content,
|
|
265
|
+
});
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
return results;
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
//# sourceMappingURL=SessionMemoryParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionMemoryParser.js","sourceRoot":"","sources":["../../../src/integrations/session-memory/SessionMemoryParser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { KnowledgeGraph } from '../../knowledge-graph/index.js';
|
|
2
|
+
import { type InjectionContext } from './SessionContextInjector.js';
|
|
3
|
+
export interface PipelineConfig {
|
|
4
|
+
projectsDir?: string;
|
|
5
|
+
debounceMs?: number;
|
|
6
|
+
}
|
|
7
|
+
export declare class SessionMemoryPipeline {
|
|
8
|
+
private watcher;
|
|
9
|
+
private parser;
|
|
10
|
+
private ingester;
|
|
11
|
+
private injector;
|
|
12
|
+
private running;
|
|
13
|
+
constructor(knowledgeGraph: KnowledgeGraph, config?: PipelineConfig);
|
|
14
|
+
start(): Promise<void>;
|
|
15
|
+
stop(): Promise<void>;
|
|
16
|
+
generateContext(ctx?: InjectionContext): string;
|
|
17
|
+
get isRunning(): boolean;
|
|
18
|
+
private handleMemoryUpdate;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=SessionMemoryPipeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionMemoryPipeline.d.ts","sourceRoot":"","sources":["../../../src/integrations/session-memory/SessionMemoryPipeline.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAKrE,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAI5F,MAAM,WAAW,cAAc;IAE7B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAID,qBAAa,qBAAqB;IAChC,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,QAAQ,CAAwB;IACxC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,OAAO,CAAS;gBAEZ,cAAc,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,cAAc;IAiB7D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAUtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAU3B,eAAe,CAAC,GAAG,CAAC,EAAE,gBAAgB,GAAG,MAAM;IAO/C,IAAI,SAAS,IAAI,OAAO,CAEvB;YASa,kBAAkB;CAejC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import os from 'os';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { logger } from '../../utils/logger.js';
|
|
4
|
+
import { SessionMemoryWatcher } from './SessionMemoryWatcher.js';
|
|
5
|
+
import { SessionMemoryParser } from './SessionMemoryParser.js';
|
|
6
|
+
import { SessionMemoryIngester } from './SessionMemoryIngester.js';
|
|
7
|
+
import { SessionContextInjector } from './SessionContextInjector.js';
|
|
8
|
+
export class SessionMemoryPipeline {
|
|
9
|
+
watcher;
|
|
10
|
+
parser;
|
|
11
|
+
ingester;
|
|
12
|
+
injector;
|
|
13
|
+
running = false;
|
|
14
|
+
constructor(knowledgeGraph, config) {
|
|
15
|
+
const projectsDir = config?.projectsDir ?? path.join(os.homedir(), '.claude', 'projects');
|
|
16
|
+
this.parser = new SessionMemoryParser();
|
|
17
|
+
this.ingester = new SessionMemoryIngester(knowledgeGraph);
|
|
18
|
+
this.injector = new SessionContextInjector(knowledgeGraph);
|
|
19
|
+
this.watcher = new SessionMemoryWatcher({
|
|
20
|
+
projectsDir,
|
|
21
|
+
debounceMs: config?.debounceMs,
|
|
22
|
+
onMemoryUpdate: async (event) => this.handleMemoryUpdate(event),
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
async start() {
|
|
26
|
+
if (this.running)
|
|
27
|
+
return;
|
|
28
|
+
await this.watcher.start();
|
|
29
|
+
this.running = true;
|
|
30
|
+
}
|
|
31
|
+
async stop() {
|
|
32
|
+
if (!this.running)
|
|
33
|
+
return;
|
|
34
|
+
await this.watcher.stop();
|
|
35
|
+
this.running = false;
|
|
36
|
+
}
|
|
37
|
+
generateContext(ctx) {
|
|
38
|
+
return this.injector.generateContext(ctx);
|
|
39
|
+
}
|
|
40
|
+
get isRunning() {
|
|
41
|
+
return this.running;
|
|
42
|
+
}
|
|
43
|
+
async handleMemoryUpdate(event) {
|
|
44
|
+
try {
|
|
45
|
+
const parsed = this.parser.parse(event.content);
|
|
46
|
+
await this.ingester.ingest(parsed, event);
|
|
47
|
+
logger.info('SessionMemoryPipeline: ingested session memory', {
|
|
48
|
+
sessionId: event.sessionId,
|
|
49
|
+
changeType: event.changeType,
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
logger.error('SessionMemoryPipeline: failed to process memory update', {
|
|
54
|
+
sessionId: event.sessionId,
|
|
55
|
+
error: error instanceof Error ? error.message : String(error),
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=SessionMemoryPipeline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionMemoryPipeline.js","sourceRoot":"","sources":["../../../src/integrations/session-memory/SessionMemoryPipeline.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAG/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAyB,MAAM,6BAA6B,CAAC;AAa5F,MAAM,OAAO,qBAAqB;IACxB,OAAO,CAAuB;IAC9B,MAAM,CAAsB;IAC5B,QAAQ,CAAwB;IAChC,QAAQ,CAAyB;IACjC,OAAO,GAAG,KAAK,CAAC;IAExB,YAAY,cAA8B,EAAE,MAAuB;QACjE,MAAM,WAAW,GAAG,MAAM,EAAE,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAE1F,IAAI,CAAC,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAC;QACxC,IAAI,CAAC,QAAQ,GAAG,IAAI,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,GAAG,IAAI,sBAAsB,CAAC,cAAc,CAAC,CAAC;QAC3D,IAAI,CAAC,OAAO,GAAG,IAAI,oBAAoB,CAAC;YACtC,WAAW;YACX,UAAU,EAAE,MAAM,EAAE,UAAU;YAC9B,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;SAChE,CAAC,CAAC;IACL,CAAC;IAMD,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAMD,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAMD,eAAe,CAAC,GAAsB;QACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;IAKD,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IASO,KAAK,CAAC,kBAAkB,CAAC,KAAyB;QACxD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC1C,MAAM,CAAC,IAAI,CAAC,gDAAgD,EAAE;gBAC5D,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,wDAAwD,EAAE;gBACrE,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { SessionMemoryEvent } from './types.js';
|
|
2
|
+
interface WatcherConfig {
|
|
3
|
+
projectsDir: string;
|
|
4
|
+
debounceMs?: number;
|
|
5
|
+
onMemoryUpdate: (event: SessionMemoryEvent) => Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
export declare class SessionMemoryWatcher {
|
|
8
|
+
private watcher;
|
|
9
|
+
private processedHashes;
|
|
10
|
+
private debounceTimers;
|
|
11
|
+
private changeTypes;
|
|
12
|
+
private stopped;
|
|
13
|
+
private config;
|
|
14
|
+
constructor(config: WatcherConfig);
|
|
15
|
+
start(): Promise<void>;
|
|
16
|
+
stop(): Promise<void>;
|
|
17
|
+
parseFilePath(filePath: string): {
|
|
18
|
+
sessionId: string;
|
|
19
|
+
sanitizedPath: string;
|
|
20
|
+
};
|
|
21
|
+
desanitizePath(sanitized: string): string;
|
|
22
|
+
private handleFileChange;
|
|
23
|
+
private processFile;
|
|
24
|
+
get isWatching(): boolean;
|
|
25
|
+
}
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=SessionMemoryWatcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionMemoryWatcher.d.ts","sourceRoot":"","sources":["../../../src/integrations/session-memory/SessionMemoryWatcher.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAIrD,UAAU,aAAa;IAErB,WAAW,EAAE,MAAM,CAAC;IAEpB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,cAAc,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D;AAOD,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,WAAW,CAA4C;IAC/D,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAA8D;gBAEhE,MAAM,EAAE,aAAa;IAW3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA8CtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA6B3B,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE;IAoC7E,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAYzC,OAAO,CAAC,gBAAgB;YA8BV,WAAW;IA6DzB,IAAI,UAAU,IAAI,OAAO,CAExB;CACF"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import chokidar from 'chokidar';
|
|
2
|
+
import { createHash } from 'crypto';
|
|
3
|
+
import { readFile } from 'fs/promises';
|
|
4
|
+
import { logger } from '../../utils/logger.js';
|
|
5
|
+
const DEFAULT_DEBOUNCE_MS = 2000;
|
|
6
|
+
export class SessionMemoryWatcher {
|
|
7
|
+
watcher = null;
|
|
8
|
+
processedHashes = new Map();
|
|
9
|
+
debounceTimers = new Map();
|
|
10
|
+
changeTypes = new Map();
|
|
11
|
+
stopped = false;
|
|
12
|
+
config;
|
|
13
|
+
constructor(config) {
|
|
14
|
+
this.config = {
|
|
15
|
+
...config,
|
|
16
|
+
debounceMs: config.debounceMs ?? DEFAULT_DEBOUNCE_MS,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
async start() {
|
|
20
|
+
if (this.watcher) {
|
|
21
|
+
await this.stop();
|
|
22
|
+
}
|
|
23
|
+
this.stopped = false;
|
|
24
|
+
const watchPattern = `${this.config.projectsDir}/**/session-memory/summary.md`;
|
|
25
|
+
logger.info('SessionMemoryWatcher starting', {
|
|
26
|
+
pattern: watchPattern,
|
|
27
|
+
debounceMs: this.config.debounceMs,
|
|
28
|
+
});
|
|
29
|
+
this.watcher = chokidar.watch(watchPattern, {
|
|
30
|
+
persistent: true,
|
|
31
|
+
ignoreInitial: true,
|
|
32
|
+
awaitWriteFinish: {
|
|
33
|
+
stabilityThreshold: 1000,
|
|
34
|
+
pollInterval: 200,
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
this.watcher.on('add', (filePath) => {
|
|
38
|
+
this.handleFileChange(filePath, 'created');
|
|
39
|
+
});
|
|
40
|
+
this.watcher.on('change', (filePath) => {
|
|
41
|
+
this.handleFileChange(filePath, 'updated');
|
|
42
|
+
});
|
|
43
|
+
this.watcher.on('error', (error) => {
|
|
44
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
45
|
+
logger.error('SessionMemoryWatcher chokidar error', {
|
|
46
|
+
error: message,
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
async stop() {
|
|
51
|
+
this.stopped = true;
|
|
52
|
+
for (const timer of this.debounceTimers.values()) {
|
|
53
|
+
clearTimeout(timer);
|
|
54
|
+
}
|
|
55
|
+
this.debounceTimers.clear();
|
|
56
|
+
this.changeTypes.clear();
|
|
57
|
+
this.processedHashes.clear();
|
|
58
|
+
if (this.watcher) {
|
|
59
|
+
await this.watcher.close();
|
|
60
|
+
this.watcher = null;
|
|
61
|
+
}
|
|
62
|
+
logger.info('SessionMemoryWatcher stopped');
|
|
63
|
+
}
|
|
64
|
+
parseFilePath(filePath) {
|
|
65
|
+
const normalizedProjectsDir = this.config.projectsDir.replace(/\/+$/, '');
|
|
66
|
+
if (!filePath.startsWith(normalizedProjectsDir + '/')) {
|
|
67
|
+
throw new Error(`File path does not start with projectsDir: ${filePath}`);
|
|
68
|
+
}
|
|
69
|
+
const remainder = filePath.slice(normalizedProjectsDir.length + 1);
|
|
70
|
+
const segments = remainder.split('/');
|
|
71
|
+
if (segments.length < 4 || segments[segments.length - 2] !== 'session-memory') {
|
|
72
|
+
throw new Error(`Invalid session memory path structure: ${filePath}`);
|
|
73
|
+
}
|
|
74
|
+
const sanitizedPath = segments[0];
|
|
75
|
+
const sessionMemoryIdx = segments.lastIndexOf('session-memory');
|
|
76
|
+
const sessionId = segments[sessionMemoryIdx - 1];
|
|
77
|
+
return { sessionId, sanitizedPath };
|
|
78
|
+
}
|
|
79
|
+
desanitizePath(sanitized) {
|
|
80
|
+
const withoutLeading = sanitized.startsWith('-')
|
|
81
|
+
? sanitized.slice(1)
|
|
82
|
+
: sanitized;
|
|
83
|
+
return '/' + withoutLeading.replace(/-/g, '/');
|
|
84
|
+
}
|
|
85
|
+
handleFileChange(filePath, changeType) {
|
|
86
|
+
if (!this.changeTypes.has(filePath)) {
|
|
87
|
+
this.changeTypes.set(filePath, changeType);
|
|
88
|
+
}
|
|
89
|
+
const existingTimer = this.debounceTimers.get(filePath);
|
|
90
|
+
if (existingTimer) {
|
|
91
|
+
clearTimeout(existingTimer);
|
|
92
|
+
}
|
|
93
|
+
const timer = setTimeout(() => {
|
|
94
|
+
this.debounceTimers.delete(filePath);
|
|
95
|
+
const resolvedChangeType = this.changeTypes.get(filePath) ?? 'updated';
|
|
96
|
+
this.changeTypes.delete(filePath);
|
|
97
|
+
void this.processFile(filePath, resolvedChangeType);
|
|
98
|
+
}, this.config.debounceMs);
|
|
99
|
+
this.debounceTimers.set(filePath, timer);
|
|
100
|
+
}
|
|
101
|
+
async processFile(filePath, changeType) {
|
|
102
|
+
if (this.stopped)
|
|
103
|
+
return;
|
|
104
|
+
try {
|
|
105
|
+
const content = await readFile(filePath, 'utf-8');
|
|
106
|
+
const hash = createHash('sha256').update(content).digest('hex');
|
|
107
|
+
const previousHash = this.processedHashes.get(filePath);
|
|
108
|
+
if (previousHash === hash) {
|
|
109
|
+
logger.debug('SessionMemoryWatcher: skipping unchanged file', {
|
|
110
|
+
filePath,
|
|
111
|
+
});
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
this.processedHashes.set(filePath, hash);
|
|
115
|
+
const { sessionId, sanitizedPath } = this.parseFilePath(filePath);
|
|
116
|
+
const projectPath = this.desanitizePath(sanitizedPath);
|
|
117
|
+
const event = {
|
|
118
|
+
sessionId,
|
|
119
|
+
projectPath,
|
|
120
|
+
sanitizedPath,
|
|
121
|
+
summaryPath: filePath,
|
|
122
|
+
content,
|
|
123
|
+
timestamp: new Date(),
|
|
124
|
+
changeType,
|
|
125
|
+
};
|
|
126
|
+
await this.config.onMemoryUpdate(event);
|
|
127
|
+
logger.info('SessionMemoryWatcher: processed session memory', {
|
|
128
|
+
sessionId,
|
|
129
|
+
changeType,
|
|
130
|
+
filePath,
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
catch (error) {
|
|
134
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
135
|
+
logger.error('SessionMemoryWatcher: error processing file', {
|
|
136
|
+
filePath,
|
|
137
|
+
error: message,
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
get isWatching() {
|
|
142
|
+
return this.watcher !== null && !this.watcher.closed;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=SessionMemoryWatcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionMemoryWatcher.js","sourceRoot":"","sources":["../../../src/integrations/session-memory/SessionMemoryWatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { SessionMemoryParser } from './SessionMemoryParser.js';
|
|
2
|
+
export { SessionMemoryIngester } from './SessionMemoryIngester.js';
|
|
3
|
+
export { SessionMemoryWatcher } from './SessionMemoryWatcher.js';
|
|
4
|
+
export { SessionContextInjector } from './SessionContextInjector.js';
|
|
5
|
+
export type { InjectionConfig, InjectionContext } from './SessionContextInjector.js';
|
|
6
|
+
export { SessionMemoryPipeline } from './SessionMemoryPipeline.js';
|
|
7
|
+
export type { PipelineConfig } from './SessionMemoryPipeline.js';
|
|
8
|
+
export type { ParsedSessionMemory, SessionMemoryEvent, IngestionResult, FileReference, WorkflowStep, ErrorCorrection, Learning, LearningType, WorklogEntry, IngestionError, } from './types.js';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/integrations/session-memory/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,YAAY,EACV,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,cAAc,GACf,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { SessionMemoryParser } from './SessionMemoryParser.js';
|
|
2
|
+
export { SessionMemoryIngester } from './SessionMemoryIngester.js';
|
|
3
|
+
export { SessionMemoryWatcher } from './SessionMemoryWatcher.js';
|
|
4
|
+
export { SessionContextInjector } from './SessionContextInjector.js';
|
|
5
|
+
export { SessionMemoryPipeline } from './SessionMemoryPipeline.js';
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integrations/session-memory/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC"}
|