Commit Graph

2321 Commits

Author SHA1 Message Date
Julia Bush e94ebfa084
fix: harden gateway SIGTERM shutdown (#51242) (thanks @juliabush)
* fix: increase shutdown timeout to avoid SIGTERM hang

* fix(telegram): abort polling fetch on shutdown to prevent SIGTERM hang

* fix(gateway): enforce hard exit on shutdown timeout for SIGTERM

* fix: tighten gateway shutdown watchdog

* fix: harden gateway SIGTERM shutdown (#51242) (thanks @juliabush)

---------

Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-03-23 15:01:42 +05:30
Penchan 95fec668a0
fix: preserve Telegram reply context text (#50500) (thanks @p3nchan)
* fix: guard Telegram reply context text (#50500) (thanks @p3nchan)

* fix: preserve Telegram reply caption fallback (#50500) (thanks @p3nchan)

---------

Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-03-23 14:54:39 +05:30
Matt Van Horn 988bd782f7
fix: restore Telegram topic announce delivery (#51688) (thanks @mvanhorn)
When `replyLike.text` or `replyLike.caption` is an unexpected
non-string value (edge case from some Telegram API responses),
the reply body was coerced to "[object Object]" via string
concatenation. Add a `typeof === "string"` guard to gracefully
fall back to empty string, matching the existing pattern used
for `quoteText` in the same function.

Co-authored-by: Penchan <penchan@penchan.co>
2026-03-23 14:48:46 +05:30
Peter Steinberger 2a06097184
test: update codex test fixtures to gpt-5.4 2026-03-23 02:14:00 -07:00
Ayaan Zaidi 8f8b79496f fix: keep message-tool buttons optional for Telegram and Mattermost (#52589) (thanks @tylerliu612) 2026-03-23 14:43:41 +05:30
liuyang bf12835995 fix(telegram): make buttons schema optional in message tool
The Telegram plugin injects a `buttons` property into the message tool
schema via `createMessageToolButtonsSchema()`, but without wrapping it
in `Type.Optional()`. This causes TypeBox to include `buttons` in the
JSON Schema `required` array.

In isolated sessions (e.g. cron jobs) where no `currentChannel` is set,
all plugin schemas are merged into the message tool. When the LLM calls
the message tool without a `buttons` parameter, AJV validation fails
with: `buttons: must have required property 'buttons'`.

Wrap the buttons schema in `Type.Optional()` so it is not required.
2026-03-23 14:43:41 +05:30
Frank Yang b186d9847c
fix(memory-core): register memory tools independently to prevent coupled failure (#52668)
Merged via admin squash because current required CI failures are inherited from base and match latest `main` failures outside this PR's `memory-core` surface.

Prepared head SHA: df7f968581
Co-authored-by: artwalker <44759507+artwalker@users.noreply.github.com>
Reviewed-by: @frankekn
2026-03-23 17:05:37 +08:00
Peter Steinberger abf2157b18
fix: sync agent and autoreply e2e updates 2026-03-23 01:33:40 -07:00
Onur Solmaz fe459c9084
ACPX: align pinned runtime version (#52730)
* ACPX: align pinned runtime version

* ACPX: drop version example from help text
2026-03-23 09:21:57 +01:00
Peter Steinberger dc90d3b1d3
refactor(media): share local file access guards 2026-03-23 00:58:23 -07:00
Peter Steinberger 5f05c92922
test: harden no-isolate reply teardown 2026-03-23 00:37:32 -07:00
Peter Steinberger 4fd7feb0fd
fix(media): block remote-host file URLs in loaders 2026-03-23 00:29:46 -07:00
Peter Steinberger 0b58829364 test: fix ci env-sensitive assertions 2026-03-23 07:27:03 +00:00
Peter Steinberger 04c69ea3a0
refactor: reuse canonical setup bootstrap profile 2026-03-23 00:15:55 -07:00
Peter Steinberger 80cd8cd6be
refactor: unify minimax model and failover live policies 2026-03-23 00:02:35 -07:00
Peter Steinberger 937f78b69f
refactor(synology-chat): type startup webhook path policy 2026-03-23 00:01:07 -07:00
Peter Steinberger 535263572e
fix(tlon): unify settings reconciliation semantics 2026-03-22 23:59:04 -07:00
Peter Steinberger a600c72ed7
fix: bind bootstrap setup codes to node profile 2026-03-22 23:57:15 -07:00
Peter Steinberger 47186c50a2 fix(ci): restore stale guardrails and baselines 2026-03-23 06:50:23 +00:00
Peter Steinberger 202b588db5
fix: harden plugin docker e2e 2026-03-22 23:42:34 -07:00
Peter Steinberger ed614938d7 test(voice-call): accept oversize webhook socket resets 2026-03-23 06:37:57 +00:00
Peter Steinberger 3fac0d11fa
test: fix base vitest thread regressions 2026-03-22 23:37:31 -07:00
Peter Steinberger 980940aa58
fix(synology-chat): fail closed shared webhook paths 2026-03-22 23:34:21 -07:00
Peter Steinberger 651dc7450b
fix(voice-call): harden webhook pre-auth guards 2026-03-22 23:33:30 -07:00
Peter Steinberger dda347eda3
refactor: dedupe synology config schema 2026-03-22 23:32:22 -07:00
Peter Steinberger fb6454c543
refactor: narrow synology legacy name lookup 2026-03-22 23:32:21 -07:00
Peter Steinberger 677a821a2f
refactor: centralize synology dangerous name matching 2026-03-22 23:32:21 -07:00
Peter Steinberger ea800dd4ef
refactor: clarify synology delivery identity names 2026-03-22 23:32:21 -07:00
Peter Steinberger 7ade3553b7
fix: gate synology chat reply name matching 2026-03-22 23:06:38 -07:00
Peter Steinberger 55ad5d7bd7
fix(security): harden explicit-proxy SSRF pinning 2026-03-22 23:05:42 -07:00
Peter Steinberger 09faed6bd8
fix(gateway): gate internal command persistence mutations 2026-03-22 22:46:49 -07:00
Peter Steinberger 6b9915a106
refactor!: drop legacy CLAWDBOT env compatibility 2026-03-22 22:13:39 -07:00
Vincent Koc d43e26e399 fix(web-search): mark DuckDuckGo experimental 2026-03-22 22:07:53 -07:00
Vincent Koc c6ca11e5a5
feat(web-search): add DuckDuckGo bundled plugin (#52629)
* feat(web-search): add DuckDuckGo bundled plugin

* chore(changelog): restore main changelog

* fix(web-search): harden DuckDuckGo challenge detection
2026-03-22 22:05:33 -07:00
Vincent Koc 85023d6f9c fix(telegram): harden grammy seams across tests 2026-03-22 21:46:26 -07:00
Vincent Koc 09cb77ed38 fix(ci): harden telegram seams and cap job timeouts 2026-03-22 21:38:26 -07:00
Vincent Koc 6eafa2ec87 fix(telegram): inject media loader through bot deps 2026-03-22 21:29:44 -07:00
Vincent Koc c11f95eced test(telegram): align webhook grammy mock 2026-03-22 21:23:34 -07:00
Vincent Koc a45ebf74bb fix(web-search): align Exa plugin with current API 2026-03-22 21:16:08 -07:00
Vincent Koc 0d161069f2 fix(matrix): avoid touching dropped room bindings 2026-03-22 21:14:17 -07:00
Vincent Koc ee749b520e fix(exa): align freshness typing and config docs 2026-03-22 21:10:49 -07:00
Vincent Koc 218663c956 test(msteams): await async setup status lines 2026-03-22 20:59:28 -07:00
Vincent Koc 1042b59471
feat(web-search): add bundled Exa plugin (#52617) 2026-03-22 20:57:33 -07:00
Vincent Koc 5213382195 fix(auth): route copilot login through sdk seam 2026-03-22 20:53:30 -07:00
Vincent Koc 8b667cbe44 fix(build): repair stale plugin sdk surfaces 2026-03-22 20:36:28 -07:00
Vincent Koc 50bc625203
fix(matrix): preserve send aliases and voice intent 2026-03-22 20:35:40 -07:00
Vincent Koc 1354f37c88
fix(plugins): route keyed queue imports through core (#52608) 2026-03-22 20:35:28 -07:00
Vincent Koc 06ddfb7e5f fix(ci): satisfy voice-call typing and extension boundaries 2026-03-22 20:26:15 -07:00
Vincent Koc 04cd389ef8 fix(ci): repair voice-call typing and provider contracts 2026-03-22 20:17:01 -07:00
Vincent Koc d949dffc6e fix(ci): repair tts and matrix refactor fallout 2026-03-22 20:12:01 -07:00