Commit Graph

23 Commits

Author SHA1 Message Date
Peter Steinberger
b39e1cf66f perf(agents): drain code-mode bridge calls inline within one exec turn (#109290)
Code mode previously suspended to the model with a waiting result for every
awaited tools.search/describe/call, forcing one wait tool turn per await
(turns = tool calls + 1). Bridge calls now resolve inline within the exec
deadline and resume the QuickJS snapshot host-side, matching the namespace
auto-drain path. Restart-safe runs keep their existing no-drain semantics.
Live proof across OpenAI/Anthropic/Google: ~45% fewer turns and ~45% fewer
input tokens at equal success rate.

Also landed with the same contract:
- one shared wall-clock deadline per exec/wait call (initial worker, inline
  drain rounds, and resumed guest interrupt budget all share it)
- park the snapshot instead of resuming when the remaining budget could not
  survive VM restore, so near-deadline settles stay recoverable
- abort now terminates the guest worker, skips resume, and drops suspended
  runs instead of pinning process-global slots until TTL, reported with the
  existing aborted failure code
- exec description omits API.list/MCP/namespace guidance when the run catalog
  has no MCP tools or namespaces, so models stop probing an empty surface
- API.list tolerates a trailing-slash prefix like API.list("mcp/")
2026-07-16 13:30:07 -07:00
Peter Steinberger
a34bed409d refactor(code-mode): consume QuickJS handles 2026-07-14 06:04:09 -07:00
Peter Steinberger
c3505182ba refactor(code-mode): use quickjs-wasi defaults 2026-07-13 14:12:52 -07:00
Peter Steinberger
6df498c3cd refactor: canonicalize binary operation results (#106049)
* refactor(normalization-core): promote shared result type

* refactor(agent-core): reuse canonical error coercion

* refactor: discriminate internal operation results

* docs: establish shared result convention

* fix(agent-core): preserve error coercion facade

* build: derive package entries from exports

* fix(plugins): resolve shared result subpath

* fix(ci): align Result integration guards

* build: refresh plugin SDK API baseline

* fix(agent-core): preserve toError compatibility
2026-07-13 00:39:43 -07:00
qingminlong
08da0d3861 fix(code-mode): report UTF-8 API file byte counts (#104244)
* fix(code-mode): report UTF-8 API file byte counts

* fix(code-mode): report UTF-8 API file byte counts

* chore(changelog): keep release notes release-owned

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-11 05:10:46 -07:00
Dallin Romney
4f4e9a4c78 refactor(shared): consolidate core record guards (#99359) 2026-07-02 22:13:17 -07:00
Wynne668
dff45cae4c fix(code-mode): surface QuickJS error name and message to the model (#95906)
* fix(code-mode): surface QuickJS error name and message to the model

* fix(code-mode): preserve host error diagnostics

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-01 03:07:09 -07:00
mushuiyu886
01abe0a33d fix(agents): suggest recovery for unknown tool ids (#93374)
Merged via squash.

Prepared head SHA: bee84e4eb8
Co-authored-by: mushuiyu886 <266724580+mushuiyu886@users.noreply.github.com>
Co-authored-by: vincentkoc <25068+vincentkoc@users.noreply.github.com>
Reviewed-by: @vincentkoc
2026-06-23 14:20:09 +08:00
Vincent Koc
1b7a6a3138 refactor(code-mode): share VM execution lifecycle 2026-06-22 20:10:43 +08:00
Vincent Koc
2e44610ba2 refactor(agents): dedupe code mode json serialization 2026-06-18 12:38:02 +08:00
Peter Steinberger
31a1034cb5 docs: document code mode helpers 2026-06-04 09:10:13 -04:00
Peter Steinberger
9877f31fdd docs: document code mode bridge 2026-06-04 01:19:45 -04:00
Peter Steinberger
b653d94918 chore(lint): enable no-useless-assignment 2026-05-31 22:40:48 +01:00
Peter Steinberger
e681569536 feat: add code-mode MCP API files
* feat: add code-mode MCP API files

* fix: satisfy code-mode MCP lint
2026-05-31 21:29:06 +01:00
Peter Steinberger
53a9f13cf4 chore(lint): reduce lint suppressions 2026-05-31 11:17:16 +01:00
Peter Steinberger
59694e86d9 chore(lint): enable structured clone rules 2026-05-31 08:34:28 +01:00
Peter Steinberger
287687da20 feat: add internal code mode namespaces (#88043)
* feat: add internal code mode namespaces

* test: add code mode namespace live proof

* test: add live code mode Docker repro

* chore: keep code mode docker repro out of package scripts

* fix: break code mode namespace type cycle

* fix: clean code mode namespace ci drift

* fix: route code mode namespaces through tools

* fix: preserve explicit agent global sessions

* docs: explain code mode namespace registry

* test: cap realtime websocket payload

* fix: normalize code mode timeout results

* fix: satisfy code mode timeout lint

* chore: rerun code mode CI

* ci: extend node shard silence watchdog

* test: avoid child process mock deadlocks

* test: fix code mode repro shebang

* fix: scope explicit agent sentinel sessions

* test: preserve child process mock actual loader

* fix: dispatch namespace tools by exact id

* test: satisfy restart execFile mock type
2026-05-30 22:42:57 +01:00
Vincent Koc
13c77f00c3 fix(agents): classify code mode deadline interrupts 2026-05-30 18:47:42 +01:00
Peter Steinberger
c2c29588f4 chore: update dependency pins 2026-05-28 18:10:39 +01:00
Peter Steinberger
6814525867 fix: preserve code mode failure output 2026-05-26 00:54:00 +01:00
Kaspre
edab653178 fix(code-mode): return structured worker error codes 2026-05-22 10:36:18 +01:00
Peter Steinberger
0db0979365 fix: harden code mode runtime 2026-05-15 04:16:07 +01:00
Peter Steinberger
0844e771a8 feat: add generic code mode runtime 2026-05-15 04:16:07 +01:00