Vincent Koc
029f5d6427
Tlon: lazy-load channel runtime paths
2026-03-16 18:44:35 -07:00
Peter Steinberger
b230e524a5
refactor(whatsapp): reuse shared normalize helpers
2026-03-17 01:43:56 +00:00
Peter Steinberger
1c0db5b8e4
refactor(slack): share setup helpers
2026-03-17 01:43:56 +00:00
Vincent Koc
e88c6d8486
Tests: cover Telegram plugin auth on real registry
2026-03-16 18:43:05 -07:00
Vincent Koc
9c80d717bc
Tests: pin loader command activation semantics
2026-03-16 18:40:50 -07:00
Vincent Koc
7959be4336
Tests: cover Discord provider plugin registry
2026-03-16 18:38:11 -07:00
Vincent Koc
6805a80da2
Tests: lock plugin slash commands to one runtime graph
2026-03-16 18:38:11 -07:00
Peter Steinberger
8a10903cf7
test: fix check contract type drift
2026-03-16 18:37:58 -07:00
Peter Steinberger
e554eee541
refactor: route bundled channel setup helpers through private sdk bridges
2026-03-16 18:35:20 -07:00
Peter Steinberger
6c1433a3c0
refactor: move provider catalogs into extensions
2026-03-16 18:33:07 -07:00
Vincent Koc
0a93e22b37
Plugins: fix catalog contract mocks
2026-03-16 18:02:46 -07:00
Vincent Koc
4194bba575
Plugins: speed up auth-choice contracts
2026-03-16 17:59:39 -07:00
Vincent Koc
8b2f0cbb6c
CI: run global contract lane
2026-03-16 17:59:39 -07:00
Vincent Koc
02df22a495
Tests: improve extension runner discovery
2026-03-16 17:59:39 -07:00
Vincent Koc
0f013575f8
Channels: add global threading and directory contracts
2026-03-16 17:59:39 -07:00
Vincent Koc
750ce393bc
Plugins: stabilize global catalog contracts
2026-03-16 17:59:39 -07:00
Harold Hunt
94c27f34a1
fix(plugins): keep built plugin loading on one module graph ( #48595 )
2026-03-16 20:58:58 -04:00
Tak Hoffman
4863b651c6
docs: rename onboarding user-facing wizard copy
...
Co-authored-by: Tak <contact-redacted@example.com>
2026-03-16 19:50:31 -05:00
Clayton Shaw
6ba4d0ddc3
fix: remove orphaned tool_result blocks during compaction ( #15691 ) ( #16095 )
...
Merged via squash.
Prepared head SHA: b772432c1f
Co-authored-by: claw-sylphx <260243939+claw-sylphx@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-03-16 15:57:45 -07:00
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