@ixo/common 1.1.35 → 1.1.37
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/.turbo/turbo-build.log +1 -1
- package/dist/ai/tools/parser-action-tool.d.ts.map +1 -1
- package/dist/ai/tools/parser-action-tool.js +9 -3
- package/dist/ai/tools/parser-action-tool.js.map +1 -1
- package/dist/services/session-manager/dto.d.ts +2 -0
- package/dist/services/session-manager/dto.d.ts.map +1 -1
- package/dist/services/session-manager/dto.js +12 -0
- package/dist/services/session-manager/dto.js.map +1 -1
- package/dist/services/session-manager/session-manager.service.d.ts.map +1 -1
- package/dist/services/session-manager/session-manager.service.js +26 -9
- package/dist/services/session-manager/session-manager.service.js.map +1 -1
- package/package.json +4 -4
- package/src/ai/tools/parser-action-tool.ts +20 -3
- package/src/services/session-manager/dto.ts +10 -0
- package/src/services/session-manager/session-manager.service.ts +32 -12
- package/tsconfig.tsbuildinfo +1 -1
package/.turbo/turbo-build.log
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser-action-tool.d.ts","sourceRoot":"","sources":["../../../src/ai/tools/parser-action-tool.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parser-action-tool.d.ts","sourceRoot":"","sources":["../../../src/ai/tools/parser-action-tool.ts"],"names":[],"mappings":"AAMA,UAAU,oBAAoB;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAGD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,oBAAoB,oHAgE5D"}
|
|
@@ -1,20 +1,26 @@
|
|
|
1
1
|
import { tool } from '@langchain/core/tools';
|
|
2
|
+
import { randomUUID } from 'node:crypto';
|
|
2
3
|
import { callAgAction } from './action-caller.js';
|
|
3
4
|
import { logActionToMatrix } from './log-action-to-matrix.js';
|
|
4
5
|
export function parserActionTool(action) {
|
|
5
6
|
const { name, description, schema } = action;
|
|
6
7
|
return tool(async (input, runnableConfig) => {
|
|
7
8
|
const { configurable } = runnableConfig;
|
|
8
|
-
const
|
|
9
|
+
const sessionIdField = configurable.sessionId;
|
|
10
|
+
const sessionId = typeof sessionIdField === 'string' && sessionIdField.length > 0
|
|
11
|
+
? sessionIdField
|
|
12
|
+
: configurable.thread_id;
|
|
13
|
+
const { requestId, configs } = configurable;
|
|
9
14
|
if (!sessionId) {
|
|
10
15
|
throw new Error('sessionId is required for AG-UI actions');
|
|
11
16
|
}
|
|
17
|
+
const toolCallId = `ag_${requestId ?? 'noreq'}_${randomUUID().slice(0, 8)}`;
|
|
12
18
|
const result = await callAgAction({
|
|
13
19
|
sessionId,
|
|
14
|
-
toolCallId
|
|
20
|
+
toolCallId,
|
|
15
21
|
toolName: name,
|
|
16
22
|
args: input,
|
|
17
|
-
timeout:
|
|
23
|
+
timeout: 15000,
|
|
18
24
|
});
|
|
19
25
|
if (configs?.matrix.roomId) {
|
|
20
26
|
void logActionToMatrix({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser-action-tool.js","sourceRoot":"","sources":["../../../src/ai/tools/parser-action-tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAS9D,MAAM,UAAU,gBAAgB,CAAC,MAA4B;IAC3D,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC7C,OAAO,IAAI,CACT,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;QAC9B,MAAM,EAAE,YAAY,EAAE,GACpB,cAAmD,CAAC;
|
|
1
|
+
{"version":3,"file":"parser-action-tool.js","sourceRoot":"","sources":["../../../src/ai/tools/parser-action-tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAS9D,MAAM,UAAU,gBAAgB,CAAC,MAA4B;IAC3D,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC7C,OAAO,IAAI,CACT,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;QAC9B,MAAM,EAAE,YAAY,EAAE,GACpB,cAAmD,CAAC;QAKtD,MAAM,cAAc,GAClB,YACD,CAAC,SAAS,CAAC;QACZ,MAAM,SAAS,GACb,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;YAC7D,CAAC,CAAC,cAAc;YAChB,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC;QAC7B,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;QAE5C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC7D,CAAC;QAKD,MAAM,UAAU,GAAG,MAAM,SAAS,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAG5E,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;YAChC,SAAS;YACT,UAAU;YACV,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,KAAgC;YACtC,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,IAAI,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3B,KAAK,iBAAiB,CACpB;gBACE,IAAI;gBACJ,IAAI,EAAE,KAAgC;gBACtC,MAAM;gBACN,OAAO,EAAE,IAAI;aACd,EACD;gBACE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;gBAC7B,QAAQ,EAAE,SAAS;aACpB,CACF,CAAC;QACJ,CAAC;QAGD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC,EACD;QACE,IAAI;QACJ,WAAW;QACX,MAAM;QACN,QAAQ,EAAE;YACR,UAAU,EAAE,IAAI;SACjB;KACF,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -7,6 +7,7 @@ export declare class ListChatSessionsDto extends UserAuthDto {
|
|
|
7
7
|
oracleEntityDid: string;
|
|
8
8
|
limit?: number;
|
|
9
9
|
offset?: number;
|
|
10
|
+
roomId?: string;
|
|
10
11
|
}
|
|
11
12
|
export declare class CreateChatSessionDto extends UserAuthDto {
|
|
12
13
|
oracleDid: string;
|
|
@@ -18,6 +19,7 @@ export declare class CreateChatSessionDto extends UserAuthDto {
|
|
|
18
19
|
oracleHomeServer?: string;
|
|
19
20
|
userHomeServer?: string;
|
|
20
21
|
ucanInvocation?: string;
|
|
22
|
+
roomId?: string;
|
|
21
23
|
}
|
|
22
24
|
export declare class DeleteChatSessionDto extends UserAuthDto {
|
|
23
25
|
sessionId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dto.d.ts","sourceRoot":"","sources":["../../../src/services/session-manager/dto.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,qBAAa,WAAW;IAGtB,GAAG,EAAE,MAAM,CAAC;IAIZ,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,mBAAoB,SAAQ,WAAW;IAGlD,eAAe,EAAE,MAAM,CAAC;IAKxB,KAAK,CAAC,EAAE,MAAM,CAAC;IAKf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,oBAAqB,SAAQ,WAAW;IAGnD,SAAS,EAAE,MAAM,CAAC;IAIlB,eAAe,EAAE,MAAM,CAAC;IAIxB,UAAU,EAAE,MAAM,CAAC;IAInB,aAAa,CAAC,EAAE,MAAM,CAAC;IAIvB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,SAAS,CAAC,EAAE,MAAM,CAAC;IAInB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAI1B,cAAc,CAAC,EAAE,MAAM,CAAC;IAIxB,cAAc,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"dto.d.ts","sourceRoot":"","sources":["../../../src/services/session-manager/dto.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,qBAAa,WAAW;IAGtB,GAAG,EAAE,MAAM,CAAC;IAIZ,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,mBAAoB,SAAQ,WAAW;IAGlD,eAAe,EAAE,MAAM,CAAC;IAKxB,KAAK,CAAC,EAAE,MAAM,CAAC;IAKf,MAAM,CAAC,EAAE,MAAM,CAAC;IAKhB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,oBAAqB,SAAQ,WAAW;IAGnD,SAAS,EAAE,MAAM,CAAC;IAIlB,eAAe,EAAE,MAAM,CAAC;IAIxB,UAAU,EAAE,MAAM,CAAC;IAInB,aAAa,CAAC,EAAE,MAAM,CAAC;IAIvB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,SAAS,CAAC,EAAE,MAAM,CAAC;IAInB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAI1B,cAAc,CAAC,EAAE,MAAM,CAAC;IAIxB,cAAc,CAAC,EAAE,MAAM,CAAC;IAKxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,oBAAqB,SAAQ,WAAW;IAGnD,SAAS,EAAE,MAAM,CAAC;IAIlB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,WAAW;IAGtB,SAAS,EAAE,MAAM,CAAC;IAIlB,KAAK,CAAC,EAAE,MAAM,CAAC;IAIf,aAAa,EAAE,MAAM,CAAC;IAItB,SAAS,EAAE,MAAM,CAAC;IAIlB,UAAU,EAAE,MAAM,CAAC;IAInB,SAAS,EAAE,MAAM,CAAC;IAIlB,eAAe,EAAE,MAAM,CAAC;IAIxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAG5B,WAAW,CAAC,EAAE,eAAe,CAAC;IAI9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,2BAA2B;IAGtC,QAAQ,EAAE,WAAW,EAAE,CAAC;IAIxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,4BAA6B,SAAQ,WAAW;CAAG"}
|
|
@@ -26,6 +26,7 @@ export class ListChatSessionsDto extends UserAuthDto {
|
|
|
26
26
|
oracleEntityDid;
|
|
27
27
|
limit;
|
|
28
28
|
offset;
|
|
29
|
+
roomId;
|
|
29
30
|
}
|
|
30
31
|
__decorate([
|
|
31
32
|
IsString(),
|
|
@@ -44,6 +45,11 @@ __decorate([
|
|
|
44
45
|
Min(0),
|
|
45
46
|
__metadata("design:type", Number)
|
|
46
47
|
], ListChatSessionsDto.prototype, "offset", void 0);
|
|
48
|
+
__decorate([
|
|
49
|
+
IsString(),
|
|
50
|
+
IsOptional(),
|
|
51
|
+
__metadata("design:type", String)
|
|
52
|
+
], ListChatSessionsDto.prototype, "roomId", void 0);
|
|
47
53
|
export class CreateChatSessionDto extends UserAuthDto {
|
|
48
54
|
oracleDid;
|
|
49
55
|
oracleEntityDid;
|
|
@@ -54,6 +60,7 @@ export class CreateChatSessionDto extends UserAuthDto {
|
|
|
54
60
|
oracleHomeServer;
|
|
55
61
|
userHomeServer;
|
|
56
62
|
ucanInvocation;
|
|
63
|
+
roomId;
|
|
57
64
|
}
|
|
58
65
|
__decorate([
|
|
59
66
|
IsString(),
|
|
@@ -100,6 +107,11 @@ __decorate([
|
|
|
100
107
|
IsOptional(),
|
|
101
108
|
__metadata("design:type", String)
|
|
102
109
|
], CreateChatSessionDto.prototype, "ucanInvocation", void 0);
|
|
110
|
+
__decorate([
|
|
111
|
+
IsString(),
|
|
112
|
+
IsOptional(),
|
|
113
|
+
__metadata("design:type", String)
|
|
114
|
+
], CreateChatSessionDto.prototype, "roomId", void 0);
|
|
103
115
|
export class DeleteChatSessionDto extends UserAuthDto {
|
|
104
116
|
sessionId;
|
|
105
117
|
oracleEntityDid;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dto.js","sourceRoot":"","sources":["../../../src/services/session-manager/dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EACL,OAAO,EACP,UAAU,EACV,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,GAAG,GACJ,MAAM,iBAAiB,CAAC;AAGzB,MAAM,OAAO,WAAW;IAGtB,GAAG,CAAS;IAIZ,UAAU,CAAU;CACrB;AALC;IAFC,QAAQ,EAAE;IACV,UAAU,EAAE;;wCACD;AAIZ;IAFC,QAAQ,EAAE;IACV,UAAU,EAAE;;+CACO;AAGtB,MAAM,OAAO,mBAAoB,SAAQ,WAAW;IAGlD,eAAe,CAAS;IAKxB,KAAK,CAAU;IAKf,MAAM,CAAU;CACjB;
|
|
1
|
+
{"version":3,"file":"dto.js","sourceRoot":"","sources":["../../../src/services/session-manager/dto.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-manager.service.d.ts","sourceRoot":"","sources":["../../../src/services/session-manager/session-manager.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO/C,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EACjC,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EACjC,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,oBAAoB;IACnC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CACrD;AAED,qBAAa,qBAAqB;IAE9B,OAAO,CAAC,QAAQ,CAAC,WAAW;aACZ,YAAY;IAC5B,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gBAFpB,WAAW,EAAE,oBAAoB,EAClC,YAAY,gBAA8B,EACzC,mBAAmB,CAAC,EAAE,mBAAmB,YAAA;IAGrD,mBAAmB,CAAC,EACzB,eAAe,GAChB,EAAE;QACD,eAAe,EAAE,MAAM,CAAC;KACzB,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE;YAIX,kBAAkB;IAgFnB,wBAAwB,CAAC,EACpC,SAAS,EACT,GAAG,EACH,kBAAkB,GACnB,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;QACZ,kBAAkB,EAAE,MAAM,CAAC;KAC5B,GAAG,OAAO,CAAC,IAAI,CAAC;IAQJ,cAAc,CAAC,EAC1B,SAAS,EACT,GAAG,EACH,QAAQ,EACR,eAAe,EACf,UAAU,EACV,MAAM,EACN,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,aAAa,GACd,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,eAAe,EAAE,MAAM,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,eAAe,CAAC;QAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,WAAW,CAAC;IAsGX,UAAU,CACrB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,eAAe,GAAE,OAAc,GAC9B,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAuDtB,YAAY,CACvB,eAAe,EAAE,mBAAmB,GACnC,OAAO,CAAC,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"session-manager.service.d.ts","sourceRoot":"","sources":["../../../src/services/session-manager/session-manager.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO/C,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EACjC,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EACjC,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,oBAAoB;IACnC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CACrD;AAED,qBAAa,qBAAqB;IAE9B,OAAO,CAAC,QAAQ,CAAC,WAAW;aACZ,YAAY;IAC5B,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gBAFpB,WAAW,EAAE,oBAAoB,EAClC,YAAY,gBAA8B,EACzC,mBAAmB,CAAC,EAAE,mBAAmB,YAAA;IAGrD,mBAAmB,CAAC,EACzB,eAAe,GAChB,EAAE;QACD,eAAe,EAAE,MAAM,CAAC;KACzB,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE;YAIX,kBAAkB;IAgFnB,wBAAwB,CAAC,EACpC,SAAS,EACT,GAAG,EACH,kBAAkB,GACnB,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;QACZ,kBAAkB,EAAE,MAAM,CAAC;KAC5B,GAAG,OAAO,CAAC,IAAI,CAAC;IAQJ,cAAc,CAAC,EAC1B,SAAS,EACT,GAAG,EACH,QAAQ,EACR,eAAe,EACf,UAAU,EACV,MAAM,EACN,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,aAAa,GACd,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,eAAe,EAAE,MAAM,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,eAAe,CAAC;QAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,WAAW,CAAC;IAsGX,UAAU,CACrB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,eAAe,GAAE,OAAc,GAC9B,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAuDtB,YAAY,CACvB,eAAe,EAAE,mBAAmB,GACnC,OAAO,CAAC,2BAA2B,CAAC;IAmE1B,aAAa,CACxB,gBAAgB,EAAE,oBAAoB,EACtC,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,4BAA4B,CAAC;IAmE3B,aAAa,CACxB,gBAAgB,EAAE,oBAAoB,GACrC,OAAO,CAAC,IAAI,CAAC;CAMjB"}
|
|
@@ -193,16 +193,29 @@ ___________________________________________________________
|
|
|
193
193
|
const db = await this.syncService.getUserDatabase(listSessionsDto.did);
|
|
194
194
|
const limit = listSessionsDto.limit ?? 20;
|
|
195
195
|
const offset = listSessionsDto.offset ?? 0;
|
|
196
|
-
const
|
|
197
|
-
|
|
196
|
+
const hasRoomFilter = !!listSessionsDto.roomId;
|
|
197
|
+
const sql = hasRoomFilter
|
|
198
|
+
? `SELECT
|
|
199
|
+
session_id, title, last_updated_at, created_at, oracle_name,
|
|
200
|
+
oracle_did, oracle_entity_did, last_processed_count,
|
|
201
|
+
user_context, room_id, slack_thread_ts,
|
|
202
|
+
COUNT(*) OVER() as total
|
|
203
|
+
FROM sessions
|
|
204
|
+
WHERE room_id = ?
|
|
205
|
+
ORDER BY last_updated_at DESC
|
|
206
|
+
LIMIT ? OFFSET ?`
|
|
207
|
+
: `SELECT
|
|
198
208
|
session_id, title, last_updated_at, created_at, oracle_name,
|
|
199
209
|
oracle_did, oracle_entity_did, last_processed_count,
|
|
200
210
|
user_context, room_id, slack_thread_ts,
|
|
201
211
|
COUNT(*) OVER() as total
|
|
202
212
|
FROM sessions
|
|
203
213
|
ORDER BY last_updated_at DESC
|
|
204
|
-
LIMIT ? OFFSET
|
|
205
|
-
|
|
214
|
+
LIMIT ? OFFSET ?`;
|
|
215
|
+
const params = hasRoomFilter
|
|
216
|
+
? [listSessionsDto.roomId, limit, offset]
|
|
217
|
+
: [limit, offset];
|
|
218
|
+
const rows = db.prepare(sql).all(...params);
|
|
206
219
|
const total = rows[0]?.total ?? 0;
|
|
207
220
|
const sessions = rows.map((row) => ({
|
|
208
221
|
sessionId: row.session_id,
|
|
@@ -224,11 +237,15 @@ ___________________________________________________________
|
|
|
224
237
|
async createSession(createSessionDto, overrideEventId) {
|
|
225
238
|
const userHomeServer = createSessionDto.homeServer ||
|
|
226
239
|
(await getMatrixHomeServerCroppedForDid(createSessionDto.did));
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
240
|
+
let roomId = createSessionDto.roomId;
|
|
241
|
+
if (!roomId) {
|
|
242
|
+
const resolved = await this.matrixManger.getOracleRoomIdWithHomeServer({
|
|
243
|
+
userDid: createSessionDto.did,
|
|
244
|
+
oracleEntityDid: createSessionDto.oracleEntityDid,
|
|
245
|
+
userHomeServer,
|
|
246
|
+
});
|
|
247
|
+
roomId = resolved.roomId;
|
|
248
|
+
}
|
|
232
249
|
if (!roomId) {
|
|
233
250
|
throw new Error('Room ID not found');
|
|
234
251
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-manager.service.js","sourceRoot":"","sources":["../../../src/services/session-manager/session-manager.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"session-manager.service.js","sourceRoot":"","sources":["../../../src/services/session-manager/session-manager.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ixo/common",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.37",
|
|
4
4
|
"private": false,
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -32,9 +32,9 @@
|
|
|
32
32
|
"better-sqlite3": "^12.4.6",
|
|
33
33
|
"testcontainers": "^10.16.0",
|
|
34
34
|
"typescript": "^5.3.3",
|
|
35
|
+
"@ixo/eslint-config": "2.0.0",
|
|
35
36
|
"@ixo/oracles-events": "^1.0.4",
|
|
36
37
|
"@ixo/typescript-config": "1.0.0",
|
|
37
|
-
"@ixo/eslint-config": "2.0.0",
|
|
38
38
|
"@ixo/vitest-config": "1.0.0"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
@@ -66,8 +66,8 @@
|
|
|
66
66
|
"store": "^2.0.12",
|
|
67
67
|
"zod": "^4.3.6",
|
|
68
68
|
"@ixo/logger": "0.0.2",
|
|
69
|
-
"@ixo/
|
|
70
|
-
"@ixo/
|
|
69
|
+
"@ixo/matrix": "1.2.3",
|
|
70
|
+
"@ixo/oracles-chain-client": "1.2.2"
|
|
71
71
|
},
|
|
72
72
|
"scripts": {
|
|
73
73
|
"build": "tsc && tsc-alias",
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type IRunnableConfigWithRequiredFields } from '@ixo/matrix';
|
|
2
2
|
import { tool } from '@langchain/core/tools';
|
|
3
|
+
import { randomUUID } from 'node:crypto';
|
|
3
4
|
import { callAgAction } from './action-caller.js';
|
|
4
5
|
import { logActionToMatrix } from './log-action-to-matrix.js';
|
|
5
6
|
|
|
@@ -16,19 +17,35 @@ export function parserActionTool(action: IParseAgActionParams) {
|
|
|
16
17
|
async (input, runnableConfig) => {
|
|
17
18
|
const { configurable } =
|
|
18
19
|
runnableConfig as IRunnableConfigWithRequiredFields;
|
|
19
|
-
|
|
20
|
+
// Prefer explicit `sessionId` — sub-agent wrappers set this to the real
|
|
21
|
+
// user WS session so routing works from nested contexts. Fall back to
|
|
22
|
+
// `thread_id` for direct invocations from the main agent (where
|
|
23
|
+
// thread_id IS the user's session).
|
|
24
|
+
const sessionIdField = (
|
|
25
|
+
configurable as { sessionId?: unknown }
|
|
26
|
+
).sessionId;
|
|
27
|
+
const sessionId =
|
|
28
|
+
typeof sessionIdField === 'string' && sessionIdField.length > 0
|
|
29
|
+
? sessionIdField
|
|
30
|
+
: configurable.thread_id;
|
|
31
|
+
const { requestId, configs } = configurable;
|
|
20
32
|
|
|
21
33
|
if (!sessionId) {
|
|
22
34
|
throw new Error('sessionId is required for AG-UI actions');
|
|
23
35
|
}
|
|
24
36
|
|
|
37
|
+
// Unique toolCallId per invocation. Protects against:
|
|
38
|
+
// - Multiple tool calls sharing one requestId (React key collisions)
|
|
39
|
+
// - Any future code path that forgets to propagate requestId
|
|
40
|
+
const toolCallId = `ag_${requestId ?? 'noreq'}_${randomUUID().slice(0, 8)}`;
|
|
41
|
+
|
|
25
42
|
// Call the action and WAIT for result from frontend
|
|
26
43
|
const result = await callAgAction({
|
|
27
44
|
sessionId,
|
|
28
|
-
toolCallId
|
|
45
|
+
toolCallId,
|
|
29
46
|
toolName: name,
|
|
30
47
|
args: input as Record<string, unknown>,
|
|
31
|
-
timeout:
|
|
48
|
+
timeout: 15000, // 15 seconds
|
|
32
49
|
});
|
|
33
50
|
|
|
34
51
|
if (configs?.matrix.roomId) {
|
|
@@ -32,6 +32,11 @@ export class ListChatSessionsDto extends UserAuthDto {
|
|
|
32
32
|
@IsOptional()
|
|
33
33
|
@Min(0)
|
|
34
34
|
offset?: number;
|
|
35
|
+
|
|
36
|
+
/** Filter sessions by roomId. When set, only sessions in this room are returned. */
|
|
37
|
+
@IsString()
|
|
38
|
+
@IsOptional()
|
|
39
|
+
roomId?: string;
|
|
35
40
|
}
|
|
36
41
|
|
|
37
42
|
export class CreateChatSessionDto extends UserAuthDto {
|
|
@@ -70,6 +75,11 @@ export class CreateChatSessionDto extends UserAuthDto {
|
|
|
70
75
|
@IsString()
|
|
71
76
|
@IsOptional()
|
|
72
77
|
ucanInvocation?: string;
|
|
78
|
+
|
|
79
|
+
/** Override the roomId stored on the session (e.g. task-specific room). */
|
|
80
|
+
@IsString()
|
|
81
|
+
@IsOptional()
|
|
82
|
+
roomId?: string;
|
|
73
83
|
}
|
|
74
84
|
|
|
75
85
|
export class DeleteChatSessionDto extends UserAuthDto {
|
|
@@ -326,19 +326,32 @@ ___________________________________________________________
|
|
|
326
326
|
const limit = listSessionsDto.limit ?? 20;
|
|
327
327
|
const offset = listSessionsDto.offset ?? 0;
|
|
328
328
|
|
|
329
|
-
// Get paginated sessions with total count
|
|
330
|
-
const
|
|
331
|
-
|
|
332
|
-
|
|
329
|
+
// Get paginated sessions with total count, optionally filtered by roomId
|
|
330
|
+
const hasRoomFilter = !!listSessionsDto.roomId;
|
|
331
|
+
const sql = hasRoomFilter
|
|
332
|
+
? `SELECT
|
|
333
333
|
session_id, title, last_updated_at, created_at, oracle_name,
|
|
334
334
|
oracle_did, oracle_entity_did, last_processed_count,
|
|
335
335
|
user_context, room_id, slack_thread_ts,
|
|
336
336
|
COUNT(*) OVER() as total
|
|
337
337
|
FROM sessions
|
|
338
|
+
WHERE room_id = ?
|
|
338
339
|
ORDER BY last_updated_at DESC
|
|
339
|
-
LIMIT ? OFFSET
|
|
340
|
-
|
|
341
|
-
|
|
340
|
+
LIMIT ? OFFSET ?`
|
|
341
|
+
: `SELECT
|
|
342
|
+
session_id, title, last_updated_at, created_at, oracle_name,
|
|
343
|
+
oracle_did, oracle_entity_did, last_processed_count,
|
|
344
|
+
user_context, room_id, slack_thread_ts,
|
|
345
|
+
COUNT(*) OVER() as total
|
|
346
|
+
FROM sessions
|
|
347
|
+
ORDER BY last_updated_at DESC
|
|
348
|
+
LIMIT ? OFFSET ?`;
|
|
349
|
+
|
|
350
|
+
const params = hasRoomFilter
|
|
351
|
+
? [listSessionsDto.roomId, limit, offset]
|
|
352
|
+
: [limit, offset];
|
|
353
|
+
|
|
354
|
+
const rows = db.prepare(sql).all(...params) as Array<{
|
|
342
355
|
session_id: string;
|
|
343
356
|
title: string | null;
|
|
344
357
|
last_updated_at: string;
|
|
@@ -380,11 +393,18 @@ ___________________________________________________________
|
|
|
380
393
|
const userHomeServer =
|
|
381
394
|
createSessionDto.homeServer ||
|
|
382
395
|
(await getMatrixHomeServerCroppedForDid(createSessionDto.did));
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
396
|
+
|
|
397
|
+
// Use the provided roomId override (e.g. task-specific room),
|
|
398
|
+
// or fall back to resolving the user's main oracle room.
|
|
399
|
+
let roomId = createSessionDto.roomId;
|
|
400
|
+
if (!roomId) {
|
|
401
|
+
const resolved = await this.matrixManger.getOracleRoomIdWithHomeServer({
|
|
402
|
+
userDid: createSessionDto.did,
|
|
403
|
+
oracleEntityDid: createSessionDto.oracleEntityDid,
|
|
404
|
+
userHomeServer,
|
|
405
|
+
});
|
|
406
|
+
roomId = resolved.roomId;
|
|
407
|
+
}
|
|
388
408
|
|
|
389
409
|
if (!roomId) {
|
|
390
410
|
throw new Error('Room ID not found');
|