Commit Graph

26490 Commits

Author SHA1 Message Date
Peter Steinberger 4154aa8b0f
docs: refresh discord native approval approver refs 2026-04-04 18:33:39 +01:00
Peter Steinberger 414e834c26
docs: refresh matrix and slack native approval refs 2026-04-04 18:31:47 +01:00
Peter Steinberger f81d55d7ea
docs: refresh native approval routing refs 2026-04-04 18:28:23 +01:00
Tak Hoffman 3bf1b69ece
CI: make bad-barnacle bypass PR auto-response 2026-04-04 12:28:03 -05:00
Peter Steinberger a08449b83f
docs: refresh approval fallback refs 2026-04-04 18:27:27 +01:00
Peter Steinberger 2a80b7f30b
docs: refresh silent cron delivery refs 2026-04-04 18:26:28 +01:00
Peter Steinberger 2ab8acb2c9
docs: refresh chat thinking and compaction refs 2026-04-04 18:25:13 +01:00
Gustavo Madeira Santana e627f53d24
core: dedupe approval not-found handling (#60932)
Merged via squash.

Prepared head SHA: 108221fdfe
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-04-04 13:23:58 -04:00
Ayaan Zaidi ef7c84ae92
style: trim live model switch comment noise 2026-04-04 22:42:30 +05:30
Ayaan Zaidi e4bd4b8b49
style(agents): trim exec routing comments 2026-04-04 22:41:22 +05:30
Ayaan Zaidi 0817bf446f
fix: keep NO_REPLY detection case-insensitive 2026-04-04 22:38:59 +05:30
Ayaan Zaidi cde1e2d3a1
fix: preserve compaction split after trailing tool results 2026-04-04 22:34:05 +05:30
Ayaan Zaidi 3f7bd3bd7b
fix: split before unfinished compaction tool turns 2026-04-04 22:30:27 +05:30
Tak Hoffman 3017a71bb7
ui: add chat thinking selector 2026-04-04 11:51:45 -05:00
wangchunyue f463256660
fix: suppress NO_REPLY direct cron leaks (#45737) (thanks @openperf)
* fix(cron): suppress NO_REPLY sentinel in direct delivery path

* fix: set deliveryAttempted on filtered NO_REPLY to prevent timer fallback

* fix: mark silent NO_REPLY direct deliveries as delivered

* fix(cron): unify silent direct delivery handling

* fix: suppress NO_REPLY direct cron leaks (#45737) (thanks @openperf)

---------

Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-04-04 22:16:20 +05:30
wangchunyue 08992e1dbc
fix: keep tool calls paired during compaction (#58849) (thanks @openperf)
* fix(compaction): keep tool_use and toolResult together when splitting messages

* fix: keep displaced tool results in compaction chunks

* fix: keep tool calls paired during compaction (#58849) (thanks @openperf)

* fix: avoid stalled compaction splits on aborted tool calls (#58849) (thanks @openperf)

---------

Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-04-04 22:12:43 +05:30
Ayaan Zaidi 77509024b8 fix: restore exec host=node routing (#60788) (thanks @openperf) 2026-04-04 21:59:57 +05:30
openperf d98eaba4c3 fix(agents): resolve exec host=node routing regression and elevated gateway override 2026-04-04 21:59:57 +05:30
wangchunyue 17f086c021
fix: handle subagent live model switches (#58178) (thanks @openperf)
* fix(agents): handle LiveSessionModelSwitchError in subagent execution

Add retry loop for cross-provider model switches in the subagent
command path, mirroring the existing logic in agent-runner-execution.ts.

- Wrap runWithModelFallback in a while(true) loop inside agentCommandInternal
- Catch LiveSessionModelSwitchError and update provider, model,
  fallbackProvider, fallbackModel, providerForAuthProfileValidation,
  sessionEntry.authProfileOverride, and storedModelOverride before retrying
- Guard storedModelOverride update: only set when the model genuinely
  changed (compared before mutation) or a session override already existed
- Reset lifecycleEnded flag so the retried iteration can emit lifecycle events
- Add comprehensive tests covering retry success, error propagation,
  lifecycle reset, auth-profile forwarding, and fallback override state

Fixes #57998

* fix(agents): include provider change in storedModelOverride guard

* fix(agents): validate allowlist and clear stale compaction count on live model switch

* fix(agents): remove broken allowlist guard on live model switch

* fix(agents): address security review — bound retry loop, validate allowlist, redact error in lifecycle events

* fix(agents): restore error observability in lifecycle events using err.message

* fix(agents): sanitize log inputs and shallow-copy sessionEntry on live model switch

* fix(agents): enforce allowlist on empty set and sanitize error message

* fix: handle subagent live model switches (#58178) (thanks @openperf)

---------

Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-04-04 21:56:11 +05:30
@zimeg beee44ba47
docs(slack): reorder sections of introduced concepts 2026-04-04 08:54:31 -07:00
Onur 7de3a16ab4
ACPX: bump pinned version to 0.4.1 (#60918)
* ACPX: bump pinned version to 0.4.1

* ACPX: refresh lockfile for 0.4.1
2026-04-04 17:37:17 +02:00
Altay ae460eff84
fix(failover): scope openrouter-specific matchers (#60909) 2026-04-04 18:24:03 +03:00
Peter Steinberger fba6e194bd
docs: refresh provider stream export refs 2026-04-04 16:23:00 +01:00
Peter Steinberger c4205c7aae
docs: refresh provider stream family refs 2026-04-04 16:21:21 +01:00
Peter Steinberger a7b1a3140f
docs: refresh skills cli stream refs 2026-04-04 16:19:34 +01:00
Peter Steinberger bcaff8c208
docs: refresh failover generic error refs 2026-04-04 16:18:07 +01:00
Peter Steinberger 6067fe59d8
docs: refresh mcp config refs 2026-04-04 16:15:11 +01:00
Peter Steinberger 89535f9313
docs: refresh pairing locality refs 2026-04-04 16:13:04 +01:00
Aaron Zhu 983909f826
fix(agents): classify generic provider errors for failover (#59325)
* fix(agents): classify generic provider errors for failover

Anthropic returns bare 'An unknown error occurred' during API instability
and OpenRouter wraps upstream failures as 'Provider returned error'. Neither
message was recognized by the failover classifier, so the error surfaced
directly to users instead of triggering the configured fallback chain.

Add both patterns to the serverError classifier so they are classified as
transient server errors (timeout) and trigger model failover.

Closes #49706
Closes #45834

* fix(agents): scope unknown-error failover by provider

* docs(changelog): note provider-scoped unknown-error failover

---------

Co-authored-by: Aaron Zhu <aaron@Aarons-MacBook-Air.local>
Co-authored-by: Altay <altay@uinaf.dev>
2026-04-04 18:11:46 +03:00
Peter Steinberger 8a6da9d488
docs: refresh gateway auth handshake refs 2026-04-04 16:09:53 +01:00
Altay 5012b52780
fix(cli): route skills list output to stdout when --json is active (#60914)
* fix(cli): route skills list output to stdout when --json is active

runSkillsAction used defaultRuntime.log() which goes through console.log.
The --json preAction hook calls routeLogsToStderr(), redirecting console.log
to stderr. Switch to defaultRuntime.writeStdout() which writes directly to
process.stdout, consistent with how other --json commands (e.g. skills search)
already emit their output.

Fixes #57599

* test(cli): add skills JSON stdout regression coverage

* test(cli): refine skills CLI stream coverage

* fix(cli): add changelog entry for skills JSON stdout fix

---------

Co-authored-by: Aftabbs <aftabbs.wwe@gmail.com>
2026-04-04 18:09:44 +03:00
Peter Steinberger db0b514e45
docs: refresh typebox protocol samples 2026-04-04 16:06:40 +01:00
Peter Steinberger bc21e3c83d
docs: refresh typebox protocol registry refs 2026-04-04 16:04:25 +01:00
Peter Steinberger 3470a80b36
docs: expand gateway protocol method inventory 2026-04-04 16:02:21 +01:00
Peter Steinberger beb3740bb7
docs: expand gateway protocol rpc refs 2026-04-04 16:01:15 +01:00
Peter Steinberger b944da561c
docs: refresh sdk inventory refs 2026-04-04 15:57:06 +01:00
Peter Steinberger 5633495c19
docs: refresh provider sdk family refs 2026-04-04 15:53:24 +01:00
Peter Steinberger b3cfedf312
docs: refresh registration mode mirror refs 2026-04-04 15:48:27 +01:00
Peter Steinberger 4c6b7a3a77
docs: refresh setup entrypoint import refs 2026-04-04 15:47:26 +01:00
Peter Steinberger eb4c5890ab
docs: refresh optional setup helper refs 2026-04-04 15:45:28 +01:00
Peter Steinberger 3b502882b9
docs: refresh setup runtime and promotion refs 2026-04-04 15:43:34 +01:00
Peter Steinberger 226b12d7b5
docs: refresh provider tool compat refs 2026-04-04 15:39:17 +01:00
Peter Steinberger 4dbc66b1ed
fix: remove bundled channel startup reentry 2026-04-04 15:39:12 +01:00
Peter Steinberger b9201e8333
refactor: share announce test runtime seams 2026-04-04 23:38:36 +09:00
Peter Steinberger 5584af7ac3
docs: refresh proxy provider runtime refs 2026-04-04 15:37:20 +01:00
Peter Steinberger f5cc6a101b
style: reflow system prompt tool summary 2026-04-04 23:36:46 +09:00
Peter Steinberger a4fc1200de
style: normalize provider formatting 2026-04-04 23:36:46 +09:00
Peter Steinberger 1ca1ce85ee
docs: refresh xai and zai provider refs 2026-04-04 15:34:57 +01:00
Peter Steinberger de001d0e07
docs: refresh subagent completion delivery refs 2026-04-04 15:32:45 +01:00
Vincent Koc 1f2e068e6b test(providers): require plugin-boundary family coverage 2026-04-04 23:30:28 +09:00