@justfortytwo/telegram 1.0.2 → 1.0.3

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/README.md CHANGED
@@ -14,6 +14,8 @@ Code sessions through `@justfortytwo/runner`.
14
14
  4000 UTF-16 units. Typing refreshes while submitted inputs await results.
15
15
  Deferred results produce a plain notice: Telegram cannot authorize the action.
16
16
  Claude Code owns tool permissions; Gate is optional policy through Claude hooks/plugins.
17
+ With `TELEGRAM_APPROVALS` set, a deferral staged by the gate becomes an
18
+ Approve/Deny card instead (see [Approvals from Telegram](#approvals-from-telegram-opt-in)).
17
19
  3. **Scheduler separation.** Proactive wakes remain the responsibility of the
18
20
  external `@justfortytwo/scheduler` daemon.
19
21
 
@@ -158,8 +160,38 @@ startup (used for the reply queue) and **writes each channel event** through
158
160
  Recall happens inside the headless `claude` turn via the Memory MCP tools. If the
159
161
  memory or transcript peer is absent, the bridge degrades to **channel-only**
160
162
  (messages relay but are not recorded) rather than refusing to start. A failing
161
- log write is logged to stderr and never blocks a reply. Telegram does not record tool
162
- authorizations or update Gate approval stores.
163
+ log write is logged to stderr and never blocks a reply. By default Telegram does not
164
+ record tool authorizations or update Gate approval stores; the opt-in below is the
165
+ only exception.
166
+
167
+ ## Approvals from Telegram (opt-in)
168
+
169
+ Off by default. Set `TELEGRAM_APPROVALS=1` (or run `fortytwo start
170
+ --telegram-approvals`) on an install where the gate's PreToolUse hook is active,
171
+ and the bridge handles a held action as below. In an installer-managed project,
172
+ `fortytwo gate on` wires the hook and `fortytwo start` then sets the variable for
173
+ you unless you set it yourself.
174
+
175
+ 1. Claude's turn ends with `stop_reason: tool_deferred`. If the gate's approval
176
+ store has that call staged as `pending`, the bridge sends a card showing the
177
+ tool and its input (the exact command for Bash) with **Approve** and **Deny**
178
+ buttons. A deferral the store did not stage keeps the plain notice.
179
+ The input is always shown whole: one longer than 3500 characters, or one
180
+ containing a code fence, gets a notice without buttons and is decided on the
181
+ host with `npx fortytwo-gate`.
182
+ 2. A tap from an authorized chat on the *current* card records `approved` or
183
+ `denied` in the gate's store, then restarts the chat's Claude process on its
184
+ saved session with no new input. Claude Code re-runs the held call and the
185
+ gate's hook allows it exactly once or denies it. The bridge never runs or
186
+ authorizes the tool itself.
187
+ 3. A new message while a request waits counts as "no": the request is denied
188
+ and the session resumed first, then the message is delivered.
189
+
190
+ The store is the same file the hook reads for the project (`GATE_APPROVALS`, else
191
+ `<FORTYTWO_ROOT>/.gate/approvals.jsonl`), resolved by the gate's `approvalsPath`.
192
+ `state/bridge-state.json` only remembers which card is waiting. Older cards and
193
+ pre-1.0.0-4 buttons stay inert. A typed "yes" is never an approval: only the
194
+ button on the current card is.
163
195
 
164
196
  ## Environment
165
197
 
@@ -169,6 +201,7 @@ authorizations or update Gate approval stores.
169
201
  | `ALLOWED_CHAT_IDS` | no | Comma-separated chat IDs authorized without a binding. Not needed for first pairing: `/login <code>` works with zero bindings. |
170
202
  | `CLAUDE_BIN` | no | Path to the `claude` binary (default `claude`). |
171
203
  | `FORTYTWO_CLAUDE_ARGS` | no | Extra arguments for every `claude` run, as a JSON array of strings (e.g. `["--chrome"]`). Set by `fortytwo start -- <args>`. A malformed value stops the bridge at boot. |
204
+ | `TELEGRAM_APPROVALS` | no | `1`/`true`/`yes`/`on` lets authorized chats approve or deny actions held by the gate's hook ([details](#approvals-from-telegram-opt-in)). Off by default. |
172
205
  | `TELEGRAM_BINDINGS_DB` | no | Path to the self-owned bindings db (default `state/telegram-bindings.db`). |
173
206
  | `DB_PATH` | no | Path to the memory DB the bridge opens/migrates at startup (default `db/fortytwo.db`, relative to `FORTYTWO_ROOT`). |
174
207
  | `EMBED_MODEL` | no | When set, the bridge uses the Ollama embedder for memory (otherwise a deterministic fallback). |
@@ -234,6 +267,14 @@ late output cannot restart typing after a result. Once no work is active, the
234
267
  bridge sends no further typing refreshes; an action already sent can
235
268
  remain visible briefly until Telegram expires it.
236
269
 
270
+ ## Release notes — 1.0.3
271
+
272
+ Approval buttons return as an explicit opt-in (`TELEGRAM_APPROVALS`), built on
273
+ the gate's approval store instead of bridge-owned state. Without the setting the
274
+ behaviour described under 1.0.0-4 is unchanged. New exports: `Approvals`,
275
+ `approvalsEnabled`, `formatApprovalRequest`; `ChatSessions.resume()`.
276
+ Depends on `@justfortytwo/gate` 1.x (`approvalsPath`).
277
+
237
278
  ## Release notes — 1.0.0-4
238
279
 
239
280
  Telegram no longer offers approval buttons for deferred tools. Claude Code's effective permissions remain authoritative for tool execution.
package/dist/bridge.d.ts CHANGED
@@ -3,7 +3,7 @@ import { ChatSessions } from './chat-sessions.js';
3
3
  import { Telegram, type TgMessage, type AttachmentSpec } from './telegram.js';
4
4
  import { type Attachment } from './attachments.js';
5
5
  import { type AuthContext } from './login.js';
6
- import type { SourceKind } from '@justfortytwo/gate';
6
+ import type { ApprovalStore, SourceKind } from '@justfortytwo/gate';
7
7
  import type { DbHandles as MemDbHandles, Embedder as MemEmbedder } from '@justfortytwo/memory';
8
8
  import { type ConversationLog } from './conversation-log.js';
9
9
  type DbHandles = MemDbHandles | null;
@@ -30,6 +30,16 @@ export interface Interpreted {
30
30
  }
31
31
  /** Read a `claude -p --output-format json` result into a reply OR a deferred tool. */
32
32
  export declare function interpretResult(r: any): Interpreted;
33
+ /** The part of the gate's approval store the bridge needs. */
34
+ export type Approvals = Pick<ApprovalStore, 'getByToolUseId' | 'setDecisionByToolUseId'>;
35
+ /** TELEGRAM_APPROVALS must be an explicit yes; anything else leaves approvals off. */
36
+ export declare function approvalsEnabled(env: NodeJS.ProcessEnv): boolean;
37
+ /**
38
+ * What the owner is asked to approve: the exact command for Bash, the tool input
39
+ * otherwise. Null when it cannot be shown whole and unaltered (too long, or it
40
+ * contains a code fence): an approval must never be asked on partial content.
41
+ */
42
+ export declare function formatApprovalRequest(d: DeferredTool): string | null;
33
43
  export declare function telegramSourceKind(message: TgMessage): SourceKind;
34
44
  export declare function hasHandleableContent(message: TgMessage): boolean;
35
45
  export declare function telegramCommandReply(text: string): string | undefined;
@@ -55,19 +65,30 @@ export declare function ingestMessageAttachments(io: AttachmentIo, message: TgMe
55
65
  export interface BridgeState {
56
66
  lastUpdateId: number;
57
67
  sessions: Record<number, string>;
68
+ /**
69
+ * chatId -> the approval card waiting for the owner. Written only when approvals
70
+ * are enabled; `cardMessageId` ties a button tap to the current card. Entries
71
+ * without it are pre-1.0.0-4 leftovers and are never acted on. This is a pointer
72
+ * to the request: the decision itself lives in the gate's approval store.
73
+ */
58
74
  pending?: Record<number, {
59
75
  toolUseId: string;
60
76
  sessionId?: string;
61
77
  toolName?: string;
62
78
  input?: Record<string, unknown>;
79
+ cardMessageId?: number;
63
80
  }>;
64
81
  }
65
82
  /** `claudeArgs`: extra Claude arguments the operator set for this install (FORTYTWO_CLAUDE_ARGS). */
66
- export declare function createBridgeSessions(tg: Telegram, state: BridgeState, h: DbHandles, log: ConversationLog, claudeArgs?: readonly string[]): ChatSessions;
67
- export declare function handleInbound(tg: Telegram, auth: AuthContext, state: BridgeState, h: DbHandles, log: ConversationLog, chatId: number, message: TgMessage, sessions: ChatSessions): Promise<void>;
68
- /** Old approval buttons remain in Telegram history. Never resume or authorize work. */
69
- export declare function handleCallback(tg: Telegram, _state: BridgeState, _h: DbHandles, _log: ConversationLog, _chatId: number, cbId: string, _data: string, _cardMessageId: number, _sessions: ChatSessions): Promise<void>;
70
- export declare function pollLoop(tg: Telegram, auth: AuthContext, state: BridgeState, h: DbHandles, log: ConversationLog, sessions: ChatSessions, signal: AbortSignal): Promise<void>;
83
+ export declare function createBridgeSessions(tg: Telegram, state: BridgeState, h: DbHandles, log: ConversationLog, claudeArgs?: readonly string[], approvals?: Approvals): ChatSessions;
84
+ export declare function handleInbound(tg: Telegram, auth: AuthContext, state: BridgeState, h: DbHandles, log: ConversationLog, chatId: number, message: TgMessage, sessions: ChatSessions, approvals?: Approvals): Promise<void>;
85
+ /**
86
+ * A button tap. Only the current approval card of this chat, with approvals
87
+ * enabled, decides anything; every other button (older cards, the pre-1.0.0-4
88
+ * callback format) stays inert and never resumes or authorizes work.
89
+ */
90
+ export declare function handleCallback(tg: Telegram, state: BridgeState, _h: DbHandles, _log: ConversationLog, chatId: number, cbId: string, data: string, cardMessageId: number, sessions: ChatSessions, approvals?: Approvals): Promise<void>;
91
+ export declare function pollLoop(tg: Telegram, auth: AuthContext, state: BridgeState, h: DbHandles, log: ConversationLog, sessions: ChatSessions, signal: AbortSignal, approvals?: Approvals): Promise<void>;
71
92
  /**
72
93
  * Startup notice for the fresh-install state (no ALLOWED_CHAT_IDS, no bindings).
73
94
  * This is NOT fatal: the bridge runs locked down, every unbound sender is
package/dist/bridge.js CHANGED
@@ -99,6 +99,29 @@ export function interpretResult(r) {
99
99
  }
100
100
  return out;
101
101
  }
102
+ /** TELEGRAM_APPROVALS must be an explicit yes; anything else leaves approvals off. */
103
+ export function approvalsEnabled(env) {
104
+ return /^(1|true|yes|on)$/i.test((env['TELEGRAM_APPROVALS'] ?? '').trim());
105
+ }
106
+ // Below Telegram's 4096-character message limit, with room for the header.
107
+ const APPROVAL_DETAIL_MAX = 3500;
108
+ const APPROVAL_KEYBOARD = { inline_keyboard: [[{ text: '✅ Approve', callback_data: 'gate:approve' }, { text: '❌ Deny', callback_data: 'gate:deny' }]] };
109
+ /**
110
+ * What the owner is asked to approve: the exact command for Bash, the tool input
111
+ * otherwise. Null when it cannot be shown whole and unaltered (too long, or it
112
+ * contains a code fence): an approval must never be asked on partial content.
113
+ */
114
+ export function formatApprovalRequest(d) {
115
+ const command = d.name === 'Bash' && typeof d.input['command'] === 'string' ? d.input['command'] : undefined;
116
+ const detail = command ?? JSON.stringify(d.input, null, 2);
117
+ if (detail.length > APPROVAL_DETAIL_MAX || detail.includes('```'))
118
+ return null;
119
+ // The tool name and the detail go inside one block with an explicit language
120
+ // tag: the HTML formatter drops a first line that looks like a tag (it would
121
+ // eat a command's own first line, e.g. "sudo") and applies markdown outside a
122
+ // block (it would restyle the underscores of an MCP tool name).
123
+ return `🔐 Approval needed\n\`\`\`text\n${d.name}\n\n${detail}\n\`\`\``;
124
+ }
102
125
  export function telegramSourceKind(message) {
103
126
  if (message.forward_origin || message.forward_from || message.forward_from_chat || message.reply_to_message)
104
127
  return 'quoted_text';
@@ -188,12 +211,12 @@ function saveState(s) {
188
211
  }
189
212
  // --- persistent Claude sessions ---
190
213
  /** `claudeArgs`: extra Claude arguments the operator set for this install (FORTYTWO_CLAUDE_ARGS). */
191
- export function createBridgeSessions(tg, state, h, log, claudeArgs = []) {
214
+ export function createBridgeSessions(tg, state, h, log, claudeArgs = [], approvals) {
192
215
  const runner = createRunner({ bin: CLAUDE_BIN, cwd: ROOT, env: { CLAUDE_CODE_DISABLE_AUTO_MEMORY: '1' }, args: [...claudeArgs] });
193
216
  return new ChatSessions(runner, tg, {
194
217
  ids: state.sessions,
195
218
  persist: () => saveState(state),
196
- onResult: (chatId, result, text) => respond(tg, h, log, state, chatId, result, text),
219
+ onResult: (chatId, result, text) => respond(tg, h, log, state, chatId, result, text, approvals),
197
220
  });
198
221
  }
199
222
  // --- I/O glue ---
@@ -218,16 +241,60 @@ async function sendReply(tg, chatId, placeholderId, text) {
218
241
  }
219
242
  await tg.sendMessage(chatId, text || '(no reply)');
220
243
  }
221
- async function respond(tg, h, log, state, chatId, result, text) {
244
+ /**
245
+ * Ask the owner about a deferred call. Only for a call the approval store has
246
+ * staged as pending: a deferral from anything else cannot be decided here.
247
+ * Returns false (caller falls back to the plain notice) when it does not apply.
248
+ */
249
+ async function requestApproval(tg, state, chatId, result, approvals) {
250
+ const { deferred, sessionId } = interpretResult(result.raw);
251
+ if (!deferred)
252
+ return false;
253
+ try {
254
+ if ((await approvals.getByToolUseId(deferred.id))?.status !== 'pending')
255
+ return false;
256
+ const text = formatApprovalRequest(deferred);
257
+ if (text === null) {
258
+ // No buttons: the owner would be deciding on something they cannot read here.
259
+ await tg.sendMessage(chatId, `🔐 ${deferred.name} is waiting for approval, but its input is too long to show in full here, so it cannot be approved from Telegram. Nothing was run. Review it on the host with \`npx fortytwo-gate list\`.`);
260
+ return true;
261
+ }
262
+ const card = await tg.sendMessage(chatId, text, APPROVAL_KEYBOARD);
263
+ state.pending = { ...state.pending, [chatId]: { toolUseId: deferred.id, sessionId: sessionId ?? state.sessions[chatId], toolName: deferred.name, cardMessageId: card.message_id } };
264
+ saveState(state);
265
+ return true;
266
+ }
267
+ catch (e) {
268
+ console.error(`[bridge] chat ${chatId}: approval request failed: ${e?.message ?? e}`);
269
+ return false;
270
+ }
271
+ }
272
+ /** Record the owner's decision on the chat's waiting request and retire its card. */
273
+ async function decidePending(tg, state, chatId, approvals, status) {
274
+ const pending = state.pending?.[chatId];
275
+ if (!pending || pending.cardMessageId === undefined)
276
+ return undefined;
277
+ // Forget the card first: a second tap or message must not decide twice.
278
+ delete state.pending[chatId];
279
+ saveState(state);
280
+ const recorded = await approvals.setDecisionByToolUseId(pending.toolUseId, status, `telegram:${chatId}`);
281
+ const label = !recorded ? 'No longer pending' : status === 'approved' ? '✅ Approved' : '❌ Denied';
282
+ await tg.editMessageText(chatId, pending.cardMessageId, `${label}: ${pending.toolName ?? 'tool'}`).catch(() => { });
283
+ console.log(`[bridge] chat ${chatId}: approval ${pending.toolUseId} ${recorded ? status : 'not pending anymore'}`);
284
+ return { recorded, sessionId: pending.sessionId };
285
+ }
286
+ async function respond(tg, h, log, state, chatId, result, text, approvals) {
222
287
  // A deferral is terminal even when Claude supplies no deferred-tool details.
223
288
  if (result.raw?.stop_reason === 'tool_deferred') {
289
+ if (approvals && await requestApproval(tg, state, chatId, result, approvals))
290
+ return true;
224
291
  await tg.sendMessage(chatId, 'Claude deferred this action. Telegram cannot authorize it. Resolve it through the configured Claude/Gate approval workflow.');
225
292
  return true;
226
293
  }
227
294
  logBridgeEntry(log, { channel: 'telegram', direction: 'outbound', actor: ASSISTANT_ACTOR, kind: 'message', content: text, thread_id: String(chatId) });
228
295
  return false;
229
296
  }
230
- export async function handleInbound(tg, auth, state, h, log, chatId, message, sessions) {
297
+ export async function handleInbound(tg, auth, state, h, log, chatId, message, sessions, approvals) {
231
298
  const text = message.text ?? message.caption ?? '';
232
299
  // --- AUTH GATE (lockdown) -------------------------------------------------
233
300
  // Auth commands (/login, /logout) and the unbound-sender drop are handled
@@ -296,13 +363,37 @@ export async function handleInbound(tg, auth, state, h, log, chatId, message, se
296
363
  }
297
364
  const prompt = buildInboundPrompt(text, attachments);
298
365
  console.log(`[bridge] chat ${chatId}: inbound "${journalContent.slice(0, 50)}" (${attachments.length} att) — waking assistant`);
366
+ // A new message while a request waits answers it with "no": the request is
367
+ // denied and the session resumed first, so Claude sees a refusal for that call
368
+ // (not a retry under a new id) before it reads the message.
369
+ if (approvals) {
370
+ const decided = await decidePending(tg, state, chatId, approvals, 'denied');
371
+ if (decided?.recorded)
372
+ await sessions.resume(chatId, decided.sessionId);
373
+ }
299
374
  await sessions.send(chatId, prompt);
300
375
  }
301
- /** Old approval buttons remain in Telegram history. Never resume or authorize work. */
302
- export async function handleCallback(tg, _state, _h, _log, _chatId, cbId, _data, _cardMessageId, _sessions) {
303
- await tg.answerCallbackQuery(cbId, 'This approval control is no longer supported. No authorization was recorded.').catch(() => { });
376
+ /**
377
+ * A button tap. Only the current approval card of this chat, with approvals
378
+ * enabled, decides anything; every other button (older cards, the pre-1.0.0-4
379
+ * callback format) stays inert and never resumes or authorizes work.
380
+ */
381
+ export async function handleCallback(tg, state, _h, _log, chatId, cbId, data, cardMessageId, sessions, approvals) {
382
+ const action = /^gate:(approve|deny)$/.exec(data)?.[1];
383
+ if (!approvals || !action || state.pending?.[chatId]?.cardMessageId !== cardMessageId) {
384
+ await tg.answerCallbackQuery(cbId, 'This approval control is no longer supported. No authorization was recorded.').catch(() => { });
385
+ return;
386
+ }
387
+ const status = action === 'approve' ? 'approved' : 'denied';
388
+ const decided = await decidePending(tg, state, chatId, approvals, status);
389
+ if (!decided?.recorded) {
390
+ await tg.answerCallbackQuery(cbId, 'This request is no longer pending. Nothing was changed.').catch(() => { });
391
+ return;
392
+ }
393
+ await tg.answerCallbackQuery(cbId, status === 'approved' ? 'Approved' : 'Denied').catch(() => { });
394
+ await sessions.resume(chatId, decided.sessionId);
304
395
  }
305
- export async function pollLoop(tg, auth, state, h, log, sessions, signal) {
396
+ export async function pollLoop(tg, auth, state, h, log, sessions, signal, approvals) {
306
397
  // Pre-build dedup deps once; null when memory is unavailable (channel-only).
307
398
  const replyDeps = makeEnqueueReplyDeps(h);
308
399
  while (!signal.aborted) {
@@ -325,17 +416,17 @@ export async function pollLoop(tg, auth, state, h, log, sessions, signal) {
325
416
  if (chatId === undefined)
326
417
  continue;
327
418
  // Authorization is enforced inside handleInbound (so /login can pass through).
328
- // Legacy callbacks still require Telegram chat authorization.
419
+ // Button taps require Telegram chat authorization like any message.
329
420
  try {
330
421
  if (u.message && hasHandleableContent(u.message)) {
331
- await handleInbound(tg, auth, state, h, log, chatId, u.message, sessions);
422
+ await handleInbound(tg, auth, state, h, log, chatId, u.message, sessions, approvals);
332
423
  }
333
424
  else if (u.callback_query?.data && u.callback_query.message) {
334
425
  if (!isAuthorized(auth, chatId)) {
335
426
  console.log(`[bridge] chat ${chatId}: callback dropped (unbound, lockdown)`);
336
427
  continue;
337
428
  }
338
- await handleCallback(tg, state, h, log, chatId, u.callback_query.id, u.callback_query.data, u.callback_query.message.message_id, sessions);
429
+ await handleCallback(tg, state, h, log, chatId, u.callback_query.id, u.callback_query.data, u.callback_query.message.message_id, sessions, approvals);
339
430
  }
340
431
  }
341
432
  catch (e) {
@@ -411,13 +502,22 @@ async function main() {
411
502
  const state = loadState();
412
503
  console.log(`[bridge] up. bootstrap=${bootstrap.size}, bindings=${store.list('telegram').length}, bindingsDb=${BINDINGS_DB_PATH}`);
413
504
  // Proactive wakes are now handled by @justfortytwo/scheduler (external daemon).
414
- const sessions = createBridgeSessions(tg, state, h, log, claudeArgs);
505
+ // Opt-in (TELEGRAM_APPROVALS): decide gate deferrals from the chat, through the
506
+ // same approvals file the gate's PreToolUse hook reads for this project.
507
+ let approvals;
508
+ if (approvalsEnabled(process.env)) {
509
+ const { JsonlApprovalStore, approvalsPath } = await import('@justfortytwo/gate');
510
+ const path = approvalsPath(ROOT);
511
+ approvals = new JsonlApprovalStore(path);
512
+ console.log(`[bridge] approvals from Telegram: on (store=${path})`);
513
+ }
514
+ const sessions = createBridgeSessions(tg, state, h, log, claudeArgs, approvals);
415
515
  const controller = new AbortController();
416
516
  const shutdown = () => { controller.abort(); void sessions.closeAll(); };
417
517
  process.once('SIGINT', shutdown);
418
518
  process.once('SIGTERM', shutdown);
419
519
  try {
420
- await pollLoop(tg, auth, state, h, log, sessions, controller.signal);
520
+ await pollLoop(tg, auth, state, h, log, sessions, controller.signal, approvals);
421
521
  }
422
522
  finally {
423
523
  controller.abort();
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,13 @@ export declare class ChatSessions {
29
29
  private stopTyping;
30
30
  private stopTimers;
31
31
  private render;
32
+ /**
33
+ * Restart the chat's Claude process on its saved session with no new input.
34
+ * Claude Code then re-runs the tool call it deferred, which is how a decision
35
+ * recorded out of band takes effect; a message sent into the live process would
36
+ * only make Claude retry under a new tool-use id and be deferred again.
37
+ */
38
+ resume(chatId: number, fallbackId?: string): Promise<void>;
32
39
  /** Wait for already queued Telegram delivery, never for a Claude result. */
33
40
  drain(chatId: number): Promise<void>;
34
41
  close(chatId: number): Promise<void>;
@@ -232,6 +232,19 @@ export class ChatSessions {
232
232
  }
233
233
  }
234
234
  }
235
+ /**
236
+ * Restart the chat's Claude process on its saved session with no new input.
237
+ * Claude Code then re-runs the tool call it deferred, which is how a decision
238
+ * recorded out of band takes effect; a message sent into the live process would
239
+ * only make Claude retry under a new tool-use id and be deferred again.
240
+ */
241
+ async resume(chatId, fallbackId) {
242
+ if (!(this.hooks.ids[chatId] ?? fallbackId))
243
+ throw new Error('No saved Claude session to resume');
244
+ await this.close(chatId);
245
+ const chat = await this.getOrCreate(chatId, fallbackId);
246
+ this.activate(chatId, chat);
247
+ }
235
248
  /** Wait for already queued Telegram delivery, never for a Claude result. */
236
249
  async drain(chatId) { await (await this.chats.get(chatId))?.delivery; }
237
250
  async close(chatId) {
@@ -1 +1 @@
1
- {"version":3,"file":"chat-sessions.js","sourceRoot":"","sources":["../src/chat-sessions.ts"],"names":[],"mappings":"AAyBA,6FAA6F;AAC7F,MAAM,OAAO,YAAY;IAMH;IAA+C;IAAuB;IALzE,KAAK,GAAG,IAAI,GAAG,EAAgC,CAAC;IACzD,OAAO,GAAG,KAAK,CAAC;IAChB,QAAQ,CAAiB;IAChB,OAAO,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC9C,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAC7C,YAAoB,MAAqC,EAAU,EAAa,EAAU,KAAY;QAAlF,WAAM,GAAN,MAAM,CAA+B;QAAU,OAAE,GAAF,EAAE,CAAW;QAAU,UAAK,GAAL,KAAK,CAAO;IAAG,CAAC;IAElG,WAAW,CAAC,MAAc,EAAE,UAAmB;QACrD,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAC3G,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;YACzH,MAAM,IAAI,GAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC;YAC9L,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,EAAE;gBACtB,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,QAAQ;oBAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;YAC3E,CAAC,CAAC;YACF,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC5B,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACpC,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;YAC3F,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YACf,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,QAAQ;gBAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnE,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACjC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,MAAc,EAAE,UAAmB,EAAE,KAAK,GAAG,IAAI;QAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACnD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC;QACzB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACzG,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC;YAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAAC,CAAC;QACxC,OAAO,KAAK,EAAE,CAAC;YACb,2EAA2E;YAC3E,IAAI,CAAC,SAAS,EAAE,CAAC;gBAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;gBAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAAC,CAAC;YAC/D,kFAAkF;YAClF,iFAAiF;YACjF,IAAK,KAAe,EAAE,IAAI,KAAK,mBAAmB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjH,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK;oBAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gBACtE,IAAI,KAAK;oBAAE,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;YACjE,CAAC;YACD,yEAAyE;YACzE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,QAAQ,CAAC,MAAc,EAAE,IAAiB;QAChD,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QAClC,IAAI,EAAE,IAAI,IAAI,CAAC,WAAW,KAAK,EAAE,EAAE,CAAC;YAClC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAC5B,IAAI,CAAC;gBAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAAC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;YAAC,CAAC;YACpD,OAAO,KAAK,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;YAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,IAAiB,EAAE,IAAyB;QACxD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YAChG,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,MAAc,EAAE,IAAiB,EAAE,KAAkB;QACjE,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC5B,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,sFAAsF;gBACtF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;gBAC3B,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;gBACxD,IAAI,CAAC,IAAI,CAAC,KAAK;oBAAE,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;wBAC5C,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;wBACvB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;oBAC5D,CAAC,EAAE,IAAI,CAAC,CAAC;gBACT,MAAM;YACR,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAAC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;gBACjD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;gBAC3B,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;gBACzC,+EAA+E;gBAC/E,6EAA6E;gBAC7E,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;gBACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACtB,gFAAgF;gBAChF,4EAA4E;gBAC5E,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;gBAChC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAAE,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;gBAC9F,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;oBAAE,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,wCAAwC,CAAC;gBAC5G,IAAI,CAAC,MAAM,CAAC,IAAI;oBAAE,MAAM,CAAC,IAAI,GAAG,YAAY,CAAC;gBAC7C,qEAAqE;gBACrE,MAAM,KAAK,GAAG,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC;gBACnC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;oBAC1B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;oBACvE,IAAI,CAAC,OAAO;wBAAE,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBACxD,CAAC,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YACD,KAAK,OAAO;gBACV,+EAA+E;gBAC/E,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAAC,OAAO,CAAC,KAAK,CAAC,wBAAwB,MAAM,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBAAC,MAAM;gBAAC,CAAC;gBACxH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,yBAAyB,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gBAChC,MAAM;YACR,KAAK,MAAM;gBACT,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,kBAAkB,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,IAAI,SAAS,oCAAoC,CAAC,CAAC;gBACvH,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC1B,MAAM;YACR,KAAK,OAAO;gBAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAAC,MAAM;YACjD,KAAK,QAAQ;gBAAE,OAAO,CAAC,KAAK,CAAC,wBAAwB,MAAM,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gBAAC,MAAM;YACrF,KAAK,KAAK,CAAC,CAAC,MAAM,CAAC,sEAAsE;QAC3F,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,MAAc,EAAE,IAAiB,EAAE,SAAS,GAAG,KAAK;QACjE,yEAAyE;QACzE,gFAAgF;QAChF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACxE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,GAAG,EAAe,CAAC;QACnE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,2EAA2E;QAC3E,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YACxE,KAAK,MAAM,MAAM,IAAI,OAAO;gBAAE,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU;oBAAE,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YACvH,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACrB,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,OAAO;gBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,IAAI,CAAC,MAAc,EAAE,IAAiB,EAAE,OAAe;QAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACzC,IAAI,MAAM;YAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpG,CAAC;IAEO,QAAQ,CAAC,MAAc,EAAE,IAAiB;QAChD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,0EAA0E;YAC1E,2EAA2E;YAC3E,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACtB,OAAO;YACT,CAAC;YACD,KAAK,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAChE,CAAC,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC;IACZ,CAAC;IACO,UAAU,CAAC,IAAiB;QAClC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAAC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IACtD,CAAC;IACO,UAAU,CAAC,IAAiB;QAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACtB,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAAC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IACnD,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,IAAiB,EAAE,MAAc;QACpE,iFAAiF;QACjF,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YAChD,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrD,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;gBAAE,GAAG,EAAE,CAAC;YACpF,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;YAC3C,KAAK,GAAG,GAAG,CAAC;QACd,CAAC;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACzE,IAAI,IAAI,CAAC,MAAM;gBAAE,OAAO;YACxB,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;YAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACrD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;YACtD,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClC,MAAM,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBACzD,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,KAAK,CAAC,KAAK,CAAC,MAAc,IAAmB,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE9F,KAAK,CAAC,KAAK,CAAC,MAAc;QACxB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACvD,KAAK,MAAM,IAAI,IAAI,QAAQ;YAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAChD,IAAI,CAAC;YACH,qEAAqE;YACrE,MAAM,IAAI,GAAG,MAAM,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YACpD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACpD,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;gBACvC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;gBACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACtB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAC1C,MAAM,IAAI,CAAC,WAAW,CAAC;gBACvB,MAAM,IAAI,CAAC,QAAQ,CAAC;YACtB,CAAC,CAAC,CAAC,CAAC;QACN,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,QAAQ;gBAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,QAAQ;QACN,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAK,IAAI,EAAE;YAC1B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACpE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7E,KAAK,MAAM,MAAM,IAAI,OAAO;gBAAE,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU;oBAAE,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACzH,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;CACF"}
1
+ {"version":3,"file":"chat-sessions.js","sourceRoot":"","sources":["../src/chat-sessions.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -5,5 +5,5 @@ export { TelegramAdapter, type ChannelAdapter, type Challenge, type ChallengeOpt
5
5
  export { MemoryBindingStore, SqliteBindingStore, type BindingStore, type Binding, type ChannelType, } from './bindings.js';
6
6
  export { handleAuthCommand, isAuthorized, isAuthCommand, type AuthContext, type LoginAction, } from './login.js';
7
7
  export { telegramNotifier, enqueueReply, type TelegramNotifierInstance, type Notification, type EnqueueReplyDeps, } from './notify.js';
8
- export { interpretResult, telegramSourceKind, hasHandleableContent, telegramCommandReply, buildInboundPrompt, ingestMessageAttachments, type DeferredTool, type Interpreted, type AttachmentIo, } from './bridge.js';
8
+ export { interpretResult, telegramSourceKind, hasHandleableContent, telegramCommandReply, buildInboundPrompt, ingestMessageAttachments, approvalsEnabled, formatApprovalRequest, type Approvals, type DeferredTool, type Interpreted, type AttachmentIo, } from './bridge.js';
9
9
  export { toConversationEvent, loadConversationLog, noopConversationLog, type ConversationEvent, type ConversationLog, } from './conversation-log.js';
package/dist/index.js CHANGED
@@ -22,7 +22,7 @@ export { handleAuthCommand, isAuthorized, isAuthCommand, } from './login.js';
22
22
  // --- Scheduler notifier adapter + deduped reply enqueuer ---
23
23
  export { telegramNotifier, enqueueReply, } from './notify.js';
24
24
  // --- Bridge turn-loop primitives (owned; pure decision logic is testable) ---
25
- export { interpretResult, telegramSourceKind, hasHandleableContent, telegramCommandReply, buildInboundPrompt, ingestMessageAttachments, } from './bridge.js';
25
+ export { interpretResult, telegramSourceKind, hasHandleableContent, telegramCommandReply, buildInboundPrompt, ingestMessageAttachments, approvalsEnabled, formatApprovalRequest, } from './bridge.js';
26
26
  // --- Conversation log port (owned; implementation is the optional transcript peer) ---
27
27
  export { toConversationEvent, loadConversationLog, noopConversationLog, } from './conversation-log.js';
28
28
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,EAAE;AACF,wEAAwE;AACxE,oFAAoF;AACpF,wEAAwE;AACxE,EAAE;AACF,+CAA+C;AAC/C,wGAAwG;AACxG,qFAAqF;AACrF,qFAAqF;AAErF,oCAAoC;AACpC,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,sBAAsB,EACtB,YAAY,EACZ,kBAAkB,GAMnB,MAAM,eAAe,CAAC;AAEvB,mFAAmF;AACnF,OAAO,EACL,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,eAAe,GAGhB,MAAM,kBAAkB,CAAC;AAE1B,iCAAiC;AACjC,OAAO,EACL,kBAAkB,GAGnB,MAAM,sBAAsB,CAAC;AAE9B,2CAA2C;AAC3C,OAAO,EACL,eAAe,GAIhB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,GAInB,MAAM,eAAe,CAAC;AAEvB,6CAA6C;AAC7C,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,aAAa,GAGd,MAAM,YAAY,CAAC;AAEpB,8DAA8D;AAC9D,OAAO,EACL,gBAAgB,EAChB,YAAY,GAIb,MAAM,aAAa,CAAC;AAErB,+EAA+E;AAC/E,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,wBAAwB,GAIzB,MAAM,aAAa,CAAC;AAErB,wFAAwF;AACxF,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GAGpB,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,EAAE;AACF,wEAAwE;AACxE,oFAAoF;AACpF,wEAAwE;AACxE,EAAE;AACF,+CAA+C;AAC/C,wGAAwG;AACxG,qFAAqF;AACrF,qFAAqF;AAErF,oCAAoC;AACpC,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,sBAAsB,EACtB,YAAY,EACZ,kBAAkB,GAMnB,MAAM,eAAe,CAAC;AAEvB,mFAAmF;AACnF,OAAO,EACL,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,eAAe,GAGhB,MAAM,kBAAkB,CAAC;AAE1B,iCAAiC;AACjC,OAAO,EACL,kBAAkB,GAGnB,MAAM,sBAAsB,CAAC;AAE9B,2CAA2C;AAC3C,OAAO,EACL,eAAe,GAIhB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,GAInB,MAAM,eAAe,CAAC;AAEvB,6CAA6C;AAC7C,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,aAAa,GAGd,MAAM,YAAY,CAAC;AAEpB,8DAA8D;AAC9D,OAAO,EACL,gBAAgB,EAChB,YAAY,GAIb,MAAM,aAAa,CAAC;AAErB,+EAA+E;AAC/E,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,EAChB,qBAAqB,GAKtB,MAAM,aAAa,CAAC;AAErB,wFAAwF;AACxF,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GAGpB,MAAM,uBAAuB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@justfortytwo/telegram",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "Telegram channel adapter for fortytwo: persistent Claude Code sessions per chat, asynchronous replies, deferred-action notices, and login/pairing authorization.",
5
5
  "license": "MIT",
6
6
  "author": {
@@ -61,12 +61,12 @@
61
61
  }
62
62
  },
63
63
  "dependencies": {
64
- "@justfortytwo/gate": "^0.1.0",
64
+ "@justfortytwo/gate": "^1.0.0",
65
65
  "@justfortytwo/runner": "1.0.1",
66
66
  "better-sqlite3": "^12.0.0"
67
67
  },
68
68
  "devDependencies": {
69
- "@justfortytwo/memory": "1.0.0",
69
+ "@justfortytwo/memory": "1.0.1",
70
70
  "@types/better-sqlite3": "^7.6.0",
71
71
  "@types/node": "^20.0.0",
72
72
  "typescript": "^5.4.0",