@minded-ai/mindedjs 1.0.102 → 1.0.103-beta-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent.d.ts +4 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +76 -30
- package/dist/agent.js.map +1 -1
- package/dist/checkpointer/checkpointSaverFactory.js +1 -1
- package/dist/checkpointer/checkpointSaverFactory.js.map +1 -1
- package/dist/cli/index.js +12 -12
- package/dist/cli/index.js.map +1 -1
- package/dist/edges/createDirectEdge.d.ts +1 -2
- package/dist/edges/createDirectEdge.d.ts.map +1 -1
- package/dist/edges/createDirectEdge.js +2 -6
- package/dist/edges/createDirectEdge.js.map +1 -1
- package/dist/edges/createLogicalRouter.d.ts.map +1 -1
- package/dist/edges/createLogicalRouter.js +6 -23
- package/dist/edges/createLogicalRouter.js.map +1 -1
- package/dist/edges/createPromptRouter.d.ts.map +1 -1
- package/dist/edges/createPromptRouter.js +6 -12
- package/dist/edges/createPromptRouter.js.map +1 -1
- package/dist/edges/edgeFactory.d.ts.map +1 -1
- package/dist/edges/edgeFactory.js +3 -8
- package/dist/edges/edgeFactory.js.map +1 -1
- package/dist/index.d.ts +0 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -6
- package/dist/index.js.map +1 -1
- package/dist/interrupts/BaseInterruptSessionManager.d.ts +51 -0
- package/dist/interrupts/BaseInterruptSessionManager.d.ts.map +1 -0
- package/dist/interrupts/BaseInterruptSessionManager.js +39 -0
- package/dist/interrupts/BaseInterruptSessionManager.js.map +1 -0
- package/dist/interrupts/InterruptSessionManager.types.d.ts +36 -0
- package/dist/interrupts/InterruptSessionManager.types.d.ts.map +1 -0
- package/dist/interrupts/InterruptSessionManager.types.js +40 -0
- package/dist/interrupts/InterruptSessionManager.types.js.map +1 -0
- package/dist/interrupts/MemoryInterruptSessionManager.d.ts +14 -0
- package/dist/interrupts/MemoryInterruptSessionManager.d.ts.map +1 -0
- package/dist/interrupts/MemoryInterruptSessionManager.js +56 -0
- package/dist/interrupts/MemoryInterruptSessionManager.js.map +1 -0
- package/dist/interrupts/MindedInterruptSessionManager.d.ts +13 -0
- package/dist/interrupts/MindedInterruptSessionManager.d.ts.map +1 -0
- package/dist/interrupts/MindedInterruptSessionManager.js +156 -0
- package/dist/interrupts/MindedInterruptSessionManager.js.map +1 -0
- package/dist/interrupts/interruptSessionManagerFactory.d.ts +3 -0
- package/dist/interrupts/interruptSessionManagerFactory.d.ts.map +1 -0
- package/dist/interrupts/interruptSessionManagerFactory.js +56 -0
- package/dist/interrupts/interruptSessionManagerFactory.js.map +1 -0
- package/dist/llm/createLlmInstance.d.ts +1 -1
- package/dist/llm/createLlmInstance.d.ts.map +1 -1
- package/dist/llm/createLlmInstance.js +1 -18
- package/dist/llm/createLlmInstance.js.map +1 -1
- package/dist/nodes/addAppToolNode.d.ts.map +1 -1
- package/dist/nodes/addAppToolNode.js +4 -5
- package/dist/nodes/addAppToolNode.js.map +1 -1
- package/dist/nodes/addHumanInTheLoopNode.d.ts.map +1 -1
- package/dist/nodes/addHumanInTheLoopNode.js +3 -2
- package/dist/nodes/addHumanInTheLoopNode.js.map +1 -1
- package/dist/nodes/addJumpToNode.d.ts.map +1 -1
- package/dist/nodes/addJumpToNode.js +1 -2
- package/dist/nodes/addJumpToNode.js.map +1 -1
- package/dist/nodes/addJunctionNode.d.ts.map +1 -1
- package/dist/nodes/addJunctionNode.js +0 -1
- package/dist/nodes/addJunctionNode.js.map +1 -1
- package/dist/nodes/addPromptNode.d.ts.map +1 -1
- package/dist/nodes/addPromptNode.js +61 -7
- package/dist/nodes/addPromptNode.js.map +1 -1
- package/dist/nodes/addToolNode.js +4 -2
- package/dist/nodes/addToolNode.js.map +1 -1
- package/dist/nodes/addToolRunNode.d.ts.map +1 -1
- package/dist/nodes/addToolRunNode.js +2 -2
- package/dist/nodes/addToolRunNode.js.map +1 -1
- package/dist/nodes/addTriggerNode.d.ts.map +1 -1
- package/dist/nodes/addTriggerNode.js +1 -2
- package/dist/nodes/addTriggerNode.js.map +1 -1
- package/dist/nodes/nodeFactory.d.ts.map +1 -1
- package/dist/nodes/nodeFactory.js +0 -4
- package/dist/nodes/nodeFactory.js.map +1 -1
- package/dist/platform/mindedChatOpenAI.d.ts +5 -0
- package/dist/platform/mindedChatOpenAI.d.ts.map +1 -0
- package/dist/platform/{models/mindedChatOpenAI.js → mindedChatOpenAI.js} +1 -10
- package/dist/platform/mindedChatOpenAI.js.map +1 -0
- package/dist/platform/mindedConnection.d.ts.map +1 -1
- package/dist/platform/mindedConnection.js +12 -12
- package/dist/platform/mindedConnection.js.map +1 -1
- package/dist/platform/mindedConnectionTypes.d.ts +151 -1
- package/dist/platform/mindedConnectionTypes.d.ts.map +1 -1
- package/dist/platform/mindedConnectionTypes.js +9 -0
- package/dist/platform/mindedConnectionTypes.js.map +1 -1
- package/dist/playbooks/playbooks.js +4 -4
- package/dist/playbooks/playbooks.js.map +1 -1
- package/dist/types/Agent.types.d.ts +2 -0
- package/dist/types/Agent.types.d.ts.map +1 -1
- package/dist/types/Agent.types.js.map +1 -1
- package/dist/types/Flows.types.d.ts +3 -18
- package/dist/types/Flows.types.d.ts.map +1 -1
- package/dist/types/Flows.types.js +0 -2
- package/dist/types/Flows.types.js.map +1 -1
- package/dist/types/LLM.types.d.ts.map +1 -1
- package/dist/types/LLM.types.js +1 -1
- package/dist/types/LLM.types.js.map +1 -1
- package/dist/types/LangGraph.types.d.ts +2 -4
- package/dist/types/LangGraph.types.d.ts.map +1 -1
- package/dist/types/LangGraph.types.js +2 -5
- package/dist/types/LangGraph.types.js.map +1 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +2 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/voice/voiceSession.d.ts.map +1 -1
- package/dist/voice/voiceSession.js +17 -16
- package/dist/voice/voiceSession.js.map +1 -1
- package/docs/SUMMARY.md +0 -1
- package/docs/getting-started/installation.md +0 -42
- package/docs/low-code-editor/nodes.md +0 -27
- package/docs/low-code-editor/tools.md +0 -32
- package/package.json +2 -3
- package/src/agent.ts +93 -32
- package/src/checkpointer/checkpointSaverFactory.ts +1 -1
- package/src/cli/index.ts +12 -12
- package/src/edges/createDirectEdge.ts +2 -7
- package/src/edges/createLogicalRouter.ts +6 -23
- package/src/edges/createPromptRouter.ts +6 -13
- package/src/edges/edgeFactory.ts +4 -20
- package/src/index.ts +0 -6
- package/src/interrupts/BaseInterruptSessionManager.ts +94 -0
- package/src/interrupts/MemoryInterruptSessionManager.ts +57 -0
- package/src/interrupts/MindedInterruptSessionManager.ts +155 -0
- package/src/interrupts/interruptSessionManagerFactory.ts +20 -0
- package/src/llm/createLlmInstance.ts +2 -25
- package/src/nodes/addAppToolNode.ts +4 -5
- package/src/nodes/addHumanInTheLoopNode.ts +3 -3
- package/src/nodes/addJumpToNode.ts +1 -2
- package/src/nodes/addJunctionNode.ts +0 -1
- package/src/nodes/addPromptNode.ts +65 -10
- package/src/nodes/addToolNode.ts +4 -4
- package/src/nodes/addToolRunNode.ts +2 -4
- package/src/nodes/addTriggerNode.ts +1 -2
- package/src/nodes/nodeFactory.ts +1 -5
- package/src/platform/mindedChatOpenAI.ts +19 -0
- package/src/platform/mindedConnection.ts +15 -25
- package/src/platform/mindedConnectionTypes.ts +188 -1
- package/src/playbooks/playbooks.ts +4 -4
- package/src/types/Agent.types.ts +2 -0
- package/src/types/Flows.types.ts +1 -17
- package/src/types/LLM.types.ts +5 -5
- package/src/types/LangGraph.types.ts +2 -5
- package/src/utils/logger.ts +2 -1
- package/src/voice/voiceSession.ts +17 -16
- package/dist/browserTask/executeBrowserTask.d.ts +0 -12
- package/dist/browserTask/executeBrowserTask.d.ts.map +0 -1
- package/dist/browserTask/executeBrowserTask.js +0 -181
- package/dist/browserTask/executeBrowserTask.js.map +0 -1
- package/dist/nodes/addBrowserTaskNode.d.ts +0 -13
- package/dist/nodes/addBrowserTaskNode.d.ts.map +0 -1
- package/dist/nodes/addBrowserTaskNode.js +0 -230
- package/dist/nodes/addBrowserTaskNode.js.map +0 -1
- package/dist/nodes/addBrowserTaskRunNode.d.ts +0 -13
- package/dist/nodes/addBrowserTaskRunNode.d.ts.map +0 -1
- package/dist/nodes/addBrowserTaskRunNode.js +0 -126
- package/dist/nodes/addBrowserTaskRunNode.js.map +0 -1
- package/dist/platform/models/mindedChatOpenAI.d.ts +0 -20
- package/dist/platform/models/mindedChatOpenAI.d.ts.map +0 -1
- package/dist/platform/models/mindedChatOpenAI.js.map +0 -1
- package/dist/platform/models/parallelWrapper.d.ts +0 -17
- package/dist/platform/models/parallelWrapper.d.ts.map +0 -1
- package/dist/platform/models/parallelWrapper.js +0 -105
- package/dist/platform/models/parallelWrapper.js.map +0 -1
- package/docs/platform/parallel-llm.md +0 -242
- package/src/browserTask/executeBrowserTask.ts +0 -213
- package/src/nodes/addBrowserTaskNode.ts +0 -229
- package/src/nodes/addBrowserTaskRunNode.ts +0 -142
- package/src/platform/models/mindedChatOpenAI.ts +0 -49
- package/src/platform/models/parallelWrapper.ts +0 -141
|
@@ -40,11 +40,7 @@ const vm = __importStar(require("vm"));
|
|
|
40
40
|
const CONDITION_TIMEOUT = 5000; // 5 seconds
|
|
41
41
|
const createLogicalRouter = ({ edges }) => {
|
|
42
42
|
return async (state) => {
|
|
43
|
-
logger_1.logger.debug(
|
|
44
|
-
if (state.goto) {
|
|
45
|
-
console.log('Jumping to node', state.goto);
|
|
46
|
-
return state.goto;
|
|
47
|
-
}
|
|
43
|
+
logger_1.logger.debug(`Evaluating logical conditions for ${edges.length} edges`);
|
|
48
44
|
// Separate regular conditions from "else" conditions
|
|
49
45
|
const regularEdges = edges.filter((edge) => edge.condition.trim() !== 'else');
|
|
50
46
|
const elseEdges = edges.filter((edge) => edge.condition.trim() === 'else');
|
|
@@ -88,17 +84,7 @@ const createLogicalRouter = ({ edges }) => {
|
|
|
88
84
|
new Promise((_, reject) => setTimeout(() => reject(new Error('Condition execution timeout')), CONDITION_TIMEOUT)),
|
|
89
85
|
]);
|
|
90
86
|
if (result === true) {
|
|
91
|
-
|
|
92
|
-
logger_1.logger.info({ msg: `[Router] Stay at node ${edge.source}`, node: edge.source, condition: edge.condition });
|
|
93
|
-
}
|
|
94
|
-
else {
|
|
95
|
-
logger_1.logger.info({
|
|
96
|
-
msg: `[Router] Logical condition matched`,
|
|
97
|
-
transitionFrom: edge.source,
|
|
98
|
-
transitionTo: edge.target,
|
|
99
|
-
condition: edge.condition,
|
|
100
|
-
});
|
|
101
|
-
}
|
|
87
|
+
logger_1.logger.info({ message: `Condition matched for edge ${edge.source} → ${edge.target}` });
|
|
102
88
|
return edge.target;
|
|
103
89
|
}
|
|
104
90
|
}
|
|
@@ -107,7 +93,7 @@ const createLogicalRouter = ({ edges }) => {
|
|
|
107
93
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
108
94
|
const conditionPreview = edge.condition.length > 100 ? `${edge.condition.substring(0, 100)}...` : edge.condition;
|
|
109
95
|
logger_1.logger.error({
|
|
110
|
-
|
|
96
|
+
message: `Error evaluating condition for edge ${edge.source} → ${edge.target}`,
|
|
111
97
|
condition: conditionPreview,
|
|
112
98
|
error: errorMessage,
|
|
113
99
|
edgeIndex: edges.indexOf(edge),
|
|
@@ -120,17 +106,14 @@ const createLogicalRouter = ({ edges }) => {
|
|
|
120
106
|
}
|
|
121
107
|
// If no regular conditions matched, check for "else" conditions
|
|
122
108
|
if (elseEdges.length > 0) {
|
|
109
|
+
logger_1.logger.info({ message: `No regular conditions matched, evaluating ${elseEdges.length} else condition(s)` });
|
|
123
110
|
// Return the first "else" condition's target
|
|
124
111
|
const elseEdge = elseEdges[0];
|
|
125
|
-
logger_1.logger.info({
|
|
126
|
-
msg: `[Router] Else condition matched`,
|
|
127
|
-
transitionFrom: elseEdge.source,
|
|
128
|
-
transitionTo: elseEdge.target,
|
|
129
|
-
});
|
|
112
|
+
logger_1.logger.info({ message: `Else condition matched for edge ${elseEdge.source} → ${elseEdge.target}`, edge: elseEdge });
|
|
130
113
|
return elseEdge.target;
|
|
131
114
|
}
|
|
132
115
|
// If no conditions matched or all failed, return to the source node
|
|
133
|
-
logger_1.logger.info({
|
|
116
|
+
logger_1.logger.info({ message: 'No conditions matched' });
|
|
134
117
|
return null;
|
|
135
118
|
};
|
|
136
119
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createLogicalRouter.js","sourceRoot":"","sources":["../../src/edges/createLogicalRouter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,4CAAyC;AACzC,uCAAyB;AAEzB,6DAA6D;AAC7D,MAAM,iBAAiB,GAAG,IAAI,CAAC,CAAC,YAAY;AAErC,MAAM,mBAAmB,GAAG,CAAC,EAAE,KAAK,EAAqC,EAAE,EAAE;IAClF,OAAO,KAAK,EAAE,KAAmC,EAAE,EAAE;QACnD,eAAM,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"createLogicalRouter.js","sourceRoot":"","sources":["../../src/edges/createLogicalRouter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPromptRouter.d.ts","sourceRoot":"","sources":["../../src/edges/createPromptRouter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAoD3D,eAAO,MAAM,kBAAkB,GAAI,sFAOhC;IACD,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,GAAG,EAAE,iBAAiB,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,MACe,OAAO,OAAO,eAAe,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"createPromptRouter.d.ts","sourceRoot":"","sources":["../../src/edges/createPromptRouter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAoD3D,eAAO,MAAM,kBAAkB,GAAI,sFAOhC;IACD,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,GAAG,EAAE,iBAAiB,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,MACe,OAAO,OAAO,eAAe,CAAC,KAAK,oBA2IlD,CAAC"}
|
|
@@ -54,17 +54,10 @@ Return JSON and nothing more.
|
|
|
54
54
|
const createPromptRouter = ({ edges, llm, includeReasoning = true, maxRetries = 3, canStayInCurrentNode = false, currentNodeName, }) => {
|
|
55
55
|
return async (state) => {
|
|
56
56
|
var _a;
|
|
57
|
-
logger_1.logger.
|
|
58
|
-
if (state.goto) {
|
|
59
|
-
console.log('Jumping to node', state.goto);
|
|
60
|
-
return state.goto;
|
|
61
|
-
}
|
|
57
|
+
logger_1.logger.info({ message: `Executing prompt router. Edges: ${JSON.stringify(edges)}` });
|
|
62
58
|
// If canStayInCurrentNode is true and there are no edges, return current node immediately
|
|
63
59
|
if (canStayInCurrentNode && edges.length === 0 && currentNodeName) {
|
|
64
|
-
logger_1.logger.info({
|
|
65
|
-
msg: `[Router] Stay at node, No edges available and canStayInCurrentNode==true`,
|
|
66
|
-
node: currentNodeName,
|
|
67
|
-
});
|
|
60
|
+
logger_1.logger.info({ message: `No edges available and canStayInCurrentNode is true, staying in current node: ${currentNodeName}` });
|
|
68
61
|
return currentNodeName;
|
|
69
62
|
}
|
|
70
63
|
// Prepare the steps string
|
|
@@ -146,13 +139,14 @@ const createPromptRouter = ({ edges, llm, includeReasoning = true, maxRetries =
|
|
|
146
139
|
}
|
|
147
140
|
const decision = validatedResponse.nextNodeId === currentNodeName ? 'stay in current node' : validatedResponse.nextNodeId;
|
|
148
141
|
const reasoning = includeReasoning && 'reasoning' in validatedResponse ? ` - Reasoning: ${validatedResponse.reasoning}` : '';
|
|
149
|
-
logger_1.logger.
|
|
142
|
+
logger_1.logger.info({ message: `Router decision: ${decision}`, reasoning });
|
|
150
143
|
return validatedResponse.nextNodeId;
|
|
151
144
|
}
|
|
152
145
|
catch (error) {
|
|
153
146
|
lastError = error instanceof Error ? error : new Error(String(error));
|
|
154
147
|
logger_1.logger.warn({
|
|
155
|
-
|
|
148
|
+
message: `Prompt router attempt ${attempts} failed`,
|
|
149
|
+
edge: edges,
|
|
156
150
|
error: lastError.message,
|
|
157
151
|
attempt: attempts,
|
|
158
152
|
maxRetries,
|
|
@@ -161,7 +155,7 @@ const createPromptRouter = ({ edges, llm, includeReasoning = true, maxRetries =
|
|
|
161
155
|
// If all retries failed, return the first available edge as fallback
|
|
162
156
|
const fallbackNode = (_a = edges[0]) === null || _a === void 0 ? void 0 : _a.target;
|
|
163
157
|
logger_1.logger.error({
|
|
164
|
-
|
|
158
|
+
message: 'Prompt router reached max retries, using fallback',
|
|
165
159
|
fallbackNode,
|
|
166
160
|
lastError: lastError.message,
|
|
167
161
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPromptRouter.js","sourceRoot":"","sources":["../../src/edges/createPromptRouter.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAGxB,uDAAyD;AAEzD,4CAAyC;AAEzC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;CAuBrB,CAAC;AAEF,MAAM,+BAA+B,GAAG;;;;;;;;;;;;;;;;;;;;;;CAsBvC,CAAC;AAEK,MAAM,kBAAkB,GAAG,CAAC,EACjC,KAAK,EACL,GAAG,EACH,gBAAgB,GAAG,IAAI,EACvB,UAAU,GAAG,CAAC,EACd,oBAAoB,GAAG,KAAK,EAC5B,eAAe,GAQhB,EAAE,EAAE;IACH,OAAO,KAAK,EAAE,KAAmC,EAAE,EAAE;;QACnD,eAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"createPromptRouter.js","sourceRoot":"","sources":["../../src/edges/createPromptRouter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edgeFactory.d.ts","sourceRoot":"","sources":["../../src/edges/edgeFactory.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"edgeFactory.d.ts","sourceRoot":"","sources":["../../src/edges/edgeFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAY,IAAI,EAAkF,MAAM,sBAAsB,CAAC;AAC5I,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAMzE,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AASjC,eAAO,MAAM,WAAW,GAAI,6CAOzB;IACD,KAAK,EAAE,gBAAgB,CAAC;IACxB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5B,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;IACxB,GAAG,EAAE,iBAAiB,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;CACd,SA4FA,CAAC"}
|
|
@@ -7,7 +7,6 @@ const createLogicalRouter_1 = require("./createLogicalRouter");
|
|
|
7
7
|
const createDirectEdge_1 = require("./createDirectEdge");
|
|
8
8
|
const addHumanInTheLoopNode_1 = require("../nodes/addHumanInTheLoopNode");
|
|
9
9
|
const addToolRunNode_1 = require("../nodes/addToolRunNode");
|
|
10
|
-
const addBrowserTaskRunNode_1 = require("../nodes/addBrowserTaskRunNode");
|
|
11
10
|
const logger_1 = require("../utils/logger");
|
|
12
11
|
const edgeFactory = ({ graph, edges, nodes, tools, llm, agent, }) => {
|
|
13
12
|
/**
|
|
@@ -18,7 +17,7 @@ const edgeFactory = ({ graph, edges, nodes, tools, llm, agent, }) => {
|
|
|
18
17
|
// Priority 1: Step forward edge (max 1)
|
|
19
18
|
if (edgesBySource.stepForward) {
|
|
20
19
|
const directRouter = (0, createDirectEdge_1.createDirectEdge)(edgesBySource.stepForward);
|
|
21
|
-
return await directRouter(
|
|
20
|
+
return await directRouter();
|
|
22
21
|
}
|
|
23
22
|
// Priority 2: Logical condition edges
|
|
24
23
|
if (edgesBySource.logical.length > 0) {
|
|
@@ -28,7 +27,7 @@ const edgeFactory = ({ graph, edges, nodes, tools, llm, agent, }) => {
|
|
|
28
27
|
return result;
|
|
29
28
|
}
|
|
30
29
|
else {
|
|
31
|
-
logger_1.logger.debug('No logical conditions matched, continuing to prompt conditions');
|
|
30
|
+
logger_1.logger.debug({ message: 'No logical conditions matched, continuing to prompt conditions' });
|
|
32
31
|
}
|
|
33
32
|
}
|
|
34
33
|
// Priority 3: Prompt condition edges
|
|
@@ -45,7 +44,7 @@ const edgeFactory = ({ graph, edges, nodes, tools, llm, agent, }) => {
|
|
|
45
44
|
}
|
|
46
45
|
// Fallback: stay at current source node
|
|
47
46
|
const source = (originalNode === null || originalNode === void 0 ? void 0 : originalNode.name) || sourceNode;
|
|
48
|
-
logger_1.logger.info(`No conditions matched, returning to source: ${source}`);
|
|
47
|
+
logger_1.logger.info({ message: `No conditions matched, returning to source: ${source}` });
|
|
49
48
|
return source;
|
|
50
49
|
};
|
|
51
50
|
};
|
|
@@ -64,10 +63,6 @@ const edgeFactory = ({ graph, edges, nodes, tools, llm, agent, }) => {
|
|
|
64
63
|
(0, addToolRunNode_1.addToolRunNode)({ graph, tools, llm, toolNode: originalNode, attachedToNodeName: source, agent });
|
|
65
64
|
effectiveSource = (0, addToolRunNode_1.buildToolRunNodeName)(source);
|
|
66
65
|
}
|
|
67
|
-
if ((originalNode === null || originalNode === void 0 ? void 0 : originalNode.type) === Flows_types_1.NodeType.BROWSER_TASK) {
|
|
68
|
-
(0, addBrowserTaskRunNode_1.addBrowserTaskRunNode)({ graph, browserTaskNode: originalNode, attachedToNodeName: source, agent });
|
|
69
|
-
effectiveSource = (0, addBrowserTaskRunNode_1.buildBrowserTaskRunNodeName)(source);
|
|
70
|
-
}
|
|
71
66
|
// Create and add the combined conditional edge with original node reference
|
|
72
67
|
const combinedRouter = createCombinedRouter(effectiveSource, edgesBySource, originalNode);
|
|
73
68
|
graph.addConditionalEdges(effectiveSource, combinedRouter);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edgeFactory.js","sourceRoot":"","sources":["../../src/edges/edgeFactory.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"edgeFactory.js","sourceRoot":"","sources":["../../src/edges/edgeFactory.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,10 +5,6 @@ import { sendPlaceholderMessage } from './internalTools/sendPlaceholderMessage';
|
|
|
5
5
|
import { resetTimer, cancelTimer, onTimer } from './internalTools/timer';
|
|
6
6
|
export type { ElevenLabsContext } from './types/Voice.types';
|
|
7
7
|
export { Agent, events, logger, sendPlaceholderMessage, resetTimer, cancelTimer, onTimer };
|
|
8
|
-
export { MindedChatOpenAI } from './platform/models/mindedChatOpenAI';
|
|
9
|
-
export { createParallelWrapper } from './platform/models/parallelWrapper';
|
|
10
|
-
export type { MindedChatOpenAIFields, BaseParallelChatFields } from './platform/models/mindedChatOpenAI';
|
|
11
|
-
export type { BaseParallelChatFields as ParallelWrapperFields } from './platform/models/parallelWrapper';
|
|
12
8
|
export type { PIIGatewayInstance, HttpRequestConfig, HttpResponse } from './platform/piiGateway';
|
|
13
9
|
export type { Flow, Node, Edge, TriggerNode, AppTriggerNode, PromptNode, PromptConditionEdge, LogicalConditionEdge, StepForwardEdge, ManualTriggerNode, JunctionNode, ToolNode, AppToolNode, VoiceTriggerNode, WebhookTriggerNode, } from './types/Flows.types';
|
|
14
10
|
export { NodeType, TriggerType, EdgeType, AppNodeMetadata, AppNodeMetadataType, NodeMetadata, KnownTriggerNames, } from './types/Flows.types';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEzE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;AAG3F,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEzE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;AAG3F,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAEjG,YAAY,EACV,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,WAAW,EACX,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,8BAA8B,EAC9B,qBAAqB,EACrB,iCAAiC,EACjC,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC9E,YAAY,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,YAAY,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.zendesk = exports.SessionType = exports.KnownTriggerNames = exports.AppNodeMetadataType = exports.EdgeType = exports.TriggerType = exports.NodeType = exports.
|
|
6
|
+
exports.zendesk = exports.SessionType = exports.KnownTriggerNames = exports.AppNodeMetadataType = exports.EdgeType = exports.TriggerType = exports.NodeType = exports.onTimer = exports.cancelTimer = exports.resetTimer = exports.sendPlaceholderMessage = exports.logger = exports.events = exports.Agent = void 0;
|
|
7
7
|
const agent_1 = require("./agent");
|
|
8
8
|
Object.defineProperty(exports, "Agent", { enumerable: true, get: function () { return agent_1.Agent; } });
|
|
9
9
|
const events_1 = __importDefault(require("./events"));
|
|
@@ -16,11 +16,6 @@ const timer_1 = require("./internalTools/timer");
|
|
|
16
16
|
Object.defineProperty(exports, "resetTimer", { enumerable: true, get: function () { return timer_1.resetTimer; } });
|
|
17
17
|
Object.defineProperty(exports, "cancelTimer", { enumerable: true, get: function () { return timer_1.cancelTimer; } });
|
|
18
18
|
Object.defineProperty(exports, "onTimer", { enumerable: true, get: function () { return timer_1.onTimer; } });
|
|
19
|
-
// Export LLM implementations
|
|
20
|
-
var mindedChatOpenAI_1 = require("./platform/models/mindedChatOpenAI");
|
|
21
|
-
Object.defineProperty(exports, "MindedChatOpenAI", { enumerable: true, get: function () { return mindedChatOpenAI_1.MindedChatOpenAI; } });
|
|
22
|
-
var parallelWrapper_1 = require("./platform/models/parallelWrapper");
|
|
23
|
-
Object.defineProperty(exports, "createParallelWrapper", { enumerable: true, get: function () { return parallelWrapper_1.createParallelWrapper; } });
|
|
24
19
|
var Flows_types_1 = require("./types/Flows.types");
|
|
25
20
|
Object.defineProperty(exports, "NodeType", { enumerable: true, get: function () { return Flows_types_1.NodeType; } });
|
|
26
21
|
Object.defineProperty(exports, "TriggerType", { enumerable: true, get: function () { return Flows_types_1.TriggerType; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAgC;AAOvB,sFAPA,aAAK,OAOA;AANd,sDAA8B;AAMd,iBANT,gBAAM,CAMS;AALtB,2CAAwC;AAKhB,uFALf,eAAM,OAKe;AAJ9B,mFAAgF;AAIhD,uGAJvB,+CAAsB,OAIuB;AAHtD,iDAAyE;AAGjB,2FAH/C,kBAAU,OAG+C;AAAE,4FAH/C,mBAAW,OAG+C;AAAE,wFAH/C,eAAO,OAG+C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAgC;AAOvB,sFAPA,aAAK,OAOA;AANd,sDAA8B;AAMd,iBANT,gBAAM,CAMS;AALtB,2CAAwC;AAKhB,uFALf,eAAM,OAKe;AAJ9B,mFAAgF;AAIhD,uGAJvB,+CAAsB,OAIuB;AAHtD,iDAAyE;AAGjB,2FAH/C,kBAAU,OAG+C;AAAE,4FAH/C,mBAAW,OAG+C;AAAE,wFAH/C,eAAO,OAG+C;AAsBxF,mDAQ6B;AAP3B,uGAAA,QAAQ,OAAA;AACR,0GAAA,WAAW,OAAA;AACX,uGAAA,QAAQ,OAAA;AAER,kHAAA,mBAAmB,OAAA;AAEnB,gHAAA,iBAAiB,OAAA;AAGnB,mDAO6B;AAD3B,0GAAA,WAAW,OAAA;AAKb,gDAA+C;AAAtC,kGAAA,OAAO,OAAA"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { State } from '../types/LangGraph.types';
|
|
2
|
+
export declare enum InterruptType {
|
|
3
|
+
NEW_TRIGGERS = "NEW_TRIGGERS",
|
|
4
|
+
HUMAN_IN_THE_LOOP = "HUMAN_IN_THE_LOOP"
|
|
5
|
+
}
|
|
6
|
+
export interface QueuedMessage {
|
|
7
|
+
triggerBody: any;
|
|
8
|
+
triggerName: string;
|
|
9
|
+
appName?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface InterruptPayload {
|
|
12
|
+
type: InterruptType.NEW_TRIGGERS;
|
|
13
|
+
updateStateObject?: Partial<State>;
|
|
14
|
+
id?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface InterruptSessionManager {
|
|
17
|
+
isProcessed(sessionId: string): boolean | Promise<boolean>;
|
|
18
|
+
/**
|
|
19
|
+
* Atomically attempts to acquire a lock for the given session.
|
|
20
|
+
* This method should only succeed if the session is not already being processed.
|
|
21
|
+
*
|
|
22
|
+
* @param sessionId - The session ID to lock
|
|
23
|
+
* @returns true if the lock was successfully acquired, false if the session is already locked
|
|
24
|
+
*/
|
|
25
|
+
lock(sessionId: string): boolean | Promise<boolean>;
|
|
26
|
+
release(sessionId: string): void | Promise<void>;
|
|
27
|
+
enqueueMessage(sessionId: string, message: QueuedMessage): void | Promise<void>;
|
|
28
|
+
dequeueAll(sessionId: string): QueuedMessage[] | Promise<QueuedMessage[]>;
|
|
29
|
+
dequeue(sessionId: string): QueuedMessage | null | Promise<QueuedMessage | null>;
|
|
30
|
+
checkQueueAndInterrupt(sessionId: string, updateStateObject?: Partial<State>): Promise<boolean>;
|
|
31
|
+
}
|
|
32
|
+
export declare abstract class BaseInterruptSessionManager implements InterruptSessionManager {
|
|
33
|
+
abstract isProcessed(sessionId: string): boolean | Promise<boolean>;
|
|
34
|
+
/**
|
|
35
|
+
* Atomically attempts to acquire a lock for the given session.
|
|
36
|
+
* This method should only succeed if the session is not already being processed.
|
|
37
|
+
* Implementations must ensure this operation is atomic to prevent race conditions.
|
|
38
|
+
*
|
|
39
|
+
* @param sessionId - The session ID to lock
|
|
40
|
+
* @returns true if the lock was successfully acquired, false if the session is already locked
|
|
41
|
+
*/
|
|
42
|
+
abstract lock(sessionId: string): boolean | Promise<boolean>;
|
|
43
|
+
abstract release(sessionId: string): void | Promise<void>;
|
|
44
|
+
abstract enqueueMessage(sessionId: string, message: QueuedMessage): void | Promise<void>;
|
|
45
|
+
abstract dequeueAll(sessionId: string): QueuedMessage[] | Promise<QueuedMessage[]>;
|
|
46
|
+
abstract dequeue(sessionId: string): QueuedMessage | null | Promise<QueuedMessage | null>;
|
|
47
|
+
protected abstract hasQueuedMessages(sessionId: string): boolean | Promise<boolean>;
|
|
48
|
+
protected abstract getQueuedMessages(sessionId: string): QueuedMessage[] | Promise<QueuedMessage[]>;
|
|
49
|
+
checkQueueAndInterrupt(sessionId: string, updateStateObject?: Partial<State>): Promise<boolean>;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=BaseInterruptSessionManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseInterruptSessionManager.d.ts","sourceRoot":"","sources":["../../src/interrupts/BaseInterruptSessionManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAIjD,oBAAY,aAAa;IACvB,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;CACxC;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,GAAG,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AASD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,aAAa,CAAC,YAAY,CAAC;IACjC,iBAAiB,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3D;;;;;;OAMG;IACH,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACpD,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChF,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1E,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IACjF,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACjG;AAED,8BAAsB,2BAA4B,YAAW,uBAAuB;IAElF,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACnE;;;;;;;OAOG;IACH,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAC5D,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IACzD,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IACxF,QAAQ,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAClF,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAGzF,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACnF,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAG7F,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;CA0BtG"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseInterruptSessionManager = exports.InterruptType = void 0;
|
|
4
|
+
const langgraph_1 = require("@langchain/langgraph");
|
|
5
|
+
const logger_1 = require("../utils/logger");
|
|
6
|
+
var InterruptType;
|
|
7
|
+
(function (InterruptType) {
|
|
8
|
+
InterruptType["NEW_TRIGGERS"] = "NEW_TRIGGERS";
|
|
9
|
+
InterruptType["HUMAN_IN_THE_LOOP"] = "HUMAN_IN_THE_LOOP";
|
|
10
|
+
})(InterruptType || (exports.InterruptType = InterruptType = {}));
|
|
11
|
+
class BaseInterruptSessionManager {
|
|
12
|
+
// Common implementation of checkQueueAndInterrupt
|
|
13
|
+
async checkQueueAndInterrupt(sessionId, updateStateObject) {
|
|
14
|
+
if (await this.hasQueuedMessages(sessionId)) {
|
|
15
|
+
logger_1.logger.trace({ message: 'graph has queued messagess, interrupting graph', sessionId });
|
|
16
|
+
// Interrupt the graph with NEW_TRIGGERS flag and optional updateStateObject
|
|
17
|
+
const interruptPayload = { type: InterruptType.NEW_TRIGGERS };
|
|
18
|
+
if (updateStateObject) {
|
|
19
|
+
interruptPayload.updateStateObject = {
|
|
20
|
+
messages: updateStateObject.messages,
|
|
21
|
+
memory: updateStateObject.memory,
|
|
22
|
+
history: updateStateObject.history,
|
|
23
|
+
sessionId: updateStateObject.sessionId,
|
|
24
|
+
sessionType: updateStateObject.sessionType,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
throw new langgraph_1.GraphInterrupt([
|
|
28
|
+
{
|
|
29
|
+
value: interruptPayload,
|
|
30
|
+
when: 'during',
|
|
31
|
+
resumable: true,
|
|
32
|
+
},
|
|
33
|
+
]);
|
|
34
|
+
}
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.BaseInterruptSessionManager = BaseInterruptSessionManager;
|
|
39
|
+
//# sourceMappingURL=BaseInterruptSessionManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseInterruptSessionManager.js","sourceRoot":"","sources":["../../src/interrupts/BaseInterruptSessionManager.ts"],"names":[],"mappings":";;;AACA,oDAAsD;AACtD,4CAAyC;AAEzC,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,8CAA6B,CAAA;IAC7B,wDAAuC,CAAA;AACzC,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAsCD,MAAsB,2BAA2B;IAqB/C,kDAAkD;IAClD,KAAK,CAAC,sBAAsB,CAAC,SAAiB,EAAE,iBAAkC;QAChF,IAAI,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5C,eAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,gDAAgD,EAAE,SAAS,EAAE,CAAC,CAAC;YAEvF,4EAA4E;YAC5E,MAAM,gBAAgB,GAAqB,EAAE,IAAI,EAAE,aAAa,CAAC,YAAY,EAAE,CAAC;YAChF,IAAI,iBAAiB,EAAE,CAAC;gBACtB,gBAAgB,CAAC,iBAAiB,GAAG;oBACnC,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;oBACpC,MAAM,EAAE,iBAAiB,CAAC,MAAM;oBAChC,OAAO,EAAE,iBAAiB,CAAC,OAAO;oBAClC,SAAS,EAAE,iBAAiB,CAAC,SAAS;oBACtC,WAAW,EAAE,iBAAiB,CAAC,WAAW;iBAC3C,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,0BAAc,CAAC;gBACvB;oBACE,KAAK,EAAE,gBAAgB;oBACvB,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,IAAI;iBAChB;aACF,CAAC,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAhDD,kEAgDC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { State } from '../types/LangGraph.types';
|
|
2
|
+
export declare enum InterruptType {
|
|
3
|
+
NEW_TRIGGERS = "NEW_TRIGGERS",
|
|
4
|
+
HUMAN_IN_THE_LOOP = "HUMAN_IN_THE_LOOP"
|
|
5
|
+
}
|
|
6
|
+
export interface QueuedMessage {
|
|
7
|
+
triggerBody: any;
|
|
8
|
+
triggerName: string;
|
|
9
|
+
appName?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface InterruptPayload {
|
|
12
|
+
type: InterruptType.NEW_TRIGGERS;
|
|
13
|
+
updateStateObject?: Partial<State>;
|
|
14
|
+
id?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface InterruptSessionManager {
|
|
17
|
+
isProcessed(sessionId: string): boolean | Promise<boolean>;
|
|
18
|
+
lock(sessionId: string): void | Promise<void>;
|
|
19
|
+
release(sessionId: string): void | Promise<void>;
|
|
20
|
+
enqueueMessage(sessionId: string, message: QueuedMessage): void | Promise<void>;
|
|
21
|
+
dequeueAll(sessionId: string): QueuedMessage[] | Promise<QueuedMessage[]>;
|
|
22
|
+
dequeue(sessionId: string): QueuedMessage | null | Promise<QueuedMessage | null>;
|
|
23
|
+
checkQueueAndInterrupt(sessionId: string, updateStateObject?: Partial<State>): Promise<boolean>;
|
|
24
|
+
}
|
|
25
|
+
export declare abstract class BaseInterruptSessionManager implements InterruptSessionManager {
|
|
26
|
+
abstract isProcessed(sessionId: string): boolean | Promise<boolean>;
|
|
27
|
+
abstract lock(sessionId: string): void | Promise<void>;
|
|
28
|
+
abstract release(sessionId: string): void | Promise<void>;
|
|
29
|
+
abstract enqueueMessage(sessionId: string, message: QueuedMessage): void | Promise<void>;
|
|
30
|
+
abstract dequeueAll(sessionId: string): QueuedMessage[] | Promise<QueuedMessage[]>;
|
|
31
|
+
abstract dequeue(sessionId: string): QueuedMessage | null | Promise<QueuedMessage | null>;
|
|
32
|
+
protected abstract hasQueuedMessages(sessionId: string): boolean | Promise<boolean>;
|
|
33
|
+
protected abstract getQueuedMessages(sessionId: string): QueuedMessage[] | Promise<QueuedMessage[]>;
|
|
34
|
+
checkQueueAndInterrupt(sessionId: string, updateStateObject?: Partial<State>): Promise<boolean>;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=InterruptSessionManager.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InterruptSessionManager.types.d.ts","sourceRoot":"","sources":["../../src/interrupts/InterruptSessionManager.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAIjD,oBAAY,aAAa;IACvB,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;CACxC;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,GAAG,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AASD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,aAAa,CAAC,YAAY,CAAC;IACjC,iBAAiB,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3D,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChF,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1E,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IACjF,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACjG;AAED,8BAAsB,2BAA4B,YAAW,uBAAuB;IAElF,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACnE,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IACtD,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IACzD,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IACxF,QAAQ,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAClF,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAGzF,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACnF,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAG7F,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;CA2BtG"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseInterruptSessionManager = exports.InterruptType = void 0;
|
|
4
|
+
const langgraph_1 = require("@langchain/langgraph");
|
|
5
|
+
const logger_1 = require("../utils/logger");
|
|
6
|
+
var InterruptType;
|
|
7
|
+
(function (InterruptType) {
|
|
8
|
+
InterruptType["NEW_TRIGGERS"] = "NEW_TRIGGERS";
|
|
9
|
+
InterruptType["HUMAN_IN_THE_LOOP"] = "HUMAN_IN_THE_LOOP";
|
|
10
|
+
})(InterruptType || (exports.InterruptType = InterruptType = {}));
|
|
11
|
+
class BaseInterruptSessionManager {
|
|
12
|
+
// Common implementation of checkQueueAndInterrupt
|
|
13
|
+
async checkQueueAndInterrupt(sessionId, updateStateObject) {
|
|
14
|
+
if (await this.hasQueuedMessages(sessionId)) {
|
|
15
|
+
const queue = await this.getQueuedMessages(sessionId);
|
|
16
|
+
logger_1.logger.trace({ message: 'graph has queued messagess, interrupting graph', sessionId, queue });
|
|
17
|
+
// Interrupt the graph with NEW_TRIGGERS flag and optional updateStateObject
|
|
18
|
+
const interruptPayload = { type: InterruptType.NEW_TRIGGERS };
|
|
19
|
+
if (updateStateObject) {
|
|
20
|
+
interruptPayload.updateStateObject = {
|
|
21
|
+
messages: updateStateObject.messages,
|
|
22
|
+
memory: updateStateObject.memory,
|
|
23
|
+
history: updateStateObject.history,
|
|
24
|
+
sessionId: updateStateObject.sessionId,
|
|
25
|
+
sessionType: updateStateObject.sessionType,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
throw new langgraph_1.GraphInterrupt([
|
|
29
|
+
{
|
|
30
|
+
value: interruptPayload,
|
|
31
|
+
when: 'during',
|
|
32
|
+
resumable: true,
|
|
33
|
+
},
|
|
34
|
+
]);
|
|
35
|
+
}
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.BaseInterruptSessionManager = BaseInterruptSessionManager;
|
|
40
|
+
//# sourceMappingURL=InterruptSessionManager.types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InterruptSessionManager.types.js","sourceRoot":"","sources":["../../src/interrupts/InterruptSessionManager.types.ts"],"names":[],"mappings":";;;AACA,oDAAsD;AACtD,4CAAyC;AAEzC,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,8CAA6B,CAAA;IAC7B,wDAAuC,CAAA;AACzC,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AA+BD,MAAsB,2BAA2B;IAa/C,kDAAkD;IAClD,KAAK,CAAC,sBAAsB,CAAC,SAAiB,EAAE,iBAAkC;QAChF,IAAI,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YACtD,eAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,gDAAgD,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YAE9F,4EAA4E;YAC5E,MAAM,gBAAgB,GAAqB,EAAE,IAAI,EAAE,aAAa,CAAC,YAAY,EAAE,CAAC;YAChF,IAAI,iBAAiB,EAAE,CAAC;gBACtB,gBAAgB,CAAC,iBAAiB,GAAG;oBACnC,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;oBACpC,MAAM,EAAE,iBAAiB,CAAC,MAAM;oBAChC,OAAO,EAAE,iBAAiB,CAAC,OAAO;oBAClC,SAAS,EAAE,iBAAiB,CAAC,SAAS;oBACtC,WAAW,EAAE,iBAAiB,CAAC,WAAW;iBAC3C,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,0BAAc,CAAC;gBACvB;oBACE,KAAK,EAAE,gBAAgB;oBACvB,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,IAAI;iBAChB;aACF,CAAC,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAzCD,kEAyCC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { BaseInterruptSessionManager, QueuedMessage } from './BaseInterruptSessionManager';
|
|
2
|
+
export declare class MemoryInterruptSessionManager extends BaseInterruptSessionManager {
|
|
3
|
+
private sessionProcessing;
|
|
4
|
+
private sessionMessageQueues;
|
|
5
|
+
isProcessed(sessionId: string): boolean;
|
|
6
|
+
lock(sessionId: string): boolean;
|
|
7
|
+
release(sessionId: string): void;
|
|
8
|
+
enqueueMessage(sessionId: string, message: QueuedMessage): void;
|
|
9
|
+
dequeueAll(sessionId: string): QueuedMessage[];
|
|
10
|
+
dequeue(sessionId: string): QueuedMessage | null;
|
|
11
|
+
protected hasQueuedMessages(sessionId: string): boolean;
|
|
12
|
+
protected getQueuedMessages(sessionId: string): QueuedMessage[];
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=MemoryInterruptSessionManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MemoryInterruptSessionManager.d.ts","sourceRoot":"","sources":["../../src/interrupts/MemoryInterruptSessionManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE3F,qBAAa,6BAA8B,SAAQ,2BAA2B;IAC5E,OAAO,CAAC,iBAAiB,CAAmC;IAC5D,OAAO,CAAC,oBAAoB,CAA2C;IAEvE,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIvC,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAShC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIhC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI;IAO/D,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE;IAO9C,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAWhD,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAKvD,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE;CAGhE"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MemoryInterruptSessionManager = void 0;
|
|
4
|
+
const BaseInterruptSessionManager_1 = require("./BaseInterruptSessionManager");
|
|
5
|
+
class MemoryInterruptSessionManager extends BaseInterruptSessionManager_1.BaseInterruptSessionManager {
|
|
6
|
+
constructor() {
|
|
7
|
+
super(...arguments);
|
|
8
|
+
this.sessionProcessing = new Map();
|
|
9
|
+
this.sessionMessageQueues = new Map();
|
|
10
|
+
}
|
|
11
|
+
isProcessed(sessionId) {
|
|
12
|
+
return this.sessionProcessing.get(sessionId) || false;
|
|
13
|
+
}
|
|
14
|
+
lock(sessionId) {
|
|
15
|
+
const isCurrentlyProcessed = this.sessionProcessing.get(sessionId) || false;
|
|
16
|
+
if (isCurrentlyProcessed) {
|
|
17
|
+
return false; // Could not acquire lock
|
|
18
|
+
}
|
|
19
|
+
this.sessionProcessing.set(sessionId, true);
|
|
20
|
+
return true; // Successfully acquired lock
|
|
21
|
+
}
|
|
22
|
+
release(sessionId) {
|
|
23
|
+
this.sessionProcessing.delete(sessionId);
|
|
24
|
+
}
|
|
25
|
+
enqueueMessage(sessionId, message) {
|
|
26
|
+
if (!this.sessionMessageQueues.has(sessionId)) {
|
|
27
|
+
this.sessionMessageQueues.set(sessionId, []);
|
|
28
|
+
}
|
|
29
|
+
this.sessionMessageQueues.get(sessionId).push(message);
|
|
30
|
+
}
|
|
31
|
+
dequeueAll(sessionId) {
|
|
32
|
+
const messages = this.sessionMessageQueues.get(sessionId) || [];
|
|
33
|
+
const result = [...messages];
|
|
34
|
+
this.sessionMessageQueues.set(sessionId, []);
|
|
35
|
+
return result;
|
|
36
|
+
}
|
|
37
|
+
dequeue(sessionId) {
|
|
38
|
+
const messages = this.sessionMessageQueues.get(sessionId) || [];
|
|
39
|
+
if (messages.length === 0) {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
const firstMessage = messages.shift();
|
|
43
|
+
this.sessionMessageQueues.set(sessionId, messages);
|
|
44
|
+
return firstMessage;
|
|
45
|
+
}
|
|
46
|
+
// Implementation of abstract methods from BaseInterruptSessionManager
|
|
47
|
+
hasQueuedMessages(sessionId) {
|
|
48
|
+
const queue = this.sessionMessageQueues.get(sessionId) || [];
|
|
49
|
+
return queue.length > 0;
|
|
50
|
+
}
|
|
51
|
+
getQueuedMessages(sessionId) {
|
|
52
|
+
return this.sessionMessageQueues.get(sessionId) || [];
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
exports.MemoryInterruptSessionManager = MemoryInterruptSessionManager;
|
|
56
|
+
//# sourceMappingURL=MemoryInterruptSessionManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MemoryInterruptSessionManager.js","sourceRoot":"","sources":["../../src/interrupts/MemoryInterruptSessionManager.ts"],"names":[],"mappings":";;;AAAA,+EAA2F;AAE3F,MAAa,6BAA8B,SAAQ,yDAA2B;IAA9E;;QACU,sBAAiB,GAAyB,IAAI,GAAG,EAAE,CAAC;QACpD,yBAAoB,GAAiC,IAAI,GAAG,EAAE,CAAC;IAoDzE,CAAC;IAlDC,WAAW,CAAC,SAAiB;QAC3B,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC;IACxD,CAAC;IAED,IAAI,CAAC,SAAiB;QACpB,MAAM,oBAAoB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC;QAC5E,IAAI,oBAAoB,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC,CAAC,yBAAyB;QACzC,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,CAAC,6BAA6B;IAC5C,CAAC;IAED,OAAO,CAAC,SAAiB;QACvB,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,cAAc,CAAC,SAAiB,EAAE,OAAsB;QACtD,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9C,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,UAAU,CAAC,SAAiB;QAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAChE,MAAM,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;QAC7B,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC7C,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,CAAC,SAAiB;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAChE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,EAAG,CAAC;QACvC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACnD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,sEAAsE;IAC5D,iBAAiB,CAAC,SAAiB;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAC7D,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1B,CAAC;IAES,iBAAiB,CAAC,SAAiB;QAC3C,OAAO,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IACxD,CAAC;CACF;AAtDD,sEAsDC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BaseInterruptSessionManager, QueuedMessage } from './BaseInterruptSessionManager';
|
|
2
|
+
export declare class MindedInterruptSessionManager extends BaseInterruptSessionManager {
|
|
3
|
+
constructor();
|
|
4
|
+
isProcessed(sessionId: string): Promise<boolean>;
|
|
5
|
+
lock(sessionId: string): Promise<boolean>;
|
|
6
|
+
release(sessionId: string): Promise<void>;
|
|
7
|
+
enqueueMessage(sessionId: string, message: QueuedMessage): Promise<void>;
|
|
8
|
+
dequeueAll(sessionId: string): Promise<QueuedMessage[]>;
|
|
9
|
+
dequeue(sessionId: string): Promise<QueuedMessage | null>;
|
|
10
|
+
protected hasQueuedMessages(sessionId: string): Promise<boolean>;
|
|
11
|
+
protected getQueuedMessages(sessionId: string): Promise<QueuedMessage[]>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=MindedInterruptSessionManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MindedInterruptSessionManager.d.ts","sourceRoot":"","sources":["../../src/interrupts/MindedInterruptSessionManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAsB3F,qBAAa,6BAA8B,SAAQ,2BAA2B;;IAKtE,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBhD,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBzC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAezC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBxE,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAgBvD,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;cAiB/C,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;cAgBtD,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;CAe/E"}
|