@songsid/agend 2.1.5-beta.9 → 2.1.5

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.
Files changed (86) hide show
  1. package/dist/backend/claude-code.d.ts +12 -0
  2. package/dist/backend/claude-code.js +12 -0
  3. package/dist/backend/claude-code.js.map +1 -1
  4. package/dist/backend/codex.d.ts +25 -1
  5. package/dist/backend/codex.js +76 -0
  6. package/dist/backend/codex.js.map +1 -1
  7. package/dist/backend/kiro.js +30 -2
  8. package/dist/backend/kiro.js.map +1 -1
  9. package/dist/backend/types.d.ts +48 -0
  10. package/dist/backend/types.js.map +1 -1
  11. package/dist/channel/adapters/discord.d.ts +17 -2
  12. package/dist/channel/adapters/discord.js +64 -5
  13. package/dist/channel/adapters/discord.js.map +1 -1
  14. package/dist/channel/adapters/telegram.d.ts +41 -2
  15. package/dist/channel/adapters/telegram.js +116 -20
  16. package/dist/channel/adapters/telegram.js.map +1 -1
  17. package/dist/channel/factory.js +6 -1
  18. package/dist/channel/factory.js.map +1 -1
  19. package/dist/channel/types.d.ts +33 -1
  20. package/dist/classic-channel-manager.d.ts +23 -3
  21. package/dist/classic-channel-manager.js +35 -0
  22. package/dist/classic-channel-manager.js.map +1 -1
  23. package/dist/config-validator.js +23 -0
  24. package/dist/config-validator.js.map +1 -1
  25. package/dist/config.d.ts +4 -0
  26. package/dist/config.js +5 -0
  27. package/dist/config.js.map +1 -1
  28. package/dist/daemon.d.ts +143 -21
  29. package/dist/daemon.js +969 -185
  30. package/dist/daemon.js.map +1 -1
  31. package/dist/deadline.d.ts +23 -0
  32. package/dist/deadline.js +29 -0
  33. package/dist/deadline.js.map +1 -0
  34. package/dist/fleet-context.d.ts +15 -1
  35. package/dist/fleet-context.js.map +1 -1
  36. package/dist/fleet-manager.d.ts +178 -3
  37. package/dist/fleet-manager.js +759 -119
  38. package/dist/fleet-manager.js.map +1 -1
  39. package/dist/general-knowledge/skills/fleet-config/SKILL.md +26 -2
  40. package/dist/instance-lifecycle.d.ts +8 -2
  41. package/dist/instance-lifecycle.js +47 -3
  42. package/dist/instance-lifecycle.js.map +1 -1
  43. package/dist/instance-removal.d.ts +13 -0
  44. package/dist/instance-removal.js +14 -0
  45. package/dist/instance-removal.js.map +1 -0
  46. package/dist/instructions.js +2 -2
  47. package/dist/instructions.js.map +1 -1
  48. package/dist/locale.js +28 -2
  49. package/dist/locale.js.map +1 -1
  50. package/dist/login-controller.d.ts +31 -4
  51. package/dist/login-controller.js +52 -4
  52. package/dist/login-controller.js.map +1 -1
  53. package/dist/login-flows.d.ts +29 -0
  54. package/dist/login-flows.js +48 -1
  55. package/dist/login-flows.js.map +1 -1
  56. package/dist/outbound-handlers.d.ts +1 -0
  57. package/dist/outbound-handlers.js +118 -29
  58. package/dist/outbound-handlers.js.map +1 -1
  59. package/dist/outbound-schemas.d.ts +7 -0
  60. package/dist/outbound-schemas.js +3 -0
  61. package/dist/outbound-schemas.js.map +1 -1
  62. package/dist/pane-input-residue.d.ts +25 -2
  63. package/dist/pane-input-residue.js +31 -2
  64. package/dist/pane-input-residue.js.map +1 -1
  65. package/dist/restart-progress.js +3 -21
  66. package/dist/restart-progress.js.map +1 -1
  67. package/dist/settings-api.d.ts +1 -1
  68. package/dist/settings-api.js +38 -6
  69. package/dist/settings-api.js.map +1 -1
  70. package/dist/topic-commands.d.ts +27 -2
  71. package/dist/topic-commands.js +37 -6
  72. package/dist/topic-commands.js.map +1 -1
  73. package/dist/turn-reply-guard.d.ts +41 -0
  74. package/dist/turn-reply-guard.js +77 -0
  75. package/dist/turn-reply-guard.js.map +1 -0
  76. package/dist/types.d.ts +7 -0
  77. package/dist/ui/dashboard.html +38 -10
  78. package/dist/ui/settings.html +93 -15
  79. package/dist/ui/view.html +35 -20
  80. package/dist/view-api.d.ts +1 -0
  81. package/dist/view-api.js +12 -2
  82. package/dist/view-api.js.map +1 -1
  83. package/dist/web-api.d.ts +22 -1
  84. package/dist/web-api.js +25 -1
  85. package/dist/web-api.js.map +1 -1
  86. package/package.json +1 -1
@@ -9,6 +9,8 @@ import { InlineKeyboard } from "grammy";
9
9
  import { MessageQueue } from "../message-queue.js";
10
10
  const IMAGE_EXTENSIONS = new Set([".jpg", ".jpeg", ".png", ".gif", ".webp", ".bmp"]);
11
11
  const TELEGRAM_NETWORK_RETRY_MS = 250;
12
+ /** A topology probe message is harmless to resend, so it may retry where sendMessage cannot. */
13
+ export const TELEGRAM_PROBE_RETRY_MS = 1_000;
12
14
  const TELEGRAM_LONG_POLL_TIMEOUT_SECONDS = 20;
13
15
  const HTTP_AGENT_RESET_COOLDOWN_MS = 30_000;
14
16
  const DEFINITELY_PRE_DELIVERY_CODES = new Set([
@@ -101,6 +103,35 @@ class TelegramTransportError extends Error {
101
103
  this.code = inner.code;
102
104
  }
103
105
  }
106
+ /**
107
+ * Turn a failed topology probe into the tri-state contract.
108
+ *
109
+ * `missing` needs Telegram's own words (a GrammyError whose description says
110
+ * thread not found / TOPIC_ID_INVALID). Every other error type is `unknown` no
111
+ * matter what its text says, split by what failed so the fleet's debug log
112
+ * can tell a flaky socket from a Telegram-side rejection:
113
+ * - transport-failed: the request never got a Telegram answer (HttpError, or
114
+ * the recovery layer's TelegramTransportError). Safe to retry for a probe.
115
+ * - provider-unavailable: Telegram answered 429 or 5xx.
116
+ * - provider-rejected: Telegram answered with any other error.
117
+ */
118
+ export function classifyTelegramProbeError(err, botToken = "") {
119
+ if (err instanceof TelegramTransportError || err instanceof HttpError) {
120
+ // No Telegram answer at all. Whatever the message text says, a transport
121
+ // error can never prove the topic is gone.
122
+ return { status: "unknown", reason: "transport-failed", detail: telegramNetworkErrorDetails(err, botToken) };
123
+ }
124
+ if (err instanceof GrammyError) {
125
+ // Only Telegram's own description is destructive-grade evidence.
126
+ if (err.description.includes("thread not found") || err.description.includes("TOPIC_ID_INVALID")) {
127
+ return { status: "missing", evidence: "telegram-topic-not-found" };
128
+ }
129
+ const code = err.error_code;
130
+ const reason = code === 429 || code >= 500 ? "provider-unavailable" : "provider-rejected";
131
+ return { status: "unknown", reason, detail: redactTelegramSecrets(`${code} ${err.description}`, botToken) };
132
+ }
133
+ return { status: "unknown", reason: "provider-probe-failed", detail: redactTelegramSecrets(errorMessage(err), botToken) };
134
+ }
104
135
  /**
105
136
  * A Telegram API 400/404 is an explicit server-side rejection, so the request
106
137
  * was not delivered and a compatibility fallback is safe. Network errors,
@@ -147,6 +178,15 @@ function extractRichText(blocks) {
147
178
  }
148
179
  return parts.join("\n");
149
180
  }
181
+ /** Telegram's own words for a forum topic that no longer exists. */
182
+ const TELEGRAM_TOPIC_GONE = /message thread not found|TOPIC_ID_INVALID/;
183
+ /** Send methods that address a forum topic and can therefore report it gone. */
184
+ const TELEGRAM_TOPIC_ADDRESSED_METHODS = new Set([
185
+ "sendMessage", "sendPhoto", "sendDocument", "sendVideo", "sendAudio", "sendVoice",
186
+ "sendAnimation", "sendMediaGroup", "sendSticker", "sendChatAction", "copyMessage", "forwardMessage",
187
+ ]);
188
+ /** One hint per topic per window; an outage can fail many deliveries to the same dead topic. */
189
+ export const TELEGRAM_TOPIC_GONE_HINT_DEBOUNCE_MS = 60_000;
150
190
  /**
151
191
  * Whitelist of legitimate Telegram API roots. Misconfiguring `apiRoot`
152
192
  * (or having it set by an attacker via a config file write) would leak
@@ -197,10 +237,15 @@ export class TelegramAdapter extends EventEmitter {
197
237
  httpAgentGeneration = 0;
198
238
  lastHttpAgentResetAt = Number.NEGATIVE_INFINITY;
199
239
  cleanupTimer = null;
240
+ topicProbe;
241
+ /** Topics the probe itself is addressing right now — their failures are results, not hints. */
242
+ probingThreads = new Set();
243
+ topicGoneHintAt = new Map();
200
244
  constructor(opts) {
201
245
  super();
202
246
  this.id = opts.id;
203
247
  this.botToken = opts.botToken;
248
+ this.topicProbe = opts.topicProbe ?? "on-demand";
204
249
  this.accessManager = opts.accessManager;
205
250
  this.inboxDir = opts.inboxDir;
206
251
  if (opts.apiRoot)
@@ -221,6 +266,7 @@ export class TelegramAdapter extends EventEmitter {
221
266
  },
222
267
  });
223
268
  this.installNetworkRecovery();
269
+ this.installTopicGoneHints();
224
270
  // Build MessageQueue backed by this bot
225
271
  this.queue = new MessageQueue({
226
272
  send: async (chatId, threadId, text) => {
@@ -471,15 +517,10 @@ export class TelegramAdapter extends EventEmitter {
471
517
  console.warn(`[telegram] message_reaction handler error (${errorMessage(err)})`);
472
518
  }
473
519
  });
474
- this.bot.on("message:forum_topic_closed", (ctx) => {
475
- const chatId = String(ctx.message?.chat.id ?? "");
476
- const threadId = ctx.message?.message_thread_id != null
477
- ? String(ctx.message.message_thread_id)
478
- : undefined;
479
- if (threadId) {
480
- this.emit("topic_closed", { chatId, threadId });
481
- }
482
- });
520
+ // forum_topic_closed is a CLOSE, not a deletion (Telegram gives bots no
521
+ // deletion event at all), so it is not a topology hint. The only Telegram
522
+ // source of "topic_closed" is a real delivery that Telegram answered with
523
+ // "message thread not found" — see installTopicGoneHints().
483
524
  }
484
525
  _extractAttachments(msg) {
485
526
  const result = [];
@@ -989,29 +1030,84 @@ export class TelegramAdapter extends EventEmitter {
989
1030
  return;
990
1031
  await this.bot.api.raw.deleteForumTopic({ chat_id: Number(chatId), message_thread_id: Number(topicId) });
991
1032
  }
992
- async topicExists(topicId) {
1033
+ async probeTopicPresence(topicId) {
993
1034
  const chatId = this.getChatId();
994
1035
  if (!chatId)
995
- return false;
1036
+ return { status: "unknown", reason: "adapter-not-initialized" };
996
1037
  // AgEnD uses id=1 as the General-topic sentinel. Telegram rejects an
997
1038
  // explicit message_thread_id=1, but the group root exists when the chat does.
998
- if (topicId === 1)
999
- return true;
1039
+ if (String(topicId) === "1")
1040
+ return { status: "present" };
1041
+ // The API-level recovery (installNetworkRecovery) refuses to retry a
1042
+ // sendMessage whose outcome is ambiguous, because a real message might
1043
+ // already have landed. A zero-width probe has no such cost, so a transport
1044
+ // failure gets one more attempt here before it is reported as unknown.
1045
+ let result = await this.probeTopicOnce(chatId, topicId);
1046
+ if (result.status === "unknown" && result.reason === "transport-failed") {
1047
+ await new Promise(resolve => {
1048
+ const timer = setTimeout(resolve, TELEGRAM_PROBE_RETRY_MS);
1049
+ timer.unref?.();
1050
+ });
1051
+ result = await this.probeTopicOnce(chatId, topicId);
1052
+ }
1053
+ return result;
1054
+ }
1055
+ async probeTopicOnce(chatId, topicId) {
1056
+ const key = String(topicId);
1057
+ this.probingThreads.add(key);
1000
1058
  try {
1001
1059
  const msg = await this.bot.api.sendMessage(Number(chatId), "\u200B", {
1002
- message_thread_id: topicId,
1060
+ message_thread_id: Number(topicId),
1003
1061
  });
1004
1062
  await this.bot.api.deleteMessage(Number(chatId), msg.message_id).catch(() => { });
1005
- return true;
1063
+ return { status: "present" };
1006
1064
  }
1007
1065
  catch (err) {
1008
- const errMsg = String(err);
1009
- if (errMsg.includes("thread not found") || errMsg.includes("TOPIC_ID_INVALID")) {
1010
- return false;
1011
- }
1012
- throw err;
1066
+ return classifyTelegramProbeError(err, this.botToken);
1067
+ }
1068
+ finally {
1069
+ this.probingThreads.delete(key);
1013
1070
  }
1014
1071
  }
1072
+ topicProbePolicy() {
1073
+ return this.topicProbe;
1074
+ }
1075
+ /**
1076
+ * Passive topology detection. Every outbound call passes through this
1077
+ * transformer; when Telegram itself answers a topic-addressed send with
1078
+ * "message thread not found", that is the same evidence the probe would
1079
+ * have produced — so emit the topic_closed hint the fleet already verifies
1080
+ * (handleProviderTopicClosed → one on-demand probe → quarantine only).
1081
+ * The response is returned untouched: the delivery still fails as before.
1082
+ */
1083
+ installTopicGoneHints() {
1084
+ if (!this.bot.api.config?.use)
1085
+ return;
1086
+ this.bot.api.config.use(async (prev, method, payload, signal) => {
1087
+ const res = await prev(method, payload, signal);
1088
+ if (!res.ok)
1089
+ this.noteTopicGoneResponse(method, payload, res.description);
1090
+ return res;
1091
+ });
1092
+ }
1093
+ noteTopicGoneResponse(method, payload, description) {
1094
+ if (!TELEGRAM_TOPIC_ADDRESSED_METHODS.has(method))
1095
+ return;
1096
+ const thread = payload.message_thread_id;
1097
+ if (thread == null || thread === "" || payload.chat_id == null)
1098
+ return;
1099
+ const threadId = String(thread);
1100
+ if (!TELEGRAM_TOPIC_GONE.test(description))
1101
+ return;
1102
+ if (this.probingThreads.has(threadId))
1103
+ return;
1104
+ const now = Date.now();
1105
+ const last = this.topicGoneHintAt.get(threadId) ?? 0;
1106
+ if (now - last < TELEGRAM_TOPIC_GONE_HINT_DEBOUNCE_MS)
1107
+ return;
1108
+ this.topicGoneHintAt.set(threadId, now);
1109
+ this.emit("topic_closed", { chatId: String(payload.chat_id), threadId });
1110
+ }
1015
1111
  // ── Pairing ───────────────────────────────────────────────────────────────
1016
1112
  async closeForumTopic(threadId) {
1017
1113
  const chatId = this.getChatId();
@@ -1 +1 @@
1
- {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../../src/channel/adapters/telegram.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../../src/channel/adapters/telegram.ts"],"names":[],"mappings":"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"}
@@ -40,7 +40,12 @@ export async function createAdapter(config, opts) {
40
40
  // Built-in adapters
41
41
  if (config.type === "telegram") {
42
42
  const { TelegramAdapter } = await import("./adapters/telegram.js");
43
- return new TelegramAdapter({ ...opts, apiRoot: config.telegram_api_root });
43
+ const topicProbe = config.options?.topic_probe;
44
+ return new TelegramAdapter({
45
+ ...opts,
46
+ apiRoot: config.telegram_api_root,
47
+ ...(topicProbe === "periodic" || topicProbe === "on-demand" ? { topicProbe } : {}),
48
+ });
44
49
  }
45
50
  if (config.type === "discord") {
46
51
  const { DiscordAdapter } = await import("./adapters/discord.js");
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/channel/factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/channel/factory.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,29 @@ export interface AdapterHealthSnapshot {
39
39
  lastReconnectReason: string | null;
40
40
  reconnectCount: number;
41
41
  }
42
+ /**
43
+ * Result of an adapter topology probe.
44
+ *
45
+ * `missing` is destructive-grade evidence: adapters may return it only when
46
+ * the provider positively says the topic does not exist. Transport failures,
47
+ * an empty cache, an unavailable gateway, and ambiguous permission errors are
48
+ * all `unknown`.
49
+ */
50
+ export type TopicMissingEvidence = "discord-unknown-channel" | "telegram-topic-not-found";
51
+ export type TopicProbePolicy = "periodic" | "on-demand";
52
+ export type TopicPresence = {
53
+ status: "present";
54
+ generation?: number;
55
+ } | {
56
+ status: "missing";
57
+ generation?: number;
58
+ evidence: TopicMissingEvidence;
59
+ } | {
60
+ status: "unknown";
61
+ generation?: number;
62
+ reason: string;
63
+ detail?: string;
64
+ };
42
65
  export interface ChannelAdapter extends EventEmitter {
43
66
  readonly type: string;
44
67
  readonly id: string;
@@ -95,7 +118,16 @@ export interface ChannelAdapter extends EventEmitter {
95
118
  editAlert?(chatId: string, messageId: string, alert: AlertData, opts?: SendOpts): Promise<void>;
96
119
  createTopic?(name: string): Promise<number | string>;
97
120
  deleteTopic?(topicId: number | string): Promise<void>;
98
- topicExists?(topicId: number | string): Promise<boolean>;
121
+ probeTopicPresence?(topicId: number | string): Promise<TopicPresence>;
122
+ /**
123
+ * How the fleet may use probeTopicPresence. Absent means "periodic": the
124
+ * 5-minute topology scan probes every route this adapter owns (Discord's
125
+ * passive REST fetch is cheap and silent). "on-demand" means the scan skips
126
+ * this adapter's routes and the probe is only used to confirm a hint that
127
+ * a real delivery already produced (Telegram: the only existence check is a
128
+ * visible send+delete, so it must not run unprompted).
129
+ */
130
+ topicProbePolicy?(): TopicProbePolicy;
99
131
  closeForumTopic?(threadId: number | string): Promise<void>;
100
132
  reopenForumTopic?(threadId: number | string): Promise<void>;
101
133
  editForumTopic?(threadId: number | string, opts: {
@@ -1,5 +1,6 @@
1
1
  import type { Logger } from "./logger.js";
2
2
  import type { Choice } from "./channel/types.js";
3
+ import type { InstanceConfig } from "./types.js";
3
4
  /** Last real channel activity recorded in a ClassicBot chat log. */
4
5
  export declare function readClassicLastActivityAt(dataDir: string, instanceName: string): number | null;
5
6
  /** Backends offered by ClassicBot onboarding. `mock` is test-only. */
@@ -26,9 +27,23 @@ export interface ClassicChannel {
26
27
  collab?: boolean;
27
28
  preTaskCommand?: string;
28
29
  contextLines?: number;
30
+ toolProgress?: InstanceConfig["tool_progress"];
31
+ replyCompletionGuard?: boolean;
29
32
  createdAt: string;
30
33
  createdBy: string;
31
34
  }
35
+ interface ClassicDefaults {
36
+ backend?: string;
37
+ model?: string;
38
+ auto_pause_after?: number;
39
+ context_lines?: number;
40
+ tool_progress?: InstanceConfig["tool_progress"];
41
+ reply_completion_guard?: boolean;
42
+ allowed_guilds?: string[];
43
+ admin_users?: string[];
44
+ allowed_groups?: string[];
45
+ allowed_users?: string[];
46
+ }
32
47
  /**
33
48
  * Derive instance name from channel name + last 4 digits of channelId.
34
49
  * When `adapterId` is given (a non-primary bot in the same channel), append a
@@ -107,9 +122,7 @@ export declare class ClassicChannelManager {
107
122
  checkReload(): boolean;
108
123
  /** Reload immediately after an authenticated settings write. */
109
124
  reloadFromDisk(): void;
110
- getDefaults(): {
111
- backend?: string;
112
- };
125
+ getDefaults(): Readonly<ClassicDefaults>;
113
126
  /** Check if a guild is allowed. Empty/unset/non-array allowed_guilds = allow all (backward compat). */
114
127
  isGuildAllowed(guildId: string): boolean;
115
128
  /** Check if a Telegram group is allowed. Empty/unset/non-array = allow all. */
@@ -196,6 +209,12 @@ export declare class ClassicChannelManager {
196
209
  /** Auto-pause fallback: per-channel → Classic defaults → fleet default. */
197
210
  getAutoPauseAfter(channelId: string, adapterId?: string, fleetDefault?: number): number | undefined;
198
211
  getAutoPauseAfterByInstance(instanceName: string, fleetDefault?: number): number | undefined;
212
+ /** Tool-progress fallback: channel → Classic defaults → fleet defaults → off. */
213
+ getToolProgress(channelId: string, adapterId?: string, fleetDefault?: InstanceConfig["tool_progress"]): InstanceConfig["tool_progress"];
214
+ getToolProgressByInstance(instanceName: string, fleetDefault?: InstanceConfig["tool_progress"]): InstanceConfig["tool_progress"];
215
+ /** Reply-guard fallback: channel → Classic defaults → fleet defaults → true. */
216
+ getReplyCompletionGuard(channelId: string, adapterId?: string, fleetDefault?: boolean): boolean;
217
+ getReplyCompletionGuardByInstance(instanceName: string, fleetDefault?: boolean): boolean;
199
218
  /** Get backend for an instance by name */
200
219
  getBackendByInstance(instanceName: string, fleetDefault?: string): string;
201
220
  getChannelIdByInstance(instanceName: string): string | undefined;
@@ -222,3 +241,4 @@ export declare class ClassicChannelManager {
222
241
  /** Delete chat log files older than retentionDays. Dates parsed as local to avoid UTC off-by-one. */
223
242
  rotateLogs(retentionDays?: number): number;
224
243
  }
244
+ export {};
@@ -229,6 +229,8 @@ export class ClassicChannelManager {
229
229
  collab: val.collab,
230
230
  preTaskCommand: val.pre_task_command,
231
231
  contextLines: val.context_lines,
232
+ toolProgress: val.tool_progress,
233
+ replyCompletionGuard: val.reply_completion_guard,
232
234
  createdAt: val.createdAt ?? "",
233
235
  createdBy: val.createdBy ?? "",
234
236
  },
@@ -331,6 +333,10 @@ export class ClassicChannelManager {
331
333
  entry.auto_pause_after = ch.autoPauseAfter;
332
334
  if (ch.contextLines)
333
335
  entry.context_lines = ch.contextLines;
336
+ if (ch.toolProgress !== undefined)
337
+ entry.tool_progress = ch.toolProgress;
338
+ if (ch.replyCompletionGuard !== undefined)
339
+ entry.reply_completion_guard = ch.replyCompletionGuard;
334
340
  if (ch.collab)
335
341
  entry.collab = ch.collab;
336
342
  if (ch.preTaskCommand)
@@ -605,6 +611,35 @@ export class ClassicChannelManager {
605
611
  }
606
612
  return this.defaults.auto_pause_after ?? fleetDefault;
607
613
  }
614
+ /** Tool-progress fallback: channel → Classic defaults → fleet defaults → off. */
615
+ getToolProgress(channelId, adapterId, fleetDefault) {
616
+ return this.find(channelId, adapterId)?.toolProgress
617
+ ?? this.defaults.tool_progress
618
+ ?? fleetDefault
619
+ ?? "off";
620
+ }
621
+ getToolProgressByInstance(instanceName, fleetDefault) {
622
+ for (const ch of this.channels.values()) {
623
+ if (ch.instanceName === instanceName)
624
+ return this.getToolProgress(ch.channelId, ch.adapterId, fleetDefault);
625
+ }
626
+ return this.defaults.tool_progress ?? fleetDefault ?? "off";
627
+ }
628
+ /** Reply-guard fallback: channel → Classic defaults → fleet defaults → true. */
629
+ getReplyCompletionGuard(channelId, adapterId, fleetDefault) {
630
+ return this.find(channelId, adapterId)?.replyCompletionGuard
631
+ ?? this.defaults.reply_completion_guard
632
+ ?? fleetDefault
633
+ ?? true;
634
+ }
635
+ getReplyCompletionGuardByInstance(instanceName, fleetDefault) {
636
+ for (const ch of this.channels.values()) {
637
+ if (ch.instanceName === instanceName) {
638
+ return this.getReplyCompletionGuard(ch.channelId, ch.adapterId, fleetDefault);
639
+ }
640
+ }
641
+ return this.defaults.reply_completion_guard ?? fleetDefault ?? true;
642
+ }
608
643
  /** Get backend for an instance by name */
609
644
  getBackendByInstance(instanceName, fleetDefault) {
610
645
  for (const ch of this.channels.values()) {