clawdoctor 0.4.4 → 0.4.6

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 (40) hide show
  1. package/dist/alerters/telegram.d.ts +8 -1
  2. package/dist/alerters/telegram.d.ts.map +1 -1
  3. package/dist/alerters/telegram.js +54 -6
  4. package/dist/alerters/telegram.js.map +1 -1
  5. package/dist/audit.d.ts +1 -1
  6. package/dist/audit.d.ts.map +1 -1
  7. package/dist/config.d.ts +13 -0
  8. package/dist/config.d.ts.map +1 -1
  9. package/dist/config.js +5 -0
  10. package/dist/config.js.map +1 -1
  11. package/dist/daemon.d.ts +3 -0
  12. package/dist/daemon.d.ts.map +1 -1
  13. package/dist/daemon.js +51 -2
  14. package/dist/daemon.js.map +1 -1
  15. package/dist/healers/budget.d.ts +10 -0
  16. package/dist/healers/budget.d.ts.map +1 -0
  17. package/dist/healers/budget.js +92 -0
  18. package/dist/healers/budget.js.map +1 -0
  19. package/dist/healers/cron.js +2 -2
  20. package/dist/healers/cron.js.map +1 -1
  21. package/dist/healers/session.js +1 -1
  22. package/dist/healers/session.js.map +1 -1
  23. package/dist/index.js +3 -5
  24. package/dist/index.js.map +1 -1
  25. package/dist/utils.d.ts +2 -2
  26. package/dist/utils.d.ts.map +1 -1
  27. package/dist/utils.js +9 -7
  28. package/dist/utils.js.map +1 -1
  29. package/dist/watchers/auth.d.ts +3 -0
  30. package/dist/watchers/auth.d.ts.map +1 -1
  31. package/dist/watchers/auth.js +99 -3
  32. package/dist/watchers/auth.js.map +1 -1
  33. package/dist/watchers/budget.d.ts +11 -0
  34. package/dist/watchers/budget.d.ts.map +1 -0
  35. package/dist/watchers/budget.js +122 -0
  36. package/dist/watchers/budget.js.map +1 -0
  37. package/dist/watchers/session.d.ts.map +1 -1
  38. package/dist/watchers/session.js +28 -8
  39. package/dist/watchers/session.js.map +1 -1
  40. package/package.json +1 -1
@@ -24,7 +24,13 @@ export declare class TelegramAlerter {
24
24
  private isDuplicate;
25
25
  private markDedup;
26
26
  sendAlert(payload: AlertPayload): Promise<boolean>;
27
- sendWithButtons(text: string, buttons: InlineButton[][], handlers: Record<string, () => Promise<void>>): Promise<boolean>;
27
+ /**
28
+ * Returns true if inline button mode is available (callbackBotToken is configured).
29
+ * When false, sendWithButtons falls back to a plain text message with CLI suggestions.
30
+ */
31
+ hasCallbackSupport(): boolean;
32
+ sendWithButtons(text: string, buttons: InlineButton[][], handlers: Record<string, () => Promise<void>>, suggestions?: string[]): Promise<boolean>;
33
+ private sendPlainMessage;
28
34
  pollCallbacks(): Promise<void>;
29
35
  formatMessage(payload: AlertPayload): string;
30
36
  formatApprovalMessage(watcher: string, message: string, options: Array<{
@@ -33,6 +39,7 @@ export declare class TelegramAlerter {
33
39
  }>): {
34
40
  text: string;
35
41
  buttons: InlineButton[][];
42
+ suggestions: string[];
36
43
  };
37
44
  sendRecovery(watcherName: string, message: string): Promise<boolean>;
38
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../../src/alerters/telegram.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAQhD,UAAU,YAAY;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;CACvB;AAOD,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,gBAAgB,CAA2C;IACnE,OAAO,CAAC,YAAY,CAAK;gBAEb,MAAM,EAAE,gBAAgB;IAIpC,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,WAAW;IAInB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO;IAOzC,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,SAAS;IAKX,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IA4ClD,eAAe,CACnB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,YAAY,EAAE,EAAE,EACzB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAC5C,OAAO,CAAC,OAAO,CAAC;IAwCb,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAmEpC,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM;IAsB5C,qBAAqB,CACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,GACrD;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,YAAY,EAAE,EAAE,CAAA;KAAE;IAiBxC,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAS3E"}
1
+ {"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../../src/alerters/telegram.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAQhD,UAAU,YAAY;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;CACvB;AAOD,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,gBAAgB,CAA2C;IACnE,OAAO,CAAC,YAAY,CAAK;gBAEb,MAAM,EAAE,gBAAgB;IAIpC,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,WAAW;IAInB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO;IAOzC,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,SAAS;IAKX,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IA4CxD;;;OAGG;IACH,kBAAkB,IAAI,OAAO;IAIvB,eAAe,CACnB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,YAAY,EAAE,EAAE,EACzB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAC7C,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,OAAO,CAAC;YAmDL,gBAAgB;IAyBxB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAoEpC,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM;IAsB5C,qBAAqB,CACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,GACrD;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,YAAY,EAAE,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,EAAE,CAAA;KAAE;IAoB/D,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAS3E"}
@@ -28,7 +28,10 @@ class TelegramAlerter {
28
28
  return true;
29
29
  }
30
30
  dedupKey(watcher, result) {
31
- return `${watcher}:${result.event_type}:${result.message}`;
31
+ // Exclude message from key — messages often include incrementing counts
32
+ // ("failed 7 times", "failed 8 times") which would defeat dedup entirely.
33
+ // Watcher + event_type is enough to identify a unique problem.
34
+ return `${watcher}:${result.event_type}`;
32
35
  }
33
36
  isDuplicate(watcher, result) {
34
37
  const key = this.dedupKey(watcher, result);
@@ -78,11 +81,28 @@ class TelegramAlerter {
78
81
  return false;
79
82
  }
80
83
  }
81
- async sendWithButtons(text, buttons, handlers) {
84
+ /**
85
+ * Returns true if inline button mode is available (callbackBotToken is configured).
86
+ * When false, sendWithButtons falls back to a plain text message with CLI suggestions.
87
+ */
88
+ hasCallbackSupport() {
89
+ return !!this.config.alerts.telegram.callbackBotToken;
90
+ }
91
+ async sendWithButtons(text, buttons, handlers, suggestions) {
82
92
  const { telegram } = this.config.alerts;
83
93
  if (!telegram.enabled || !telegram.botToken || !telegram.chatId) {
84
94
  return false;
85
95
  }
96
+ // If no callbackBotToken, fall back to plain text with CLI suggestions.
97
+ // This avoids polling conflicts when the same bot token is shared with another
98
+ // process (e.g. OpenClaw), which would silently swallow callback_query updates.
99
+ if (!telegram.callbackBotToken) {
100
+ const suggestionLines = suggestions?.length
101
+ ? suggestions
102
+ : buttons.flat().map(b => `→ ${b.text}: <code>clawdoctor ${b.callback_data.replace(/:/g, ' ')}</code>`);
103
+ const fallbackText = `${text}\n\n${suggestionLines.join('\n')}`;
104
+ return this.sendPlainMessage(fallbackText);
105
+ }
86
106
  try {
87
107
  const url = `${TELEGRAM_API}/bot${telegram.botToken}/sendMessage`;
88
108
  const response = await fetch(url, {
@@ -116,9 +136,35 @@ class TelegramAlerter {
116
136
  return false;
117
137
  }
118
138
  }
139
+ async sendPlainMessage(text) {
140
+ const { telegram } = this.config.alerts;
141
+ try {
142
+ const url = `${TELEGRAM_API}/bot${telegram.botToken}/sendMessage`;
143
+ const response = await fetch(url, {
144
+ method: 'POST',
145
+ headers: { 'Content-Type': 'application/json' },
146
+ body: JSON.stringify({
147
+ chat_id: telegram.chatId,
148
+ text,
149
+ parse_mode: 'HTML',
150
+ }),
151
+ });
152
+ if (!response.ok) {
153
+ const body = await response.text();
154
+ console.error(`[TelegramAlerter] Failed to send plain message: ${response.status} ${body}`);
155
+ return false;
156
+ }
157
+ return true;
158
+ }
159
+ catch (err) {
160
+ console.error(`[TelegramAlerter] Error sending plain message:`, err);
161
+ return false;
162
+ }
163
+ }
119
164
  async pollCallbacks() {
120
165
  const { telegram } = this.config.alerts;
121
- if (!telegram.enabled || !telegram.botToken || !telegram.chatId) {
166
+ // Only poll if a dedicated callback bot token is configured
167
+ if (!telegram.enabled || !telegram.callbackBotToken || !telegram.chatId) {
122
168
  return;
123
169
  }
124
170
  // Evict expired callbacks
@@ -132,7 +178,7 @@ class TelegramAlerter {
132
178
  return;
133
179
  }
134
180
  try {
135
- const url = `${TELEGRAM_API}/bot${telegram.botToken}/getUpdates?offset=${this.lastUpdateId + 1}&timeout=1&allowed_updates=["callback_query"]`;
181
+ const url = `${TELEGRAM_API}/bot${telegram.callbackBotToken}/getUpdates?offset=${this.lastUpdateId + 1}&timeout=1&allowed_updates=["callback_query"]`;
136
182
  const response = await fetch(url);
137
183
  if (!response.ok)
138
184
  return;
@@ -149,7 +195,7 @@ class TelegramAlerter {
149
195
  continue;
150
196
  // Answer the callback query to remove loading state
151
197
  try {
152
- await fetch(`${TELEGRAM_API}/bot${telegram.botToken}/answerCallbackQuery`, {
198
+ await fetch(`${TELEGRAM_API}/bot${telegram.callbackBotToken}/answerCallbackQuery`, {
153
199
  method: 'POST',
154
200
  headers: { 'Content-Type': 'application/json' },
155
201
  body: JSON.stringify({ callback_query_id: cbq.id, text: 'Processing...' }),
@@ -198,7 +244,9 @@ class TelegramAlerter {
198
244
  const buttons = [
199
245
  options.map(o => ({ text: o.text, callback_data: o.callbackData })),
200
246
  ];
201
- return { text: lines.join('\n'), buttons };
247
+ // Plain text fallback suggestions shown when callbackBotToken is not configured
248
+ const suggestions = options.map(o => `→ ${o.text}: <code>clawdoctor ${o.callbackData.replace(/:/g, ' ')}</code>`);
249
+ return { text: lines.join('\n'), buttons, suggestions };
202
250
  }
203
251
  async sendRecovery(watcherName, message) {
204
252
  const fakeResult = {
@@ -1 +1 @@
1
- {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../src/alerters/telegram.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../src/alerters/telegram.ts"],"names":[],"mappings":"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"}
package/dist/audit.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export declare const AUDIT_PATH: string;
2
2
  export type AuditTier = 'green' | 'yellow';
3
- export type AuditResult = 'success' | 'failed' | 'dry-run' | 'pending' | 'cooldown';
3
+ export type AuditResult = 'success' | 'failed' | 'dry-run' | 'pending';
4
4
  export interface AuditEntry {
5
5
  timestamp: string;
6
6
  healer: string;
@@ -1 +1 @@
1
- {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,UAAU,QAA2C,CAAC;AAEnE,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAC3C,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;AAEpF,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAGnD;AAED,wBAAgB,cAAc,CAAC,KAAK,SAAK,GAAG,UAAU,EAAE,CAavD"}
1
+ {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,UAAU,QAA2C,CAAC;AAEnE,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAC3C,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAEvE,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAGnD;AAED,wBAAgB,cAAc,CAAC,KAAK,SAAK,GAAG,UAAU,EAAE,CAavD"}
package/dist/config.d.ts CHANGED
@@ -10,10 +10,22 @@ export interface TelegramConfig {
10
10
  enabled: boolean;
11
11
  botToken: string;
12
12
  chatId: string;
13
+ /**
14
+ * Optional: a separate bot token dedicated to receiving callback_query updates
15
+ * (inline button presses). If set, ClawDoctor will poll this bot for callbacks
16
+ * and show inline buttons in alerts. If omitted, alerts fall back to plain text
17
+ * suggestions (e.g. "Run: clawdoctor retry metrics-collector") to avoid
18
+ * conflicts with other processes polling the same bot token (e.g. OpenClaw).
19
+ */
20
+ callbackBotToken?: string;
13
21
  }
14
22
  export interface AlertsConfig {
15
23
  telegram: TelegramConfig;
16
24
  }
25
+ export interface BudgetConfig {
26
+ enabled: boolean;
27
+ dailyLimitUsd: number;
28
+ }
17
29
  export interface ClawDoctorConfig {
18
30
  openclawPath: string;
19
31
  watchers: {
@@ -30,6 +42,7 @@ export interface ClawDoctorConfig {
30
42
  session: HealerConfig;
31
43
  };
32
44
  alerts: AlertsConfig;
45
+ budget: BudgetConfig;
33
46
  dryRun: boolean;
34
47
  retentionDays: number;
35
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE;QACR,OAAO,EAAE,aAAa,CAAC;QACvB,IAAI,EAAE,aAAa,CAAC;QACpB,OAAO,EAAE,aAAa,CAAC;QACvB,IAAI,EAAE,aAAa,CAAC;QACpB,IAAI,EAAE,aAAa,CAAC;KACrB,CAAC;IACF,OAAO,EAAE;QACP,cAAc,EAAE,YAAY,CAAC;QAC7B,SAAS,EAAE,YAAY,CAAC;QACxB,IAAI,EAAE,YAAY,CAAC;QACnB,OAAO,EAAE,YAAY,CAAC;KACvB,CAAC;IACF,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,cAAc,QAAyC,CAAC;AACrE,eAAO,MAAM,WAAW,QAA2C,CAAC;AACpE,eAAO,MAAM,OAAO,QAAyC,CAAC;AAC9D,eAAO,MAAM,QAAQ,QAA8C,CAAC;AACpE,eAAO,MAAM,YAAY,QAA4C,CAAC;AACtE,eAAO,MAAM,aAAa,QAAyC,CAAC;AACpE,eAAO,MAAM,UAAU,QAA2C,CAAC;AACnE,eAAO,MAAM,kBAAkB,QAAkD,CAAC;AAElF,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAqBD,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,EAAE,CAEpD;AAED,wBAAgB,WAAW,IAAI,WAAW,GAAG,IAAI,CAkChD;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAWnE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAGnD;AAED,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA+BtJ;AAED,wBAAgB,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAQnD;AAED,eAAO,MAAM,cAAc,EAAE,gBAwB5B,CAAC;AAEF,wBAAgB,UAAU,IAAI,gBAAgB,CAO7C;AAyBD,wBAAgB,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAGzD;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CAI1C;AAED,wBAAgB,YAAY,IAAI,OAAO,CAEtC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/config.js CHANGED
@@ -158,6 +158,10 @@ exports.DEFAULT_CONFIG = {
158
158
  chatId: '',
159
159
  },
160
160
  },
161
+ budget: {
162
+ enabled: true,
163
+ dailyLimitUsd: 50,
164
+ },
161
165
  dryRun: false,
162
166
  retentionDays: 7,
163
167
  };
@@ -189,6 +193,7 @@ function mergeConfig(defaults, overrides) {
189
193
  ...(overrides.alerts?.telegram ?? {}),
190
194
  },
191
195
  },
196
+ budget: { ...defaults.budget, ...(overrides.budget ?? {}) },
192
197
  };
193
198
  }
194
199
  function saveConfig(config) {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/daemon.d.ts CHANGED
@@ -8,6 +8,7 @@ export declare class Daemon {
8
8
  private cronHealer;
9
9
  private authHealer;
10
10
  private sessionHealer;
11
+ private budgetHealer;
11
12
  private running;
12
13
  private tickInterval;
13
14
  private plan;
@@ -22,6 +23,8 @@ export declare class Daemon {
22
23
  private tick;
23
24
  private runWatcher;
24
25
  private handleResult;
26
+ private approvalDedup;
27
+ private readonly APPROVAL_DEDUP_MS;
25
28
  private sendApprovalRequest;
26
29
  private handleCallbackAction;
27
30
  private attemptHeal;
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAyC,MAAM,aAAa,CAAC;AACtF,OAAO,EAAe,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAsC9D,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,oBAAoB,CAA+B;IAC3D,OAAO,CAAC,oBAAoB,CAA+B;IAC3D,OAAO,CAAC,iBAAiB,CAA6B;IACtD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAU;gBAEnC,MAAM,EAAE,gBAAgB;IAapC,OAAO,CAAC,aAAa;IAmDrB,KAAK,IAAI,IAAI;IA+Db,IAAI,IAAI,IAAI;IAkBZ,OAAO,CAAC,IAAI;YAYE,UAAU;YAWV,YAAY;YAuBZ,mBAAmB;YAoBnB,oBAAoB;YAgDpB,WAAW;IAmDnB,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;CAiBrD"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAyC,MAAM,aAAa,CAAC;AACtF,OAAO,EAAe,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAwC9D,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,oBAAoB,CAA+B;IAC3D,OAAO,CAAC,oBAAoB,CAA+B;IAC3D,OAAO,CAAC,iBAAiB,CAA6B;IACtD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAU;gBAEnC,MAAM,EAAE,gBAAgB;IAmBpC,OAAO,CAAC,aAAa;IA0DrB,KAAK,IAAI,IAAI;IA+Db,IAAI,IAAI,IAAI;IAkBZ,OAAO,CAAC,IAAI;YAYE,UAAU;YAWV,YAAY;IAuB1B,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkB;YAEtC,mBAAmB;YA4BnB,oBAAoB;YA6DpB,WAAW;IA4DnB,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;CAiBrD"}
package/dist/daemon.js CHANGED
@@ -8,10 +8,12 @@ const cron_js_1 = require("./watchers/cron.js");
8
8
  const session_js_1 = require("./watchers/session.js");
9
9
  const auth_js_1 = require("./watchers/auth.js");
10
10
  const cost_js_1 = require("./watchers/cost.js");
11
+ const budget_js_1 = require("./watchers/budget.js");
11
12
  const process_js_1 = require("./healers/process.js");
12
13
  const cron_js_2 = require("./healers/cron.js");
13
14
  const auth_js_2 = require("./healers/auth.js");
14
15
  const session_js_2 = require("./healers/session.js");
16
+ const budget_js_2 = require("./healers/budget.js");
15
17
  const telegram_js_1 = require("./alerters/telegram.js");
16
18
  const store_js_1 = require("./store.js");
17
19
  const utils_js_1 = require("./utils.js");
@@ -37,6 +39,7 @@ class Daemon {
37
39
  cronHealer;
38
40
  authHealer;
39
41
  sessionHealer;
42
+ budgetHealer;
40
43
  running = false;
41
44
  tickInterval = null;
42
45
  plan = 'free';
@@ -51,9 +54,15 @@ class Daemon {
51
54
  this.cronHealer = new cron_js_2.CronHealer(config);
52
55
  this.authHealer = new auth_js_2.AuthHealer(config);
53
56
  this.sessionHealer = new session_js_2.SessionHealer(config);
57
+ this.budgetHealer = new budget_js_2.BudgetHealer(config);
54
58
  this.plan = (0, config_js_1.loadLicense)()?.plan ?? 'free';
55
59
  // Enforce tier-appropriate retention; override any manual config
56
60
  this.config.retentionDays = PLAN_RETENTION_DAYS[this.plan];
61
+ // Heal plan: ensure healers are active (dryRun=false); non-heal: force dryRun=true
62
+ const healPlanActive = this.plan === 'heal';
63
+ for (const key of Object.keys(this.config.healers)) {
64
+ this.config.healers[key].dryRun = !healPlanActive;
65
+ }
57
66
  this.setupWatchers();
58
67
  }
59
68
  setupWatchers() {
@@ -96,6 +105,13 @@ class Daemon {
96
105
  lastRun: 0,
97
106
  });
98
107
  }
108
+ if (this.config.budget?.enabled) {
109
+ candidates.push({
110
+ watcher: new budget_js_1.BudgetWatcher(this.config),
111
+ intervalMs: 300 * 1000,
112
+ lastRun: 0,
113
+ });
114
+ }
99
115
  // Apply monitor limit
100
116
  this.watchers = candidates.slice(0, maxMonitors);
101
117
  if (candidates.length > this.watchers.length) {
@@ -219,9 +235,18 @@ class Daemon {
219
235
  }
220
236
  }
221
237
  }
238
+ approvalDedup = new Map();
239
+ APPROVAL_DEDUP_MS = 60 * 60 * 1000; // 1 hour
222
240
  async sendApprovalRequest(watcherName, healResult) {
241
+ // Deduplicate: only send one approval request per watcher per hour
242
+ const dedupKey = `approval:${watcherName}:${healResult.action}`;
243
+ const lastSent = this.approvalDedup.get(dedupKey) ?? 0;
244
+ if (Date.now() - lastSent < this.APPROVAL_DEDUP_MS) {
245
+ return;
246
+ }
247
+ this.approvalDedup.set(dedupKey, Date.now());
223
248
  const options = healResult.approvalOptions ?? [];
224
- const { text, buttons } = this.alerter.formatApprovalMessage(watcherName, healResult.message, options);
249
+ const { text, buttons, suggestions } = this.alerter.formatApprovalMessage(watcherName, healResult.message, options);
225
250
  const handlers = {};
226
251
  for (const option of options) {
227
252
  const cbData = option.callbackData;
@@ -229,7 +254,7 @@ class Daemon {
229
254
  await this.handleCallbackAction(cbData);
230
255
  };
231
256
  }
232
- await this.alerter.sendWithButtons(text, buttons, handlers);
257
+ await this.alerter.sendWithButtons(text, buttons, handlers, suggestions);
233
258
  }
234
259
  async handleCallbackAction(callbackData) {
235
260
  const now = Date.now();
@@ -266,6 +291,22 @@ class Daemon {
266
291
  console.log(`[${(0, utils_js_1.nowIso)()}] [CronHealer] Ignored alert for ${cronName}`);
267
292
  }
268
293
  }
294
+ else if (resource === 'budget') {
295
+ if (action === 'kill_all') {
296
+ const { killed, failed } = await this.budgetHealer.killAllSessions();
297
+ console.log(`[${(0, utils_js_1.nowIso)()}] [BudgetHealer] Emergency stop: ${killed} killed, ${failed} failed`);
298
+ }
299
+ else if (action === 'increase') {
300
+ const newLimit = parseFloat(args[0] ?? '0');
301
+ if (newLimit > 0) {
302
+ this.config.budget.dailyLimitUsd = newLimit;
303
+ console.log(`[${(0, utils_js_1.nowIso)()}] [BudgetHealer] Daily limit increased to $${newLimit}`);
304
+ }
305
+ }
306
+ else if (action === 'ignore') {
307
+ console.log(`[${(0, utils_js_1.nowIso)()}] [BudgetHealer] Budget alert ignored`);
308
+ }
309
+ }
269
310
  else if (resource === 'session') {
270
311
  const agent = args[0] ?? 'unknown';
271
312
  const session = args[1] ?? 'unknown';
@@ -325,6 +366,14 @@ class Daemon {
325
366
  return healResult;
326
367
  }
327
368
  }
369
+ if (watcher.name === 'BudgetWatcher' && result.event_type === 'budget_exceeded') {
370
+ if (autoFixAllowed) {
371
+ const context = result.details ?? {};
372
+ const healResult = await this.budgetHealer.heal(context);
373
+ console.log(`[${(0, utils_js_1.nowIso)()}] [BudgetHealer] ${healResult.success ? 'SUCCESS' : 'FAILED'}: ${healResult.message}`);
374
+ return healResult;
375
+ }
376
+ }
328
377
  return null;
329
378
  }
330
379
  async runOnce() {
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAC7C,2CAAsF;AAEtF,sDAAuD;AACvD,gDAAiD;AACjD,sDAAuD;AACvD,gDAAiD;AACjD,gDAAiD;AACjD,oDAAqD;AACrD,qDAAqD;AACrD,+CAA+C;AAC/C,+CAA+C;AAC/C,qDAAqD;AACrD,mDAAmD;AAEnD,wDAAyD;AACzD,yCAA4C;AAC5C,yCAAoC;AAQpC,wBAAwB;AACxB,MAAM,mBAAmB,GAAyB;IAChD,IAAI,EAAE,CAAC;IACP,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,QAAQ;CACf,CAAC;AAEF,4BAA4B;AAC5B,MAAM,cAAc,GAAW,CAAC,MAAM,CAAC,CAAC;AAExC,0BAA0B;AAC1B,MAAM,mBAAmB,GAAyB;IAChD,IAAI,EAAE,CAAC;IACP,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,EAAE;CACT,CAAC;AAEF,MAAa,MAAM;IACT,MAAM,CAAmB;IACzB,QAAQ,GAAmB,EAAE,CAAC;IAC9B,OAAO,CAAkB;IACzB,aAAa,CAAgB;IAC7B,UAAU,CAAa;IACvB,UAAU,CAAa;IACvB,aAAa,CAAgB;IAC7B,YAAY,CAAe;IAC3B,OAAO,GAAG,KAAK,CAAC;IAChB,YAAY,GAA0B,IAAI,CAAC;IAC3C,IAAI,GAAS,MAAM,CAAC;IACpB,oBAAoB,GAA0B,IAAI,CAAC;IACnD,oBAAoB,GAA0B,IAAI,CAAC;IACnD,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;IACrC,oBAAoB,GAAG,MAAM,CAAC;IAE/C,YAAY,MAAwB;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,IAAI,6BAAe,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,IAAI,0BAAa,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,IAAI,oBAAU,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,UAAU,GAAG,IAAI,oBAAU,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,aAAa,GAAG,IAAI,0BAAa,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,GAAG,IAAI,wBAAY,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,IAAA,uBAAW,GAAE,EAAE,IAAI,IAAI,MAAM,CAAC;QAC1C,iEAAiE;QACjE,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,mFAAmF;QACnF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAA4C,EAAE,CAAC;YAC9F,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,cAAc,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAEO,aAAa;QACnB,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QACjC,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEnD,sEAAsE;QACtE,MAAM,UAAU,GAAmB,EAAE,CAAC;QAEtC,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC7B,UAAU,CAAC,IAAI,CAAC;gBACd,OAAO,EAAE,IAAI,2BAAc,CAAC,IAAI,CAAC,MAAM,CAAC;gBACxC,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI;gBAC5C,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC1B,UAAU,CAAC,IAAI,CAAC;gBACd,OAAO,EAAE,IAAI,qBAAW,CAAC,IAAI,CAAC,MAAM,CAAC;gBACrC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI;gBACzC,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC;QACD,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC7B,UAAU,CAAC,IAAI,CAAC;gBACd,OAAO,EAAE,IAAI,2BAAc,CAAC,IAAI,CAAC,MAAM,CAAC;gBACxC,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI;gBAC5C,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC1B,UAAU,CAAC,IAAI,CAAC;gBACd,OAAO,EAAE,IAAI,qBAAW,CAAC,IAAI,CAAC,MAAM,CAAC;gBACrC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI;gBACzC,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC1B,UAAU,CAAC,IAAI,CAAC;gBACd,OAAO,EAAE,IAAI,qBAAW,CAAC,IAAI,CAAC,MAAM,CAAC;gBACrC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI;gBACzC,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YAChC,UAAU,CAAC,IAAI,CAAC;gBACd,OAAO,EAAE,IAAI,yBAAa,CAAC,IAAI,CAAC,MAAM,CAAC;gBACvC,UAAU,EAAE,GAAG,GAAG,IAAI;gBACtB,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC;QAED,sBAAsB;QACtB,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QAEjD,IAAI,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC7C,OAAO,CAAC,GAAG,CAAC,gCAAgC,WAAW,uDAAuD,CAAC,CAAC;QAClH,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpB,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,6BAA6B,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,WAAW,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,gBAAgB,IAAI,CAAC,QAAQ,CAAC,MAAM,aAAa,CAAC,CAAC;QAE3E,qFAAqF;QACrF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAC1C,IAAI,MAAM,EAAE,CAAC;YACX,IAAA,8BAAkB,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;gBACnC,MAAM,aAAa,GAAG,IAAA,uBAAW,GAAE,EAAE,IAAI,IAAI,MAAM,CAAC;gBACpD,IAAI,aAAa,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;oBAChC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,2CAA2C,IAAI,CAAC,IAAI,OAAO,aAAa,EAAE,CAAC,CAAC;oBACpG,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;oBAC1B,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC3D,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;oBACnB,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,CAAC;YACH,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACZ,+BAA+B;YACjC,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,+CAA+C,CAAC,CAAC;QAC3E,CAAC;QAED,wCAAwC;QACxC,IAAI,CAAC,IAAI,EAAE,CAAC;QAEZ,sDAAsD;QACtD,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;QAEzD,kDAAkD;QAClD,IAAI,CAAC,oBAAoB,GAAG,WAAW,CAAC,GAAG,EAAE;YAC3C,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;gBACvC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAA,iBAAM,GAAE,wBAAwB,EAAE,GAAG,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,KAAK,CAAC,CAAC;QAEV,yBAAyB;QACzB,WAAW,CAAC,GAAG,EAAE;YACf,MAAM,MAAM,GAAG,IAAA,yBAAc,EAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YACzD,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,YAAY,MAAM,eAAe,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;QAErB,0BAA0B;QAC1B,IAAI,CAAC,oBAAoB,GAAG,WAAW,CAAC,GAAG,EAAE;YAC3C,MAAM,WAAW,GAAG,IAAA,uBAAW,GAAE,EAAE,IAAI,IAAI,MAAM,CAAC;YAClD,IAAI,WAAW,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC9B,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,mBAAmB,IAAI,CAAC,IAAI,OAAO,WAAW,uBAAuB,CAAC,CAAC;gBAC/F,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;gBACxB,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3D,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACnB,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,CAAC;QACH,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC;QACD,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,aAAa,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACzC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,aAAa,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACzC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,6BAA6B,CAAC,CAAC;IACzD,CAAC;IAEO,IAAI;QACV,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClC,IAAI,GAAG,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBAC5C,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;gBACpB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACzC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAA,iBAAM,GAAE,cAAc,KAAK,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;gBACtE,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,OAAoB;QAC3C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC;YACpC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,IAAI,IAAA,iBAAM,GAAE,KAAK,OAAO,CAAC,IAAI,SAAS,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,OAAoB,EAAE,MAAmB;QAClE,MAAM,MAAM,GAAG,IAAI,IAAA,iBAAM,GAAE,MAAM,OAAO,CAAC,IAAI,GAAG,CAAC;QAEjD,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/E,CAAC;QAED,eAAe;QACf,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC3D,IAAI,UAAU,EAAE,CAAC;gBACf,yDAAyD;gBACzD,IAAI,UAAU,CAAC,gBAAgB,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;oBAC9D,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;gBAC3D,CAAC;qBAAM,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC5C,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5C,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;IACH,CAAC;IAEO,aAAa,GAAwB,IAAI,GAAG,EAAE,CAAC;IACtC,iBAAiB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;IAEtD,KAAK,CAAC,mBAAmB,CAAC,WAAmB,EAAE,UAAsB;QAC3E,mEAAmE;QACnE,MAAM,QAAQ,GAAG,YAAY,WAAW,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACnD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAE7C,MAAM,OAAO,GAAG,UAAU,CAAC,eAAe,IAAI,EAAE,CAAC;QACjD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,CACvE,WAAW,EACX,UAAU,CAAC,OAAO,EAClB,OAAO,CACR,CAAC;QAEF,MAAM,QAAQ,GAAwC,EAAE,CAAC;QAEzD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC;YACnC,QAAQ,CAAC,MAAM,CAAC,GAAG,KAAK,IAAI,EAAE;gBAC5B,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAC1C,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC3E,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,YAAoB;QACrD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC9D,IAAI,GAAG,GAAG,OAAO,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,oDAAoD,YAAY,EAAE,CAAC,CAAC;YAC5F,OAAO;QACT,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QAE9C,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,iCAAiC,YAAY,EAAE,CAAC,CAAC;QACzE,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC;QAE1C,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;YACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;YACtC,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;gBACvB,IAAI,CAAC;oBACH,IAAA,4BAAY,EAAC,UAAU,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;oBACpD,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,wBAAwB,QAAQ,WAAW,CAAC,CAAC;gBACvE,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,wBAAwB,QAAQ,UAAU,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC;iBAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACH,IAAA,4BAAY,EAAC,UAAU,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;oBACxD,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,0BAA0B,QAAQ,WAAW,CAAC,CAAC;gBACzE,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,0BAA0B,QAAQ,UAAU,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;iBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,oCAAoC,QAAQ,EAAE,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC1B,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,CAAC;gBACrE,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,oCAAoC,MAAM,YAAY,MAAM,SAAS,CAAC,CAAC;YACjG,CAAC;iBAAM,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;gBACjC,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;gBAC5C,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;oBACjB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,GAAG,QAAQ,CAAC;oBAC5C,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,8CAA8C,QAAQ,EAAE,CAAC,CAAC;gBACpF,CAAC;YACH,CAAC;iBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,uCAAuC,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;YACnC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;YACrC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBACtB,IAAI,CAAC;oBACH,IAAA,4BAAY,EAAC,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;oBAC9D,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,0BAA0B,KAAK,IAAI,OAAO,WAAW,CAAC,CAAC;gBACjF,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,0BAA0B,KAAK,IAAI,OAAO,UAAU,CAAC,CAAC;gBAChF,CAAC;YACH,CAAC;iBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,uCAAuC,KAAK,IAAI,OAAO,EAAE,CAAC,CAAC;YACrF,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,OAAoB,EACpB,MAAmB;QAEnB,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE1D,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB,IAAI,MAAM,CAAC,UAAU,KAAK,cAAc,EAAE,CAAC;YAC9E,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,IAAI,cAAc,EAAE,CAAC;gBACjE,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,oDAAoD,CAAC,CAAC;gBAC9E,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,qBAAqB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;gBACjH,OAAO,UAAU,CAAC;YACpB,CAAC;iBAAM,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,2FAA2F,CAAC,CAAC;YACvH,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,yBAAyB,IAAI,MAAM,CAAC,UAAU,KAAK,cAAc,IAAI,MAAM,CAAC,UAAU,KAAK,iBAAiB,CAAC,EAAE,CAAC;YAC3K,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,IAAI,cAAc,EAAE,CAAC;gBAC5D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;gBACrC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAkC,CAAC,CAAC;gBAClF,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,kBAAkB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC9G,OAAO,UAAU,CAAC;YACpB,CAAC;iBAAM,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC3B,oCAAoC;gBACpC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;gBACrC,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAkC,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,IAAI,MAAM,CAAC,UAAU,KAAK,cAAc,EAAE,CAAC;YAC3E,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,IAAI,cAAc,EAAE,CAAC;gBACvD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;gBACrC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAkC,CAAC,CAAC;gBAClF,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,kBAAkB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC9G,OAAO,UAAU,CAAC;YACpB,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,eAAe,IAAI,MAAM,CAAC,UAAU,KAAK,eAAe,CAAC,EAAE,CAAC;YAC1H,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,cAAc,EAAE,CAAC;gBAC1D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;gBACrC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAkC,CAAC,CAAC;gBACrF,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,qBAAqB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;gBACjH,OAAO,UAAU,CAAC;YACpB,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,IAAI,MAAM,CAAC,UAAU,KAAK,iBAAiB,EAAE,CAAC;YAChF,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;gBACrC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAkC,CAAC,CAAC;gBACpF,OAAO,CAAC,GAAG,CAAC,IAAI,IAAA,iBAAM,GAAE,oBAAoB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChH,OAAO,UAAU,CAAC;YACpB,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,UAAU,GAAG,IAAI,GAAG,EAAyB,CAAC;QACpD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAC5C,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC9C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;wBAClC,EAAE,EAAE,KAAK;wBACT,QAAQ,EAAE,OAAO;wBACjB,UAAU,EAAE,eAAe;wBAC3B,OAAO,EAAE,kBAAkB,MAAM,CAAC,GAAG,CAAC,EAAE;qBACzC,CAAC,CAAC,CAAC;YACN,CAAC;QACH,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AAtYD,wBAsYC"}
@@ -0,0 +1,10 @@
1
+ import { BaseHealer, HealResult } from './base.js';
2
+ export declare class BudgetHealer extends BaseHealer {
3
+ readonly name = "BudgetHealer";
4
+ heal(context: Record<string, unknown>): Promise<HealResult>;
5
+ killAllSessions(): Promise<{
6
+ killed: number;
7
+ failed: number;
8
+ }>;
9
+ }
10
+ //# sourceMappingURL=budget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budget.d.ts","sourceRoot":"","sources":["../../src/healers/budget.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGnD,qBAAa,YAAa,SAAQ,UAAU;IAC1C,QAAQ,CAAC,IAAI,kBAAkB;IAEzB,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAkC3D,eAAe,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAuCrE"}
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BudgetHealer = void 0;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const path_1 = __importDefault(require("path"));
9
+ const base_js_1 = require("./base.js");
10
+ const utils_js_1 = require("../utils.js");
11
+ class BudgetHealer extends base_js_1.BaseHealer {
12
+ name = 'BudgetHealer';
13
+ async heal(context) {
14
+ const dailySpend = context.dailySpend ?? 0;
15
+ const limit = context.limit ?? 50;
16
+ const dryRun = this.isEffectiveDryRun(false);
17
+ if (dryRun) {
18
+ this.writeAudit('budget-emergency-stop', 'all-sessions', 'yellow', 'dry-run');
19
+ return {
20
+ success: true,
21
+ action: 'dry-run: would kill all non-essential sessions',
22
+ message: `[DRY RUN] Would kill all sessions (budget $${dailySpend.toFixed(2)} exceeded $${limit.toFixed(2)} limit)`,
23
+ tier: 'yellow',
24
+ };
25
+ }
26
+ const increaseAmount = Math.ceil(limit * 1.5 / 10) * 10;
27
+ const result = {
28
+ success: true,
29
+ action: 'requested budget approval',
30
+ message: `Daily budget exceeded: $${dailySpend.toFixed(2)} of $${limit.toFixed(2)}. Emergency action required.`,
31
+ details: { dailySpend, limit },
32
+ tier: 'yellow',
33
+ requiresApproval: true,
34
+ approvalOptions: [
35
+ { text: `Kill All Sessions ($${dailySpend.toFixed(2)} spent)`, callbackData: 'budget:kill_all' },
36
+ { text: `Increase to $${increaseAmount}`, callbackData: `budget:increase:${increaseAmount}` },
37
+ { text: 'Ignore', callbackData: 'budget:ignore' },
38
+ ],
39
+ };
40
+ await this.recordHeal('BudgetWatcher', result, 'budget_approval_requested');
41
+ this.writeAudit('budget-emergency-stop', 'all-sessions', 'yellow', 'pending');
42
+ return result;
43
+ }
44
+ async killAllSessions() {
45
+ const agentsDir = path_1.default.join(this.config.openclawPath, 'agents');
46
+ let killed = 0;
47
+ let failed = 0;
48
+ if (!fs_1.default.existsSync(agentsDir))
49
+ return { killed, failed };
50
+ let agentDirs;
51
+ try {
52
+ agentDirs = fs_1.default.readdirSync(agentsDir).filter(d => {
53
+ try {
54
+ return fs_1.default.statSync(path_1.default.join(agentsDir, d)).isDirectory();
55
+ }
56
+ catch {
57
+ return false;
58
+ }
59
+ });
60
+ }
61
+ catch {
62
+ return { killed, failed };
63
+ }
64
+ for (const agentDir of agentDirs) {
65
+ const sessionsDir = path_1.default.join(agentsDir, agentDir, 'sessions');
66
+ if (!fs_1.default.existsSync(sessionsDir))
67
+ continue;
68
+ let sessionFiles;
69
+ try {
70
+ sessionFiles = fs_1.default.readdirSync(sessionsDir)
71
+ .filter(f => f.endsWith('.jsonl'))
72
+ .map(f => f.replace('.jsonl', ''));
73
+ }
74
+ catch {
75
+ continue;
76
+ }
77
+ for (const session of sessionFiles) {
78
+ const killResult = (0, utils_js_1.runCommand)('openclaw', ['session', 'kill', agentDir, session]);
79
+ if (killResult.ok) {
80
+ killed++;
81
+ }
82
+ else {
83
+ failed++;
84
+ }
85
+ }
86
+ }
87
+ this.writeAudit('budget-kill-all', `${killed} sessions killed`, 'yellow', killed > 0 ? 'success' : 'failed');
88
+ return { killed, failed };
89
+ }
90
+ }
91
+ exports.BudgetHealer = BudgetHealer;
92
+ //# sourceMappingURL=budget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budget.js","sourceRoot":"","sources":["../../src/healers/budget.ts"],"names":[],"mappings":"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"}