pi-mono/packages/coding-agent/test/suite
David Brailovsky 6fcb48670f
fix(coding-agent): remove fixed output limits from summary requests (#11036)
Compaction summaries were limited to 0.8 * compaction.reserveTokens (13107 by default), turn-prefix summaries to 0.5 * reserveTokens, and branch summaries to a hardcoded 4096. On providers where reasoning shares the output limit (OpenAI Responses, adaptive Anthropic), high thinking levels used most of that limit and compaction failed with "generation hit the token cap", even though the model allows far more output.

Tying the limit to reserveTokens assumed the summary request is as large as the full context, so its output had to fit in the reserved space. It is usually much smaller: recent messages kept by keepRecentTokens are not sent, a split turn goes to a separate request, tool results are truncated, and tool definitions and the normal system prompt are not included. Manual compaction can also run long before the context is full. The provider layer already sizes output from the actual request, using the model's output limit reduced to fit the remaining context, as for normal turns.

Summary requests now set no maxTokens and rely on that. compaction.reserveTokens only controls when compaction starts.

generateSummary() and generateSummaryWithUsage() now ignore the reserveTokens parameter.

closes #9512, closes #9075, closes #10908
2026-10-16 13:53:16 +02:00
..
regressions fix(coding-agent): strip fake cursor markers in OAuth prompt regression test 2026-10-08 09:54:07 +02:00
agent-session-bash-persistence.test.ts fix(coding-agent): strip ANSI sequences split across user bash output chunks 2026-10-07 15:02:59 +02:00
agent-session-boundaries.test.ts feat(tui,coding-agent): report program status via OSC 7501 2026-10-07 19:05:41 +00:00
agent-session-codemode.test.ts fix(codemode): reject // @options: lines that are not the first line 2026-10-12 17:55:33 +02:00
agent-session-compaction-model-overrides.test.ts fix(coding-agent): remove fixed output limits from summary requests (#11036) 2026-10-16 13:53:16 +02:00
agent-session-compaction.test.ts feat(coding-agent): Virtual models (#10035) 2026-09-28 23:30:45 +02:00
agent-session-mcp-oauth.test.ts fix(coding-agent): cancel MCP OAuth sign-ins and stop refreshing on close 2026-10-07 16:18:46 +02:00
agent-session-mcp.test.ts refactor(codemode,coding-agent): decouple MCP from codemode 2026-10-12 09:19:30 +02:00
agent-session-model-extension.test.ts feat(agent): add Pico storage foundation 2026-09-18 12:32:00 +02:00
agent-session-prompt.test.ts fix(coding-agent): emit before_agent_start for runs started by custom messages (#10739) 2026-10-12 09:53:24 +02:00
agent-session-queue.test.ts Mid conversation system messages (#9548) 2026-09-16 15:54:07 +02:00
agent-session-retry-events.test.ts fix(coding-agent): close compaction cancellation races 2026-09-19 19:18:18 +02:00
agent-session-runtime.test.ts fix(coding-agent): save new session file at the first user message 2026-09-25 16:27:51 +02:00
agent-session-tool-orchestration.test.ts feat(coding-agent): codemode and MCP 2026-09-29 09:12:50 +02:00
agent-session-tool-result-images.test.ts feat(ai,coding-agent): add image input limits (closes #9631) 2026-09-20 22:59:16 +02:00
harness.ts fix(coding-agent): restore active tools on session resume (#10887) 2026-10-13 15:55:12 +02:00
lax-message-content.test.ts fix(ai,agent,coding-agent): normalize null message content at ingestion boundaries (#6343) 2026-07-06 20:47:08 +02:00
mcp-oauth-server.ts fix(coding-agent): cancel MCP OAuth sign-ins and stop refreshing on close 2026-10-07 16:18:46 +02:00
README.md docs(coding-agent): remove issue-specific regression test placement rule (#8775) 2026-08-28 16:39:28 +02:00
virtual-models.test.ts fix(coding-agent): remove fixed output limits from summary requests (#11036) 2026-10-16 13:53:16 +02:00

Coding agent suite tests

Use test/suite/ for the new harness-based test suite around AgentSession and AgentSessionRuntime.

Rules:

  • Use test/suite/harness.ts
  • Use the faux provider from packages/ai/src/providers/faux.ts
  • Do not use real provider APIs, real API keys, network calls, or paid tokens
  • Keep these tests CI-safe and deterministic
  • Do not use or extend the legacy test/test-harness.ts path unless a missing capability forces it