@polpo-ai/channels 0.15.63 → 0.15.65

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
@@ -102,6 +102,28 @@ limits. `maxMessages` is a conversational preference rather than permission to
102
102
  truncate; additional technical segments are emitted when a provider limit makes
103
103
  them unavoidable.
104
104
 
105
+ ### Proactive delivery
106
+
107
+ Use the same official adapter outside a webhook to send scheduled work,
108
+ notifications, or operator-triggered messages. `post` targets a thread and
109
+ `postChannel` targets a channel. Both initialize the adapter, apply the same
110
+ response policy, and return every provider message ID created by segmentation.
111
+
112
+ ```ts
113
+ const delivery = await runtime.post(
114
+ installation,
115
+ "whatsapp:PHONE_NUMBER_ID:15551234567",
116
+ "Your report is ready.",
117
+ );
118
+
119
+ console.log(delivery.messages);
120
+ // [{ id: "wamid...", threadId: "whatsapp:PHONE_NUMBER_ID:15551234567" }]
121
+ ```
122
+
123
+ Treat the call as successful only when it resolves. A returned message ID means
124
+ the provider accepted the send request; it does not by itself prove that the
125
+ recipient received or read the message.
126
+
105
127
  ## Durable state
106
128
 
107
129
  The default state adapter is in-memory and is appropriate for local development
@@ -116,6 +138,30 @@ const runtime = new ChannelRuntime({
116
138
  });
117
139
  ```
118
140
 
141
+ ## Transport observability
142
+
143
+ Set `onEvent` to receive provider-neutral runtime, turn, delivery, and transport
144
+ coordination events. Queue, burst, and debounce lifecycle events include only
145
+ safe scalar details such as message ID, queue depth, skipped count, and reason;
146
+ locks, credentials, provider payloads, and media bytes are never emitted.
147
+
148
+ ```ts
149
+ const runtime = new ChannelRuntime({
150
+ handleTurn,
151
+ onEvent: async (event) => audit.write(event),
152
+ });
153
+ ```
154
+
155
+ Transport events use the `transport.message.*` namespace. Observability hooks are
156
+ isolated from execution: a logging or audit-store failure cannot fail a webhook,
157
+ agent turn, or provider delivery. Pass `logger` when Chat SDK diagnostic logging
158
+ is also required; Polpo defaults those diagnostics to `warn` while still emitting
159
+ typed transport events.
160
+
161
+ Hooks are best-effort and time-bounded. `observabilityTimeoutMs` defaults to one
162
+ second; a timed-out hook is temporarily suppressed so an unavailable audit store
163
+ cannot repeatedly delay webhook acknowledgement or agent execution.
164
+
119
165
  ## Events and native output
120
166
 
121
167
  `handleEvent` receives a discriminated union for messages, slash commands,
@@ -168,6 +214,36 @@ const handleTurn = createConversationChannelTurnHandler(serverDeps, {
168
214
  });
169
215
  ```
170
216
 
217
+ Applications that map provider users to their own identity can resolve that
218
+ identity before Polpo selects an agent, creates a Session, or calls a model:
219
+
220
+ ```ts
221
+ const handleTurn = createConversationChannelTurnHandler(serverDeps, {
222
+ agent: (turn) => resolveAgentForInstallation(turn.installationId),
223
+ resolveInvocation: async (turn) => {
224
+ const resolution = await resolveApplicationIdentity(turn);
225
+ if (resolution.kind === "pairing") {
226
+ return { disposition: "consume", reply: resolution.reply };
227
+ }
228
+ return {
229
+ disposition: "dispatch",
230
+ user: resolution.userId,
231
+ metadata: {
232
+ tenantId: resolution.tenantId,
233
+ siteId: resolution.siteId,
234
+ grant: resolution.grant,
235
+ },
236
+ };
237
+ },
238
+ });
239
+ ```
240
+
241
+ `consume` returns directly to the provider and never enters model history.
242
+ `dispatch` supplies immutable trusted invocation identity to custom tools. The
243
+ resolver metadata is not copied into model-visible tool arguments or ordinary
244
+ Session metadata. A configured resolver must fail closed; do not fall back to
245
+ provider identity after resolver errors.
246
+
171
247
  Chat SDK thread history is transport state. Polpo Sessions remain the canonical
172
248
  conversation history used by the model.
173
249
 
@@ -192,6 +268,50 @@ This exposes:
192
268
  The route without a key is useful only when the resolver has another trusted,
193
269
  host-controlled installation binding.
194
270
 
271
+ ## WhatsApp Cloud API
272
+
273
+ Create a Meta app with the WhatsApp product and provision a Cloud API phone
274
+ number. A WhatsApp installation requires four server-side values:
275
+
276
+ ```ts
277
+ const installation = {
278
+ id: "channel_whatsapp_support",
279
+ provider: "whatsapp",
280
+ credentialRevision: "secret-version-1",
281
+ credentials: {
282
+ accessToken: process.env.WHATSAPP_ACCESS_TOKEN!,
283
+ appSecret: process.env.WHATSAPP_APP_SECRET!,
284
+ phoneNumberId: process.env.WHATSAPP_PHONE_NUMBER_ID!,
285
+ verifyToken: process.env.WHATSAPP_VERIFY_TOKEN!,
286
+ },
287
+ } as const;
288
+ ```
289
+
290
+ Register an opaque installation URL in Meta, for example
291
+ `https://api.example.com/channels/whatsapp/<opaque-route-key>`. Route both the
292
+ GET verification challenge and signed POST notifications to
293
+ `dispatchChannelWebhook` without parsing or rewriting the body. Resolve the
294
+ opaque key to exactly one installation before the official adapter verifies the
295
+ request. Never route by a phone number or account ID taken from an unverified
296
+ payload.
297
+
298
+ The adapter normalizes inbound text, replies, images, audio, video, and files.
299
+ Attachment bytes are fetched lazily through authenticated provider requests.
300
+ The host decides size limits, transcription, model input support, durable
301
+ Session routing, and retention. Duplicate webhook deliveries are suppressed by
302
+ the configured state adapter; use shared durable state in a multi-replica host.
303
+
304
+ WhatsApp's 24-hour customer service window and template approval rules still
305
+ apply. `ChannelRuntime.post` sends normal conversation content; approved
306
+ business-initiated templates are not part of the provider-neutral Polpo output
307
+ contract yet.
308
+
309
+ The Chat SDK WhatsApp adapter pinned by this release does not expose Meta
310
+ `statuses` notifications as normalized delivered/read/failed events. Therefore
311
+ `delivery.completed` means the provider accepted the send request, not that the
312
+ recipient received or read it. Do not use it as an authoritative delivery
313
+ receipt until the upstream adapter exposes that lifecycle.
314
+
195
315
  ## Provider behavior
196
316
 
197
317
  - Streams are delegated to the official Chat SDK adapter. Slack streams
@@ -199,6 +319,10 @@ host-controlled installation binding.
199
319
  and WhatsApp buffers until completion.
200
320
  - Long non-streaming text is split at semantic boundaries without silently
201
321
  truncating output.
322
+ - Convenience output containing text and files is serialized into observable
323
+ provider operations for Slack and WhatsApp. If a later upload fails after an
324
+ earlier send succeeds, an exact webhook retry does not replay the agent turn
325
+ and duplicate content that was already accepted.
202
326
  - Typing indicator failures are observable but do not fail an agent turn.
203
327
  - Inbound files remain lazy when the provider supports authenticated fetching.
204
328
  - Discord HTTP interactions are supported by the official webhook adapter;
package/dist/index.d.ts CHANGED
@@ -2,5 +2,5 @@ export { ChannelRuntime } from "./runtime.js";
2
2
  export { channelProviderCapabilities, createOfficialChannelAdapter, } from "./providers.js";
3
3
  export { channelMessageHardLimit, normalizeChannelResponseDeliveryPolicy, segmentChannelText, } from "./response.js";
4
4
  export { dispatchChannelWebhook, isChannelProviderId, type DispatchChannelWebhookInput, } from "./webhook.js";
5
- export { CHANNEL_PROVIDER_IDS, type ChannelActionEvent, type ChannelAdapterFactory, type ChannelAttachment, type ChannelAuthor, type ChannelCapabilitySupport, type ChannelConcurrencyPolicy, type ChannelEventCoordinator, type ChannelEventHandler, type ChannelEventResult, type ChannelInboundMessage, type ChannelInboundEvent, type ChannelInboundTurn, type ChannelInstallation, type ChannelInstallationResolver, type ChannelInstallationResolverInput, type ChannelMessageEvent, type ChannelModalCloseEvent, type ChannelModalSubmitEvent, type ChannelNativePost, type ChannelOptionsLoadEvent, type ChannelOutputFile, type ChannelOutputStream, type ChannelProviderId, type ChannelProviderCapabilities, type ChannelReactionEvent, type ChannelResponseDeliveryPolicy, type ChannelRuntimeEvent, type ChannelRuntimeOptions, type ChannelStateFactory, type ChannelStateAdapter, type ChannelStateLock, type ChannelStateQueueEntry, type ChannelTurnHandler, type ChannelTurnCoordinator, type ChannelTurnResult, type ChannelWebhookOptions, type ChannelSlashCommandEvent, type DiscordChannelInstallation, type SlackChannelInstallation, type TelegramChannelInstallation, type WhatsAppChannelInstallation, } from "./types.js";
5
+ export { CHANNEL_PROVIDER_IDS, type ChannelActionEvent, type ChannelAdapterFactory, type ChannelAttachment, type ChannelAuthor, type ChannelCapabilitySupport, type ChannelConcurrencyPolicy, type ChannelDeliveryMessage, type ChannelDeliveryResult, type ChannelEventCoordinator, type ChannelEventHandler, type ChannelEventResult, type ChannelInboundMessage, type ChannelInboundEvent, type ChannelInboundTurn, type ChannelInstallation, type ChannelInstallationResolver, type ChannelInstallationResolverInput, type ChannelMessageEvent, type ChannelModalCloseEvent, type ChannelModalSubmitEvent, type ChannelNativePost, type ChannelOptionsLoadEvent, type ChannelOutputFile, type ChannelOutputStream, type ChannelProviderId, type ChannelProviderCapabilities, type ChannelReactionEvent, type ChannelResponseDeliveryPolicy, type ChannelRuntimeEvent, type ChannelRuntimeOptions, type ChannelStateFactory, type ChannelStateAdapter, type ChannelStateLock, type ChannelStateQueueEntry, type ChannelTurnHandler, type ChannelTurnCoordinator, type ChannelTurnResult, type ChannelWebhookOptions, type ChannelSlashCommandEvent, type DiscordChannelInstallation, type SlackChannelInstallation, type TelegramChannelInstallation, type WhatsAppChannelInstallation, } from "./types.js";
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,uBAAuB,EACvB,sCAAsC,EACtC,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,KAAK,2BAA2B,GACjC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,oBAAoB,EACpB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EAChC,KAAK,gCAAgC,EACrC,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EACzB,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,GACjC,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,uBAAuB,EACvB,sCAAsC,EACtC,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,KAAK,2BAA2B,GACjC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,oBAAoB,EACpB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EAChC,KAAK,gCAAgC,EACrC,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EACzB,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,GACjC,MAAM,YAAY,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,uBAAuB,EACvB,sCAAsC,EACtC,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,sBAAsB,EACtB,mBAAmB,GAEpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,oBAAoB,GA0CrB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,uBAAuB,EACvB,sCAAsC,EACtC,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,sBAAsB,EACtB,mBAAmB,GAEpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,oBAAoB,GA4CrB,MAAM,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../src/response.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,6BAA6B,EAC9B,MAAM,YAAY,CAAC;AAgBpB,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAE3E;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,EAAE,MAAM,EACZ,gBAAgB,CAAC,EAAE,6BAA6B,GAC/C,MAAM,EAAE,CAoCV;AAED,wBAAgB,sCAAsC,CACpD,KAAK,EAAE,OAAO,GACb,6BAA6B,GAAG,SAAS,CAmC3C"}
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../src/response.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,6BAA6B,EAC9B,MAAM,YAAY,CAAC;AAgBpB,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAE3E;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,EAAE,MAAM,EACZ,gBAAgB,CAAC,EAAE,6BAA6B,GAC/C,MAAM,EAAE,CAqCV;AAED,wBAAgB,sCAAsC,CACpD,KAAK,EAAE,OAAO,GACb,6BAA6B,GAAG,SAAS,CAmC3C"}
package/dist/response.js CHANGED
@@ -30,7 +30,7 @@ export function segmentChannelText(provider, text, responseDelivery) {
30
30
  const preferredMaximum = Math.min(hardLimit, Math.max(targetCharacters + 1, Math.floor(targetCharacters * 1.35)));
31
31
  while (remaining.length > preferredMaximum
32
32
  && segments.length < maxMessages - 1) {
33
- const splitAt = findSemanticSplit(remaining, targetCharacters, preferredMaximum);
33
+ const splitAt = findSemanticSplit(remaining, targetCharacters, preferredMaximum, hardLimit);
34
34
  const part = remaining.slice(0, splitAt);
35
35
  if (part)
36
36
  segments.push(part);
@@ -85,24 +85,43 @@ function boundedInteger(value, label, min, max) {
85
85
  }
86
86
  return Number(value);
87
87
  }
88
- function findSemanticSplit(text, softLimit, hardLimit) {
88
+ function findSemanticSplit(text, softLimit, hardLimit, absoluteHardLimit = hardLimit) {
89
+ const fenceEnd = fencedBlockEndAfter(text, hardLimit, absoluteHardLimit);
90
+ if (fenceEnd !== undefined)
91
+ return fenceEnd;
89
92
  const window = text.slice(0, hardLimit + 1);
90
93
  const preferred = ["\n\n", "\n", ". ", "! ", "? ", "; ", ", ", " "];
91
94
  for (const delimiter of preferred) {
92
95
  const index = window.lastIndexOf(delimiter, hardLimit);
93
- if (index >= softLimit)
94
- return index + delimiter.length;
96
+ const splitAt = index + delimiter.length;
97
+ if (index >= softLimit && !insideFencedBlock(text, splitAt))
98
+ return splitAt;
95
99
  }
96
100
  // Prefer a coherent earlier boundary over a hard cut when no good split
97
101
  // exists in the ideal window. Avoid producing a tiny leading segment.
98
102
  const minimumUsefulLength = Math.floor(hardLimit * 0.35);
99
103
  for (const delimiter of preferred) {
100
104
  const index = window.lastIndexOf(delimiter, softLimit);
101
- if (index >= minimumUsefulLength)
102
- return index + delimiter.length;
105
+ const splitAt = index + delimiter.length;
106
+ if (index >= minimumUsefulLength && !insideFencedBlock(text, splitAt)) {
107
+ return splitAt;
108
+ }
103
109
  }
104
110
  return avoidSplittingSurrogatePair(text, hardLimit);
105
111
  }
112
+ function fencedBlockEndAfter(text, preferredLimit, absoluteLimit = preferredLimit) {
113
+ if (!insideFencedBlock(text, preferredLimit))
114
+ return undefined;
115
+ const closingFence = text.indexOf("```", preferredLimit);
116
+ if (closingFence < 0)
117
+ return undefined;
118
+ const lineEnd = text.indexOf("\n", closingFence + 3);
119
+ const splitAt = lineEnd < 0 ? closingFence + 3 : lineEnd + 1;
120
+ return splitAt <= absoluteLimit ? splitAt : undefined;
121
+ }
122
+ function insideFencedBlock(text, index) {
123
+ return (text.slice(0, index).match(/```/g)?.length ?? 0) % 2 === 1;
124
+ }
106
125
  function avoidSplittingSurrogatePair(text, index) {
107
126
  if (index <= 0 || index >= text.length)
108
127
  return index;
@@ -1 +1 @@
1
- {"version":3,"file":"response.js","sourceRoot":"","sources":["../src/response.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../src/response.ts"],"names":[],"mappings":"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"}
package/dist/runtime.d.ts CHANGED
@@ -1,12 +1,15 @@
1
- import type { ChannelInstallation, ChannelRuntimeOptions, ChannelTurnResult, ChannelWebhookOptions } from "./types.js";
1
+ import type { ChannelDeliveryResult, ChannelInstallation, ChannelRuntimeOptions, ChannelTurnResult, ChannelWebhookOptions } from "./types.js";
2
2
  export declare class ChannelRuntime {
3
3
  private readonly entries;
4
+ private readonly pendingEvents;
4
5
  private readonly pendingInstallations;
5
6
  private readonly pendingTurns;
7
+ private observabilitySuppressedUntil;
6
8
  private readonly options;
7
9
  constructor(options: ChannelRuntimeOptions);
8
10
  handleWebhook(installation: ChannelInstallation, request: Request, options?: ChannelWebhookOptions): Promise<Response>;
9
- post(installation: ChannelInstallation, threadId: string, result: ChannelTurnResult | string): Promise<void>;
11
+ post(installation: ChannelInstallation, threadId: string, result: ChannelTurnResult | string): Promise<ChannelDeliveryResult>;
12
+ postChannel(installation: ChannelInstallation, channelId: string, result: ChannelTurnResult | string): Promise<ChannelDeliveryResult>;
10
13
  invalidate(installationId: string): Promise<void>;
11
14
  shutdown(): Promise<void>;
12
15
  get size(): number;
@@ -28,5 +31,7 @@ export declare class ChannelRuntime {
28
31
  private prune;
29
32
  private evict;
30
33
  private emit;
34
+ private emitDetached;
35
+ private flushPendingEvents;
31
36
  }
32
37
  //# sourceMappingURL=runtime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAMV,mBAAmB,EAEnB,qBAAqB,EAErB,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAwBpB,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmC;IAC3D,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA4C;IACjF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoC;IACjE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAEE;gBAEd,OAAO,EAAE,qBAAqB;IAWpC,aAAa,CACjB,YAAY,EAAE,mBAAmB,EACjC,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,QAAQ,CAAC;IAiBd,IAAI,CACR,YAAY,EAAE,mBAAmB,EACjC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,iBAAiB,GAAG,MAAM,GACjC,OAAO,CAAC,IAAI,CAAC;IAeV,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOjD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAK/B,IAAI,IAAI,IAAI,MAAM,CAEjB;YAEa,WAAW;YAyBX,WAAW;YA2DX,aAAa;YAsCb,kBAAkB;YA8ElB,YAAY;YAqCZ,cAAc;YAkCd,iBAAiB;YAsCjB,gBAAgB;YAiChB,iBAAiB;YAsBjB,WAAW;YAaX,WAAW;YAuFX,YAAY;YA+EZ,sBAAsB;YAetB,iBAAiB;YAiBjB,OAAO;YAiFP,KAAK;YAgBL,KAAK;YAUL,IAAI;CAGnB"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAGV,qBAAqB,EAKrB,mBAAmB,EAGnB,qBAAqB,EAErB,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAoCpB,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmC;IAC3D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4B;IAC1D,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA4C;IACjF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoC;IACjE,OAAO,CAAC,4BAA4B,CAAK;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAEE;gBAEd,OAAO,EAAE,qBAAqB;IAWpC,aAAa,CACjB,YAAY,EAAE,mBAAmB,EACjC,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,QAAQ,CAAC;IA+Bd,IAAI,CACR,YAAY,EAAE,mBAAmB,EACjC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,iBAAiB,GAAG,MAAM,GACjC,OAAO,CAAC,qBAAqB,CAAC;IAgB3B,WAAW,CACf,YAAY,EAAE,mBAAmB,EACjC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,iBAAiB,GAAG,MAAM,GACjC,OAAO,CAAC,qBAAqB,CAAC;IAe3B,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOjD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAM/B,IAAI,IAAI,IAAI,MAAM,CAEjB;YAEa,WAAW;YAyBX,WAAW;YAyFX,aAAa;YAkEb,kBAAkB;YA8ElB,YAAY;YAqCZ,cAAc;YAkCd,iBAAiB;YAsCjB,gBAAgB;YAiChB,iBAAiB;YAsBjB,WAAW;YAaX,WAAW;YAuFX,YAAY;YA+EZ,sBAAsB;YAetB,iBAAiB;YAiBjB,OAAO;YA6HP,KAAK;YAgBL,KAAK;YAUL,IAAI;IA4BlB,OAAO,CAAC,YAAY;YAMN,kBAAkB;CAKjC"}
package/dist/runtime.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { MemoryStateAdapter } from "@chat-adapter/state-memory";
2
- import { Chat, } from "chat";
2
+ import { Chat, ConsoleLogger, } from "chat";
3
3
  import { createOfficialChannelAdapter } from "./providers.js";
4
4
  import { segmentChannelText } from "./response.js";
5
5
  const DEFAULT_CONCURRENCY = {
@@ -10,10 +10,22 @@ const DEFAULT_CONCURRENCY = {
10
10
  strategy: "burst",
11
11
  };
12
12
  const DEFAULT_DEDUPE_TTL_MS = 10 * 60_000;
13
+ const DEFAULT_OBSERVABILITY_TIMEOUT_MS = 1_000;
14
+ const OBSERVABILITY_TIMEOUT_BACKOFF_MS = 30_000;
15
+ class ChannelDeliveryFailure extends Error {
16
+ deliveredMessages;
17
+ constructor(error, deliveredMessages) {
18
+ super(errorMessage(error), { cause: error });
19
+ this.deliveredMessages = deliveredMessages;
20
+ this.name = "ChannelDeliveryFailure";
21
+ }
22
+ }
13
23
  export class ChannelRuntime {
14
24
  entries = new Map();
25
+ pendingEvents = new Set();
15
26
  pendingInstallations = new Map();
16
27
  pendingTurns = new Map();
28
+ observabilitySuppressedUntil = 0;
17
29
  options;
18
30
  constructor(options) {
19
31
  if (!options.handleEvent && !options.handleTurn) {
@@ -37,18 +49,42 @@ export class ChannelRuntime {
37
49
  if (!webhook) {
38
50
  throw new Error(`Missing Chat SDK webhook for ${installation.provider}`);
39
51
  }
40
- return webhook(request, options);
52
+ const webhookOptions = options?.waitUntil
53
+ ? {
54
+ ...options,
55
+ waitUntil: (task) => {
56
+ options.waitUntil?.(Promise.resolve(task).finally(() => this.flushPendingEvents()));
57
+ },
58
+ }
59
+ : options;
60
+ try {
61
+ return await webhook(request, webhookOptions);
62
+ }
63
+ finally {
64
+ await this.flushPendingEvents();
65
+ }
41
66
  }
42
67
  async post(installation, threadId, result) {
43
68
  const entry = await this.getOrCreate(installation);
44
69
  entry.lastUsedAt = Date.now();
70
+ await entry.chat.initialize();
45
71
  const thread = entry.chat.thread(threadId);
46
- await this.deliver(installation, {
72
+ return this.deliver(installation, {
47
73
  channelId: thread.channelId,
48
74
  postable: thread,
49
75
  threadId: thread.id,
50
76
  }, typeof result === "string" ? { text: result } : result);
51
77
  }
78
+ async postChannel(installation, channelId, result) {
79
+ const entry = await this.getOrCreate(installation);
80
+ entry.lastUsedAt = Date.now();
81
+ await entry.chat.initialize();
82
+ const channel = entry.chat.channel(channelId);
83
+ return this.deliver(installation, {
84
+ channelId: channel.id,
85
+ postable: channel,
86
+ }, typeof result === "string" ? { text: result } : result);
87
+ }
52
88
  async invalidate(installationId) {
53
89
  const matching = [...this.entries.values()].filter((entry) => entry.installation.id === installationId);
54
90
  await Promise.all(matching.map((entry) => this.evict(entry)));
@@ -56,6 +92,7 @@ export class ChannelRuntime {
56
92
  async shutdown() {
57
93
  const entries = [...this.entries.values()];
58
94
  await Promise.all(entries.map((entry) => this.evict(entry)));
95
+ await this.flushPendingEvents();
59
96
  }
60
97
  get size() {
61
98
  return this.entries.size;
@@ -95,13 +132,25 @@ export class ChannelRuntime {
95
132
  ?? DEFAULT_CONCURRENCY,
96
133
  dedupeTtlMs: this.options.dedupeTtlMs,
97
134
  fallbackStreamingPlaceholderText: this.options.fallbackStreamingPlaceholderText ?? null,
135
+ logger: createRuntimeLogger(installation, this.options.logger, (event) => this.emitDetached(event)),
136
+ onLockConflict: (threadId, message) => {
137
+ this.emitDetached({
138
+ details: { reason: "lock-busy" },
139
+ installationId: installation.id,
140
+ messageId: message.id,
141
+ name: "transport.message.dropped",
142
+ provider: installation.provider,
143
+ threadId,
144
+ });
145
+ return "drop";
146
+ },
98
147
  state,
99
148
  streamingUpdateIntervalMs: this.options.streamingUpdateIntervalMs,
100
149
  threadHistory: { maxMessages: 30, ttlMs: 24 * 60 * 60_000 },
101
150
  userName: installation.userName ?? "polpo",
102
151
  });
103
- const handler = (thread, message, context) => this.handleMessage(installation, thread, message, context);
104
- chat.onDirectMessage((thread, message, _channel, context) => this.handleMessage(installation, thread, message, context));
152
+ const handler = (thread, message, context) => this.handleMessage(installation, adapter.name, state, thread, message, context);
153
+ chat.onDirectMessage((thread, message, _channel, context) => this.handleMessage(installation, adapter.name, state, thread, message, context));
105
154
  chat.onNewMention(handler);
106
155
  chat.onNewMessage(/[\s\S]*/, handler);
107
156
  chat.onSubscribedMessage(handler);
@@ -127,35 +176,54 @@ export class ChannelRuntime {
127
176
  });
128
177
  return entry;
129
178
  }
130
- async handleMessage(installation, thread, message, context) {
131
- await thread.subscribe();
132
- const messages = await Promise.all([...(context?.skipped ?? []), message].map(mapMessage));
133
- const messageIds = messages.map((item) => item.id);
134
- const concurrency = installation.concurrency
135
- ?? this.options.concurrency
136
- ?? DEFAULT_CONCURRENCY;
137
- const turn = {
138
- channelId: thread.channelId,
139
- coordination: {
140
- grouped: messages.length > 1,
141
- messageCount: messages.length,
142
- messageIds,
143
- primaryMessageId: message.id,
144
- strategy: concurrency.strategy,
145
- },
146
- credentialRevision: installation.credentialRevision,
147
- installationId: installation.id,
148
- isDirectMessage: thread.isDM,
149
- messages,
150
- provider: installation.provider,
151
- providerEventId: message.id,
152
- threadId: thread.id,
153
- };
154
- await this.executeTurn(installation, {
155
- channelId: thread.channelId,
156
- postable: thread,
157
- threadId: thread.id,
158
- }, turn);
179
+ async handleMessage(installation, adapterName, state, thread, message, context) {
180
+ const providerEventId = messageProviderEventId(installation.provider, thread.id, message);
181
+ const hasLogicalDedupe = providerEventId !== message.id;
182
+ if (hasLogicalDedupe
183
+ && !await this.acceptEvent(state, installation, "message", providerEventId)) {
184
+ return;
185
+ }
186
+ try {
187
+ await thread.subscribe();
188
+ const messages = await Promise.all([...(context?.skipped ?? []), message].map(mapMessage));
189
+ const messageIds = messages.map((item) => item.id);
190
+ const concurrency = installation.concurrency
191
+ ?? this.options.concurrency
192
+ ?? DEFAULT_CONCURRENCY;
193
+ const turn = {
194
+ channelId: thread.channelId,
195
+ coordination: {
196
+ grouped: messages.length > 1,
197
+ messageCount: messages.length,
198
+ messageIds,
199
+ primaryMessageId: message.id,
200
+ strategy: concurrency.strategy,
201
+ },
202
+ credentialRevision: installation.credentialRevision,
203
+ installationId: installation.id,
204
+ isDirectMessage: thread.isDM,
205
+ messages,
206
+ provider: installation.provider,
207
+ providerEventId,
208
+ threadId: thread.id,
209
+ };
210
+ await this.executeTurn(installation, {
211
+ channelId: thread.channelId,
212
+ postable: thread,
213
+ threadId: thread.id,
214
+ }, turn);
215
+ }
216
+ catch (error) {
217
+ if (!(error instanceof ChannelDeliveryFailure && error.deliveredMessages > 0)) {
218
+ await Promise.all([
219
+ state.delete(`dedupe:${adapterName}:${message.id}`),
220
+ hasLogicalDedupe
221
+ ? state.delete(`polpo:event:${installation.provider}:${installation.id}:message:${providerEventId}`)
222
+ : Promise.resolve(),
223
+ ]).catch(() => undefined);
224
+ }
225
+ throw error;
226
+ }
159
227
  }
160
228
  async handleSlashCommand(installation, state, event) {
161
229
  const providerEventId = providerEventIdFor(event.raw, [
@@ -534,14 +602,23 @@ export class ChannelRuntime {
534
602
  }
535
603
  }
536
604
  async deliver(installation, target, result, sourceMessageId) {
605
+ const messages = [];
606
+ let deliveredPosts = 0;
607
+ const post = async (message) => {
608
+ const sent = await target.postable.post(message);
609
+ deliveredPosts += 1;
610
+ const normalized = deliveryMessage(sent);
611
+ if (normalized)
612
+ messages.push(normalized);
613
+ };
537
614
  try {
538
615
  validateTurnResult(result);
539
616
  if (result.posts?.length) {
540
- for (const post of result.posts)
541
- await target.postable.post(post);
617
+ for (const nativePost of result.posts)
618
+ await post(nativePost);
542
619
  }
543
620
  else if (result.stream && !result.files?.length && !result.text) {
544
- await target.postable.post(result.stream);
621
+ await post(result.stream);
545
622
  }
546
623
  else {
547
624
  const streamedText = result.stream
@@ -563,30 +640,61 @@ export class ChannelRuntime {
563
640
  name: file.filename,
564
641
  type: file.type,
565
642
  }));
566
- const genericFiles = result.files?.some((file) => file.type)
567
- ? files?.filter((_file, index) => !result.files?.[index]?.type)
568
- : files;
569
- if (segments.length === 0 && files?.length) {
570
- await target.postable.post({
571
- attachments,
572
- files: genericFiles,
573
- markdown: "",
574
- });
575
- }
576
- else {
577
- for (const [index, text] of segments.entries()) {
578
- if (index === 0 && files?.length) {
579
- await target.postable.post({
580
- attachments,
643
+ const genericFiles = files?.filter((_file, index) => !result.files?.[index]?.type);
644
+ const textSegments = segments.length > 0 ? segments : [""];
645
+ const [firstText = "", ...remainingText] = textSegments;
646
+ if (files?.length) {
647
+ if (installation.provider === "slack") {
648
+ if (firstText)
649
+ await post({ markdown: firstText });
650
+ for (const file of files) {
651
+ await post({ files: [file], markdown: "" });
652
+ }
653
+ }
654
+ else if (installation.provider === "discord") {
655
+ await post({ files, markdown: firstText });
656
+ }
657
+ else if (installation.provider === "telegram") {
658
+ if (attachments?.length) {
659
+ await post({ attachments, markdown: firstText });
660
+ }
661
+ if (genericFiles?.length) {
662
+ await post({
581
663
  files: genericFiles,
582
- markdown: text,
664
+ markdown: attachments?.length ? "" : firstText,
583
665
  });
584
666
  }
585
- else {
586
- await target.postable.post(text);
667
+ }
668
+ else {
669
+ if (firstText)
670
+ await post({ markdown: firstText });
671
+ for (const [index, outputFile] of (result.files ?? []).entries()) {
672
+ const file = files[index];
673
+ if (outputFile.type) {
674
+ await post({
675
+ attachments: [{
676
+ data: outputFile.data instanceof ArrayBuffer
677
+ ? new Blob([outputFile.data])
678
+ : outputFile.data,
679
+ mimeType: outputFile.mimeType,
680
+ name: outputFile.filename,
681
+ type: outputFile.type,
682
+ }],
683
+ markdown: "",
684
+ });
685
+ }
686
+ else {
687
+ await post({ files: [file], markdown: "" });
688
+ }
587
689
  }
588
690
  }
589
691
  }
692
+ else if (segments.length > 0) {
693
+ await post({ markdown: firstText });
694
+ }
695
+ for (const text of remainingText) {
696
+ await post({ markdown: text });
697
+ }
590
698
  }
591
699
  await this.emit({
592
700
  channelId: target.channelId,
@@ -596,10 +704,16 @@ export class ChannelRuntime {
596
704
  provider: installation.provider,
597
705
  threadId: target.threadId,
598
706
  });
707
+ return {
708
+ channelId: target.channelId,
709
+ messages,
710
+ ...(target.threadId ? { threadId: target.threadId } : {}),
711
+ };
599
712
  }
600
713
  catch (error) {
601
714
  await this.emit({
602
715
  channelId: target.channelId,
716
+ details: { deliveredMessages: deliveredPosts },
603
717
  error: errorMessage(error),
604
718
  installationId: installation.id,
605
719
  messageId: sourceMessageId,
@@ -607,7 +721,7 @@ export class ChannelRuntime {
607
721
  provider: installation.provider,
608
722
  threadId: target.threadId,
609
723
  });
610
- throw error;
724
+ throw new ChannelDeliveryFailure(error, deliveredPosts);
611
725
  }
612
726
  }
613
727
  async prune() {
@@ -633,9 +747,126 @@ export class ChannelRuntime {
633
747
  });
634
748
  }
635
749
  async emit(event) {
636
- await this.options.onEvent?.(event);
750
+ const onEvent = this.options.onEvent;
751
+ if (!onEvent || Date.now() < this.observabilitySuppressedUntil)
752
+ return;
753
+ const timeoutMs = this.options.observabilityTimeoutMs
754
+ ?? DEFAULT_OBSERVABILITY_TIMEOUT_MS;
755
+ let timeout;
756
+ const hook = Promise.resolve()
757
+ .then(() => onEvent(event))
758
+ .then(() => "settled")
759
+ .catch(() => "settled");
760
+ try {
761
+ const outcome = timeoutMs > 0
762
+ ? await Promise.race([
763
+ hook,
764
+ new Promise((resolve) => {
765
+ timeout = setTimeout(() => resolve("timeout"), timeoutMs);
766
+ }),
767
+ ])
768
+ : await hook;
769
+ if (outcome === "timeout") {
770
+ this.observabilitySuppressedUntil = Date.now()
771
+ + OBSERVABILITY_TIMEOUT_BACKOFF_MS;
772
+ }
773
+ }
774
+ finally {
775
+ if (timeout)
776
+ clearTimeout(timeout);
777
+ }
778
+ }
779
+ emitDetached(event) {
780
+ let task;
781
+ task = this.emit(event).finally(() => this.pendingEvents.delete(task));
782
+ this.pendingEvents.add(task);
783
+ }
784
+ async flushPendingEvents() {
785
+ while (this.pendingEvents.size > 0) {
786
+ await Promise.all([...this.pendingEvents]);
787
+ }
637
788
  }
638
789
  }
790
+ const TRANSPORT_LOG_EVENTS = {
791
+ "message-queued": "transport.message.queued",
792
+ "message-dequeued": "transport.message.dequeued",
793
+ "message-dropped": "transport.message.dropped",
794
+ "message-expired": "transport.message.expired",
795
+ "message-superseded": "transport.message.superseded",
796
+ "message-debouncing": "transport.message.debouncing",
797
+ "message-debounce-reset": "transport.message.debounce_reset",
798
+ };
799
+ const TRANSPORT_DETAIL_KEYS = [
800
+ "debounceMs",
801
+ "droppedId",
802
+ "queueDepth",
803
+ "reason",
804
+ "skippedCount",
805
+ "totalSinceLastHandler",
806
+ ];
807
+ function createRuntimeLogger(installation, configured, emit) {
808
+ const base = typeof configured === "string"
809
+ ? new ConsoleLogger(configured)
810
+ : configured ?? new ConsoleLogger("warn");
811
+ return new RuntimeLogger(base, (message, args) => {
812
+ const name = TRANSPORT_LOG_EVENTS[message];
813
+ if (!name)
814
+ return;
815
+ const data = recordValue(args[0]);
816
+ const threadId = stringValue(data.threadId);
817
+ const messageId = stringValue(data.messageId) ?? stringValue(data.droppedId);
818
+ const details = {};
819
+ for (const key of TRANSPORT_DETAIL_KEYS) {
820
+ const value = data[key];
821
+ if (typeof value === "string"
822
+ || typeof value === "number"
823
+ || typeof value === "boolean"
824
+ || value === null) {
825
+ details[key] = value;
826
+ }
827
+ }
828
+ emit({
829
+ ...(Object.keys(details).length > 0 ? { details } : {}),
830
+ installationId: installation.id,
831
+ ...(messageId ? { messageId } : {}),
832
+ name,
833
+ provider: installation.provider,
834
+ ...(threadId ? { threadId } : {}),
835
+ });
836
+ });
837
+ }
838
+ class RuntimeLogger {
839
+ base;
840
+ observeInfo;
841
+ constructor(base, observeInfo) {
842
+ this.base = base;
843
+ this.observeInfo = observeInfo;
844
+ }
845
+ child(prefix) {
846
+ return new RuntimeLogger(this.base.child(prefix), this.observeInfo);
847
+ }
848
+ debug(message, ...args) {
849
+ this.base.debug(message, ...args);
850
+ }
851
+ info(message, ...args) {
852
+ this.observeInfo(message, args);
853
+ this.base.info(message, ...args);
854
+ }
855
+ warn(message, ...args) {
856
+ this.base.warn(message, ...args);
857
+ }
858
+ error(message, ...args) {
859
+ this.base.error(message, ...args);
860
+ }
861
+ }
862
+ function recordValue(value) {
863
+ return value && typeof value === "object" && !Array.isArray(value)
864
+ ? value
865
+ : {};
866
+ }
867
+ function stringValue(value) {
868
+ return typeof value === "string" && value.length > 0 ? value : undefined;
869
+ }
639
870
  function runtimeKey(installation, defaultConcurrency) {
640
871
  const typing = installation.typingEnabled === false ? "silent" : "typing";
641
872
  const concurrency = JSON.stringify(installation.concurrency ?? defaultConcurrency ?? DEFAULT_CONCURRENCY);
@@ -693,6 +924,16 @@ async function mapMessage(message) {
693
924
  timestamp: message.metadata.dateSent,
694
925
  };
695
926
  }
927
+ function messageProviderEventId(provider, threadId, message) {
928
+ if (provider !== "telegram")
929
+ return message.id;
930
+ const mediaGroupId = asRecord(message.raw)?.media_group_id;
931
+ if ((typeof mediaGroupId === "string" && mediaGroupId.trim())
932
+ || (typeof mediaGroupId === "number" && Number.isFinite(mediaGroupId))) {
933
+ return `${threadId}:media-group:${String(mediaGroupId)}`;
934
+ }
935
+ return message.id;
936
+ }
696
937
  function providerEventIdFor(raw, fallback) {
697
938
  const record = asRecord(raw);
698
939
  for (const key of ["id", "event_id", "trigger_id"]) {
@@ -730,6 +971,13 @@ function asRecord(value) {
730
971
  ? value
731
972
  : null;
732
973
  }
974
+ function deliveryMessage(value) {
975
+ const record = asRecord(value);
976
+ if (!record || typeof record.id !== "string" || typeof record.threadId !== "string") {
977
+ return null;
978
+ }
979
+ return { id: record.id, threadId: record.threadId };
980
+ }
733
981
  function errorMessage(error) {
734
982
  return error instanceof Error ? error.message : String(error);
735
983
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { ActionEvent, Adapter, FormattedContent, LinkPreview, Lock, MessageSubject, ModalResponse, OptionsLoadResult, PostableMessage, QueueEntry, StateAdapter, StreamChunk, StreamEvent, WebhookOptions } from "chat";
1
+ import type { ActionEvent, Adapter, FormattedContent, LinkPreview, Lock, Logger, LogLevel, MessageSubject, ModalResponse, OptionsLoadResult, PostableMessage, QueueEntry, StateAdapter, StreamChunk, StreamEvent, WebhookOptions } from "chat";
2
2
  export type ChannelStateAdapter = StateAdapter;
3
3
  export type ChannelStateLock = Lock;
4
4
  export type ChannelStateQueueEntry = QueueEntry;
@@ -98,6 +98,15 @@ export type ChannelTurnResult = {
98
98
  stream?: ChannelOutputStream;
99
99
  text?: string;
100
100
  };
101
+ export type ChannelDeliveryMessage = {
102
+ id: string;
103
+ threadId: string;
104
+ };
105
+ export type ChannelDeliveryResult = {
106
+ channelId: string;
107
+ messages: ChannelDeliveryMessage[];
108
+ threadId?: string;
109
+ };
101
110
  type ChannelEventBase = {
102
111
  channelId?: string;
103
112
  credentialRevision: string;
@@ -204,10 +213,11 @@ export type WhatsAppChannelInstallation = ChannelInstallationBase & {
204
213
  export type ChannelInstallation = SlackChannelInstallation | TelegramChannelInstallation | DiscordChannelInstallation | WhatsAppChannelInstallation;
205
214
  export type ChannelRuntimeEvent = {
206
215
  channelId?: string;
216
+ details?: Record<string, string | number | boolean | null>;
207
217
  error?: string;
208
218
  installationId: string;
209
219
  messageId?: string;
210
- name: "runtime.created" | "runtime.evicted" | "webhook.received" | "typing.failed" | "event.unhandled" | "event.queued" | "event.steered" | "event.rejected" | "turn.started" | "turn.completed" | "turn.failed" | "delivery.completed" | "delivery.failed";
220
+ name: "runtime.created" | "runtime.evicted" | "webhook.received" | "typing.failed" | "event.unhandled" | "event.queued" | "event.steered" | "event.rejected" | "transport.message.queued" | "transport.message.dequeued" | "transport.message.dropped" | "transport.message.expired" | "transport.message.superseded" | "transport.message.debouncing" | "transport.message.debounce_reset" | "turn.started" | "turn.completed" | "turn.failed" | "delivery.completed" | "delivery.failed";
211
221
  provider: ChannelProviderId;
212
222
  threadId?: string;
213
223
  };
@@ -223,6 +233,8 @@ export type ChannelRuntimeOptions = {
223
233
  handleEvent?: ChannelEventHandler;
224
234
  handleTurn?: ChannelTurnHandler;
225
235
  idleTtlMs?: number;
236
+ observabilityTimeoutMs?: number;
237
+ logger?: Logger | LogLevel;
226
238
  maxInstances?: number;
227
239
  onEvent?: (event: ChannelRuntimeEvent) => void | Promise<void>;
228
240
  shouldStartTyping?: (turn: ChannelInboundTurn) => boolean | Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAqBA,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,OAAO;IACP,UAAU;IACV,SAAS;IACT,UAAU;CACF,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAuBA,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,OAAO;IACP,UAAU;IACV,SAAS;IACT,UAAU;CACF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polpo-ai/channels",
3
- "version": "0.15.63",
3
+ "version": "0.15.65",
4
4
  "description": "Provider-neutral messaging channels for the Polpo runtime, powered by Vercel Chat SDK",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -17,15 +17,15 @@
17
17
  "README.md"
18
18
  ],
19
19
  "dependencies": {
20
- "@chat-adapter/discord": "4.36.0",
21
- "@chat-adapter/slack": "4.36.0",
22
- "@chat-adapter/state-memory": "4.36.0",
23
- "@chat-adapter/telegram": "4.36.0",
24
- "@chat-adapter/whatsapp": "4.36.0",
25
- "chat": "4.36.0"
20
+ "@chat-adapter/discord": "4.37.0",
21
+ "@chat-adapter/slack": "4.37.0",
22
+ "@chat-adapter/state-memory": "4.37.0",
23
+ "@chat-adapter/telegram": "4.37.0",
24
+ "@chat-adapter/whatsapp": "4.37.0",
25
+ "chat": "4.37.0"
26
26
  },
27
27
  "devDependencies": {
28
- "@chat-adapter/tests": "4.36.0",
28
+ "@chat-adapter/tests": "4.37.0",
29
29
  "@vitest/coverage-v8": "4.1.10",
30
30
  "ai": "6.0.182",
31
31
  "typescript": "^5.7.3",