@jungjaehoon/mama-os 0.34.0 → 0.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/agent-loop.d.ts +9 -0
- package/dist/agent/agent-loop.d.ts.map +1 -1
- package/dist/agent/agent-loop.js +14 -1
- package/dist/agent/agent-loop.js.map +1 -1
- package/dist/agent/role-manager.d.ts +2 -0
- package/dist/agent/role-manager.d.ts.map +1 -1
- package/dist/agent/role-manager.js +28 -0
- package/dist/agent/role-manager.js.map +1 -1
- package/dist/cli/config/types.d.ts +8 -0
- package/dist/cli/config/types.d.ts.map +1 -1
- package/dist/cli/config/types.js +20 -0
- package/dist/cli/config/types.js.map +1 -1
- package/dist/cli/runtime/agent-loop-init.d.ts.map +1 -1
- package/dist/cli/runtime/agent-loop-init.js +1 -0
- package/dist/cli/runtime/agent-loop-init.js.map +1 -1
- package/dist/cli/runtime/gateway-init.d.ts.map +1 -1
- package/dist/cli/runtime/gateway-init.js +3 -0
- package/dist/cli/runtime/gateway-init.js.map +1 -1
- package/dist/cli/runtime/gateway-wiring.d.ts.map +1 -1
- package/dist/cli/runtime/gateway-wiring.js +23 -29
- package/dist/cli/runtime/gateway-wiring.js.map +1 -1
- package/dist/envelope/reactive-config.d.ts.map +1 -1
- package/dist/envelope/reactive-config.js +3 -0
- package/dist/envelope/reactive-config.js.map +1 -1
- package/dist/gateways/channel-history.d.ts +5 -1
- package/dist/gateways/channel-history.d.ts.map +1 -1
- package/dist/gateways/channel-history.js +4 -1
- package/dist/gateways/channel-history.js.map +1 -1
- package/dist/gateways/discord.d.ts +2 -0
- package/dist/gateways/discord.d.ts.map +1 -1
- package/dist/gateways/discord.js +20 -2
- package/dist/gateways/discord.js.map +1 -1
- package/dist/gateways/index.d.ts +1 -1
- package/dist/gateways/index.d.ts.map +1 -1
- package/dist/gateways/message-router.d.ts +5 -1
- package/dist/gateways/message-router.d.ts.map +1 -1
- package/dist/gateways/message-router.js +127 -35
- package/dist/gateways/message-router.js.map +1 -1
- package/dist/gateways/plugin-loader.d.ts +10 -6
- package/dist/gateways/plugin-loader.d.ts.map +1 -1
- package/dist/gateways/plugin-loader.js +78 -12
- package/dist/gateways/plugin-loader.js.map +1 -1
- package/dist/gateways/principal.d.ts +27 -0
- package/dist/gateways/principal.d.ts.map +1 -0
- package/dist/gateways/principal.js +69 -0
- package/dist/gateways/principal.js.map +1 -0
- package/dist/gateways/slack.d.ts +5 -0
- package/dist/gateways/slack.d.ts.map +1 -1
- package/dist/gateways/slack.js +51 -23
- package/dist/gateways/slack.js.map +1 -1
- package/dist/gateways/telegram.d.ts +2 -0
- package/dist/gateways/telegram.d.ts.map +1 -1
- package/dist/gateways/telegram.js +104 -33
- package/dist/gateways/telegram.js.map +1 -1
- package/dist/gateways/turn-contract.d.ts +10 -3
- package/dist/gateways/turn-contract.d.ts.map +1 -1
- package/dist/gateways/types.d.ts +21 -15
- package/dist/gateways/types.d.ts.map +1 -1
- package/dist/operator/workorder-consumer.d.ts +9 -0
- package/dist/operator/workorder-consumer.d.ts.map +1 -1
- package/dist/operator/workorder-consumer.js +30 -8
- package/dist/operator/workorder-consumer.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"principal.js","sourceRoot":"","sources":["../../src/gateways/principal.ts"],"names":[],"mappings":"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"}
|
package/dist/gateways/slack.d.ts
CHANGED
|
@@ -16,6 +16,8 @@ export interface SlackGatewayOptions {
|
|
|
16
16
|
botToken: string;
|
|
17
17
|
/** Slack app token for Socket Mode (xapp-...) */
|
|
18
18
|
appToken: string;
|
|
19
|
+
/** Owner Slack user ID. Unset means owner resolution fails closed. */
|
|
20
|
+
ownerUserId?: string;
|
|
19
21
|
/** Message router for processing messages */
|
|
20
22
|
turnProcessor: TurnProcessor;
|
|
21
23
|
/** Gateway configuration */
|
|
@@ -34,6 +36,9 @@ export declare class SlackGateway extends BaseGateway {
|
|
|
34
36
|
private socketClient;
|
|
35
37
|
private webClient;
|
|
36
38
|
private config;
|
|
39
|
+
private teamId?;
|
|
40
|
+
private ownerWarningLogged;
|
|
41
|
+
private missingTeamIdWarningLogged;
|
|
37
42
|
private botToken;
|
|
38
43
|
private processedMessages;
|
|
39
44
|
private static get DEDUP_TTL_MS();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slack.d.ts","sourceRoot":"","sources":["../../src/gateways/slack.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAEV,kBAAkB,EAClB,kBAAkB,EAGnB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"slack.d.ts","sourceRoot":"","sources":["../../src/gateways/slack.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAEV,kBAAkB,EAClB,kBAAkB,EAGnB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AA+B/D;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,aAAa,EAAE,aAAa,CAAC;IAC7B,4BAA4B;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrC,2CAA2C;IAC3C,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CAErC;AAOD;;;;;GAKG;AACH,qBAAa,YAAa,SAAQ,WAAW;IAC3C,QAAQ,CAAC,MAAM,EAAG,OAAO,CAAU;IAEnC,OAAO,CAAC,YAAY,CAAmB;IACvC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,0BAA0B,CAAS;IAG3C,OAAO,CAAC,QAAQ,CAAS;IAGzB,OAAO,CAAC,iBAAiB,CAA6B;IACtD,OAAO,CAAC,MAAM,KAAK,YAAY,GAE9B;IAGD,OAAO,CAAC,MAAM,CAAoC;IAElD,SAAS,KAAK,cAAc,IAAI,MAAM,GAAG,IAAI,CAE5C;gBAEW,OAAO,EAAE,mBAAmB;IA2BxC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA6D3B;;OAEG;YACW,aAAa;IA8M3B;;OAEG;IACH,OAAO,CAAC,aAAa;cAmBF,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAU/D;;;OAGG;YACW,kBAAkB;IAoChC;;OAEG;YACW,YAAY;IAkB1B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB3B;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,IAAI;IASpD;;OAEG;IACH,SAAS,IAAI,kBAAkB;IAI/B;;OAEG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,GAAG,IAAI;IASrE;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUjE;;;OAGG;IACG,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcpF;;OAEG;IACG,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtF;;OAEG;IACG,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;CAOnE"}
|
package/dist/gateways/slack.js
CHANGED
|
@@ -16,6 +16,7 @@ const channel_history_js_1 = require("./channel-history.js");
|
|
|
16
16
|
const log_sanitizer_js_1 = require("../utils/log-sanitizer.js");
|
|
17
17
|
const tool_status_tracker_js_1 = require("./tool-status-tracker.js");
|
|
18
18
|
const config_manager_js_1 = require("../cli/config/config-manager.js");
|
|
19
|
+
const principal_js_1 = require("./principal.js");
|
|
19
20
|
/**
|
|
20
21
|
* Slack Gateway class
|
|
21
22
|
*
|
|
@@ -27,6 +28,9 @@ class SlackGateway extends base_gateway_js_1.BaseGateway {
|
|
|
27
28
|
socketClient;
|
|
28
29
|
webClient;
|
|
29
30
|
config;
|
|
31
|
+
teamId;
|
|
32
|
+
ownerWarningLogged = false;
|
|
33
|
+
missingTeamIdWarningLogged = false;
|
|
30
34
|
// Multi-agent support
|
|
31
35
|
botToken;
|
|
32
36
|
// Dedup: prevent double processing from app_mention + message events
|
|
@@ -47,6 +51,7 @@ class SlackGateway extends base_gateway_js_1.BaseGateway {
|
|
|
47
51
|
botToken: options.botToken,
|
|
48
52
|
appToken: options.appToken,
|
|
49
53
|
channels: options.config?.channels || {},
|
|
54
|
+
ownerUserId: options.ownerUserId,
|
|
50
55
|
};
|
|
51
56
|
// Create Socket Mode client for real-time events
|
|
52
57
|
this.socketClient = new socket_mode_1.SocketModeClient({
|
|
@@ -132,44 +137,56 @@ class SlackGateway extends base_gateway_js_1.BaseGateway {
|
|
|
132
137
|
this.logger.log(`[Slack] Skipping subtype: ${event.subtype}`);
|
|
133
138
|
return;
|
|
134
139
|
}
|
|
140
|
+
// Ignore bot messages before resolving an end-user principal.
|
|
141
|
+
if (event.bot_id)
|
|
142
|
+
return;
|
|
143
|
+
if (!this.teamId && !this.missingTeamIdWarningLogged) {
|
|
144
|
+
this.logger.warn('Slack team ID is unavailable; all senders will be diverted');
|
|
145
|
+
this.missingTeamIdWarningLogged = true;
|
|
146
|
+
}
|
|
147
|
+
const isDM = event.channel_type === 'im';
|
|
148
|
+
const principal = (0, principal_js_1.resolveConnectorPrincipal)({
|
|
149
|
+
connector: 'slack',
|
|
150
|
+
namespace: this.teamId ?? 'workspace',
|
|
151
|
+
userId: event.user,
|
|
152
|
+
ownerUserId: this.teamId ? this.config.ownerUserId : undefined,
|
|
153
|
+
isDirectMessage: isDM,
|
|
154
|
+
});
|
|
155
|
+
if (principal.lane === 'divert') {
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
135
158
|
// Dedup: Slack Socket Mode may redeliver events, and app_mention + message
|
|
136
159
|
// fire for the same @mention. Mark every processed event to prevent duplicates.
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
return;
|
|
141
|
-
}
|
|
142
|
-
this.processedMessages.set(dedupKey, Date.now());
|
|
143
|
-
// Periodic cleanup
|
|
144
|
-
if (this.processedMessages.size > 100) {
|
|
145
|
-
const now = Date.now();
|
|
146
|
-
for (const [key, time] of this.processedMessages) {
|
|
147
|
-
if (now - time > SlackGateway.DEDUP_TTL_MS)
|
|
148
|
-
this.processedMessages.delete(key);
|
|
149
|
-
}
|
|
150
|
-
}
|
|
160
|
+
const dedupKey = event.ts;
|
|
161
|
+
if (this.processedMessages.has(dedupKey)) {
|
|
162
|
+
return;
|
|
151
163
|
}
|
|
152
|
-
//
|
|
164
|
+
// Only admitted owner messages become conversation context.
|
|
153
165
|
const channelHistory = (0, channel_history_js_1.getChannelHistory)();
|
|
154
|
-
const senderName = event.bot_id ? (event.bot_id === 'auto-route' ? 'Agent' : 'Bot') : 'User';
|
|
155
166
|
channelHistory.record(event.channel, {
|
|
156
167
|
messageId: event.ts,
|
|
157
|
-
sender:
|
|
158
|
-
userId: event.user
|
|
168
|
+
sender: 'User',
|
|
169
|
+
userId: event.user,
|
|
159
170
|
body: event.text || '',
|
|
160
171
|
timestamp: parseFloat(event.ts) * 1000,
|
|
161
|
-
isBot:
|
|
172
|
+
isBot: false,
|
|
162
173
|
});
|
|
163
174
|
// Agent-bot message handling was here: shared-context recording and mention
|
|
164
175
|
// delegation between bots. Removed with the multi-bot handler, which never ran.
|
|
165
|
-
// Ignore other bot messages (not part of our multi-agent system)
|
|
166
|
-
if (event.bot_id)
|
|
167
|
-
return;
|
|
168
|
-
const isDM = event.channel_type === 'im';
|
|
169
176
|
// Check if we should respond to this message
|
|
170
177
|
if (!this.shouldRespond(event, isDM, isMention)) {
|
|
171
178
|
return;
|
|
172
179
|
}
|
|
180
|
+
this.processedMessages.set(dedupKey, Date.now());
|
|
181
|
+
// Periodic cleanup
|
|
182
|
+
if (this.processedMessages.size > 100) {
|
|
183
|
+
const now = Date.now();
|
|
184
|
+
for (const [key, time] of this.processedMessages) {
|
|
185
|
+
if (now - time > SlackGateway.DEDUP_TTL_MS) {
|
|
186
|
+
this.processedMessages.delete(key);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
173
190
|
// Emit message received event
|
|
174
191
|
this.emitEvent({
|
|
175
192
|
type: 'message_received',
|
|
@@ -217,6 +234,7 @@ class SlackGateway extends base_gateway_js_1.BaseGateway {
|
|
|
217
234
|
channelId: event.channel,
|
|
218
235
|
userId: event.user,
|
|
219
236
|
text: enrichedContent,
|
|
237
|
+
principal,
|
|
220
238
|
contentBlocks: contentBlocks.length > 0 ? contentBlocks : undefined,
|
|
221
239
|
metadata: {
|
|
222
240
|
threadTs: event.thread_ts || event.ts,
|
|
@@ -269,6 +287,10 @@ class SlackGateway extends base_gateway_js_1.BaseGateway {
|
|
|
269
287
|
finally {
|
|
270
288
|
await tracker.cleanup();
|
|
271
289
|
}
|
|
290
|
+
if (result.outcome === 'external_divert') {
|
|
291
|
+
this.logger.log('[Slack] Turn externally diverted; no response sent');
|
|
292
|
+
return;
|
|
293
|
+
}
|
|
272
294
|
// Send response in thread
|
|
273
295
|
await this.sendResponse(event, result.response);
|
|
274
296
|
// Replace eyes with checkmark after response sent (only in multi-agent mode)
|
|
@@ -370,10 +392,16 @@ class SlackGateway extends base_gateway_js_1.BaseGateway {
|
|
|
370
392
|
* Start the Slack gateway
|
|
371
393
|
*/
|
|
372
394
|
async start() {
|
|
395
|
+
if (!this.config.ownerUserId && !this.ownerWarningLogged) {
|
|
396
|
+
this.logger.warn('Slack owner user ID is not configured; all senders will be diverted');
|
|
397
|
+
this.ownerWarningLogged = true;
|
|
398
|
+
}
|
|
373
399
|
if (this.connected) {
|
|
374
400
|
this.logger.log('Slack gateway already connected');
|
|
375
401
|
return;
|
|
376
402
|
}
|
|
403
|
+
const authResult = await this.webClient.auth.test();
|
|
404
|
+
this.teamId = authResult.team_id ?? this.teamId;
|
|
377
405
|
await this.socketClient.start();
|
|
378
406
|
}
|
|
379
407
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slack.js","sourceRoot":"","sources":["../../src/gateways/slack.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"slack.js","sourceRoot":"","sources":["../../src/gateways/slack.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,oDAAsD;AACtD,4CAA2C;AAC3C,+DAAsD;AACtD,uDAAgD;AAQhD,+DAAyE;AAGzE,6DAAyD;AACzD,gEAA6D;AAC7D,qEAA6D;AAE7D,uEAA4D;AAC5D,iDAA2D;AAiD3D;;;;;GAKG;AACH,MAAa,YAAa,SAAQ,6BAAW;IAClC,MAAM,GAAG,OAAgB,CAAC;IAE3B,YAAY,CAAmB;IAC/B,SAAS,CAAY;IACrB,MAAM,CAA0B;IAChC,MAAM,CAAU;IAChB,kBAAkB,GAAG,KAAK,CAAC;IAC3B,0BAA0B,GAAG,KAAK,CAAC;IAE3C,sBAAsB;IACd,QAAQ,CAAS;IAEzB,qEAAqE;IAC7D,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,MAAM,KAAK,YAAY;QAC7B,OAAO,IAAA,6BAAS,GAAE,CAAC,cAAc,EAAE,YAAY,IAAI,MAAM,CAAC;IAC5D,CAAC;IAED,uBAAuB;IACf,MAAM,GAAG,IAAA,mCAAgB,EAAC,cAAc,CAAC,CAAC;IAElD,IAAc,cAAc;QAC1B,OAAO,IAAI,CAAC,CAAC,+DAA+D;IAC9E,CAAC;IAED,YAAY,OAA4B;QACtC,KAAK,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG;YACZ,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,IAAI,EAAE;YACxC,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC;QAEF,iDAAiD;QACjD,IAAI,CAAC,YAAY,GAAG,IAAI,8BAAgB,CAAC;YACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,iBAAiB,EAAE,KAAK;YACxB,iBAAiB,EAAE,KAAK;SACzB,CAAC,CAAC;QAEH,kCAAkC;QAClC,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEjD,sFAAsF;QACtF,oEAAoE;QAEpE,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACK,mBAAmB;QACzB,oBAAoB;QACpB,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;YAC3C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;YACrD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YAEtB,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE,OAAO;gBACf,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;YACxC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,SAAS,CAAC;gBACb,IAAI,EAAE,cAAc;gBACpB,MAAM,EAAE,OAAO;gBACf,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,wBAAwB;QACxB,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YACvD,IAAI,CAAC;gBACH,MAAM,GAAG,EAAE,CAAC;gBACZ,yEAAyE;gBACzE,kEAAkE;gBAClE,MAAM,UAAU,GAAG,KAA0B,CAAC;gBAC9C,MAAM,gBAAgB,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;gBAChE,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;YACzD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,MAAM,CAAC,CAAC;gBAC3D,IAAI,CAAC,SAAS,CAAC;oBACb,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,OAAO;oBACf,SAAS,EAAE,IAAI,IAAI,EAAE;oBACrB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC;iBAC1D,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,2DAA2D;QAC3D,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;YAC3D,IAAI,CAAC;gBACH,MAAM,GAAG,EAAE,CAAC;gBACZ,MAAM,IAAI,CAAC,aAAa,CAAC,KAA0B,EAAE,IAAI,CAAC,CAAC;YAC7D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,MAAM,CAAC,CAAC;gBAC3D,IAAI,CAAC,SAAS,CAAC;oBACb,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,OAAO;oBACf,SAAS,EAAE,IAAI,IAAI,EAAE;oBACrB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;iBACpF,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa,CAAC,KAAwB,EAAE,SAAkB;QACtE,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,kCAAkC,KAAK,CAAC,OAAO,IAAI,MAAM,UAAU,KAAK,CAAC,IAAI,YAAY,KAAK,CAAC,MAAM,IAAI,MAAM,WAAW,KAAK,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CACpM,CAAC;QAEF,qEAAqE;QACrE,mDAAmD;QACnD,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,KAAK,YAAY,EAAE,CAAC;YACpD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,8DAA8D;QAC9D,IAAI,KAAK,CAAC,MAAM;YAAE,OAAO;QAEzB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,CAAC;YACrD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;YAC/E,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;QACzC,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC;QACzC,MAAM,SAAS,GAAG,IAAA,wCAAyB,EAAC;YAC1C,SAAS,EAAE,OAAO;YAClB,SAAS,EAAE,IAAI,CAAC,MAAM,IAAI,WAAW;YACrC,MAAM,EAAE,KAAK,CAAC,IAAI;YAClB,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;YAC9D,eAAe,EAAE,IAAI;SACtB,CAAC,CAAC;QACH,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAChC,OAAO;QACT,CAAC;QAED,2EAA2E;QAC3E,gFAAgF;QAChF,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzC,OAAO;QACT,CAAC;QAED,4DAA4D;QAC5D,MAAM,cAAc,GAAG,IAAA,sCAAiB,GAAE,CAAC;QAC3C,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE;YACnC,SAAS,EAAE,KAAK,CAAC,EAAE;YACnB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,KAAK,CAAC,IAAI;YAClB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;YACtB,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI;YACtC,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;QAEH,4EAA4E;QAC5E,gFAAgF;QAEhF,6CAA6C;QAC7C,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;YAChD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACjD,mBAAmB;QACnB,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC;YACtC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACjD,IAAI,GAAG,GAAG,IAAI,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC;oBAC3C,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;QACH,CAAC;QAED,8BAA8B;QAC9B,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,kBAAkB;YACxB,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,IAAI,EAAE;gBACJ,SAAS,EAAE,KAAK,CAAC,OAAO;gBACxB,MAAM,EAAE,KAAK,CAAC,IAAI;gBAClB,IAAI;gBACJ,SAAS;gBACT,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS;aAC7B;SACF,CAAC,CAAC;QAEH,uCAAuC;QACvC,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE1D,qDAAqD;QACrD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAEzD,wCAAwC;QACxC,MAAM,aAAa,GACjB,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,IAAA,wCAAkB,EAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEtE,uEAAuE;QACvE,IAAI,eAAe,GAAG,YAAY,CAAC;QAEnC,wEAAwE;QACxE,MAAM,YAAY,GAAG,aAAa;aAC/B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;aAChE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAK,CAAC,CAAC;QACvB,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,eAAe,GAAG,GAAG,YAAY,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpE,CAAC;QAED,sEAAsE;QACtE,MAAM,sBAAsB,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC;YAC1E,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,+BAA+B,EAAE;YACzE,CAAC,CAAC,KAAK,CAAC;QACV,IAAI,sBAAsB,EAAE,CAAC;YAC3B,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;YACjE,MAAM,YAAY,GAAG,MAAM,gBAAgB,EAAE,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;YAClF,IAAI,YAAY,EAAE,CAAC;gBACjB,eAAe,GAAG,GAAG,eAAe,OAAO,YAAY,EAAE,CAAC;YAC5D,CAAC;QACH,CAAC;QAED,uDAAuD;QAEvD,+BAA+B;QAC/B,mEAAmE;QACnE,MAAM,iBAAiB,GAAsB;YAC3C,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,KAAK,CAAC,OAAO;YACxB,MAAM,EAAE,KAAK,CAAC,IAAI;YAClB,IAAI,EAAE,eAAe;YACrB,SAAS;YACT,aAAa,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;YACnE,QAAQ,EAAE;gBACR,QAAQ,EAAE,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,EAAE;gBACrC,SAAS,EAAE,KAAK,CAAC,EAAE;gBACnB,WAAW,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;aAC9D;SACF,CAAC;QACF,0FAA0F;QAC1F,IACE,sBAAsB;YACtB,iBAAiB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,EAChE,CAAC;YACD,iBAAiB,CAAC,aAAa,GAAG,SAAS,CAAC;QAC9C,CAAC;QAED,oDAAoD;QACpD,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,EAAE,CAAC;QAC7C,MAAM,YAAY,GAAoB;YACpC,eAAe,EAAE,KAAK,EAAE,OAAe,EAAE,EAAE;gBACzC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;oBAChD,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,IAAI,EAAE,OAAO;oBACb,SAAS,EAAE,QAAQ;iBACpB,CAAC,CAAC;gBACH,OAAO,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC;YACxB,CAAC;YACD,eAAe,EAAE,KAAK,EAAE,MAAc,EAAE,OAAe,EAAE,EAAE;gBACzD,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;oBAC/B,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,EAAE,EAAE,MAAM;oBACV,IAAI,EAAE,OAAO;iBACd,CAAC,CAAC;YACL,CAAC;YACD,iBAAiB,EAAE,KAAK,EAAE,MAAc,EAAE,EAAE;gBAC1C,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;oBAC/B,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,EAAE,EAAE,MAAM;iBACX,CAAC,CAAC;YACL,CAAC;SACF,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,0CAAiB,CAAC,YAAY,EAAE;YAClD,UAAU,EAAE,IAAI;YAChB,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;QACH,MAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAEpD,iCAAiC;QACjC,IAAI,MAAM,CAAC;QACX,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,iBAAiB,EAAE;gBAC/D,QAAQ,EAAE,eAAe;aAC1B,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,KAAK,iBAAiB,EAAE,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YACtE,OAAO;QACT,CAAC;QAED,0BAA0B;QAC1B,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEhD,6EAA6E;QAE7E,0BAA0B;QAC1B,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,cAAc;YACpB,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,IAAI,EAAE;gBACJ,SAAS,EAAE,KAAK,CAAC,OAAO;gBACxB,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;gBACtC,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,EAAE;aACtC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,KAAwB,EAAE,IAAa,EAAE,SAAkB;QAC/E,wBAAwB;QACxB,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QAEtB,qDAAqD;QACrD,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAE5D,IAAI,aAAa,EAAE,CAAC;YAClB,0BAA0B;YAC1B,IAAI,aAAa,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;gBAC3C,OAAO,IAAI,CAAC,CAAC,uCAAuC;YACtD,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,gDAAgD;QAChD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEkB,mBAAmB,CAAC,OAAe;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,OAAO;aACX,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;aAC1B,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;aACjC,IAAI,EAAE,CAAC;IACZ,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,kBAAkB,CAAC,KAAwB;QACvD,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAExD,MAAM,WAAW,GAAwB,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;QAEjE,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,WAAW,CAAC;YAClE,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qCAAqC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACnE,SAAS;YACX,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,IAAA,kCAAY,EAAC,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;gBAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACpD,WAAW,CAAC,IAAI,CAAC;oBACf,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;oBAChC,GAAG,EAAE,WAAW;oBAChB,SAAS;oBACT,QAAQ,EAAE,IAAI,CAAC,IAAI;oBACnB,WAAW,EAAE,IAAI,CAAC,QAAQ,IAAI,0BAA0B;oBACxD,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB,CAAC,CAAC;gBACH,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,sBAAsB,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,OAAO,SAAS,EAAE,CACjF,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY,CAAC,aAAgC,EAAE,QAAgB;QAC3E,MAAM,QAAQ,GAAG,aAAa,CAAC,SAAS,IAAI,aAAa,CAAC,EAAE,CAAC;QAC7D,MAAM,MAAM,GAAG,IAAA,mCAAa,EAAC,QAAQ,CAAC,CAAC;QAEvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;gBACpC,OAAO,EAAE,aAAa,CAAC,OAAO;gBAC9B,IAAI,EAAE,KAAK;gBACX,SAAS,EAAE,QAAQ;gBACnB,eAAe,EAAE,IAAI,EAAE,uBAAuB;aAC/C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,mCAAmC;IACnC,+EAA+E;IAE/E;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;YACxF,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QACjC,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;YACnD,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACpD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC;QAChD,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,iEAAiE;QAEjE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAEvB,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,cAAc;YACpB,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC,CAAC;IACL,CAAC;IAED,+EAA+E;IAC/E,gBAAgB;IAChB,+EAA+E;IAE/E;;OAEG;IACH,SAAS,CAAC,MAAmC;QAC3C,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACzE,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QACvC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,SAAiB,EAAE,MAA0B;QAC5D,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC3C,CAAC;IAED,+EAA+E;IAC/E,4DAA4D;IAC5D,+EAA+E;IAE/E;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,IAAY;QAC/C,MAAM,MAAM,GAAG,IAAA,mCAAa,EAAC,IAAI,CAAC,CAAC;QACnC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;gBACpC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,QAAQ,CAAC,SAAiB,EAAE,QAAgB,EAAE,OAAgB;QAClE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;QAE1C,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEpC,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;YACjC,UAAU,EAAE,SAAS;YACrB,IAAI,EAAE,gBAAgB,CAAC,QAAQ,CAAC;YAChC,QAAQ;YACR,eAAe,EAAE,OAAO;SACzB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,SAAiB,EAAE,SAAiB,EAAE,OAAgB;QACpE,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAED,+EAA+E;IAC/E,sBAAsB;IACtB,+EAA+E;IAE/E;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,MAAwB;QAChD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;CACF;AAjiBD,oCAiiBC"}
|
|
@@ -23,6 +23,8 @@ export interface TelegramGatewayConfig {
|
|
|
23
23
|
token: string;
|
|
24
24
|
/** Allowed chat IDs (empty = allow all) */
|
|
25
25
|
allowedChats?: string[];
|
|
26
|
+
/** Owner Telegram user IDs. Unset means owner resolution fails closed. */
|
|
27
|
+
ownerUserIds?: string[];
|
|
26
28
|
}
|
|
27
29
|
/**
|
|
28
30
|
* Telegram Gateway options
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../../src/gateways/telegram.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAWH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,oBAAoB,CAAC;AAI1E,OAAO,EAGL,KAAK,4BAA4B,EAClC,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../../src/gateways/telegram.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,39 @@
|
|
|
10
10
|
* - Single-message streaming presenter (placeholder → final answer)
|
|
11
11
|
* - Typing indicator, error handling
|
|
12
12
|
*/
|
|
13
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
30
|
+
var ownKeys = function(o) {
|
|
31
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
32
|
+
var ar = [];
|
|
33
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
34
|
+
return ar;
|
|
35
|
+
};
|
|
36
|
+
return ownKeys(o);
|
|
37
|
+
};
|
|
38
|
+
return function (mod) {
|
|
39
|
+
if (mod && mod.__esModule) return mod;
|
|
40
|
+
var result = {};
|
|
41
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
42
|
+
__setModuleDefault(result, mod);
|
|
43
|
+
return result;
|
|
44
|
+
};
|
|
45
|
+
})();
|
|
13
46
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
47
|
exports.TelegramGateway = void 0;
|
|
15
48
|
const promises_1 = require("node:fs/promises");
|
|
@@ -25,6 +58,11 @@ const attachment_utils_js_1 = require("./attachment-utils.js");
|
|
|
25
58
|
const telegram_media_js_1 = require("./telegram-media.js");
|
|
26
59
|
const telegram_response_presenter_js_1 = require("./telegram-response-presenter.js");
|
|
27
60
|
const telegram_message_ledger_js_1 = require("./telegram-message-ledger.js");
|
|
61
|
+
const principal_js_1 = require("./principal.js");
|
|
62
|
+
const security_monitor_js_1 = require("../security/security-monitor.js");
|
|
63
|
+
const debugLogger = __importStar(require("@jungjaehoon/mama-core/debug-logger"));
|
|
64
|
+
const { DebugLogger } = debugLogger;
|
|
65
|
+
const telegramLogger = new DebugLogger('telegram');
|
|
28
66
|
const TELEGRAM_MAX_LENGTH = 4096;
|
|
29
67
|
const MESSAGE_DEDUP_TTL_MS = 60_000;
|
|
30
68
|
const REJECTED_CHAT_WARN_INTERVAL_MS = 60_000;
|
|
@@ -148,6 +186,7 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
|
|
|
148
186
|
enabled: true,
|
|
149
187
|
token: options.token,
|
|
150
188
|
allowedChats: options.config?.allowedChats || [],
|
|
189
|
+
ownerUserIds: options.config?.ownerUserIds,
|
|
151
190
|
};
|
|
152
191
|
this.mediaRoot =
|
|
153
192
|
options.mediaRoot ??
|
|
@@ -271,8 +310,48 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
|
|
|
271
310
|
});
|
|
272
311
|
}
|
|
273
312
|
async handleMessage(msg) {
|
|
274
|
-
|
|
275
|
-
|
|
313
|
+
if (!msg.from || !msg.chat)
|
|
314
|
+
return;
|
|
315
|
+
const now = Date.now();
|
|
316
|
+
const messageKey = `${msg.chat.id}:${msg.message_id}`;
|
|
317
|
+
if (this.messageLedger.get(messageKey)?.state === 'delivered')
|
|
318
|
+
return;
|
|
319
|
+
if (this.recentMessageIds.has(messageKey))
|
|
320
|
+
return;
|
|
321
|
+
this.recentMessageIds.set(messageKey, now);
|
|
322
|
+
for (const [key, ts] of this.recentMessageIds) {
|
|
323
|
+
if (now - ts > MESSAGE_DEDUP_TTL_MS)
|
|
324
|
+
this.recentMessageIds.delete(key);
|
|
325
|
+
}
|
|
326
|
+
const chatId = String(msg.chat.id);
|
|
327
|
+
if (this.config.allowedChats && this.config.allowedChats.length > 0) {
|
|
328
|
+
if (!this.config.allowedChats.includes(chatId)) {
|
|
329
|
+
const lastWarn = this.rejectedChatWarnAt.get(chatId) ?? 0;
|
|
330
|
+
if (now - lastWarn > REJECTED_CHAT_WARN_INTERVAL_MS) {
|
|
331
|
+
this.rejectedChatWarnAt.set(chatId, now);
|
|
332
|
+
console.warn(`[Telegram] Dropped message from non-allowlisted chat ${msg.chat.id} (user ${msg.from.id})`);
|
|
333
|
+
}
|
|
334
|
+
return;
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
const principal = (0, principal_js_1.resolveTelegramPrincipal)({
|
|
338
|
+
userId: String(msg.from.id),
|
|
339
|
+
chatId,
|
|
340
|
+
chatType: msg.chat.type,
|
|
341
|
+
allowedChats: new Set(this.config.allowedChats ?? []),
|
|
342
|
+
ownerUserIds: this.config.ownerUserIds === undefined ? undefined : new Set(this.config.ownerUserIds),
|
|
343
|
+
});
|
|
344
|
+
if (principal.lane === 'divert') {
|
|
345
|
+
(0, security_monitor_js_1.logSecurityEventOnly)({
|
|
346
|
+
type: 'telegram_principal_diverted',
|
|
347
|
+
severity: 'warn',
|
|
348
|
+
message: 'Telegram ingress diverted before processing',
|
|
349
|
+
details: { source: 'telegram', chatType: msg.chat.type },
|
|
350
|
+
});
|
|
351
|
+
return;
|
|
352
|
+
}
|
|
353
|
+
const laneKey = (0, principal_js_1.laneChannelId)(chatId, principal.lane);
|
|
354
|
+
await this.runInChatQueue(laneKey, () => this.processMessage(msg, messageKey, principal));
|
|
276
355
|
}
|
|
277
356
|
async runInChatQueue(chatKey, work, allowReentrant = false) {
|
|
278
357
|
if (allowReentrant && this.activeChat.getStore() === chatKey)
|
|
@@ -295,36 +374,10 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
|
|
|
295
374
|
this.chatTails.delete(chatKey);
|
|
296
375
|
}
|
|
297
376
|
}
|
|
298
|
-
async processMessage(msg) {
|
|
377
|
+
async processMessage(msg, messageKey, principal) {
|
|
299
378
|
if (!msg.from || !msg.chat)
|
|
300
379
|
return;
|
|
301
380
|
const now = Date.now();
|
|
302
|
-
// Telegram update dedup (60s TTL). Do not deduplicate by text content:
|
|
303
|
-
// repeated short replies and emoji are distinct conversation turns.
|
|
304
|
-
const messageKey = `${msg.chat.id}:${msg.message_id}`;
|
|
305
|
-
if (this.messageLedger.get(messageKey)?.state === 'delivered')
|
|
306
|
-
return;
|
|
307
|
-
if (this.recentMessageIds.has(messageKey))
|
|
308
|
-
return;
|
|
309
|
-
this.recentMessageIds.set(messageKey, now);
|
|
310
|
-
// Cleanup expired entries
|
|
311
|
-
for (const [key, ts] of this.recentMessageIds) {
|
|
312
|
-
if (now - ts > MESSAGE_DEDUP_TTL_MS)
|
|
313
|
-
this.recentMessageIds.delete(key);
|
|
314
|
-
}
|
|
315
|
-
// Allowed chats filter
|
|
316
|
-
if (this.config.allowedChats && this.config.allowedChats.length > 0) {
|
|
317
|
-
if (!this.config.allowedChats.includes(String(msg.chat.id))) {
|
|
318
|
-
// Rate-cap the warn per chat so a stranger cannot grow daemon.log
|
|
319
|
-
// one line per unique message.
|
|
320
|
-
const lastWarn = this.rejectedChatWarnAt.get(String(msg.chat.id)) ?? 0;
|
|
321
|
-
if (now - lastWarn > REJECTED_CHAT_WARN_INTERVAL_MS) {
|
|
322
|
-
this.rejectedChatWarnAt.set(String(msg.chat.id), now);
|
|
323
|
-
console.warn(`[Telegram] Dropped message from non-allowlisted chat ${msg.chat.id} (user ${msg.from?.id ?? 'unknown'})`);
|
|
324
|
-
}
|
|
325
|
-
return;
|
|
326
|
-
}
|
|
327
|
-
}
|
|
328
381
|
const hasMedia = Boolean((msg.photo && msg.photo.length > 0) || msg.document);
|
|
329
382
|
if (hasMedia && (!this.config.allowedChats || this.config.allowedChats.length === 0)) {
|
|
330
383
|
const lastWarn = this.rejectedChatWarnAt.get(String(msg.chat.id)) ?? 0;
|
|
@@ -363,7 +416,10 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
|
|
|
363
416
|
const durableEntry = this.messageLedger.get(messageKey);
|
|
364
417
|
const numChatId = msg.chat.id;
|
|
365
418
|
const api = this.bot.api;
|
|
366
|
-
|
|
419
|
+
let initialResponseMessageId = null;
|
|
420
|
+
const presenter = this.createResponsePresenter(numChatId, messageKey, durableEntry?.nextChunkIndex ?? 0, (messageId) => {
|
|
421
|
+
initialResponseMessageId = messageId;
|
|
422
|
+
});
|
|
367
423
|
if (durableEntry?.state !== 'ready')
|
|
368
424
|
await presenter.start();
|
|
369
425
|
if (durableEntry?.state === 'ready' && durableEntry.response !== undefined) {
|
|
@@ -395,8 +451,12 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
|
|
|
395
451
|
const attachments = [];
|
|
396
452
|
const contentBlocks = [];
|
|
397
453
|
let transientMediaPath;
|
|
454
|
+
// The public lane is conversation-only: a non-owner's attachment is never
|
|
455
|
+
// downloaded with the bot's credentials and never becomes a model-visible
|
|
456
|
+
// content block. Text/caption still flows.
|
|
457
|
+
const mediaAllowed = principal.lane === 'owner';
|
|
398
458
|
try {
|
|
399
|
-
if (msg.photo && msg.photo.length > 0) {
|
|
459
|
+
if (mediaAllowed && msg.photo && msg.photo.length > 0) {
|
|
400
460
|
const photo = msg.photo[msg.photo.length - 1];
|
|
401
461
|
const downloaded = await (0, telegram_media_js_1.downloadTelegramMedia)({
|
|
402
462
|
botToken: this.token,
|
|
@@ -439,7 +499,7 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
|
|
|
439
499
|
text = '[Image]';
|
|
440
500
|
}
|
|
441
501
|
}
|
|
442
|
-
else if (msg.document) {
|
|
502
|
+
else if (mediaAllowed && msg.document) {
|
|
443
503
|
const downloaded = await (0, telegram_media_js_1.downloadTelegramMedia)({
|
|
444
504
|
botToken: this.token,
|
|
445
505
|
fileId: msg.document.file_id,
|
|
@@ -527,6 +587,7 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
|
|
|
527
587
|
channelId: String(msg.chat.id),
|
|
528
588
|
userId: String(msg.from.id),
|
|
529
589
|
text,
|
|
590
|
+
principal,
|
|
530
591
|
contentBlocks: contentBlocks.length > 0 ? contentBlocks : undefined,
|
|
531
592
|
metadata: {
|
|
532
593
|
username: msg.from.username,
|
|
@@ -566,6 +627,15 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
|
|
|
566
627
|
}
|
|
567
628
|
throw error;
|
|
568
629
|
}
|
|
630
|
+
if (result.outcome === 'external_divert') {
|
|
631
|
+
if (initialResponseMessageId !== null) {
|
|
632
|
+
await api.deleteMessage(numChatId, initialResponseMessageId).catch(() => { });
|
|
633
|
+
}
|
|
634
|
+
this.messageLedger.markReady(messageKey, '');
|
|
635
|
+
this.messageLedger.markDelivered(messageKey);
|
|
636
|
+
telegramLogger.info('[Telegram] Turn externally diverted; no response sent');
|
|
637
|
+
return;
|
|
638
|
+
}
|
|
569
639
|
this.messageLedger.markReady(messageKey, result.response);
|
|
570
640
|
try {
|
|
571
641
|
await presenter.finalize(result.response);
|
|
@@ -783,11 +853,12 @@ class TelegramGateway extends base_gateway_js_1.BaseGateway {
|
|
|
783
853
|
});
|
|
784
854
|
}
|
|
785
855
|
}
|
|
786
|
-
createResponsePresenter(chatId, messageKey, resumeFromChunk = 0) {
|
|
856
|
+
createResponsePresenter(chatId, messageKey, resumeFromChunk = 0, onInitialSend) {
|
|
787
857
|
const api = this.bot.api;
|
|
788
858
|
return new telegram_response_presenter_js_1.TelegramResponsePresenter({
|
|
789
859
|
send: async (content) => {
|
|
790
860
|
const sent = await api.sendMessage(chatId, content);
|
|
861
|
+
onInitialSend?.(sent.message_id);
|
|
791
862
|
return String(sent.message_id);
|
|
792
863
|
},
|
|
793
864
|
edit: async (handle, content) => {
|