Commit Graph

802 Commits

Author SHA1 Message Date
Ayaan Zaidi
c91d3d4537 fix(telegram): persist topic cache via default runtime 2026-04-14 08:32:27 +05:30
Ayaan Zaidi
4f92b1fbb0 fix(telegram): allow topic cache without session runtime 2026-04-14 08:32:27 +05:30
Ayaan Zaidi
59afcf9922 test(telegram): cover topic-name cache reload 2026-04-14 08:32:27 +05:30
Ayaan Zaidi
ad181b2361 fix(telegram): persist topic-name cache 2026-04-14 08:32:27 +05:30
Vincent Koc
955270fb73 fix(ci): repair telegram ui and watch regressions 2026-04-13 23:49:59 +01:00
Vincent Koc
94779b4fb1 fix(ci): repair telegram topic cache typing 2026-04-13 23:33:41 +01:00
Vincent Koc
8ab89989c2 fix(ci): restore plugin-local whatsapp deps 2026-04-13 23:26:25 +01:00
Vincent Koc
f3283a330b fix(ci): repair extension boundary contracts 2026-04-13 22:37:25 +01:00
Ptah.ai
8c43768e27 fix: expose telegram topic names in agent context (#65973) (thanks @ptahdunbar)
* feat(telegram): expose forum topic names in agent context

Telegram Bot API does not provide a method to look up forum topic names
by thread ID. This adds an in-memory LRU cache that learns topic names
from service messages (forum_topic_created, forum_topic_edited,
forum_topic_closed, forum_topic_reopened) and seeds from
reply_to_message.forum_topic_created as a fallback for pre-existing
topics.

The resolved topic name is surfaced as:
- TopicName in MsgContext (available to {{TopicName}} in templates)
- topic_name in the agent prompt metadata block
- topicName in plugin hook event metadata

Includes unit tests for the topic-name-cache module (11 tests including
eviction and read-recency).

Known limitation: cache is in-memory only; after a restart it falls back
to the creation-time name until a rename event is observed.

* refactor(telegram): distill topic name flow

* fix: expose telegram topic names in agent context (#65973) (thanks @ptahdunbar)

---------

Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-04-13 23:38:14 +05:30
Mariano
a56dbae80b test(telegram): add inbound retry regressions (#66075)
Merged via squash.

Prepared head SHA: 175cd25889
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com>
Co-authored-by: mbelinky <132747814+mbelinky@users.noreply.github.com>
Reviewed-by: @mbelinky
2026-04-13 20:07:23 +02:00
Vincent Koc
77f1ea0de8 fix(telegram): retry failed approval callbacks 2026-04-13 18:00:38 +01:00
Vincent Koc
aa017bf9dd fix(telegram): retry failed model selections 2026-04-13 17:57:05 +01:00
Vincent Koc
88111453cb fix(telegram): retry failed model browser callbacks 2026-04-13 17:42:06 +01:00
Vincent Koc
1f7f8b02d0 fix(telegram): retry failed pagination preflight 2026-04-13 17:38:02 +01:00
Vincent Koc
f1ec7a75f6 fix(telegram): retry failed plugin binding callbacks 2026-04-13 17:34:59 +01:00
Vincent Koc
0c5471ef8e fix(telegram): retry failed commands pagination callbacks 2026-04-13 17:26:55 +01:00
Vincent Koc
a78d922acf fix(telegram): retry failed model callbacks 2026-04-13 17:24:51 +01:00
Vincent Koc
ab143a754c fix(telegram): retry failed reaction updates 2026-04-13 17:19:46 +01:00
Vincent Koc
8628d05ecd fix(telegram): retry failed group migration updates 2026-04-13 17:16:39 +01:00
Vincent Koc
7c71255948 fix(telegram): defer replay commit until update succeeds 2026-04-13 17:03:17 +01:00
Vincent Koc
54eaf85ea2 fix(telegram): block watermark advancement past failed updates 2026-04-13 16:52:03 +01:00
Vincent Koc
c441dcd47a fix(telegram): avoid leaking thread binding persist cleanup 2026-04-13 16:39:05 +01:00
Vincent Koc
9fc36837b4 fix(telegram): swallow update watermark persistence failures 2026-04-13 16:31:13 +01:00
Peter Steinberger
e4841d767d test: stabilize loaded full-suite checks 2026-04-12 11:52:56 -07:00
Peter Steinberger
a8e140e395 chore: bump version to 2026.4.12 2026-04-12 10:37:18 -07:00
Tak Hoffman
847739d82c Fix dreaming replay, repair polluted artifacts, and gate wiki tabs (#65138)
* fix(active-memory): preserve parent channel context for recall runs

* fix(active-memory): keep recall runs on the resolved channel

* fix(active-memory): prefer resolved recall channel over wrapper hints

* fix(active-memory): trust explicit recall channel hints

* fix(active-memory): rank recall channel fallbacks by trust

* Fix dreaming replay and recovery flows

* fix: prevent dreaming event loss and diary write races

* chore: add changelog entry for memory fixes

* fix: harden dreaming repair and diary writes

* fix: harden dreaming artifact archive naming
2026-04-12 00:25:11 -05:00
Vincent Koc
c3c13ea381 test(telegram): dedupe exec approval resolver cases 2026-04-12 05:27:10 +01:00
Neelabh Kumar
22b53a4973 fix: unblock Telegram approval callback deadlock (#64979) (thanks @nk3750)
* fix(telegram): bypass sequentializer for approval callback_queries

Approval callback_queries from clicking inline buttons get the same
sequential key as the blocked agent turn (telegram:<chatId>), causing a
deadlock: the callback can't run because the lane is held, and the lane
can't release because it's waiting for the callback.

Give approval callbacks a separate lane (telegram:<chatId>:approval),
same pattern as abort requests (telegram:<chatId>:control) and btw
requests (telegram:<chatId>:btw).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* style(telegram): trim approval lane comments

* fix: unblock Telegram approval callback deadlock (#64979) (thanks @nk3750)

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-04-12 09:56:44 +05:30
Vincent Koc
45147d5ce3 test(extensions): dedupe bundled entry smoke tests 2026-04-12 03:09:18 +01:00
Vincent Koc
462d8e3bc0 fix(cycles): narrow channel runtime surface 2026-04-11 19:30:33 +01:00
HDYA
26f633b604 feat(msteams): add federated credential support (certificate + managed identity) (#53615)
* feat(msteams): add federated authentication support (certificate + managed identity + workload identity)

* msteams: fix vitest 4.1.2 compat, type errors, and regenerate config baseline

* msteams: fix lint errors, update fetch allowlist, regenerate protocol Swift

* fix(msteams): gate secret-only delegated auth flows

* fix(ci): unblock gateway watch and install smoke

* fix(ci): restore mergeability for pr 53615

* fix(ci): restore channel registry helper typing

* fix(ci): refresh raw fetch guard allowlist

---------

Co-authored-by: Chudi Huang <Chudi.Huang@microsoft.com>
Co-authored-by: Brad Groux <3053586+BradGroux@users.noreply.github.com>
2026-04-11 13:29:22 -05:00
Tak Hoffman
958c34e82c feat(qa-lab): Add proxy capture stack and QA Lab inspector (#64895)
* Add proxy capture core and CLI

* Expand transport capture coverage

* Add QA Lab capture backend

* Refine QA Lab capture UI

* Fix proxy capture review feedback

* Fix proxy run cleanup and TTS capture

* Fix proxy capture transport follow-ups

* Fix debug proxy CONNECT target parsing

* Harden QA Lab asset path containment
2026-04-11 12:34:57 -05:00
Peter Steinberger
5915d7cb6b perf: optimize messaging plugin tests 2026-04-11 13:55:07 +01:00
Vincent Koc
81535d394d fix(cycles): repair broken type surfaces 2026-04-11 13:42:17 +01:00
Peter Steinberger
1ab6e5dbf0 chore(release): bump version to 2026.4.11 2026-04-11 04:51:17 +01:00
Peter Steinberger
e11d902b7d fix(ci): stop telegram debounce media leak 2026-04-11 03:36:48 +01:00
Peter Steinberger
39d1a817fa lint: enable small oxlint rules 2026-04-11 02:15:21 +01:00
Peter Steinberger
85c7748520 lint: enable no extraneous class 2026-04-11 01:45:06 +01:00
Peter Steinberger
3e80bd33e4 refactor: simplify extension conversions 2026-04-11 01:37:23 +01:00
Peter Steinberger
b146c0c26b perf: skip bundled session fallback on hot paths 2026-04-11 01:18:11 +01:00
Tak Hoffman
7c02b6df84 fix: tighten telegram allowFrom sender validation 2026-04-10 19:00:32 -05:00
Peter Steinberger
47ef79051e test: isolate telegram reply media fetch 2026-04-11 00:22:19 +01:00
Peter Steinberger
6d1d5145d9 refactor: simplify telegram ingress logging 2026-04-10 23:53:11 +01:00
Peter Steinberger
849e0d0a7f test: narrow telegram sticker cache imports 2026-04-10 23:12:59 +01:00
Peter Steinberger
0f0891656b fix: resolve latest ci type failures 2026-04-10 22:16:40 +01:00
Eva H
3b13986214 fix: prevent fallback persistence from clobbering user /models picks (#64471)
Merged via squash.

Prepared head SHA: b0a6add41f
Co-authored-by: hoyyeva <63033505+hoyyeva@users.noreply.github.com>
Co-authored-by: BruceMacD <5853428+BruceMacD@users.noreply.github.com>
Reviewed-by: @BruceMacD
2026-04-10 14:05:07 -07:00
Peter Steinberger
506f564fb9 refactor: remove redundant telegram conversions 2026-04-10 21:49:54 +01:00
Tak Hoffman
71c4900051 test: harden telegram reply media transport stub 2026-04-10 15:31:55 -05:00
Peter Steinberger
d236cb4680 chore: enable redundant type constituent checks 2026-04-10 21:23:40 +01:00
Peter Steinberger
2786ed0f67 chore: enable no-base-to-string 2026-04-10 20:14:49 +01:00