Commit Graph

3706 Commits

Author SHA1 Message Date
Vincent Koc
a83b7bca15 refactor(plugin-sdk): route core provider and telegram seams through sdk barrels 2026-03-22 19:43:19 -07:00
Vincent Koc
02f8a86e5c refactor(kilocode): route shared model constants through core seam 2026-03-22 19:43:19 -07:00
Peter Steinberger
f8731b3d9d fix: finish exec tool failure landing (#52508) (thanks @martingarramon) 2026-03-22 19:19:07 -07:00
Martin Garramon
22c75a55b0 fix(exec): return plain-text tool result on failure instead of raw JSON
When an exec command fails (e.g. timeout), the tool previously rejected
with an Error, which the tool adapter caught and wrapped in a JSON object
({ status, tool, error }). The model then received this raw JSON as the
tool result and could parrot it verbatim to the user.

Now exec failures resolve with a proper tool result containing the error
as human-readable text in content[], matching the success path structure.
The model sees plain text it can naturally incorporate into its reply.

Also fixes a pre-existing format issue in update-cli.test.ts.

Fixes #52484

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 19:19:07 -07:00
Vincent Koc
2131981230 refactor(plugins): move remaining channel and provider ownership out of src 2026-03-22 19:13:25 -07:00
Vincent Koc
a960cba2db perf(reply): lazy-load context token lookup 2026-03-22 18:52:53 -07:00
Peter Steinberger
29f3b7f6eb fix: harden image auth env lookups (#52552) (thanks @vincentkoc) 2026-03-22 18:42:18 -07:00
Vincent Koc
654089320b fix(image): deprecate legacy skill and clarify auth 2026-03-22 18:42:18 -07:00
Vincent Koc
2db10fb1d4 perf(reply): lazy-load embedded queue steering 2026-03-22 18:32:31 -07:00
Vincent Koc
a753ee064d fix(agents): centralize moonshot compat and xai fast remaps 2026-03-22 18:17:02 -07:00
Vincent Koc
b5b193d5ca fix(moonshot): refresh kimi k2 catalog 2026-03-22 18:00:51 -07:00
Peter Steinberger
a5ace56a19 test: align rebased expectations and typecheck (#52428) (thanks @karanuppal) 2026-03-22 16:56:19 -07:00
Peter Steinberger
38ee17145b fix: restore rebase regression coverage (#52428) (thanks @karanuppal) 2026-03-22 16:56:19 -07:00
Peter Steinberger
85f8437399 test: fix remaining tsgo issues after payload output refactor 2026-03-22 23:39:07 +00:00
Peter Steinberger
f8ff2a4f38 test: fix gate after main drift 2026-03-22 23:00:02 +00:00
Vincent Koc
5c8e1275a0 feat(minimax): add missing pi catalog models 2026-03-22 15:55:20 -07:00
Vincent Koc
b93a045a96 docs(agents): update steering semantics 2026-03-22 15:40:56 -07:00
Vincent Koc
6e7855fdf5 feat(xai): support fast mode 2026-03-22 15:40:56 -07:00
Vincent Koc
9c0983618e feat(models): sync pi provider catalogs 2026-03-22 15:40:56 -07:00
scoootscooob
24032dcc0e Reply: fix generated image delivery to Discord (#52489) 2026-03-22 15:18:16 -07:00
Peter Steinberger
030e950e5f test: simplify ACP spawn scenarios 2026-03-22 15:11:22 -07:00
Peter Steinberger
a81e671509 refactor: extract ACP spawn flow helpers 2026-03-22 15:11:22 -07:00
Peter Steinberger
eca0809a6d refactor: convert session manager cache to factory 2026-03-22 22:10:48 +00:00
Peter Steinberger
cfd9242e5d perf: lazy-load memory runtime surfaces 2026-03-22 22:06:45 +00:00
Vincent Koc
f7bc9818b5 feat(minimax): support fast mode and sync pi defaults 2026-03-22 14:54:30 -07:00
Felix
57267b23d5 fix(acp): restore inline delivery for run-mode spawns from main sessions (#52426)
* fix(acp): restore inline delivery for run-mode spawns from main sessions

* test: restore matrix ACP spawn coverage (#52426) (thanks @distractedCoding)

---------

Co-authored-by: Felix <distractedCoding@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-03-22 14:54:09 -07:00
Peter Steinberger
ef3f64952a fix: bound session manager cache growth (#52427) (thanks @karanuppal) 2026-03-22 14:54:04 -07:00
Karan Uppal
30090e4895 fix: evict expired SESSION_MANAGER_CACHE entries on TTL miss
isSessionManagerCached() checks TTL before returning stale hits but
never deletes expired entries from the Map. They accumulate
indefinitely over the lifetime of a long-running gateway.

Delete the expired entry when the TTL check fails so the Map stays
bounded to active sessions.

Closes #51820
2026-03-22 14:54:04 -07:00
Vincent Koc
26db578edc perf(inbound): trim reply startup imports (#52470)
* perf(inbound): trim dispatch and command startup imports

* fix(reply): restore command alias canonicalization

* style(reply): format command context

* fix(reply): restore runtime shim exports

* test(reply): mock ACP route seam

* fix(reply): repair dispatch type seams

* perf(inbound): defer followup reply helpers

* refactor(tts): share auto mode normalization

* fix(reply): catch followup compaction notice failures
2026-03-22 14:04:00 -07:00
Peter Steinberger
1efda3d041 test: improve live test progress feedback 2026-03-22 20:57:04 +00:00
Peter Steinberger
cf8891a824 fix: stabilize docker live test lanes 2026-03-22 20:07:27 +00:00
Peter Steinberger
4240c64491 test: harden no-isolate oauth contract coverage 2026-03-22 12:31:36 -07:00
Vincent Koc
f85cfc8b6c fix(gateway): harden first-turn startup readiness (#52387)
* fix(gateway): harden first-turn startup readiness

* fix(gateway): scope startup model retry
2026-03-22 12:12:08 -07:00
Peter Steinberger
412a3eb1ac build: bump version to 2026.3.22 2026-03-22 11:58:33 -07:00
Peter Steinberger
c40488453e test: remove thread-unsafe cwd mutations 2026-03-22 11:47:28 -07:00
Peter Steinberger
04b283ffc2 fix: restore clawhub archive installs and gateway params 2026-03-22 18:31:52 +00:00
Peter Steinberger
1ceaad18a6 test: harden vitest no-isolate coverage 2026-03-22 10:48:21 -07:00
Peter Steinberger
91b2800241 feat: add native clawhub install flows 2026-03-22 17:03:49 +00:00
Peter Steinberger
a94ec3b79b fix(security): harden exec approval boundaries 2026-03-22 09:35:25 -07:00
Vincent Koc
6b7206ed35 perf(inbound): trim reply-run startup imports (#52332)
* perf(inbound): trim reply-run startup imports

* style(reply): format body runtime import

* test(reply): restore runtime seam mocks
2026-03-22 09:05:14 -07:00
CharZhou
a07dcfde84 fix: pass clientTools to runEmbeddedAttempt in /v1/responses agent path (#52171)
Merged via squash.

Prepared head SHA: 74519e7da6
Co-authored-by: CharZhou <17255546+CharZhou@users.noreply.github.com>
Co-authored-by: frankekn <4488090+frankekn@users.noreply.github.com>
Reviewed-by: @frankekn
2026-03-22 22:05:00 +08:00
Peter Steinberger
3cd4978fc2 refactor(agents): unify tool media reply delivery 2026-03-22 00:49:56 -07:00
Peter Steinberger
b4656f193a test: strengthen regression coverage and trim low-value checks 2026-03-22 07:38:01 +00:00
Vincent Koc
041f0b87ec perf(inbound): trim cold startup import graph (#52082)
* perf(inbound): trim cold startup import graph

* chore(reply): drop redundant inline action type import

* fix(inbound): restore warning and maintenance seams

* fix(reply): restore type seam and secure forked transcripts
2026-03-21 22:32:21 -07:00
Vincent Koc
c96a12aeb9 Agents: add per-agent defaults and safe model fallback (#51974)
* Agents: add per-agent defaults and safe model fallback

* Docs: add per-agent thinking/reasoning/fast defaults to config reference and thinking docs

* Format get-reply directives

* Auto-reply: guard agent reasoning defaults

* Docs: update config baseline
2026-03-21 22:27:24 -07:00
Bryan Tegomoh, MD, MPH
f783101735 fix: accept session_status sessionKey=current alias (#39574)
* fix: normalize sessionKey=current in shared session resolution

Move the "current" alias handling from a narrow session_status-only
mapping into the shared session resolution layer so every session tool
(session_status, sessions_history, sessions_send) resolves it
consistently.

Changes:
- Register "current" as a canonical session key in looksLikeSessionKey
  so it is never misclassified as a sessionId
- Normalize "current" to the requester's own session key inside
  resolveSessionReference and resolveInternalSessionKey
- Add "current" normalization in session_status before local store
  lookup via the existing "main" alias scoping
- Add regression tests covering both main-session and cross-agent
  resolution paths

Fixes #39570

* fix: keep session_status current bound to requester

* fix: preserve literal current session targets

* fix: preserve literal current in session_status

* fix: defer current alias in session_status

* fix: scope session_status current to active store (#39574) (thanks @BryanTegomoh)

* fix: preserve literal current session previews (#39574) (thanks @BryanTegomoh)

---------

Co-authored-by: Ayaan Zaidi <hi@obviy.us>
2026-03-22 10:55:05 +05:30
Peter Steinberger
e1854dfbf6 test: trim import-heavy startup paths 2026-03-22 05:03:10 +00:00
Vincent Koc
2b210703a3 fix(models): cache models.json readiness for embedded runs (#52077)
* fix(models): cache models.json readiness for embedded runs

* fix(models): harden readiness cache inputs
2026-03-21 21:58:10 -07:00
Peter Steinberger
7ac312b8fe fix(agents): migrate remaining media artifacts 2026-03-21 21:05:33 -07:00
Vincent Koc
ab38f6471c perf(inbound): narrow reply startup imports (#51943)
* perf(inbound): narrow reply startup imports

* fix(reply): restore activation parsing semantics

Cherry-picked review fixes for activation parsing semantics and native command surface cache invalidation.

* fix(reply): preserve case-insensitive command matching

Cherry-picked review fix to lowercase only the slash-command token in commands-context while preserving argument casing.
2026-03-21 18:18:41 -07:00