Rylen Anil
48d369749c
fix(telegram): skip null/undefined final text payloads
2026-03-02 02:59:08 +00:00
Peter Steinberger
a779c2ca6a
fix(telegram): skip nullish final text sends (land #30969 by @haosenwang1018)
...
Landed-from: #30969
Contributor: @haosenwang1018
Co-authored-by: Sense_wang <167664334+haosenwang1018@users.noreply.github.com >
2026-03-02 01:50:25 +00:00
Peter Steinberger
f877e7e74c
fix(telegram): split stop-created preview finalization path
...
Refactor lane preview finalization into explicit branches so stop-created
previews never duplicate sends when edit fails.
Add Telegram dispatch regressions for:
- stop-created preview edit failure (no duplicate send)
- existing preview edit failure (fallback send preserved)
- missing message id after stop-created flush (fallback send)
Thanks @obviyus for the original preview-prime direction in #27449 .
Co-authored-by: Ayaan Zaidi <hi@obviy.us >
2026-02-26 15:35:41 +00:00
Ayaan Zaidi
d9ed2c425a
fix(telegram): prime final preview before stop flush
2026-02-26 16:24:31 +05:30
Peter Steinberger
53fcfdf794
fix(telegram): preserve finalized previews on mixed text+voice turns
2026-02-26 03:42:47 +01:00
Peter Steinberger
5a475259bb
fix(telegram): suppress reasoning-only leaks when reasoning is off
...
Co-authored-by: avirweb <avirweb@users.noreply.github.com >
2026-02-23 20:06:16 +00:00
Peter Steinberger
c3d11d56c3
fix(agents): validate tool-result MEDIA directives with shared parser
...
Co-authored-by: Ho Lim <166576253+HOYALIM@users.noreply.github.com >
2026-02-22 19:52:29 +01:00
Peter Steinberger
6e253096ed
test(core): use lightweight clears in command and dispatch setup
2026-02-22 08:06:06 +00:00
Peter Steinberger
342cd19e91
test(telegram): keep session-store mocks on clear in dispatch setup
2026-02-22 07:35:54 +00:00
Ayaan Zaidi
63b4c500d9
fix: prevent Telegram preview stream cross-edit race ( #23202 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 529abf209d56d9f991a7d308f4ecce78ac992e94
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-22 10:04:33 +05:30
Ayaan Zaidi
8b1fe0d1e2
fix(telegram): split streaming preview per assistant block ( #22613 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 26f35f4411e65cf14587efeedc4e326a71d54ee0
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-21 18:05:23 +05:30
Ayaan Zaidi
677384c519
refactor: simplify Telegram preview streaming to single boolean ( #22012 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: a4017d3b9469d0c25c6ab3f4d9be06b98445474e
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-21 15:19:13 +05:30
Ayaan Zaidi
ab256b8ec7
fix: split telegram reasoning and answer draft streams ( #20774 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 7458444144b49c84a26030c1f3a886235c76e869
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-20 11:14:39 +05:30
mudrii
beb2b74b5b
fix(telegram): prevent silent message loss across all streamMode settings ( #19041 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 82898339f02ae08ab9eaa2eabb679326a8469ca1
Co-authored-by: mudrii <220262+mudrii@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-20 10:46:55 +05:30
Peter Steinberger
b8b43175c5
style: align formatting with oxfmt 0.33
2026-02-18 01:34:35 +00:00
Peter Steinberger
31f9be126c
style: run oxfmt and fix gate failures
2026-02-18 01:29:02 +00:00
Ayaan Zaidi
583844ecf6
fix(telegram): avoid duplicate preview bubbles in partial stream mode ( #18956 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: cf4eca71d46e0c5ef1ec46af90f978b3d454c34a
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-17 12:36:15 +05:30
Ayaan Zaidi
f44b58fd58
style(telegram): format dispatch files
2026-02-17 11:26:14 +05:30
Hongwei Ma
7ffc8f9f7c
fix(telegram): add initial message debounce for better push notifications ( #18147 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 5e2285b6a03943a483993b540f86a0fa49d7de39
Co-authored-by: Marvae <11957602+Marvae@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-17 11:21:49 +05:30
cpojer
d0cb8c19b2
chore: wtf.
2026-02-17 13:36:48 +09:00
Sebastian
ed11e93cf2
chore(format)
2026-02-16 23:20:16 -05:00
cpojer
90ef2d6bdf
chore: Update formatting.
2026-02-17 09:18:40 +09:00
Hongwei Ma
dddb1bc942
fix(telegram): fix streaming with extended thinking models overwriting previous messages/ also happens to Execution error ( #17973 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 34b52eead8faeb64995f61b9e7ab102711acd37b
Co-authored-by: Marvae <11957602+Marvae@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-16 18:54:34 +05:30
yinghaosang
244ed9db39
fix(telegram): draft stream preview not threaded when replyToMode is on ( #17880 ) ( #17928 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: cfd4181a237153b2df0535d5dcec32a866e60515
Co-authored-by: yinghaosang <261132136+yinghaosang@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-16 18:10:24 +05:30
Varun Kruthiventi
c62b90a2b7
fix(telegram): stop block streaming from splitting messages when streamMode is off ( #17704 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 847162caadc53fe3f983500175f928f28103626f
Co-authored-by: saivarunk <2976867+saivarunk@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-16 09:57:29 +05:30
Mr. Guy
e927fd1e35
fix: allow agent workspace directories in media local roots ( #17136 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 7545ef1e1901a5bfd33aaa55a2320e003ea39126
Co-authored-by: MisterGuy420 <255743668+MisterGuy420@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-15 10:53:45 -05:00
Peter Steinberger
4f8a2ed2ce
refactor(test): dedupe telegram dispatch scaffolding
2026-02-15 15:19:10 +00:00
Ayaan Zaidi
a69e82765f
fix(telegram): stream replies in-place without duplicate final sends
2026-02-15 20:32:51 +05:30
mudrii
5d82c82313
feat: per-channel responsePrefix override ( #9001 )
...
* feat: per-channel responsePrefix override
Add responsePrefix field to all channel config types and Zod schemas,
enabling per-channel and per-account outbound response prefix overrides.
Resolution cascade (most specific wins):
L1: channels.<ch>.accounts.<id>.responsePrefix
L2: channels.<ch>.responsePrefix
L3: (reserved for channels.defaults)
L4: messages.responsePrefix (existing global)
Semantics:
- undefined -> inherit from parent level
- empty string -> explicitly no prefix (stops cascade)
- "auto" -> derive [identity.name] from routed agent
Changes:
- Core logic: resolveResponsePrefix() in identity.ts accepts
optional channel/accountId and walks the cascade
- resolveEffectiveMessagesConfig() passes channel context through
- Types: responsePrefix added to WhatsApp, Telegram, Discord, Slack,
Signal, iMessage, Google Chat, MS Teams, Feishu, BlueBubbles configs
- Zod schemas: responsePrefix added for config validation
- All channel handlers wired: telegram, discord, slack, signal,
imessage, line, heartbeat runner, route-reply, native commands
- 23 new tests covering backward compat, channel/account levels,
full cascade, auto keyword, empty string stops, unknown fallthrough
Fully backward compatible - no existing config is affected.
Fixes #8857
* fix: address CI lint + review feedback
- Replace Record<string, any> with proper typed helpers (no-explicit-any)
- Add curly braces to single-line if returns (eslint curly)
- Fix JSDoc: 'Per-channel' → 'channel/account' on shared config types
- Extract getChannelConfig() helper for type-safe dynamic key access
* fix: finish responsePrefix overrides (#9001 ) (thanks @mudrii)
* fix: normalize prefix wiring and types (#9001 ) (thanks @mudrii)
---------
Co-authored-by: Gustavo Madeira Santana <gumadeiras@gmail.com >
2026-02-04 16:16:34 -05:00
Ayaan Zaidi
19b8416a81
fix: unify telegram thread handling
2026-02-02 09:26:59 +05:30
Ayaan Zaidi
37721ebd7c
fix: restore telegram draft streaming partials
2026-01-31 22:46:19 +05:30