paperclip-plugin-telegram 0.8.0 → 0.8.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/acp-bridge.js +28 -28
- package/dist/acp-bridge.js.map +1 -1
- package/dist/coerce.d.ts +17 -0
- package/dist/coerce.js +35 -0
- package/dist/coerce.js.map +1 -0
- package/dist/command-definition-validation.d.ts +30 -0
- package/dist/command-definition-validation.js +187 -0
- package/dist/command-definition-validation.js.map +1 -0
- package/dist/command-registry.d.ts +61 -0
- package/dist/command-registry.js +132 -28
- package/dist/command-registry.js.map +1 -1
- package/dist/commands.d.ts +10 -1
- package/dist/commands.js +80 -13
- package/dist/commands.js.map +1 -1
- package/dist/constants.d.ts +2 -1
- package/dist/constants.js +6 -1
- package/dist/constants.js.map +1 -1
- package/dist/escalation.js +7 -9
- package/dist/escalation.js.map +1 -1
- package/dist/events.d.ts +23 -0
- package/dist/events.js +28 -0
- package/dist/events.js.map +1 -0
- package/dist/formatters.js +73 -40
- package/dist/formatters.js.map +1 -1
- package/dist/media-pipeline.js +3 -2
- package/dist/media-pipeline.js.map +1 -1
- package/dist/telegram-api.js +9 -1
- package/dist/telegram-api.js.map +1 -1
- package/dist/watch-registry.js +11 -10
- package/dist/watch-registry.js.map +1 -1
- package/dist/worker.d.ts +1 -1
- package/dist/worker.js +49 -28
- package/dist/worker.js.map +1 -1
- package/package.json +6 -2
package/dist/media-pipeline.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { emitOrLog } from "./events.js";
|
|
1
2
|
import { sendMessage, escapeMarkdownV2, sendChatAction } from "./telegram-api.js";
|
|
2
3
|
import { METRIC_NAMES } from "./constants.js";
|
|
3
4
|
import { getSessions, wakeAgentWithIssue } from "./acp-bridge.js";
|
|
@@ -79,13 +80,13 @@ export async function handleMediaMessage(ctx, token, msg, config, companyId) {
|
|
|
79
80
|
await wakeAgentWithIssue(ctx, target.agentId, companyId, prompt, "media_message", projectId);
|
|
80
81
|
}
|
|
81
82
|
else {
|
|
82
|
-
ctx
|
|
83
|
+
await emitOrLog(ctx, "acp-spawn", companyId, {
|
|
83
84
|
type: "message",
|
|
84
85
|
sessionId: target.sessionId,
|
|
85
86
|
chatId,
|
|
86
87
|
threadId,
|
|
87
88
|
text: prompt,
|
|
88
|
-
});
|
|
89
|
+
}, "media message", { sessionId: target.sessionId, chatId, threadId });
|
|
89
90
|
}
|
|
90
91
|
}
|
|
91
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-pipeline.js","sourceRoot":"","sources":["../src/media-pipeline.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"media-pipeline.js","sourceRoot":"","sources":["../src/media-pipeline.ts"],"names":[],"mappings":"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"}
|
package/dist/telegram-api.js
CHANGED
|
@@ -87,7 +87,7 @@ export async function editMessage(ctx, token, chatId, messageId, text, options =
|
|
|
87
87
|
}
|
|
88
88
|
export async function answerCallbackQuery(ctx, token, callbackQueryId, text) {
|
|
89
89
|
try {
|
|
90
|
-
await ctx.http.fetch(`${TELEGRAM_API}/bot${token}/answerCallbackQuery`, {
|
|
90
|
+
const res = await ctx.http.fetch(`${TELEGRAM_API}/bot${token}/answerCallbackQuery`, {
|
|
91
91
|
method: "POST",
|
|
92
92
|
headers: { "Content-Type": "application/json" },
|
|
93
93
|
body: JSON.stringify({
|
|
@@ -95,6 +95,14 @@ export async function answerCallbackQuery(ctx, token, callbackQueryId, text) {
|
|
|
95
95
|
text,
|
|
96
96
|
}),
|
|
97
97
|
});
|
|
98
|
+
const data = (await res.json());
|
|
99
|
+
if (!data.ok) {
|
|
100
|
+
ctx.logger.error("Telegram answerCallbackQuery rejected", {
|
|
101
|
+
callbackQueryId,
|
|
102
|
+
error_code: data.error_code,
|
|
103
|
+
description: data.description,
|
|
104
|
+
});
|
|
105
|
+
}
|
|
98
106
|
}
|
|
99
107
|
catch (err) {
|
|
100
108
|
ctx.logger.error("Telegram answerCallbackQuery failed", { error: String(err) });
|
package/dist/telegram-api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram-api.js","sourceRoot":"","sources":["../src/telegram-api.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"telegram-api.js","sourceRoot":"","sources":["../src/telegram-api.ts"],"names":[],"mappings":"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"}
|
package/dist/watch-registry.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { sendMessage, escapeMarkdownV2 } from "./telegram-api.js";
|
|
2
2
|
import { METRIC_NAMES } from "./constants.js";
|
|
3
|
+
import { str } from "./coerce.js";
|
|
3
4
|
// Built-in watch templates
|
|
4
5
|
const BUILTIN_TEMPLATES = {
|
|
5
6
|
"invoice-overdue": {
|
|
@@ -25,14 +26,14 @@ const BUILTIN_TEMPLATES = {
|
|
|
25
26
|
};
|
|
26
27
|
// --- Register watch tool handler ---
|
|
27
28
|
export async function handleRegisterWatch(ctx, params, companyId) {
|
|
28
|
-
const name =
|
|
29
|
-
const description =
|
|
30
|
-
const entityType =
|
|
29
|
+
const name = str(params.name);
|
|
30
|
+
const description = str(params.description);
|
|
31
|
+
const entityType = str(params.entityType, "custom");
|
|
31
32
|
const conditions = params.conditions ?? [];
|
|
32
|
-
const template =
|
|
33
|
-
const chatId =
|
|
33
|
+
const template = str(params.template);
|
|
34
|
+
const chatId = str(params.chatId);
|
|
34
35
|
const threadId = params.threadId ? Number(params.threadId) : undefined;
|
|
35
|
-
const useBuiltin = params.builtinTemplate ?
|
|
36
|
+
const useBuiltin = params.builtinTemplate ? str(params.builtinTemplate) : undefined;
|
|
36
37
|
if (!name && !useBuiltin) {
|
|
37
38
|
return { error: "Either 'name' or 'builtinTemplate' is required" };
|
|
38
39
|
}
|
|
@@ -171,7 +172,7 @@ async function evaluateWatch(ctx, watch, companyId) {
|
|
|
171
172
|
if (customData) {
|
|
172
173
|
for (const item of customData) {
|
|
173
174
|
if (matchesConditions(item, watch.conditions)) {
|
|
174
|
-
matches.push({ id:
|
|
175
|
+
matches.push({ id: str(item.id, "unknown"), ...item });
|
|
175
176
|
}
|
|
176
177
|
}
|
|
177
178
|
}
|
|
@@ -204,11 +205,11 @@ function matchesConditions(record, conditions) {
|
|
|
204
205
|
return false;
|
|
205
206
|
break;
|
|
206
207
|
case "lt":
|
|
207
|
-
if (!(
|
|
208
|
+
if (!(str(fieldValue) < String(compareValue)))
|
|
208
209
|
return false;
|
|
209
210
|
break;
|
|
210
211
|
case "contains":
|
|
211
|
-
if (!
|
|
212
|
+
if (!str(fieldValue).includes(String(compareValue)))
|
|
212
213
|
return false;
|
|
213
214
|
break;
|
|
214
215
|
case "exists":
|
|
@@ -222,7 +223,7 @@ function matchesConditions(record, conditions) {
|
|
|
222
223
|
function interpolateTemplate(template, entity) {
|
|
223
224
|
let result = template;
|
|
224
225
|
for (const [key, value] of Object.entries(entity)) {
|
|
225
|
-
result = result.replace(new RegExp(`\\{\\{${key}\\}\\}`, "g"),
|
|
226
|
+
result = result.replace(new RegExp(`\\{\\{${key}\\}\\}`, "g"), str(value));
|
|
226
227
|
}
|
|
227
228
|
return result;
|
|
228
229
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watch-registry.js","sourceRoot":"","sources":["../src/watch-registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AA+
|
|
1
|
+
{"version":3,"file":"watch-registry.js","sourceRoot":"","sources":["../src/watch-registry.ts"],"names":[],"mappings":"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"}
|
package/dist/worker.d.ts
CHANGED
|
@@ -113,5 +113,5 @@ type TelegramUpdate = {
|
|
|
113
113
|
};
|
|
114
114
|
};
|
|
115
115
|
export declare const plugin: import("@paperclipai/plugin-sdk").PaperclipPlugin;
|
|
116
|
-
export declare function handleUpdate(ctx: PluginContext, token: string, config: TelegramConfig, update: TelegramUpdate, baseUrl: string, publicUrl?: string, boardApiToken?: string): Promise<void>;
|
|
116
|
+
export declare function handleUpdate(ctx: PluginContext, token: string, config: TelegramConfig, update: TelegramUpdate, baseUrl: string, publicUrl?: string, boardApiToken?: string, connectCompanyIds?: readonly string[]): Promise<void>;
|
|
117
117
|
export {};
|
package/dist/worker.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
1
2
|
import { definePlugin, runWorker, } from "@paperclipai/plugin-sdk";
|
|
2
3
|
import { sendMessage, editMessage, answerCallbackQuery, setMyCommands, escapeMarkdownV2, isForum, GENERAL_TOPIC_THREAD_ID, } from "./telegram-api.js";
|
|
3
4
|
import { formatIssueCreated, formatIssueDone, formatIssueAssigned, formatApprovalCreated, formatAgentError, formatAgentRunStarted, formatAgentRunFinished, } from "./formatters.js";
|
|
@@ -5,7 +6,7 @@ import { handleCommand, resolveNotificationThreadId, BOT_COMMANDS } from "./comm
|
|
|
5
6
|
import { routeMessageToAgent, handleHandoffToolCall, handleDiscussToolCall, handleHandoffApproval, handleHandoffRejection, setupAcpOutputListener, } from "./acp-bridge.js";
|
|
6
7
|
import { handleMediaMessage } from "./media-pipeline.js";
|
|
7
8
|
import { getPersistedTelegramUpdateOffset, persistTelegramUpdateOffset, processTelegramUpdateBatch, } from "./polling-offset.js";
|
|
8
|
-
import { handleCommandsCommand, tryCustomCommand } from "./command-registry.js";
|
|
9
|
+
import { handleCommandsCommand, tryCustomCommand, isWorkflowApprovalCallback, resolveWorkflowApprovalCallback, } from "./command-registry.js";
|
|
9
10
|
import { handleRegisterWatch, checkWatches } from "./watch-registry.js";
|
|
10
11
|
import { AGENT_ERROR_DEDUPLICATION_WINDOW_MS, DEFAULT_CONFIG, METRIC_NAMES } from "./constants.js";
|
|
11
12
|
import { EscalationManager } from "./escalation.js";
|
|
@@ -14,7 +15,11 @@ import { normalizeSecretRef, validateSecretRefFields } from "./secret-ref-valida
|
|
|
14
15
|
import { shouldNotifyApproval } from "./approval-routing.js";
|
|
15
16
|
import { isWorking } from "./agent-status.js";
|
|
16
17
|
import { buildPaperclipAuthHeaders, fetchPaperclipApi } from "./paperclip-api.js";
|
|
18
|
+
import { str } from "./coerce.js";
|
|
17
19
|
import { resolveTelegramBotToken } from "./runtime-token.js";
|
|
20
|
+
// Module initialization runs before the SDK enters any host invocation.
|
|
21
|
+
const runOutsideInvocation = AsyncLocalStorage.snapshot();
|
|
22
|
+
const deliveredCompanyIds = new Set();
|
|
18
23
|
const TELEGRAM_API = "https://api.telegram.org";
|
|
19
24
|
const BOARD_ACCESS_SCOPE = {
|
|
20
25
|
scopeKind: "instance",
|
|
@@ -180,7 +185,7 @@ function makeUpdateDedupe(windowMs = 5_000, maxEntries = 500) {
|
|
|
180
185
|
};
|
|
181
186
|
}
|
|
182
187
|
function normalizeAgentErrorMessage(input) {
|
|
183
|
-
return
|
|
188
|
+
return str(input, "Unknown error")
|
|
184
189
|
.trim()
|
|
185
190
|
.replace(/\s+/g, " ")
|
|
186
191
|
.slice(0, 500);
|
|
@@ -418,7 +423,9 @@ async function bootstrapRuntime(ctx, companyId, rawConfig) {
|
|
|
418
423
|
}
|
|
419
424
|
if (!pollingActive) {
|
|
420
425
|
pollingActive = true;
|
|
421
|
-
|
|
426
|
+
// Capture at module load, not here: this callback belongs to a short-lived
|
|
427
|
+
// host invocation. The polling descendants must make proactive RPC calls.
|
|
428
|
+
runOutsideInvocation(() => pollUpdates(ctx)).catch((err) => ctx.logger.error("Polling loop crashed", { error: String(err) }));
|
|
422
429
|
}
|
|
423
430
|
ctx.logger.info("Telegram plugin runtime ready", { companyId });
|
|
424
431
|
return runtime;
|
|
@@ -451,7 +458,7 @@ async function pollUpdates(ctx) {
|
|
|
451
458
|
lastUpdateId = await processTelegramUpdateBatch({
|
|
452
459
|
updates: data.result,
|
|
453
460
|
lastUpdateId,
|
|
454
|
-
handleUpdate: (update) => handleUpdate(ctx, rt.token, rt.config, update, rt.baseUrl, rt.publicUrl),
|
|
461
|
+
handleUpdate: (update) => handleUpdate(ctx, rt.token, rt.config, update, rt.baseUrl, rt.publicUrl, undefined, [...deliveredCompanyIds]),
|
|
455
462
|
persistOffset: (updateId) => persistTelegramUpdateOffset(ctx, updateId),
|
|
456
463
|
logger: ctx.logger,
|
|
457
464
|
});
|
|
@@ -550,7 +557,7 @@ const enrichAgentName = async (ctx, event) => {
|
|
|
550
557
|
const payload = event.payload;
|
|
551
558
|
if (payload.agentId && !payload.agentName) {
|
|
552
559
|
try {
|
|
553
|
-
const agent = await ctx.agents.get(
|
|
560
|
+
const agent = await ctx.agents.get(str(payload.agentId), event.companyId);
|
|
554
561
|
if (agent)
|
|
555
562
|
payload.agentName = agent.name;
|
|
556
563
|
}
|
|
@@ -601,12 +608,15 @@ export const plugin = definePlugin({
|
|
|
601
608
|
return;
|
|
602
609
|
if (!doneDedupe(`done|${event.entityId}`))
|
|
603
610
|
return;
|
|
604
|
-
// Enrich with title if missing (issue.updated events often omit
|
|
605
|
-
|
|
611
|
+
// Enrich with title/priority if missing (issue.updated events often omit them;
|
|
612
|
+
// priority drives the disableNotification policy in formatIssueDone)
|
|
613
|
+
if ((!payload.title || !payload.priority) && event.entityId) {
|
|
606
614
|
try {
|
|
607
615
|
const issue = await ctx.issues.get(event.entityId, event.companyId);
|
|
608
|
-
if (issue)
|
|
609
|
-
payload.title
|
|
616
|
+
if (issue) {
|
|
617
|
+
payload.title ??= issue.title;
|
|
618
|
+
payload.priority ??= issue.priority;
|
|
619
|
+
}
|
|
610
620
|
}
|
|
611
621
|
catch { /* best effort */ }
|
|
612
622
|
}
|
|
@@ -639,18 +649,19 @@ export const plugin = definePlugin({
|
|
|
639
649
|
const dedupeKey = [
|
|
640
650
|
"assigned",
|
|
641
651
|
event.entityId,
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
652
|
+
str(prev.assigneeUserId),
|
|
653
|
+
str(payload.assigneeUserId),
|
|
654
|
+
str(prev.assigneeAgentId),
|
|
655
|
+
str(payload.assigneeAgentId),
|
|
646
656
|
].join("|");
|
|
647
657
|
if (!assignmentDedupe(dedupeKey))
|
|
648
658
|
return;
|
|
649
|
-
if ((!payload.title || !payload.assigneeName) && event.entityId) {
|
|
659
|
+
if ((!payload.title || !payload.assigneeName || !payload.priority) && event.entityId) {
|
|
650
660
|
try {
|
|
651
661
|
const issue = await ctx.issues.get(event.entityId, event.companyId);
|
|
652
662
|
if (issue) {
|
|
653
663
|
payload.title ??= issue.title;
|
|
664
|
+
payload.priority ??= issue.priority;
|
|
654
665
|
const name = issue.assigneeName;
|
|
655
666
|
if (name)
|
|
656
667
|
payload.assigneeName ??= name;
|
|
@@ -692,7 +703,7 @@ export const plugin = definePlugin({
|
|
|
692
703
|
// Enrich agent name
|
|
693
704
|
if (payload.agentId && !payload.agentName) {
|
|
694
705
|
try {
|
|
695
|
-
const agent = await ctx.agents.get(
|
|
706
|
+
const agent = await ctx.agents.get(str(payload.agentId), event.companyId);
|
|
696
707
|
if (agent)
|
|
697
708
|
payload.agentName = agent.name;
|
|
698
709
|
}
|
|
@@ -700,8 +711,8 @@ export const plugin = definePlugin({
|
|
|
700
711
|
}
|
|
701
712
|
// Build a meaningful title if still missing
|
|
702
713
|
if (!payload.title || payload.title === "Approval Requested") {
|
|
703
|
-
const approvalType =
|
|
704
|
-
const agentLabel = payload.agentName ?
|
|
714
|
+
const approvalType = str(payload.type, "unknown").replace(/_/g, " ");
|
|
715
|
+
const agentLabel = payload.agentName ? str(payload.agentName) : null;
|
|
705
716
|
payload.title = agentLabel
|
|
706
717
|
? `${approvalType} — ${agentLabel}`
|
|
707
718
|
: approvalType;
|
|
@@ -713,10 +724,10 @@ export const plugin = definePlugin({
|
|
|
713
724
|
if (!rt || !rt.config.notifyOnAgentError)
|
|
714
725
|
return;
|
|
715
726
|
const payload = event.payload;
|
|
716
|
-
const agentId =
|
|
727
|
+
const agentId = str(payload.agentId, event.entityId);
|
|
717
728
|
if (payload.agentId && !payload.agentName) {
|
|
718
729
|
try {
|
|
719
|
-
const agent = await ctx.agents.get(
|
|
730
|
+
const agent = await ctx.agents.get(str(payload.agentId), event.companyId);
|
|
720
731
|
if (agent)
|
|
721
732
|
payload.agentName = agent.name;
|
|
722
733
|
}
|
|
@@ -732,7 +743,7 @@ export const plugin = definePlugin({
|
|
|
732
743
|
}
|
|
733
744
|
if (payload.issueId && (!payload.issueIdentifier || !payload.issueTitle)) {
|
|
734
745
|
try {
|
|
735
|
-
const issue = await ctx.issues.get(
|
|
746
|
+
const issue = await ctx.issues.get(str(payload.issueId), event.companyId);
|
|
736
747
|
if (issue) {
|
|
737
748
|
payload.issueIdentifier ??= issue.identifier;
|
|
738
749
|
payload.issueTitle ??= issue.title;
|
|
@@ -955,20 +966,20 @@ export const plugin = definePlugin({
|
|
|
955
966
|
reason: p.reason,
|
|
956
967
|
context: {
|
|
957
968
|
conversationHistory: [],
|
|
958
|
-
agentReasoning:
|
|
969
|
+
agentReasoning: str(p.conversationSummary),
|
|
959
970
|
suggestedActions: p.suggestedActions ?? [],
|
|
960
|
-
suggestedReply: p.suggestedReply ?
|
|
971
|
+
suggestedReply: p.suggestedReply ? str(p.suggestedReply) : undefined,
|
|
961
972
|
confidenceScore: typeof p.confidenceScore === "number" ? p.confidenceScore : undefined,
|
|
962
973
|
},
|
|
963
974
|
timeout: {
|
|
964
975
|
durationMs: timeoutMs,
|
|
965
976
|
defaultAction,
|
|
966
977
|
},
|
|
967
|
-
originChatId: p.originChatId ?
|
|
968
|
-
originThreadId: p.originThreadId ?
|
|
969
|
-
originMessageId: p.originMessageId ?
|
|
978
|
+
originChatId: p.originChatId ? str(p.originChatId) : undefined,
|
|
979
|
+
originThreadId: p.originThreadId ? str(p.originThreadId) : undefined,
|
|
980
|
+
originMessageId: p.originMessageId ? str(p.originMessageId) : undefined,
|
|
970
981
|
transport: p.transport,
|
|
971
|
-
sessionId: p.sessionId ?
|
|
982
|
+
sessionId: p.sessionId ? str(p.sessionId) : undefined,
|
|
972
983
|
};
|
|
973
984
|
await escalationManager.create(ctx, rt.token, escalationEvent, resolvedEscalationChatId);
|
|
974
985
|
// Send hold message to the originating chat if configured
|
|
@@ -1110,6 +1121,9 @@ export const plugin = definePlugin({
|
|
|
1110
1121
|
}
|
|
1111
1122
|
return;
|
|
1112
1123
|
}
|
|
1124
|
+
// Discovery comes only from verified host deliveries. Keep routing for
|
|
1125
|
+
// other companies even when they do not own the shared bot config.
|
|
1126
|
+
deliveredCompanyIds.add(companyId);
|
|
1113
1127
|
try {
|
|
1114
1128
|
await bootstrapRuntime(ctx, companyId, newConfig);
|
|
1115
1129
|
}
|
|
@@ -1139,7 +1153,7 @@ export const plugin = definePlugin({
|
|
|
1139
1153
|
return runtimeHealth;
|
|
1140
1154
|
},
|
|
1141
1155
|
});
|
|
1142
|
-
export async function handleUpdate(ctx, token, config, update, baseUrl, publicUrl, boardApiToken) {
|
|
1156
|
+
export async function handleUpdate(ctx, token, config, update, baseUrl, publicUrl, boardApiToken, connectCompanyIds) {
|
|
1143
1157
|
if (!isTelegramUpdateAllowed(config, update)) {
|
|
1144
1158
|
const fromId = update.message?.from?.id ?? update.callback_query?.from.id;
|
|
1145
1159
|
const chatId = update.message?.chat.id ?? update.callback_query?.message?.chat.id;
|
|
@@ -1216,7 +1230,7 @@ export async function handleUpdate(ctx, token, config, update, baseUrl, publicUr
|
|
|
1216
1230
|
return;
|
|
1217
1231
|
// Built-in commands
|
|
1218
1232
|
const boardApiToken = command === "approve" ? await resolveBoardApiToken(ctx, config, companyId) : undefined;
|
|
1219
|
-
await handleCommand(ctx, token, chatId, command, args, threadId, baseUrl, publicUrl, companyId, boardApiToken, config.maxAgentsPerThread);
|
|
1233
|
+
await handleCommand(ctx, token, chatId, command, args, threadId, baseUrl, publicUrl, companyId, boardApiToken, config.maxAgentsPerThread, connectCompanyIds);
|
|
1220
1234
|
return;
|
|
1221
1235
|
}
|
|
1222
1236
|
if (config.enableInbound && msg.reply_to_message?.from?.is_bot) {
|
|
@@ -1268,6 +1282,13 @@ async function handleCallbackQuery(ctx, token, query, baseUrl, boardApiToken) {
|
|
|
1268
1282
|
const actor = query.from.username ?? query.from.first_name ?? String(query.from.id);
|
|
1269
1283
|
const chatId = query.message?.chat.id ? String(query.message.chat.id) : null;
|
|
1270
1284
|
const messageId = query.message?.message_id;
|
|
1285
|
+
// Must precede the "approve_" branch below only by intent, not by necessity:
|
|
1286
|
+
// these are "cmd_approve_"/"cmd_reject_" and cannot collide with it. Kept
|
|
1287
|
+
// adjacent so the two approval flows are read together.
|
|
1288
|
+
if (isWorkflowApprovalCallback(data)) {
|
|
1289
|
+
await resolveWorkflowApprovalCallback(ctx, token, data, query.id, actor, messageId);
|
|
1290
|
+
return;
|
|
1291
|
+
}
|
|
1271
1292
|
if (data.startsWith("approve_")) {
|
|
1272
1293
|
const approvalId = data.replace("approve_", "");
|
|
1273
1294
|
ctx.logger.info("Approval button clicked", { approvalId, actor });
|