@llblab/pi-telegram 0.53.0 → 0.53.1

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/CHANGELOG.md CHANGED
@@ -4,6 +4,10 @@
4
4
 
5
5
  ## Unreleased
6
6
 
7
+ ## 0.53.1: Text replies without false voice errors
8
+
9
+ - `Voice artifacts`: A reply plan without voice content no longer reaches outbound voice artifact delivery, so plain text replies stop recording "every voice synthesis provider failed" delivery errors; explicit `telegram_voice` markup and genuine synthesis failures keep their existing fallback behavior (#318).
10
+
7
11
  ## 0.53.0: Live Thread rebinding, routing tabs and Windows support
8
12
 
9
13
  - `Live-rebind state`: Atomic same-session Workspace binding/operation publication, fenced recipient application and bounded one-shot cleanup scheduling. Failed/unknown cleanup keeps the new binding without blocking the next attempt; chooser retirement keeps saved inputs. Shared-state retries recheck captured authority before every rename, so a revoked grant cannot overwrite retained state.
@@ -449,6 +449,10 @@ export function createTelegramOutboundReplyArtifactSender(deps) {
449
449
  : plan.voiceText
450
450
  ? [{ text: plan.voiceText, lang: plan.lang, rate: plan.rate }]
451
451
  : [];
452
+ // A plan without voice content has nothing to deliver; absence of
453
+ // content is not a synthesis failure.
454
+ if (voiceReplies.length === 0)
455
+ return;
452
456
  let anyDelivered = false;
453
457
  for (const reply of voiceReplies) {
454
458
  if (!isDeliveryActive())
package/dist/lib/queue.js CHANGED
@@ -1384,7 +1384,9 @@ export async function handleTelegramAgentEndRuntime(deps) {
1384
1384
  }
1385
1385
  if (!isDeliveryActive())
1386
1386
  return;
1387
- if (outboundReply && deps.sendOutboundReplyArtifacts) {
1387
+ if (outboundReply &&
1388
+ hasOutboundArtifacts &&
1389
+ deps.sendOutboundReplyArtifacts) {
1388
1390
  try {
1389
1391
  await deps.sendOutboundReplyArtifacts(turn, outboundReply, {
1390
1392
  replyToPrompt: !finalText,
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@llblab/pi-telegram",
3
- "version": "0.53.0",
3
+ "version": "0.53.1",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public"
package/lib/outbound.ts CHANGED
@@ -900,6 +900,9 @@ export function createTelegramOutboundReplyArtifactSender(
900
900
  : plan.voiceText
901
901
  ? [{ text: plan.voiceText, lang: plan.lang, rate: plan.rate }]
902
902
  : [];
903
+ // A plan without voice content has nothing to deliver; absence of
904
+ // content is not a synthesis failure.
905
+ if (voiceReplies.length === 0) return;
903
906
 
904
907
  let anyDelivered = false;
905
908
 
package/lib/queue.ts CHANGED
@@ -2356,7 +2356,11 @@ export async function handleTelegramAgentEndRuntime<
2356
2356
  }
2357
2357
  }
2358
2358
  if (!isDeliveryActive()) return;
2359
- if (outboundReply && deps.sendOutboundReplyArtifacts) {
2359
+ if (
2360
+ outboundReply &&
2361
+ hasOutboundArtifacts &&
2362
+ deps.sendOutboundReplyArtifacts
2363
+ ) {
2360
2364
  try {
2361
2365
  await deps.sendOutboundReplyArtifacts(turn, outboundReply, {
2362
2366
  replyToPrompt: !finalText,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@llblab/pi-telegram",
3
- "version": "0.53.0",
3
+ "version": "0.53.1",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public"