Tak Hoffman
313e5bb58b
Fix launcher startup regressions ( #48501 )
...
* Fix launcher startup regressions
* Fix CI follow-up regressions
* Fix review follow-ups
* Fix workflow audit shell inputs
* Handle require resolve gaxios misses
2026-03-16 17:21:18 -05:00
Sayr Wolfridge
a53030a7f2
fix(compaction): stabilize toolResult trim/prune flow in safeguard ( #44133 )
...
Merged via squash.
Prepared head SHA: ec789c66ec
Co-authored-by: SayrWolfridge <267323413+SayrWolfridge@users.noreply.github.com >
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com >
Reviewed-by: @jalehman
2026-03-16 15:02:49 -07:00
sparkyrider
10ef58dd69
fix(whatsapp): restore implicit reply mentions for LID identities ( #48494 )
...
Threads selfLid from the Baileys socket through the inbound WhatsApp
pipeline and adds LID-format matching to the implicit mention check
in group gating, so reply-to-bot detection works when WhatsApp sends
the quoted sender in @lid format.
Also fixes the device-suffix stripping regex (was a silent no-op).
Closes #23029
Co-authored-by: sparkyrider <sparkyrider@users.noreply.github.com >
Reviewed-by: @ademczuk
2026-03-16 22:44:35 +01:00
Val Alexander
2ab25babce
fix(ui): align chatStream lifecycle type with nullable state
2026-03-16 16:35:11 -05:00
Jaewon Hwang
04985dab23
fix: enable auto-scroll during assistant response streaming
...
Fix auto-scroll behavior when AI assistant streams responses in the web UI.
Previously, the viewport would remain at the sent message position and users
had to manually click a badge to see streaming responses.
Fixes #14959
Changes:
- Reset chat scroll state before sending message to ensure viewport readiness
- Force scroll to bottom after message send to position viewport correctly
- Detect streaming start (chatStream: null -> string) and trigger auto-scroll
- Ensure smooth scroll-following during entire streaming response
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-16 16:35:11 -05:00
Josh Lehman
eeb140b4f0
fix(plugins): late-binding subagent runtime for non-gateway load paths ( #46648 )
...
Merged via squash.
Prepared head SHA: 44742652c9
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com >
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com >
Reviewed-by: @jalehman
2026-03-16 14:27:54 -07:00
git-jxj
abce640772
fix(ui): language dropdown selection not persisting after refresh ( #48019 )
...
Merged via squash.
Prepared head SHA: 06c82586d9
Co-authored-by: git-jxj <65210887+git-jxj@users.noreply.github.com >
Co-authored-by: altaywtf <9790196+altaywtf@users.noreply.github.com >
Reviewed-by: @altaywtf
2026-03-17 00:03:48 +03:00
Tak Hoffman
2de28379dd
Plugins: remove public extension-api surface ( #48462 )
...
* Plugins: remove public extension-api surface
* Plugins: fix loader setup routing follow-ups
* CI: ignore non-extension helper dirs in extension-fast
* Docs: note extension-api removal as breaking
2026-03-16 15:51:08 -05:00
Altay
412811ec19
fix(changelog): add entry for Control UI logger import fix ( #48469 )
...
* fix(changelog): note Control UI logger import fix
* fix(changelog): attribute Control UI logger fix entry
* fix(changelog): credit original Control UI fix author
2026-03-16 23:17:12 +03:00
Altay
df3a19051d
fix(logging): make logger import browser-safe
2026-03-16 23:08:21 +03:00
Gustavo Madeira Santana
546e4d940a
Build: share root dist chunks across tsdown entries
2026-03-16 16:43:47 +00:00
Gustavo Madeira Santana
09df232f39
Plugins: stage local bundled runtime tree
2026-03-16 16:43:47 +00:00
Ayaan Zaidi
7e2658908d
perf: lazy-load status route startup helpers
2026-03-16 22:07:59 +05:30
Ayaan Zaidi
97a7dcf48e
perf: reduce status json startup memory
2026-03-16 21:51:24 +05:30
Gustavo Madeira Santana
2c3c48fd8d
Channels: ignore enabled-only disabled plugin config
2026-03-16 15:55:06 +00:00
Vincent Koc
4649f82b77
Docs: normalize unreleased changelog refs
2026-03-16 08:39:05 -07:00
Vincent Koc
c28a52263b
Docs: repair unreleased changelog attribution
2026-03-16 08:36:27 -07:00
Gustavo Madeira Santana
8a226fffb4
Infra: ignore ciao probing cancellations
2026-03-16 15:26:47 +00:00
Gustavo Madeira Santana
13894ec5aa
Gateway tests: share ordered client teardown helper
2026-03-16 14:36:04 +00:00
Gustavo Madeira Santana
d352be8e99
Gateway tests: centralize mock responses provider setup
2026-03-16 14:36:04 +00:00
Ayaan Zaidi
ce1d95454f
test: fix stale web search and boot-md contracts
2026-03-16 20:04:30 +05:30
Gustavo Madeira Santana
771fbeae79
Gateway: simplify startup and stabilize mock responses tests
2026-03-16 14:32:55 +00:00
Hung-Che Lo
f8bcfb9d73
feat(skills): preserve all skills in prompt via compact fallback before dropping ( #47553 )
...
* feat(skills): add compact format fallback for skill catalog truncation
When the full-format skill catalog exceeds the character budget,
applySkillsPromptLimits now tries a compact format (name + location
only, no description) before binary-searching for the largest fitting
prefix. This preserves full model awareness of registered skills in
the common overflow case.
Three-tier strategy:
1. Full format fits → use as-is
2. Compact format fits → switch to compact, keep all skills
3. Compact still too large → binary search largest compact prefix
Other changes:
- escapeXml() utility for safe XML attribute values
- formatSkillsCompact() emits same XML structure minus <description>
- Compact char-budget check reserves 150 chars for the warning line
the caller prepends, preventing prompt overflow at the boundary
- 13 tests covering all tiers, edge cases, and budget reservation
- docs/.generated/config-baseline.json: fix pre-existing oxfmt issue
* docs: document compact skill prompt fallback
---------
Co-authored-by: Frank Yang <frank.ekn@gmail.com >
2026-03-16 22:12:15 +08:00
Gustavo Madeira Santana
1f1a93a1dc
Docs: document deferred channel startup opt-in
2026-03-16 14:03:25 +00:00
Gustavo Madeira Santana
96ed010a37
Gateway: gate deferred channel startup behind opt-in
2026-03-16 13:55:53 +00:00
Gustavo Madeira Santana
1b234b910b
Gateway: defer full channel plugins until after listen
2026-03-16 13:31:20 +00:00
Gustavo Madeira Santana
541e697554
Plugins: share channel plugin id resolution
2026-03-16 13:31:20 +00:00
Ayaan Zaidi
4337b1eba5
docs(config): refresh generated baseline
2026-03-16 18:58:32 +05:30
Ayaan Zaidi
64e412e57e
fix(android): lazy-init node runtime after onboarding
2026-03-16 18:54:51 +05:30
Ayaan Zaidi
ac66d383e7
test: mock telegram native command reply pipeline
2026-03-16 18:54:50 +05:30
Ayaan Zaidi
e2b8ef369d
test: update discord subagent hook mocks
2026-03-16 18:54:50 +05:30
Ayaan Zaidi
7178a0d3cb
fix: normalize discord commands allowFrom auth
2026-03-16 18:54:50 +05:30
Val Alexander
0b055303f5
fix(local-storage): improve VITEST environment check for localStorage access
2026-03-16 08:21:44 -05:00
Radek Sienkiewicz
7deb543624
Browser: support non-Chrome existing-session profiles via userDataDir ( #48170 )
...
Merged via squash.
Prepared head SHA: e490035a24
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com >
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com >
Reviewed-by: @velvet-shark
2026-03-16 14:21:22 +01:00
Ayaan Zaidi
3e360ec8cb
fix(android): shrink chat image attachments
2026-03-16 18:47:09 +05:30
Ayaan Zaidi
a41be2585f
fix(android): preserve chat message identity on refresh
2026-03-16 18:42:25 +05:30
Ayaan Zaidi
56e23a887f
fix(android): reduce chat recomposition churn
2026-03-16 18:42:20 +05:30
Ayaan Zaidi
3009e689bc
test: remove stale synology zod mock
2026-03-16 18:41:29 +05:30
Ayaan Zaidi
5f78057ffa
fix: align telegram probe test mock
2026-03-16 18:35:03 +05:30
Ayaan Zaidi
1b31ede435
fix: bypass telegram runtime proxy during health checks
2026-03-16 18:27:05 +05:30
Gustavo Madeira Santana
55253e2a9d
Plugins: avoid booting bundled providers for catalog hooks
2026-03-16 12:56:48 +00:00
Gustavo Madeira Santana
8ad8069854
Tests: fix green check typing regressions
2026-03-16 12:54:01 +00:00
Yauheni Shauchenka
80bef826f8
fix(slack): harden bolt import interop ( #45953 )
...
* fix(slack): harden bolt import interop
* fix(slack): simplify bolt interop resolver
* fix(slack): harden startup bolt interop
* fix(slack): place changelog entry at section end
---------
Co-authored-by: Ubuntu <ubuntu@vps-1c82b947.vps.ovh.net >
Co-authored-by: Altay <altay@uinaf.dev >
2026-03-16 15:49:24 +03:00
Gustavo Madeira Santana
7d4ccee717
Plugin SDK: update entrypoint metadata
2026-03-16 12:46:23 +00:00
Gustavo Madeira Santana
841025da66
Plugin SDK: add narrow setup subpaths
2026-03-16 12:46:04 +00:00
Gustavo Madeira Santana
77566a1448
Providers: scope compat resolution to owning plugins
2026-03-16 12:45:56 +00:00
Gustavo Madeira Santana
c186176ca3
Plugin SDK: keep root alias reflection lazy
2026-03-16 12:35:13 +00:00
Gustavo Madeira Santana
ad18866bcc
Tests: align Docker cache checks with non-root images
2026-03-16 12:31:51 +00:00
Gustavo Madeira Santana
467dae53cf
Secrets: honor caller env during runtime validation
2026-03-16 12:31:44 +00:00
Gustavo Madeira Santana
e5282e6bda
Plugin SDK: update entrypoint metadata
2026-03-16 12:22:21 +00:00