@songsid/agend 2.1.0-beta.8 → 2.1.0-beta.9

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.
@@ -3156,7 +3156,7 @@ export class FleetManager {
3156
3156
  return [];
3157
3157
  }
3158
3158
  }
3159
- async sendHangNotification(instanceName) {
3159
+ async sendHangNotification(instanceName, unchangedForMs) {
3160
3160
  const adapter = this.getAdapterForInstance(instanceName) ?? this.adapter;
3161
3161
  if (!adapter)
3162
3162
  return;
@@ -3165,11 +3165,18 @@ export class FleetManager {
3165
3165
  if (!groupId)
3166
3166
  return;
3167
3167
  const threadId = this.fleetConfig?.instances[instanceName]?.topic_id;
3168
+ const instanceHangConfig = this.fleetConfig?.instances[instanceName]?.hang_detector;
3169
+ const configuredMinutes = instanceHangConfig?.timeout_minutes
3170
+ ?? this.fleetConfig?.defaults?.hang_detector?.timeout_minutes
3171
+ ?? 15;
3172
+ const unchangedMinutes = unchangedForMs == null
3173
+ ? configuredMinutes
3174
+ : Math.max(1, Math.floor(unchangedForMs / 60_000));
3168
3175
  this.setTopicIcon(instanceName, "red");
3169
3176
  await adapter.notifyAlert(String(groupId), {
3170
3177
  type: "hang",
3171
3178
  instanceName,
3172
- message: `⚠️ ${instanceName} appears hung (no activity for 15+ minutes)`,
3179
+ message: `⚠️ ${instanceName} may be stuck pane unchanged for ${unchangedMinutes}min, ready prompt not recognized`,
3173
3180
  choices: [
3174
3181
  { id: `hang:restart:${instanceName}`, label: "🔄 Force restart" },
3175
3182
  { id: `hang:wait:${instanceName}`, label: "⏳ Keep waiting" },