kimi-code/packages/agent-core/test/loop
Kai 373abb02f0
Some checks are pending
CI / build (push) Waiting to run
CI / VSIX package audit (darwin-arm64) (push) Waiting to run
CI / VSIX package audit (all) (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / VSIX package audit (win32-x64) (push) Waiting to run
CI / test (1) (push) Waiting to run
CI / test (2) (push) Waiting to run
CI / test (3) (push) Waiting to run
CI / test (4) (push) Waiting to run
CI / test (5) (push) Waiting to run
CI / test-pi-tui (push) Waiting to run
CI / test-windows (push) Waiting to run
CI / lint (push) Waiting to run
Nix Build / Check flake.nix workspace sync (push) Waiting to run
Nix Build / nix build .#kimi-code (push) Blocked by required conditions
Release / Release (push) Waiting to run
Release / Deploy docs (push) Blocked by required conditions
Release / Native release artifact (push) Blocked by required conditions
Release / Desktop release artifact (push) Blocked by required conditions
Release / Publish native release assets (push) Blocked by required conditions
fix(agent-core): record and close tool calls interrupted mid-stream (#1790)
When the provider stream breaks off mid-tool-call (pause_turn, engine
overload, token limit), the step ended with the partial tool call dropped
silently: never executed, never recorded. If the response carried no other
usable content, the persisted assistant message was effectively empty and
every subsequent request — including compaction — was rejected with
"assistant must not be empty" (HTTP 400), wedging the session.

Record each unexecuted call instead (arguments sanitized to {} when the
truncated JSON is unparseable) and immediately close it with a synthetic
interrupted error result. The exchange stays wire-valid, the history stays
truthful, and the model learns the calls never ran so it can re-issue them.
2026-07-16 21:12:00 +08:00
..
fixtures feat: pursue a goal autonomously (#270) 2026-06-02 22:52:23 +08:00
abort.e2e.test.ts fix(agent-core): surface user interruptions to the model instead of a neutral abort (#236) 2026-05-30 09:53:21 +08:00
api-shape.e2e.test.ts fix: require AgentSwarm to run alone (#643) 2026-06-11 13:58:35 +08:00
error-paths.e2e.test.ts feat: raise default per-step LLM retry budget to 10 attempts (#1740) 2026-07-15 15:24:17 +08:00
events.e2e.test.ts feat: record model response id in wire logs (#1349) 2026-07-03 17:15:04 +08:00
hooks.e2e.test.ts fix: require AgentSwarm to run alone (#643) 2026-06-11 13:58:35 +08:00
retry.test.ts feat: raise default per-step LLM retry budget to 10 attempts (#1740) 2026-07-15 15:24:17 +08:00
streaming.e2e.test.ts Kimi For Coding 2026-05-22 15:54:50 +08:00
tool-args-parse.test.ts refactor(agent-core): align malformed tool args with schema validation (#1209) 2026-06-29 23:24:03 +08:00
tool-call.e2e.test.ts fix(agent-core): record and close tool calls interrupted mid-stream (#1790) 2026-07-16 21:12:00 +08:00
tool-exchange-fallback.e2e.test.ts fix(agent-core): prevent oversized media from poisoning sessions (#1657) 2026-07-14 12:46:45 +08:00
tool-scheduler.test.ts feat: rework permission decision policies (#26) 2026-05-27 20:07:24 +08:00
transcript.e2e.test.ts Kimi For Coding 2026-05-22 15:54:50 +08:00
turn-lifecycle.e2e.test.ts feat: remove default per-turn step limit of 1000 (#186) 2026-05-29 13:11:45 +08:00