@mxf-dev/core 1.0.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -0
- package/dist/adapters/FrameworkAdapter.js +1 -1
- package/dist/adapters/FrameworkAdapter.js.map +1 -1
- package/dist/config/ConfigManager.d.ts +9 -8
- package/dist/config/ConfigManager.d.ts.map +1 -1
- package/dist/config/ConfigManager.js +47 -17
- package/dist/config/ConfigManager.js.map +1 -1
- package/dist/config/memory-strata.config.d.ts +25 -0
- package/dist/config/memory-strata.config.d.ts.map +1 -0
- package/dist/config/memory-strata.config.js +107 -0
- package/dist/config/memory-strata.config.js.map +1 -0
- package/dist/constants/ToolNames.d.ts +1 -29
- package/dist/constants/ToolNames.d.ts.map +1 -1
- package/dist/constants/ToolNames.js +4 -17
- package/dist/constants/ToolNames.js.map +1 -1
- package/dist/database/DatabaseAdapterFactory.d.ts +14 -2
- package/dist/database/DatabaseAdapterFactory.d.ts.map +1 -1
- package/dist/database/DatabaseAdapterFactory.js +21 -6
- package/dist/database/DatabaseAdapterFactory.js.map +1 -1
- package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts +7 -1
- package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts.map +1 -1
- package/dist/database/adapters/mongodb/MongoBaseRepository.js +12 -2
- package/dist/database/adapters/mongodb/MongoBaseRepository.js.map +1 -1
- package/dist/events/ClientEventBus.d.ts +16 -77
- package/dist/events/ClientEventBus.d.ts.map +1 -1
- package/dist/events/ClientEventBus.js +38 -311
- package/dist/events/ClientEventBus.js.map +1 -1
- package/dist/events/EventBus.d.ts +1 -1
- package/dist/events/EventBus.d.ts.map +1 -1
- package/dist/events/EventBus.js +5 -4
- package/dist/events/EventBus.js.map +1 -1
- package/dist/events/EventBusBase.d.ts +139 -34
- package/dist/events/EventBusBase.d.ts.map +1 -1
- package/dist/events/EventBusBase.js +366 -88
- package/dist/events/EventBusBase.js.map +1 -1
- package/dist/events/EventNames.d.ts +10 -1
- package/dist/events/EventNames.d.ts.map +1 -1
- package/dist/events/EventNames.js +3 -0
- package/dist/events/EventNames.js.map +1 -1
- package/dist/events/PublicEvents.d.ts +6 -2
- package/dist/events/PublicEvents.d.ts.map +1 -1
- package/dist/events/PublicEvents.js +7 -4
- package/dist/events/PublicEvents.js.map +1 -1
- package/dist/events/ServerEventBus.d.ts +23 -112
- package/dist/events/ServerEventBus.d.ts.map +1 -1
- package/dist/events/ServerEventBus.js +58 -323
- package/dist/events/ServerEventBus.js.map +1 -1
- package/dist/events/event-definitions/LlmBudgetEvents.d.ts +68 -0
- package/dist/events/event-definitions/LlmBudgetEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/LlmBudgetEvents.js +35 -0
- package/dist/events/event-definitions/LlmBudgetEvents.js.map +1 -0
- package/dist/interfaces/IMemoryPersistence.d.ts +41 -0
- package/dist/interfaces/IMemoryPersistence.d.ts.map +1 -0
- package/dist/interfaces/IMemoryPersistence.js +15 -0
- package/dist/interfaces/IMemoryPersistence.js.map +1 -0
- package/dist/middleware/MxpMiddleware.d.ts +8 -1
- package/dist/middleware/MxpMiddleware.d.ts.map +1 -1
- package/dist/middleware/MxpMiddleware.js +42 -20
- package/dist/middleware/MxpMiddleware.js.map +1 -1
- package/dist/models/channelKey.d.ts +1 -0
- package/dist/models/channelKey.d.ts.map +1 -1
- package/dist/models/channelKey.js +5 -0
- package/dist/models/channelKey.js.map +1 -1
- package/dist/models/memoryUtility.d.ts +39 -0
- package/dist/models/memoryUtility.d.ts.map +1 -0
- package/dist/models/memoryUtility.js +39 -0
- package/dist/models/memoryUtility.js.map +1 -0
- package/dist/models/user.d.ts.map +1 -1
- package/dist/models/user.js +23 -1
- package/dist/models/user.js.map +1 -1
- package/dist/mxp/BinaryProtocolLayer.d.ts +24 -8
- package/dist/mxp/BinaryProtocolLayer.d.ts.map +1 -1
- package/dist/mxp/BinaryProtocolLayer.js +90 -103
- package/dist/mxp/BinaryProtocolLayer.js.map +1 -1
- package/dist/mxp/ContextCompressionEngine.d.ts +57 -10
- package/dist/mxp/ContextCompressionEngine.d.ts.map +1 -1
- package/dist/mxp/ContextCompressionEngine.js +170 -128
- package/dist/mxp/ContextCompressionEngine.js.map +1 -1
- package/dist/mxp/MxpTokenOptimizer.d.ts +7 -3
- package/dist/mxp/MxpTokenOptimizer.d.ts.map +1 -1
- package/dist/mxp/MxpTokenOptimizer.js +8 -5
- package/dist/mxp/MxpTokenOptimizer.js.map +1 -1
- package/dist/prompts/MxfAgentSystemPrompt.d.ts +1 -1
- package/dist/prompts/MxfAgentSystemPrompt.d.ts.map +1 -1
- package/dist/prompts/MxfAgentSystemPrompt.js +47 -57
- package/dist/prompts/MxfAgentSystemPrompt.js.map +1 -1
- package/dist/protocols/mcp/ToolError.d.ts +123 -0
- package/dist/protocols/mcp/ToolError.d.ts.map +1 -0
- package/dist/protocols/mcp/ToolError.js +108 -0
- package/dist/protocols/mcp/ToolError.js.map +1 -0
- package/dist/protocols/mcp/defineTool.d.ts +133 -0
- package/dist/protocols/mcp/defineTool.d.ts.map +1 -0
- package/dist/protocols/mcp/defineTool.js +236 -0
- package/dist/protocols/mcp/defineTool.js.map +1 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.d.ts +38 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.d.ts.map +1 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.js +227 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.js.map +1 -0
- package/dist/protocols/mcp/security/McpSecurityGuard.d.ts +9 -1
- package/dist/protocols/mcp/security/McpSecurityGuard.d.ts.map +1 -1
- package/dist/protocols/mcp/security/McpSecurityGuard.js +10 -2
- package/dist/protocols/mcp/security/McpSecurityGuard.js.map +1 -1
- package/dist/protocols/mcp/security/McpToolPolicy.d.ts +81 -0
- package/dist/protocols/mcp/security/McpToolPolicy.d.ts.map +1 -0
- package/dist/protocols/mcp/security/McpToolPolicy.js +202 -0
- package/dist/protocols/mcp/security/McpToolPolicy.js.map +1 -0
- package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts +51 -18
- package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts.map +1 -1
- package/dist/protocols/mcp/services/ExternalMcpServerManager.js +256 -283
- package/dist/protocols/mcp/services/ExternalMcpServerManager.js.map +1 -1
- package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts +39 -6
- package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts.map +1 -1
- package/dist/protocols/mcp/services/ExternalServerConfigs.js +76 -18
- package/dist/protocols/mcp/services/ExternalServerConfigs.js.map +1 -1
- package/dist/protocols/mcp/tools/AnalyticsTools.js +1 -1
- package/dist/protocols/mcp/tools/AnalyticsTools.js.map +1 -1
- package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/CodeAnalysisTools.js +15 -0
- package/dist/protocols/mcp/tools/CodeAnalysisTools.js.map +1 -1
- package/dist/protocols/mcp/tools/EffectivenessTools.js +3 -3
- package/dist/protocols/mcp/tools/EffectivenessTools.js.map +1 -1
- package/dist/protocols/mcp/tools/GitTools.d.ts +9 -369
- package/dist/protocols/mcp/tools/GitTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/GitTools.js +222 -517
- package/dist/protocols/mcp/tools/GitTools.js.map +1 -1
- package/dist/protocols/mcp/tools/InfrastructureTools.d.ts +56 -24
- package/dist/protocols/mcp/tools/InfrastructureTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/InfrastructureTools.js +117 -26
- package/dist/protocols/mcp/tools/InfrastructureTools.js.map +1 -1
- package/dist/protocols/mcp/tools/MemorySearchTools.d.ts +0 -3
- package/dist/protocols/mcp/tools/MemorySearchTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/MemorySearchTools.js +58 -1
- package/dist/protocols/mcp/tools/MemorySearchTools.js.map +1 -1
- package/dist/protocols/mcp/tools/OrparTools.d.ts +8 -0
- package/dist/protocols/mcp/tools/OrparTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/OrparTools.js +66 -0
- package/dist/protocols/mcp/tools/OrparTools.js.map +1 -1
- package/dist/protocols/mcp/tools/SafetyTools.d.ts +7 -525
- package/dist/protocols/mcp/tools/SafetyTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/SafetyTools.js +349 -514
- package/dist/protocols/mcp/tools/SafetyTools.js.map +1 -1
- package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TaskPlanningTools.js +56 -26
- package/dist/protocols/mcp/tools/TaskPlanningTools.js.map +1 -1
- package/dist/protocols/mcp/tools/TestTools.d.ts +15 -376
- package/dist/protocols/mcp/tools/TestTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TestTools.js +241 -363
- package/dist/protocols/mcp/tools/TestTools.js.map +1 -1
- package/dist/protocols/mcp/tools/TypeScriptTools.d.ts +6 -276
- package/dist/protocols/mcp/tools/TypeScriptTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TypeScriptTools.js +223 -337
- package/dist/protocols/mcp/tools/TypeScriptTools.js.map +1 -1
- package/dist/protocols/mcp/tools/WebTools.d.ts +15 -728
- package/dist/protocols/mcp/tools/WebTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/WebTools.js +151 -257
- package/dist/protocols/mcp/tools/WebTools.js.map +1 -1
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts +5 -3
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js +31 -6
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js.map +1 -1
- package/dist/schemas/EventPayloadSchema.d.ts +21 -0
- package/dist/schemas/EventPayloadSchema.d.ts.map +1 -1
- package/dist/schemas/EventPayloadSchema.js +14 -0
- package/dist/schemas/EventPayloadSchema.js.map +1 -1
- package/dist/services/BackgroundTaskManager.d.ts.map +1 -1
- package/dist/services/BackgroundTaskManager.js +12 -4
- package/dist/services/BackgroundTaskManager.js.map +1 -1
- package/dist/services/BrowserManager.d.ts +1 -1
- package/dist/services/BrowserManager.d.ts.map +1 -1
- package/dist/services/BrowserManager.js +26 -3
- package/dist/services/BrowserManager.js.map +1 -1
- package/dist/services/MemoryCompressor.d.ts +11 -2
- package/dist/services/MemoryCompressor.d.ts.map +1 -1
- package/dist/services/MemoryCompressor.js +8 -26
- package/dist/services/MemoryCompressor.js.map +1 -1
- package/dist/services/MemoryService.d.ts +16 -3
- package/dist/services/MemoryService.d.ts.map +1 -1
- package/dist/services/MemoryService.js +79 -55
- package/dist/services/MemoryService.js.map +1 -1
- package/dist/services/PredictiveAnalyticsService.d.ts +34 -4
- package/dist/services/PredictiveAnalyticsService.d.ts.map +1 -1
- package/dist/services/PredictiveAnalyticsService.js +41 -25
- package/dist/services/PredictiveAnalyticsService.js.map +1 -1
- package/dist/services/QValueManager.d.ts +7 -0
- package/dist/services/QValueManager.d.ts.map +1 -1
- package/dist/services/QValueManager.js +9 -0
- package/dist/services/QValueManager.js.map +1 -1
- package/dist/services/RewardSignalProcessor.d.ts +38 -1
- package/dist/services/RewardSignalProcessor.d.ts.map +1 -1
- package/dist/services/RewardSignalProcessor.js +109 -7
- package/dist/services/RewardSignalProcessor.js.map +1 -1
- package/dist/services/SharedStateService.d.ts +16 -2
- package/dist/services/SharedStateService.d.ts.map +1 -1
- package/dist/services/SharedStateService.js +44 -3
- package/dist/services/SharedStateService.js.map +1 -1
- package/dist/services/TaskEffectivenessService.d.ts +34 -18
- package/dist/services/TaskEffectivenessService.d.ts.map +1 -1
- package/dist/services/TaskEffectivenessService.js +91 -155
- package/dist/services/TaskEffectivenessService.js.map +1 -1
- package/dist/services/WebSearchService.d.ts.map +1 -1
- package/dist/services/WebSearchService.js.map +1 -1
- package/dist/services/dag/TaskDagService.d.ts.map +1 -1
- package/dist/services/dag/TaskDagService.js +2 -0
- package/dist/services/dag/TaskDagService.js.map +1 -1
- package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts +7 -0
- package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts.map +1 -1
- package/dist/services/orpar-memory/OrparMemoryCoordinator.js +71 -10
- package/dist/services/orpar-memory/OrparMemoryCoordinator.js.map +1 -1
- package/dist/types/MemoryUtilityTypes.d.ts +2 -0
- package/dist/types/MemoryUtilityTypes.d.ts.map +1 -1
- package/dist/types/MemoryUtilityTypes.js.map +1 -1
- package/dist/utils/Logger.d.ts +43 -3
- package/dist/utils/Logger.d.ts.map +1 -1
- package/dist/utils/Logger.js +78 -36
- package/dist/utils/Logger.js.map +1 -1
- package/dist/utils/MxpEncryption.d.ts +19 -6
- package/dist/utils/MxpEncryption.d.ts.map +1 -1
- package/dist/utils/MxpEncryption.js +48 -16
- package/dist/utils/MxpEncryption.js.map +1 -1
- package/package.json +19 -4
- package/src/adapters/FrameworkAdapter.ts +1 -1
- package/src/config/ConfigManager.ts +52 -19
- package/src/config/memory-strata.config.ts +136 -0
- package/src/constants/ToolNames.ts +4 -18
- package/src/database/DatabaseAdapterFactory.ts +23 -6
- package/src/database/adapters/mongodb/MongoBaseRepository.ts +16 -2
- package/src/events/ClientEventBus.ts +68 -403
- package/src/events/EventBus.ts +7 -8
- package/src/events/EventBusBase.ts +479 -116
- package/src/events/EventNames.ts +6 -0
- package/src/events/PublicEvents.ts +7 -4
- package/src/events/ServerEventBus.ts +78 -473
- package/src/events/event-definitions/LlmBudgetEvents.ts +74 -0
- package/src/interfaces/IMemoryPersistence.ts +51 -0
- package/src/middleware/MxpMiddleware.ts +51 -24
- package/src/models/channelKey.ts +18 -4
- package/src/models/memoryUtility.ts +64 -0
- package/src/models/user.ts +36 -4
- package/src/mxp/BinaryProtocolLayer.ts +108 -124
- package/src/mxp/ContextCompressionEngine.ts +219 -161
- package/src/mxp/MxpTokenOptimizer.ts +10 -10
- package/src/prompts/MxfAgentSystemPrompt.ts +45 -55
- package/src/protocols/mcp/ToolError.ts +201 -0
- package/src/protocols/mcp/defineTool.ts +379 -0
- package/src/protocols/mcp/security/HttpTargetGuard.ts +267 -0
- package/src/protocols/mcp/security/McpSecurityGuard.ts +10 -3
- package/src/protocols/mcp/security/McpToolPolicy.ts +221 -0
- package/src/protocols/mcp/services/ExternalMcpServerManager.ts +340 -322
- package/src/protocols/mcp/services/ExternalServerConfigs.ts +82 -19
- package/src/protocols/mcp/tools/AnalyticsTools.ts +1 -1
- package/src/protocols/mcp/tools/CodeAnalysisTools.ts +15 -0
- package/src/protocols/mcp/tools/EffectivenessTools.ts +3 -3
- package/src/protocols/mcp/tools/GitTools.ts +290 -569
- package/src/protocols/mcp/tools/InfrastructureTools.ts +189 -43
- package/src/protocols/mcp/tools/MemorySearchTools.ts +77 -1
- package/src/protocols/mcp/tools/OrparTools.ts +87 -0
- package/src/protocols/mcp/tools/SafetyTools.ts +501 -579
- package/src/protocols/mcp/tools/TaskPlanningTools.ts +81 -39
- package/src/protocols/mcp/tools/TestTools.ts +339 -419
- package/src/protocols/mcp/tools/TypeScriptTools.ts +316 -376
- package/src/protocols/mcp/tools/WebTools.ts +209 -307
- package/src/protocols/mcp/tools/shell/ShellExecuteHandler.ts +53 -14
- package/src/schemas/EventPayloadSchema.ts +37 -0
- package/src/services/BackgroundTaskManager.ts +12 -4
- package/src/services/BrowserManager.ts +41 -1
- package/src/services/MemoryCompressor.ts +20 -32
- package/src/services/MemoryService.ts +96 -58
- package/src/services/PredictiveAnalyticsService.ts +55 -32
- package/src/services/QValueManager.ts +10 -0
- package/src/services/RewardSignalProcessor.ts +138 -9
- package/src/services/SharedStateService.ts +56 -8
- package/src/services/TaskEffectivenessService.ts +114 -187
- package/src/services/WebSearchService.ts +2 -1
- package/src/services/dag/TaskDagService.ts +2 -0
- package/src/services/orpar-memory/OrparMemoryCoordinator.ts +86 -10
- package/src/types/MemoryUtilityTypes.ts +2 -0
- package/src/utils/Logger.ts +116 -40
- package/src/utils/MxpEncryption.ts +69 -34
- package/dist/mxp/MxpEventForwardingEnhancer.d.ts +0 -134
- package/dist/mxp/MxpEventForwardingEnhancer.d.ts.map +0 -1
- package/dist/mxp/MxpEventForwardingEnhancer.js +0 -361
- package/dist/mxp/MxpEventForwardingEnhancer.js.map +0 -1
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts +0 -56
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts.map +0 -1
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.js +0 -57
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.js.map +0 -1
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts +0 -270
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts.map +0 -1
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.js +0 -256
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.js.map +0 -1
- package/dist/protocols/mcp/tools/LspTools.d.ts +0 -495
- package/dist/protocols/mcp/tools/LspTools.d.ts.map +0 -1
- package/dist/protocols/mcp/tools/LspTools.js +0 -469
- package/dist/protocols/mcp/tools/LspTools.js.map +0 -1
- package/src/mxp/MxpEventForwardingEnhancer.ts +0 -471
- package/src/protocols/mcp/services/ToolSchemaEnhancements.ts +0 -92
- package/src/protocols/mcp/tools/ControlLoopLifecycle.ts +0 -302
- package/src/protocols/mcp/tools/LspTools.ts +0 -476
|
@@ -51,6 +51,13 @@ export class RewardSignalProcessor {
|
|
|
51
51
|
rewardMapping;
|
|
52
52
|
// Memory usage tracking (task ID -> memories used)
|
|
53
53
|
taskMemoryUsage = new Map();
|
|
54
|
+
/**
|
|
55
|
+
* Memories retrieved by an agent that are not yet attributed to a completed task,
|
|
56
|
+
* keyed by `${agentId}:${channelId}`. Drained on task completion.
|
|
57
|
+
*/
|
|
58
|
+
agentMemoryUsage = new Map();
|
|
59
|
+
/** Cap on buffered memories per agent+channel, so the buffer cannot grow unbounded. */
|
|
60
|
+
static MAX_BUFFERED_MEMORIES_PER_AGENT = 200;
|
|
54
61
|
// Event listener cleanup functions
|
|
55
62
|
eventCleanupFns = [];
|
|
56
63
|
constructor() {
|
|
@@ -110,6 +117,14 @@ export class RewardSignalProcessor {
|
|
|
110
117
|
};
|
|
111
118
|
EventBus.server.on(Events.Task.COMPLETED, taskCompletedHandler);
|
|
112
119
|
this.eventCleanupFns.push(() => EventBus.server.off(Events.Task.COMPLETED, taskCompletedHandler));
|
|
120
|
+
// A failed task is the strongest signal MULS has that the memories it surfaced
|
|
121
|
+
// were unhelpful, and it was being thrown away: nothing listened for
|
|
122
|
+
// Events.Task.FAILED, so failure could never lower a Q-value.
|
|
123
|
+
const taskFailedHandler = (payload) => {
|
|
124
|
+
this.handleTaskCompleted(payload, 'failure');
|
|
125
|
+
};
|
|
126
|
+
EventBus.server.on(Events.Task.FAILED, taskFailedHandler);
|
|
127
|
+
this.eventCleanupFns.push(() => EventBus.server.off(Events.Task.FAILED, taskFailedHandler));
|
|
113
128
|
// Listen for analytics task completed events (may have evaluation scores)
|
|
114
129
|
const analyticsCompletedHandler = (payload) => {
|
|
115
130
|
this.handleAnalyticsTaskCompleted(payload);
|
|
@@ -134,16 +149,40 @@ export class RewardSignalProcessor {
|
|
|
134
149
|
/**
|
|
135
150
|
* Handle task completion event
|
|
136
151
|
*/
|
|
137
|
-
async handleTaskCompleted(payload) {
|
|
152
|
+
async handleTaskCompleted(payload, forcedStatus) {
|
|
138
153
|
if (!this.enabled)
|
|
139
154
|
return;
|
|
140
155
|
try {
|
|
141
156
|
const taskId = payload.data?.taskId ?? payload.taskId;
|
|
142
|
-
const status = this.mapStatusToOutcome(payload.data?.status ?? payload.status);
|
|
143
157
|
const agentId = payload.agentId ?? payload.data?.agentId;
|
|
144
158
|
const channelId = payload.channelId ?? payload.data?.channelId;
|
|
145
|
-
//
|
|
146
|
-
|
|
159
|
+
// Task events carry the task object in `data.task` (see TaskEventData), so the
|
|
160
|
+
// real status lives at data.task.status. Reading only data.status meant the
|
|
161
|
+
// status was always undefined, which the mapper then turned into 'partial' —
|
|
162
|
+
// giving every task, successful or not, the same small positive reward.
|
|
163
|
+
const rawStatus = payload.data?.task?.status ??
|
|
164
|
+
payload.data?.status ??
|
|
165
|
+
payload.status;
|
|
166
|
+
const status = forcedStatus ?? this.mapStatusToOutcome(rawStatus);
|
|
167
|
+
// Never invent an outcome. Attributing a reward from a status we could not read
|
|
168
|
+
// would teach the system from a number nobody measured.
|
|
169
|
+
if (!status) {
|
|
170
|
+
this.logger.warn(`[RewardSignalProcessor] Task ${taskId} completed with an unrecognised status ` +
|
|
171
|
+
`(${String(rawStatus)}); skipping reward attribution rather than guessing one.`);
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
// Memories used during this task: anything explicitly tracked against the task
|
|
175
|
+
// id, plus anything the agent retrieved in this channel since its last
|
|
176
|
+
// completion (retrieval has no task id to attribute to — see
|
|
177
|
+
// trackAgentMemoriesUsage).
|
|
178
|
+
const explicitlyTracked = this.taskMemoryUsage.get(taskId) ?? [];
|
|
179
|
+
const bufferedForAgent = this.drainAgentMemories(agentId, channelId);
|
|
180
|
+
const memoriesUsed = [...explicitlyTracked];
|
|
181
|
+
for (const record of bufferedForAgent) {
|
|
182
|
+
if (!memoriesUsed.some(m => m.memoryId === record.memoryId)) {
|
|
183
|
+
memoriesUsed.push(record);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
147
186
|
if (memoriesUsed.length === 0) {
|
|
148
187
|
this.logger.debug(`[RewardSignalProcessor] No memories tracked for task ${taskId}`);
|
|
149
188
|
return;
|
|
@@ -202,6 +241,13 @@ export class RewardSignalProcessor {
|
|
|
202
241
|
/**
|
|
203
242
|
* Map task status string to TaskOutcomeStatus
|
|
204
243
|
*/
|
|
244
|
+
/**
|
|
245
|
+
* Map a task status to a reward outcome, or null when the status is unrecognised.
|
|
246
|
+
*
|
|
247
|
+
* Returns null rather than defaulting to 'partial'. The old default meant an
|
|
248
|
+
* unreadable status still earned a positive reward, so memories were reinforced by
|
|
249
|
+
* tasks whose outcome was never actually known.
|
|
250
|
+
*/
|
|
205
251
|
mapStatusToOutcome(status) {
|
|
206
252
|
switch (status?.toLowerCase()) {
|
|
207
253
|
case 'completed':
|
|
@@ -219,7 +265,7 @@ export class RewardSignalProcessor {
|
|
|
219
265
|
case 'timed_out':
|
|
220
266
|
return 'timeout';
|
|
221
267
|
default:
|
|
222
|
-
return
|
|
268
|
+
return null; // Unknown status — the caller must skip attribution, not guess.
|
|
223
269
|
}
|
|
224
270
|
}
|
|
225
271
|
/**
|
|
@@ -386,6 +432,54 @@ export class RewardSignalProcessor {
|
|
|
386
432
|
this.logger.debug(`[RewardSignalProcessor] Tracked memory ${memoryId} for task ${taskId} (phase=${phase})`);
|
|
387
433
|
}
|
|
388
434
|
}
|
|
435
|
+
/**
|
|
436
|
+
* Track memories retrieved by an agent, without needing a task id.
|
|
437
|
+
*
|
|
438
|
+
* Retrieval happens inside MCP tool handlers, and the tool context carries only
|
|
439
|
+
* agentId/channelId — never the task the agent is working on. Rather than plumb a
|
|
440
|
+
* task id through the whole MCP execution path, retrieval records what it returned
|
|
441
|
+
* against the agent+channel, and handleTaskCompleted drains that buffer when the
|
|
442
|
+
* agent's task finishes. A task is executed by one agent in one channel, so the
|
|
443
|
+
* memories buffered for that pair are exactly the ones the task used.
|
|
444
|
+
*
|
|
445
|
+
* This is the call that was missing: nothing in production ever recorded which
|
|
446
|
+
* memories were used, so every task completed with an empty usage list and no
|
|
447
|
+
* reward was ever attributed.
|
|
448
|
+
*/
|
|
449
|
+
trackAgentMemoriesUsage(agentId, channelId, memoryIds, phase, usageType) {
|
|
450
|
+
if (!this.enabled || !this.config.trackMemoryUsage)
|
|
451
|
+
return;
|
|
452
|
+
if (!agentId || !channelId || memoryIds.length === 0)
|
|
453
|
+
return;
|
|
454
|
+
const key = `${agentId}:${channelId}`;
|
|
455
|
+
let records = this.agentMemoryUsage.get(key);
|
|
456
|
+
if (!records) {
|
|
457
|
+
records = [];
|
|
458
|
+
this.agentMemoryUsage.set(key, records);
|
|
459
|
+
}
|
|
460
|
+
for (const memoryId of memoryIds) {
|
|
461
|
+
if (!records.some(r => r.memoryId === memoryId)) {
|
|
462
|
+
records.push({ memoryId, phase, retrievedAt: new Date(), usageType });
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
// Bound the buffer. An agent that retrieves memories without ever completing a
|
|
466
|
+
// task would otherwise grow this map without limit.
|
|
467
|
+
if (records.length > RewardSignalProcessor.MAX_BUFFERED_MEMORIES_PER_AGENT) {
|
|
468
|
+
records.splice(0, records.length - RewardSignalProcessor.MAX_BUFFERED_MEMORIES_PER_AGENT);
|
|
469
|
+
}
|
|
470
|
+
this.logger.debug(`[RewardSignalProcessor] Buffered ${memoryIds.length} memories for ${key} (phase=${phase})`);
|
|
471
|
+
}
|
|
472
|
+
/**
|
|
473
|
+
* Take and clear the memories buffered for an agent in a channel.
|
|
474
|
+
*/
|
|
475
|
+
drainAgentMemories(agentId, channelId) {
|
|
476
|
+
if (!agentId || !channelId)
|
|
477
|
+
return [];
|
|
478
|
+
const key = `${agentId}:${channelId}`;
|
|
479
|
+
const records = this.agentMemoryUsage.get(key) ?? [];
|
|
480
|
+
this.agentMemoryUsage.delete(key);
|
|
481
|
+
return records;
|
|
482
|
+
}
|
|
389
483
|
/**
|
|
390
484
|
* Track multiple memories for a task
|
|
391
485
|
*/
|
|
@@ -470,16 +564,24 @@ export class RewardSignalProcessor {
|
|
|
470
564
|
}
|
|
471
565
|
}
|
|
472
566
|
/**
|
|
473
|
-
* Get tracking statistics
|
|
567
|
+
* Get tracking statistics.
|
|
568
|
+
*
|
|
569
|
+
* `bufferedMemories` counts memories retrieved by agents that are not yet attributed
|
|
570
|
+
* to a completed task (see trackAgentMemoriesUsage).
|
|
474
571
|
*/
|
|
475
572
|
getTrackingStats() {
|
|
476
573
|
let totalMemories = 0;
|
|
477
574
|
for (const [, records] of this.taskMemoryUsage) {
|
|
478
575
|
totalMemories += records.length;
|
|
479
576
|
}
|
|
577
|
+
let bufferedMemories = 0;
|
|
578
|
+
for (const [, records] of this.agentMemoryUsage) {
|
|
579
|
+
bufferedMemories += records.length;
|
|
580
|
+
}
|
|
480
581
|
return {
|
|
481
582
|
activeTasks: this.taskMemoryUsage.size,
|
|
482
|
-
totalMemoriesTracked: totalMemories
|
|
583
|
+
totalMemoriesTracked: totalMemories,
|
|
584
|
+
bufferedMemories
|
|
483
585
|
};
|
|
484
586
|
}
|
|
485
587
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RewardSignalProcessor.js","sourceRoot":"","sources":["../../src/services/RewardSignalProcessor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RewardSignalProcessor.js","sourceRoot":"","sources":["../../src/services/RewardSignalProcessor.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,8 +36,17 @@ export declare class SharedStateService {
|
|
|
36
36
|
private static instance;
|
|
37
37
|
private stateStore;
|
|
38
38
|
private channelStates;
|
|
39
|
+
/** How long an untouched state entry is kept before cleanup (24 hours). */
|
|
40
|
+
private static readonly STATE_TTL_MS;
|
|
41
|
+
/** How often the cleanup sweep runs (1 hour). */
|
|
42
|
+
private static readonly CLEANUP_INTERVAL_MS;
|
|
43
|
+
private cleanupInterval;
|
|
39
44
|
private constructor();
|
|
40
45
|
static getInstance(): SharedStateService;
|
|
46
|
+
/**
|
|
47
|
+
* Stop the cleanup timer. For tests and shutdown.
|
|
48
|
+
*/
|
|
49
|
+
stopCleanup(): void;
|
|
41
50
|
/**
|
|
42
51
|
* Store collaborative state that can be referenced by ID
|
|
43
52
|
* Only used when agents have mxpEnabled=true
|
|
@@ -62,9 +71,14 @@ export declare class SharedStateService {
|
|
|
62
71
|
*/
|
|
63
72
|
getChannelStates(channelId: string): SharedStateEntry[];
|
|
64
73
|
/**
|
|
65
|
-
*
|
|
74
|
+
* Drop states that have not been touched within the TTL.
|
|
75
|
+
*
|
|
76
|
+
* Runs on a timer from the constructor; also callable directly.
|
|
77
|
+
*
|
|
78
|
+
* @param maxAgeMs Age past which a state is dropped (default: 24 hours)
|
|
79
|
+
* @returns The number of states removed
|
|
66
80
|
*/
|
|
67
|
-
cleanupOldStates(maxAgeMs?: number):
|
|
81
|
+
cleanupOldStates(maxAgeMs?: number): number;
|
|
68
82
|
/**
|
|
69
83
|
* Get statistics for monitoring
|
|
70
84
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SharedStateService.d.ts","sourceRoot":"","sources":["../../src/services/SharedStateService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAeH,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,GAAG,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAqB;IAC5C,OAAO,CAAC,UAAU,CAAuC;IACzD,OAAO,CAAC,aAAa,CAAkC;IAEvD,OAAO;
|
|
1
|
+
{"version":3,"file":"SharedStateService.d.ts","sourceRoot":"","sources":["../../src/services/SharedStateService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAeH,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,GAAG,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAqB;IAC5C,OAAO,CAAC,UAAU,CAAuC;IACzD,OAAO,CAAC,aAAa,CAAkC;IAEvD,2EAA2E;IAC3E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAuB;IAE3D,iDAAiD;IACjD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAkB;IAE7D,OAAO,CAAC,eAAe,CAA+B;IAEtD,OAAO;WAcO,WAAW,IAAI,kBAAkB;IAO/C;;OAEG;IACI,WAAW,IAAI,IAAI;IAO1B;;;OAGG;IACI,UAAU,CACb,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,GAAG,EACT,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,MAAM,GACrB,IAAI;IA4BP;;OAEG;IACI,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAIzD;;;OAGG;IACI,oBAAoB,CACvB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;QACL,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;QAC5C,UAAU,CAAC,EAAE,GAAG,CAAC;KACf,GACP,GAAG;IA6CN;;OAEG;IACI,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAS9D;;;;;;;OAOG;IACI,gBAAgB,CAAC,QAAQ,GAAE,MAAwC,GAAG,MAAM;IAmCnF;;OAEG;IACI,QAAQ,IAAI;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;KAC9B;CA0BJ;AAGD,eAAO,MAAM,kBAAkB,oBAAmC,CAAC"}
|
|
@@ -35,7 +35,22 @@ export class SharedStateService {
|
|
|
35
35
|
static instance;
|
|
36
36
|
stateStore = new Map();
|
|
37
37
|
channelStates = new Map(); // channelId -> Set of stateIds
|
|
38
|
+
/** How long an untouched state entry is kept before cleanup (24 hours). */
|
|
39
|
+
static STATE_TTL_MS = 24 * 60 * 60 * 1000;
|
|
40
|
+
/** How often the cleanup sweep runs (1 hour). */
|
|
41
|
+
static CLEANUP_INTERVAL_MS = 60 * 60 * 1000;
|
|
42
|
+
cleanupInterval = null;
|
|
38
43
|
constructor() {
|
|
44
|
+
// This is a process-lifetime singleton holding an unbounded Map, so the
|
|
45
|
+
// sweep has to be driven by something. cleanupOldStates() existed but had
|
|
46
|
+
// no callers anywhere, so stateStore/channelStates simply grew forever.
|
|
47
|
+
this.cleanupInterval = setInterval(() => {
|
|
48
|
+
this.cleanupOldStates();
|
|
49
|
+
}, SharedStateService.CLEANUP_INTERVAL_MS);
|
|
50
|
+
// Background sweep — must not keep the event loop alive on its own.
|
|
51
|
+
this.cleanupInterval.unref();
|
|
52
|
+
// Do not hold the event loop open on account of a garbage-collection timer.
|
|
53
|
+
this.cleanupInterval.unref?.();
|
|
39
54
|
}
|
|
40
55
|
static getInstance() {
|
|
41
56
|
if (!SharedStateService.instance) {
|
|
@@ -43,6 +58,15 @@ export class SharedStateService {
|
|
|
43
58
|
}
|
|
44
59
|
return SharedStateService.instance;
|
|
45
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Stop the cleanup timer. For tests and shutdown.
|
|
63
|
+
*/
|
|
64
|
+
stopCleanup() {
|
|
65
|
+
if (this.cleanupInterval) {
|
|
66
|
+
clearInterval(this.cleanupInterval);
|
|
67
|
+
this.cleanupInterval = null;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
46
70
|
/**
|
|
47
71
|
* Store collaborative state that can be referenced by ID
|
|
48
72
|
* Only used when agents have mxpEnabled=true
|
|
@@ -127,9 +151,14 @@ export class SharedStateService {
|
|
|
127
151
|
.filter(state => state !== undefined);
|
|
128
152
|
}
|
|
129
153
|
/**
|
|
130
|
-
*
|
|
154
|
+
* Drop states that have not been touched within the TTL.
|
|
155
|
+
*
|
|
156
|
+
* Runs on a timer from the constructor; also callable directly.
|
|
157
|
+
*
|
|
158
|
+
* @param maxAgeMs Age past which a state is dropped (default: 24 hours)
|
|
159
|
+
* @returns The number of states removed
|
|
131
160
|
*/
|
|
132
|
-
cleanupOldStates(maxAgeMs =
|
|
161
|
+
cleanupOldStates(maxAgeMs = SharedStateService.STATE_TTL_MS) {
|
|
133
162
|
const now = Date.now();
|
|
134
163
|
const toDelete = [];
|
|
135
164
|
for (const [stateId, state] of this.stateStore.entries()) {
|
|
@@ -142,9 +171,21 @@ export class SharedStateService {
|
|
|
142
171
|
const state = this.stateStore.get(stateId);
|
|
143
172
|
if (state) {
|
|
144
173
|
this.stateStore.delete(stateId);
|
|
145
|
-
this.channelStates.get(state.channelId)
|
|
174
|
+
const channelStateIds = this.channelStates.get(state.channelId);
|
|
175
|
+
if (channelStateIds) {
|
|
176
|
+
channelStateIds.delete(stateId);
|
|
177
|
+
// Drop the channel entry too, or channelStates grows forever
|
|
178
|
+
// with empty Sets for channels that are long gone.
|
|
179
|
+
if (channelStateIds.size === 0) {
|
|
180
|
+
this.channelStates.delete(state.channelId);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
146
183
|
}
|
|
147
184
|
}
|
|
185
|
+
if (toDelete.length > 0) {
|
|
186
|
+
logger.debug(`Removed ${toDelete.length} shared state entries older than ${maxAgeMs}ms`);
|
|
187
|
+
}
|
|
188
|
+
return toDelete.length;
|
|
148
189
|
}
|
|
149
190
|
/**
|
|
150
191
|
* Get statistics for monitoring
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SharedStateService.js","sourceRoot":"","sources":["../../src/services/SharedStateService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAElG,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,oBAAoB,EAAE,QAAQ,CAAC,CAAC;AAcnE;;;GAGG;AACH,MAAM,OAAO,kBAAkB;IACnB,MAAM,CAAC,QAAQ,CAAqB;IACpC,UAAU,GAAG,IAAI,GAAG,EAA4B,CAAC;IACjD,aAAa,GAAG,IAAI,GAAG,EAAuB,CAAC,CAAC,+BAA+B;IAEvF;
|
|
1
|
+
{"version":3,"file":"SharedStateService.js","sourceRoot":"","sources":["../../src/services/SharedStateService.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,7 +30,6 @@ export declare class TaskEffectivenessService {
|
|
|
30
30
|
private readonly activeTasks;
|
|
31
31
|
private readonly taskDefinitions;
|
|
32
32
|
private readonly taskEvents;
|
|
33
|
-
private readonly completedTasks;
|
|
34
33
|
private config;
|
|
35
34
|
private constructor();
|
|
36
35
|
static getInstance(): TaskEffectivenessService;
|
|
@@ -51,25 +50,42 @@ export declare class TaskEffectivenessService {
|
|
|
51
50
|
*/
|
|
52
51
|
completeTask(taskId: string, success: boolean, customMetrics?: Record<string, number>): Promise<TaskEffectivenessMetrics | null>;
|
|
53
52
|
/**
|
|
54
|
-
*
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
*
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
53
|
+
* Compare a task against its baseline.
|
|
54
|
+
*
|
|
55
|
+
* Reads a running task from memory and a finished one from MongoDB, so this
|
|
56
|
+
* keeps working across a restart.
|
|
57
|
+
*
|
|
58
|
+
* @returns null when the task or its definition is unknown
|
|
59
|
+
*/
|
|
60
|
+
compareWithBaseline(taskId: string): Promise<EffectivenessComparison | null>;
|
|
61
|
+
/**
|
|
62
|
+
* Effectiveness analytics for a time period, computed from persisted tasks.
|
|
63
|
+
*
|
|
64
|
+
* Reads from MongoDB, so results cover every task ever completed — not just
|
|
65
|
+
* the ones this process happened to run.
|
|
66
|
+
*
|
|
67
|
+
* @param startTime Start of the window (epoch ms)
|
|
68
|
+
* @param endTime End of the window (epoch ms)
|
|
69
|
+
* @param channelId Optional channel filter
|
|
70
|
+
* @param taskType Optional task-type filter
|
|
71
|
+
* @throws If the query fails. Effectiveness numbers computed from an empty
|
|
72
|
+
* result set would look like real "no activity" data.
|
|
73
|
+
*/
|
|
74
|
+
getAnalytics(startTime: number, endTime: number, channelId?: ChannelId, taskType?: string): Promise<EffectivenessAnalytics>;
|
|
75
|
+
/**
|
|
76
|
+
* Query persisted task effectiveness records.
|
|
77
|
+
*
|
|
78
|
+
* @throws If the query fails
|
|
79
|
+
*/
|
|
80
|
+
private findCompletedTasks;
|
|
81
|
+
/**
|
|
82
|
+
* Persist task effectiveness data to MongoDB.
|
|
83
|
+
*
|
|
84
|
+
* @throws If the task has no definition, or the write fails. A completed task
|
|
85
|
+
* that is not written down is history that is simply gone; the caller
|
|
86
|
+
* needs to know.
|
|
63
87
|
*/
|
|
64
88
|
private persistTaskToDB;
|
|
65
|
-
/**
|
|
66
|
-
* Load task effectiveness data from MongoDB
|
|
67
|
-
*/
|
|
68
|
-
private loadTaskFromDB;
|
|
69
|
-
/**
|
|
70
|
-
* Enhanced analytics with MongoDB queries
|
|
71
|
-
*/
|
|
72
|
-
getEnhancedAnalytics(startTime: number, endTime: number, channelId?: ChannelId, taskType?: string): Promise<EffectivenessAnalytics>;
|
|
73
89
|
/**
|
|
74
90
|
* Compute analytics from metrics array
|
|
75
91
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskEffectivenessService.d.ts","sourceRoot":"","sources":["../../src/services/TaskEffectivenessService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAaH,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAGvD,OAAO,EACH,wBAAwB,EACxB,cAAc,EACd,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAErB,MAAM,gCAAgC,CAAC;AAExC;;GAEG;AACH,qBAAa,wBAAwB;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA0B;IAC7D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA2B;IAGlD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+C;IAC3E,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqC;IACrE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2C;
|
|
1
|
+
{"version":3,"file":"TaskEffectivenessService.d.ts","sourceRoot":"","sources":["../../src/services/TaskEffectivenessService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAaH,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAGvD,OAAO,EACH,wBAAwB,EACxB,cAAc,EACd,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAErB,MAAM,gCAAgC,CAAC;AAExC;;GAEG;AACH,qBAAa,wBAAwB;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA0B;IAC7D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA2B;IAGlD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+C;IAC3E,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqC;IACrE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2C;IAQtE,OAAO,CAAC,MAAM,CAWZ;IAEF,OAAO;WAMO,WAAW,IAAI,wBAAwB;IAOrD;;OAEG;IACI,SAAS,CAAC,UAAU,EAAE,cAAc,GAAG,MAAM;IA6EpD;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI;IAqCnD;;OAEG;IACI,aAAa,CAChB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,EACrD,OAAO,CAAC,EAAE,OAAO,GAClB,IAAI;IAsBP;;OAEG;IACU,YAAY,CACrB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACvC,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;IA2C3C;;;;;;;OAOG;IACU,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IA6DzF;;;;;;;;;;;;OAYG;IACU,YAAY,CACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,SAAS,EACrB,QAAQ,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,sBAAsB,CAAC;IAMlC;;;;OAIG;YACW,kBAAkB;IAiChC;;;;;;OAMG;YACW,eAAe;IA2B7B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAuEnC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAmC9B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAenC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA+B5B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAuB5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAqB/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkB3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA4C3B;;OAEG;IACU,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;IAiBrF;;OAEG;IACU,sBAAsB,CAC/B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,SAAS,GACtB,OAAO,CAAC,GAAG,CAAC;IA2Cf;;OAEG;IACU,qBAAqB,CAC9B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,SAAS,GACtB,OAAO,CAAC,GAAG,CAAC;CAuDlB"}
|