@ixo/common 1.1.3 → 1.1.32
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/utils/load-file.d.ts +1 -0
- package/dist/ai/utils/load-file.d.ts.map +1 -1
- package/dist/ai/utils/load-file.js +8 -0
- package/dist/ai/utils/load-file.js.map +1 -1
- package/dist/ai/utils/transformGraphStateMessageToListMessageResponse.d.ts +10 -0
- package/dist/ai/utils/transformGraphStateMessageToListMessageResponse.d.ts.map +1 -1
- package/dist/ai/utils/transformGraphStateMessageToListMessageResponse.js +4 -0
- package/dist/ai/utils/transformGraphStateMessageToListMessageResponse.js.map +1 -1
- package/dist/services/session-manager/session-manager.service.d.ts +2 -2
- package/dist/services/session-manager/session-manager.service.d.ts.map +1 -1
- package/dist/services/session-manager/session-manager.service.js +25 -12
- package/dist/services/session-manager/session-manager.service.js.map +1 -1
- package/package.json +6 -6
- package/src/ai/utils/load-file.ts +17 -0
- package/src/ai/utils/transformGraphStateMessageToListMessageResponse.ts +18 -0
- package/src/services/session-manager/session-manager.service.ts +26 -11
- package/tsconfig.tsbuildinfo +1 -1
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { Document } from '@langchain/core/documents';
|
|
2
2
|
export declare const loadFile: (path: string, fetchOptions?: RequestInit) => Promise<Document[]>;
|
|
3
|
+
export declare const loadFileFromBuffer: (buffer: Buffer, mimetype: string, filename?: string) => Promise<Document[]>;
|
|
3
4
|
//# sourceMappingURL=load-file.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-file.d.ts","sourceRoot":"","sources":["../../../src/ai/utils/load-file.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAoDrD,eAAO,MAAM,QAAQ,GACnB,MAAM,MAAM,EACZ,eAAe,WAAW,KACzB,OAAO,CAAC,QAAQ,EAAE,CAgDpB,CAAC"}
|
|
1
|
+
{"version":3,"file":"load-file.d.ts","sourceRoot":"","sources":["../../../src/ai/utils/load-file.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAoDrD,eAAO,MAAM,QAAQ,GACnB,MAAM,MAAM,EACZ,eAAe,WAAW,KACzB,OAAO,CAAC,QAAQ,EAAE,CAgDpB,CAAC;AAMF,eAAO,MAAM,kBAAkB,GAC7B,QAAQ,MAAM,EACd,UAAU,MAAM,EAChB,WAAW,MAAM,KAChB,OAAO,CAAC,QAAQ,EAAE,CAOpB,CAAC"}
|
|
@@ -79,6 +79,14 @@ export const loadFile = async (path, fetchOptions) => {
|
|
|
79
79
|
throw error;
|
|
80
80
|
}
|
|
81
81
|
};
|
|
82
|
+
export const loadFileFromBuffer = async (buffer, mimetype, filename) => {
|
|
83
|
+
const fileType = determineFileType(filename ?? '', mimetype);
|
|
84
|
+
if (!fileType) {
|
|
85
|
+
throw new Error(`Unsupported file type: ${mimetype}`);
|
|
86
|
+
}
|
|
87
|
+
const blob = new Blob([buffer], { type: mimetype });
|
|
88
|
+
return processFile(blob, fileType);
|
|
89
|
+
};
|
|
82
90
|
const processFile = async (blob, fileType) => {
|
|
83
91
|
switch (fileType) {
|
|
84
92
|
case 'pdf': {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-file.js","sourceRoot":"","sources":["../../../src/ai/utils/load-file.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"load-file.js","sourceRoot":"","sources":["../../../src/ai/utils/load-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,14 @@ interface ToolCall {
|
|
|
6
6
|
status?: 'isRunning' | 'done';
|
|
7
7
|
output?: string;
|
|
8
8
|
}
|
|
9
|
+
export interface AttachmentMeta {
|
|
10
|
+
filename: string;
|
|
11
|
+
mimetype: string;
|
|
12
|
+
size?: number;
|
|
13
|
+
mxcUri?: string;
|
|
14
|
+
eventId?: string;
|
|
15
|
+
category: string;
|
|
16
|
+
}
|
|
9
17
|
interface MessageDto {
|
|
10
18
|
id: string;
|
|
11
19
|
type: 'ai' | 'human';
|
|
@@ -14,6 +22,7 @@ interface MessageDto {
|
|
|
14
22
|
reasoning?: string;
|
|
15
23
|
isComplete?: boolean;
|
|
16
24
|
isReasoning?: boolean;
|
|
25
|
+
attachment?: AttachmentMeta;
|
|
17
26
|
}
|
|
18
27
|
export interface ListOracleMessagesResponse {
|
|
19
28
|
messages: MessageDto[];
|
|
@@ -27,6 +36,7 @@ export interface CleanAdditionalKwargs {
|
|
|
27
36
|
type: string;
|
|
28
37
|
text: string;
|
|
29
38
|
}>;
|
|
39
|
+
attachment?: AttachmentMeta;
|
|
30
40
|
[key: string]: unknown;
|
|
31
41
|
}
|
|
32
42
|
export declare function transformGraphStateMessageToListMessageResponse(messages: BaseMessage[]): ListOracleMessagesResponse;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformGraphStateMessageToListMessageResponse.d.ts","sourceRoot":"","sources":["../../../src/ai/utils/transformGraphStateMessageToListMessageResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,0BAA0B,CAAC;AAIlC,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,UAAU;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"transformGraphStateMessageToListMessageResponse.d.ts","sourceRoot":"","sources":["../../../src/ai/utils/transformGraphStateMessageToListMessageResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,0BAA0B,CAAC;AAIlC,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,UAAU;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,UAAU,EAAE,CAAC;CACxB;AACD,MAAM,WAAW,qBAAqB;IACpC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,KAAK,CAAC;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;IACH,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,wBAAgB,+CAA+C,CAC7D,QAAQ,EAAE,WAAW,EAAE,GACtB,0BAA0B,CAkE5B;AAED,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,KAAG,MAO5C,CAAC"}
|
|
@@ -9,6 +9,9 @@ export function transformGraphStateMessageToListMessageResponse(messages) {
|
|
|
9
9
|
!message.additional_kwargs?.isError) {
|
|
10
10
|
const additionalKwargs = message.additional_kwargs;
|
|
11
11
|
const reasoning = additionalKwargs?.reasoning;
|
|
12
|
+
const attachment = message.type === 'human'
|
|
13
|
+
? additionalKwargs?.attachment
|
|
14
|
+
: undefined;
|
|
12
15
|
acc.push({
|
|
13
16
|
type: message.type === 'ai' ? 'ai' : 'human',
|
|
14
17
|
content: String(message.content),
|
|
@@ -22,6 +25,7 @@ export function transformGraphStateMessageToListMessageResponse(messages) {
|
|
|
22
25
|
reasoning,
|
|
23
26
|
isComplete: true,
|
|
24
27
|
isReasoning: false,
|
|
28
|
+
...(attachment && { attachment }),
|
|
25
29
|
});
|
|
26
30
|
}
|
|
27
31
|
if (toolMsg) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformGraphStateMessageToListMessageResponse.js","sourceRoot":"","sources":["../../../src/ai/utils/transformGraphStateMessageToListMessageResponse.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,MAAM,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"transformGraphStateMessageToListMessageResponse.js","sourceRoot":"","sources":["../../../src/ai/utils/transformGraphStateMessageToListMessageResponse.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ export declare class SessionManagerService {
|
|
|
20
20
|
did: string;
|
|
21
21
|
lastProcessedCount: number;
|
|
22
22
|
}): Promise<void>;
|
|
23
|
-
syncSessionSet({ sessionId, did, messages, oracleEntityDid, oracleName, roomId
|
|
23
|
+
syncSessionSet({ sessionId, did, messages, oracleEntityDid, oracleName, roomId, lastProcessedCount, oracleDid, userContext, slackThreadTs, }: {
|
|
24
24
|
sessionId: string;
|
|
25
25
|
did: string;
|
|
26
26
|
messages: string[];
|
|
@@ -34,7 +34,7 @@ export declare class SessionManagerService {
|
|
|
34
34
|
}): Promise<ChatSession>;
|
|
35
35
|
getSession(sessionId: string, did: string, throwOnNotFound?: boolean): Promise<ChatSession | undefined>;
|
|
36
36
|
listSessions(listSessionsDto: ListChatSessionsDto): Promise<ListChatSessionsResponseDto>;
|
|
37
|
-
createSession(createSessionDto: CreateChatSessionDto): Promise<CreateChatSessionResponseDto>;
|
|
37
|
+
createSession(createSessionDto: CreateChatSessionDto, overrideEventId?: string): Promise<CreateChatSessionResponseDto>;
|
|
38
38
|
deleteSession(deleteSessionDto: DeleteChatSessionDto): Promise<void>;
|
|
39
39
|
}
|
|
40
40
|
//# sourceMappingURL=session-manager.service.d.ts.map
|
|
@@ -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;AAE/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;IAsEnB,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,
|
|
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;AAE/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;IAsEnB,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;IAsD1B,aAAa,CACxB,gBAAgB,EAAE,oBAAoB,EACtC,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,4BAA4B,CAAC;IAyD3B,aAAa,CACxB,gBAAgB,EAAE,oBAAoB,GACrC,OAAO,CAAC,IAAI,CAAC;CAMjB"}
|
|
@@ -27,8 +27,8 @@ export class SessionManagerService {
|
|
|
27
27
|
baseURL: 'https://openrouter.ai/api/v1',
|
|
28
28
|
},
|
|
29
29
|
});
|
|
30
|
-
const response = await llm.invoke(`Based on this messages messages, Add a title for this convo and only based on the messages? MAKE SURE TO ONLY RESPOND WITH THE TITLE.
|
|
31
|
-
|
|
30
|
+
const response = await llm.invoke(`Based on this messages messages, Add a title for this convo and only based on the messages? MAKE SURE TO ONLY RESPOND WITH THE TITLE.
|
|
31
|
+
|
|
32
32
|
## RESPONSE FORMAT
|
|
33
33
|
ONLY RESPOND WITH THE TITLE not anything else that title will be saved to the store directly from your response so generated based on the messages.
|
|
34
34
|
|
|
@@ -81,7 +81,7 @@ ___________________________________________________________
|
|
|
81
81
|
db.prepare('UPDATE sessions SET last_processed_count = ? WHERE session_id = ?').run(lastProcessedCount, sessionId);
|
|
82
82
|
return;
|
|
83
83
|
}
|
|
84
|
-
async syncSessionSet({ sessionId, did, messages, oracleEntityDid, oracleName, roomId
|
|
84
|
+
async syncSessionSet({ sessionId, did, messages, oracleEntityDid, oracleName, roomId, lastProcessedCount, oracleDid, userContext, slackThreadTs, }) {
|
|
85
85
|
const db = await this.syncService.getUserDatabase(did);
|
|
86
86
|
const selectedSession = await this.getSession(sessionId, did, false);
|
|
87
87
|
if (!selectedSession) {
|
|
@@ -96,12 +96,13 @@ ___________________________________________________________
|
|
|
96
96
|
oracleEntityDid,
|
|
97
97
|
oracleDid,
|
|
98
98
|
userContext,
|
|
99
|
+
roomId,
|
|
99
100
|
slackThreadTs,
|
|
100
101
|
};
|
|
101
102
|
db.prepare(`
|
|
102
103
|
INSERT INTO sessions (
|
|
103
|
-
session_id, title, last_updated_at, created_at, oracle_name,
|
|
104
|
-
oracle_did, oracle_entity_did, last_processed_count,
|
|
104
|
+
session_id, title, last_updated_at, created_at, oracle_name,
|
|
105
|
+
oracle_did, oracle_entity_did, last_processed_count,
|
|
105
106
|
user_context, room_id, slack_thread_ts
|
|
106
107
|
)
|
|
107
108
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
@@ -118,6 +119,18 @@ ___________________________________________________________
|
|
|
118
119
|
messages,
|
|
119
120
|
})
|
|
120
121
|
: selectedSession.title;
|
|
122
|
+
if (allowTitleUpdate && roomId && title) {
|
|
123
|
+
this.matrixManger
|
|
124
|
+
.editMessage({
|
|
125
|
+
messageId: sessionId,
|
|
126
|
+
roomId,
|
|
127
|
+
message: title,
|
|
128
|
+
isOracleAdmin: true,
|
|
129
|
+
})
|
|
130
|
+
.catch((err) => {
|
|
131
|
+
Logger.error('Failed to update conversation title in Matrix:', err);
|
|
132
|
+
});
|
|
133
|
+
}
|
|
121
134
|
const lastUpdatedAt = new Date().toISOString();
|
|
122
135
|
const updatedSession = {
|
|
123
136
|
...selectedSession,
|
|
@@ -127,7 +140,7 @@ ___________________________________________________________
|
|
|
127
140
|
slackThreadTs,
|
|
128
141
|
};
|
|
129
142
|
db.prepare(`
|
|
130
|
-
UPDATE sessions
|
|
143
|
+
UPDATE sessions
|
|
131
144
|
SET title = ?, last_updated_at = ?, last_processed_count = ?, slack_thread_ts = ?
|
|
132
145
|
WHERE session_id = ?
|
|
133
146
|
`).run(updatedSession.title ?? null, lastUpdatedAt, updatedSession.lastProcessedCount ?? null, updatedSession.slackThreadTs ?? null, sessionId);
|
|
@@ -136,11 +149,11 @@ ___________________________________________________________
|
|
|
136
149
|
async getSession(sessionId, did, throwOnNotFound = true) {
|
|
137
150
|
const db = await this.syncService.getUserDatabase(did);
|
|
138
151
|
const row = db
|
|
139
|
-
.prepare(`SELECT
|
|
152
|
+
.prepare(`SELECT
|
|
140
153
|
session_id, title, last_updated_at, created_at, oracle_name,
|
|
141
154
|
oracle_did, oracle_entity_did, last_processed_count,
|
|
142
155
|
user_context, room_id, slack_thread_ts
|
|
143
|
-
FROM sessions
|
|
156
|
+
FROM sessions
|
|
144
157
|
WHERE session_id = ?`)
|
|
145
158
|
.get(sessionId);
|
|
146
159
|
const selectedSession = row
|
|
@@ -173,12 +186,12 @@ ___________________________________________________________
|
|
|
173
186
|
const limit = listSessionsDto.limit ?? 20;
|
|
174
187
|
const offset = listSessionsDto.offset ?? 0;
|
|
175
188
|
const rows = db
|
|
176
|
-
.prepare(`SELECT
|
|
189
|
+
.prepare(`SELECT
|
|
177
190
|
session_id, title, last_updated_at, created_at, oracle_name,
|
|
178
191
|
oracle_did, oracle_entity_did, last_processed_count,
|
|
179
192
|
user_context, room_id, slack_thread_ts,
|
|
180
193
|
COUNT(*) OVER() as total
|
|
181
|
-
FROM sessions
|
|
194
|
+
FROM sessions
|
|
182
195
|
ORDER BY last_updated_at DESC
|
|
183
196
|
LIMIT ? OFFSET ?`)
|
|
184
197
|
.all(limit, offset);
|
|
@@ -200,7 +213,7 @@ ___________________________________________________________
|
|
|
200
213
|
}));
|
|
201
214
|
return { sessions, total };
|
|
202
215
|
}
|
|
203
|
-
async createSession(createSessionDto) {
|
|
216
|
+
async createSession(createSessionDto, overrideEventId) {
|
|
204
217
|
const userHomeServer = createSessionDto.homeServer ||
|
|
205
218
|
(await getMatrixHomeServerCroppedForDid(createSessionDto.did));
|
|
206
219
|
const { roomId } = await this.matrixManger.getOracleRoomIdWithHomeServer({
|
|
@@ -211,7 +224,7 @@ ___________________________________________________________
|
|
|
211
224
|
if (!roomId) {
|
|
212
225
|
throw new Error('Room ID not found');
|
|
213
226
|
}
|
|
214
|
-
const eventId = await this.matrixManger.sendMessage({
|
|
227
|
+
const eventId = overrideEventId ?? await this.matrixManger.sendMessage({
|
|
215
228
|
message: 'New Conversation Started',
|
|
216
229
|
roomId,
|
|
217
230
|
isOracleAdmin: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-manager.service.js","sourceRoot":"","sources":["../../../src/services/session-manager/session-manager.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAE7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAgBvD,MAAM,OAAO,qBAAqB;IAEb;IACD;IACC;IAHnB,YACmB,WAAiC,EAClC,eAAe,aAAa,CAAC,WAAW,EAAE,EACzC,mBAAyC;QAFzC,gBAAW,GAAX,WAAW,CAAsB;QAClC,iBAAY,GAAZ,YAAY,CAA8B;QACzC,wBAAmB,GAAnB,mBAAmB,CAAsB;IACzD,CAAC;IAEG,mBAAmB,CAAC,EACzB,eAAe,GAGhB;QACC,OAAO,GAAG,eAAe,WAAW,CAAC;IACvC,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,EAC/B,QAAQ,GAGT;QACC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,MAAM,GAAG,GAAG,kBAAkB,CAAC;YAC7B,KAAK,EAAE,kCAAkC;YACzC,WAAW,EAAE,GAAG;YAChB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;YACvC,OAAO,EAAE,EAAE,GAAG,IAAI,GAAG,EAAE;YACvB,aAAa,EAAE;gBACb,OAAO,EAAE,8BAA8B;aACxC;SACF,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAC/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA2CE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;;OAEtB,CACF,CAAC;QAEF,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,KAAK,CAAC,wBAAwB,CAAC,EACpC,SAAS,EACT,GAAG,EACH,kBAAkB,GAKnB;QACC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QACvD,EAAE,CAAC,OAAO,CACR,mEAAmE,CACpE,CAAC,GAAG,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;QACrC,OAAO;IACT,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,EAC1B,SAAS,EACT,GAAG,EACH,QAAQ,EACR,eAAe,EACf,UAAU,EACV,MAAM,
|
|
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.32",
|
|
4
4
|
"private": false,
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -32,10 +32,10 @@
|
|
|
32
32
|
"better-sqlite3": "^12.4.6",
|
|
33
33
|
"testcontainers": "^10.16.0",
|
|
34
34
|
"typescript": "^5.3.3",
|
|
35
|
-
"@ixo/
|
|
36
|
-
"@ixo/
|
|
35
|
+
"@ixo/eslint-config": "2.0.0",
|
|
36
|
+
"@ixo/oracles-events": "^1.0.4",
|
|
37
37
|
"@ixo/vitest-config": "1.0.0",
|
|
38
|
-
"@ixo/
|
|
38
|
+
"@ixo/typescript-config": "1.0.0"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
41
|
"@cosmjs/proto-signing": "^0.33.0",
|
|
@@ -66,8 +66,8 @@
|
|
|
66
66
|
"store": "^2.0.12",
|
|
67
67
|
"zod": "^4.1.12",
|
|
68
68
|
"@ixo/logger": "0.0.2",
|
|
69
|
-
"@ixo/
|
|
70
|
-
"@ixo/
|
|
69
|
+
"@ixo/matrix": "1.2.2",
|
|
70
|
+
"@ixo/oracles-chain-client": "1.2.0"
|
|
71
71
|
},
|
|
72
72
|
"scripts": {
|
|
73
73
|
"build": "tsc && tsc-alias",
|
|
@@ -107,6 +107,23 @@ export const loadFile = async (
|
|
|
107
107
|
}
|
|
108
108
|
};
|
|
109
109
|
|
|
110
|
+
/**
|
|
111
|
+
* Loads a file from a buffer and returns processed content.
|
|
112
|
+
* Useful when you already have the file data (e.g., downloaded from Matrix).
|
|
113
|
+
*/
|
|
114
|
+
export const loadFileFromBuffer = async (
|
|
115
|
+
buffer: Buffer,
|
|
116
|
+
mimetype: string,
|
|
117
|
+
filename?: string,
|
|
118
|
+
): Promise<Document[]> => {
|
|
119
|
+
const fileType = determineFileType(filename ?? '', mimetype);
|
|
120
|
+
if (!fileType) {
|
|
121
|
+
throw new Error(`Unsupported file type: ${mimetype}`);
|
|
122
|
+
}
|
|
123
|
+
const blob = new Blob([buffer], { type: mimetype });
|
|
124
|
+
return processFile(blob, fileType);
|
|
125
|
+
};
|
|
126
|
+
|
|
110
127
|
const processFile = async (
|
|
111
128
|
blob: Blob,
|
|
112
129
|
fileType: SupportedFileType,
|
|
@@ -14,6 +14,15 @@ interface ToolCall {
|
|
|
14
14
|
output?: string;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
+
export interface AttachmentMeta {
|
|
18
|
+
filename: string;
|
|
19
|
+
mimetype: string;
|
|
20
|
+
size?: number;
|
|
21
|
+
mxcUri?: string;
|
|
22
|
+
eventId?: string;
|
|
23
|
+
category: string;
|
|
24
|
+
}
|
|
25
|
+
|
|
17
26
|
interface MessageDto {
|
|
18
27
|
id: string;
|
|
19
28
|
type: 'ai' | 'human';
|
|
@@ -22,6 +31,7 @@ interface MessageDto {
|
|
|
22
31
|
reasoning?: string;
|
|
23
32
|
isComplete?: boolean;
|
|
24
33
|
isReasoning?: boolean;
|
|
34
|
+
attachment?: AttachmentMeta;
|
|
25
35
|
}
|
|
26
36
|
|
|
27
37
|
export interface ListOracleMessagesResponse {
|
|
@@ -36,6 +46,7 @@ export interface CleanAdditionalKwargs {
|
|
|
36
46
|
type: string;
|
|
37
47
|
text: string;
|
|
38
48
|
}>;
|
|
49
|
+
attachment?: AttachmentMeta;
|
|
39
50
|
[key: string]: unknown; // Allow additional properties for LangChain compatibility
|
|
40
51
|
}
|
|
41
52
|
|
|
@@ -55,6 +66,12 @@ export function transformGraphStateMessageToListMessageResponse(
|
|
|
55
66
|
message.additional_kwargs as CleanAdditionalKwargs;
|
|
56
67
|
const reasoning = additionalKwargs?.reasoning;
|
|
57
68
|
|
|
69
|
+
// Extract attachment metadata for human messages
|
|
70
|
+
const attachment =
|
|
71
|
+
message.type === 'human'
|
|
72
|
+
? additionalKwargs?.attachment
|
|
73
|
+
: undefined;
|
|
74
|
+
|
|
58
75
|
acc.push({
|
|
59
76
|
type: message.type === 'ai' ? 'ai' : 'human',
|
|
60
77
|
content: String(message.content),
|
|
@@ -68,6 +85,7 @@ export function transformGraphStateMessageToListMessageResponse(
|
|
|
68
85
|
reasoning,
|
|
69
86
|
isComplete: true, // Messages from DB are always complete
|
|
70
87
|
isReasoning: false, // since this is not a reasoning message and the request is done
|
|
88
|
+
...(attachment && { attachment }),
|
|
71
89
|
});
|
|
72
90
|
}
|
|
73
91
|
if (toolMsg) {
|
|
@@ -51,8 +51,8 @@ export class SessionManagerService {
|
|
|
51
51
|
},
|
|
52
52
|
});
|
|
53
53
|
const response = await llm.invoke(
|
|
54
|
-
`Based on this messages messages, Add a title for this convo and only based on the messages? MAKE SURE TO ONLY RESPOND WITH THE TITLE.
|
|
55
|
-
|
|
54
|
+
`Based on this messages messages, Add a title for this convo and only based on the messages? MAKE SURE TO ONLY RESPOND WITH THE TITLE.
|
|
55
|
+
|
|
56
56
|
## RESPONSE FORMAT
|
|
57
57
|
ONLY RESPOND WITH THE TITLE not anything else that title will be saved to the store directly from your response so generated based on the messages.
|
|
58
58
|
|
|
@@ -125,7 +125,7 @@ ___________________________________________________________
|
|
|
125
125
|
messages,
|
|
126
126
|
oracleEntityDid,
|
|
127
127
|
oracleName,
|
|
128
|
-
roomId
|
|
128
|
+
roomId,
|
|
129
129
|
lastProcessedCount,
|
|
130
130
|
oracleDid,
|
|
131
131
|
userContext,
|
|
@@ -158,6 +158,7 @@ ___________________________________________________________
|
|
|
158
158
|
oracleEntityDid,
|
|
159
159
|
oracleDid,
|
|
160
160
|
userContext,
|
|
161
|
+
roomId,
|
|
161
162
|
slackThreadTs,
|
|
162
163
|
};
|
|
163
164
|
|
|
@@ -165,8 +166,8 @@ ___________________________________________________________
|
|
|
165
166
|
db.prepare(
|
|
166
167
|
`
|
|
167
168
|
INSERT INTO sessions (
|
|
168
|
-
session_id, title, last_updated_at, created_at, oracle_name,
|
|
169
|
-
oracle_did, oracle_entity_did, last_processed_count,
|
|
169
|
+
session_id, title, last_updated_at, created_at, oracle_name,
|
|
170
|
+
oracle_did, oracle_entity_did, last_processed_count,
|
|
170
171
|
user_context, room_id, slack_thread_ts
|
|
171
172
|
)
|
|
172
173
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
@@ -203,6 +204,19 @@ ___________________________________________________________
|
|
|
203
204
|
})
|
|
204
205
|
: selectedSession.title;
|
|
205
206
|
|
|
207
|
+
if (allowTitleUpdate && roomId && title) {
|
|
208
|
+
this.matrixManger
|
|
209
|
+
.editMessage({
|
|
210
|
+
messageId: sessionId,
|
|
211
|
+
roomId,
|
|
212
|
+
message: title,
|
|
213
|
+
isOracleAdmin: true,
|
|
214
|
+
})
|
|
215
|
+
.catch((err) => {
|
|
216
|
+
Logger.error('Failed to update conversation title in Matrix:', err);
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
|
|
206
220
|
const lastUpdatedAt = new Date().toISOString();
|
|
207
221
|
const updatedSession: ChatSession = {
|
|
208
222
|
...selectedSession,
|
|
@@ -214,7 +228,7 @@ ___________________________________________________________
|
|
|
214
228
|
|
|
215
229
|
db.prepare(
|
|
216
230
|
`
|
|
217
|
-
UPDATE sessions
|
|
231
|
+
UPDATE sessions
|
|
218
232
|
SET title = ?, last_updated_at = ?, last_processed_count = ?, slack_thread_ts = ?
|
|
219
233
|
WHERE session_id = ?
|
|
220
234
|
`,
|
|
@@ -237,11 +251,11 @@ ___________________________________________________________
|
|
|
237
251
|
const db = await this.syncService.getUserDatabase(did);
|
|
238
252
|
const row = db
|
|
239
253
|
.prepare(
|
|
240
|
-
`SELECT
|
|
254
|
+
`SELECT
|
|
241
255
|
session_id, title, last_updated_at, created_at, oracle_name,
|
|
242
256
|
oracle_did, oracle_entity_did, last_processed_count,
|
|
243
257
|
user_context, room_id, slack_thread_ts
|
|
244
|
-
FROM sessions
|
|
258
|
+
FROM sessions
|
|
245
259
|
WHERE session_id = ?`,
|
|
246
260
|
)
|
|
247
261
|
.get(sessionId) as
|
|
@@ -300,12 +314,12 @@ ___________________________________________________________
|
|
|
300
314
|
// Get paginated sessions with total count
|
|
301
315
|
const rows = db
|
|
302
316
|
.prepare(
|
|
303
|
-
`SELECT
|
|
317
|
+
`SELECT
|
|
304
318
|
session_id, title, last_updated_at, created_at, oracle_name,
|
|
305
319
|
oracle_did, oracle_entity_did, last_processed_count,
|
|
306
320
|
user_context, room_id, slack_thread_ts,
|
|
307
321
|
COUNT(*) OVER() as total
|
|
308
|
-
FROM sessions
|
|
322
|
+
FROM sessions
|
|
309
323
|
ORDER BY last_updated_at DESC
|
|
310
324
|
LIMIT ? OFFSET ?`,
|
|
311
325
|
)
|
|
@@ -346,6 +360,7 @@ ___________________________________________________________
|
|
|
346
360
|
|
|
347
361
|
public async createSession(
|
|
348
362
|
createSessionDto: CreateChatSessionDto,
|
|
363
|
+
overrideEventId?: string,
|
|
349
364
|
): Promise<CreateChatSessionResponseDto> {
|
|
350
365
|
const userHomeServer =
|
|
351
366
|
createSessionDto.homeServer ||
|
|
@@ -359,7 +374,7 @@ ___________________________________________________________
|
|
|
359
374
|
if (!roomId) {
|
|
360
375
|
throw new Error('Room ID not found');
|
|
361
376
|
}
|
|
362
|
-
const eventId = await this.matrixManger.sendMessage({
|
|
377
|
+
const eventId = overrideEventId ?? await this.matrixManger.sendMessage({
|
|
363
378
|
message: 'New Conversation Started',
|
|
364
379
|
roomId,
|
|
365
380
|
isOracleAdmin: true,
|