Commit Graph
4941 Commits
Author SHA1 Message Date
can1357 a572448306 Merge PR #5297: fix(coding-agent): respect role thinking for temporary model picks (@roboomp)
# Conflicts:
#	packages/coding-agent/src/modes/controllers/selector-controller.ts
2026-07-14 18:47:28 +02:00
can1357 946ba4bcea Merge PR #5044: fix(cli): parse max-time duration suffixes (@roboomp)
# Conflicts:
#	packages/coding-agent/src/cli/flag-tables.ts
2026-07-14 18:46:14 +02:00
can1357 edc0511433 Merge PR #4967: fix(plugin): handle pinned git source replacements (@roboomp) 2026-07-14 18:45:31 +02:00
can1357 ba7bcf4cd1 fix(prompting): ignore code symbol magic keywords 2026-07-14 18:45:23 +02:00
can1357 334050d509 Merge PR #4968: fix(prompting): allow magic keywords beside punctuation (@roboomp) 2026-07-14 18:45:22 +02:00
can1357 8c387307e1 fix(mcp): stabilize local image regression coverage 2026-07-14 18:45:22 +02:00
can1357 4b5c32a092 Merge PR #4950: fix(mcp): resolve local image paths for tool calls (@roboomp) 2026-07-14 18:45:22 +02:00
can1357 5a79ef3308 Merge PR #4924: fix(coding-agent): skip autolearn capture after aborted turns (@metaphorics) 2026-07-14 18:45:22 +02:00
can1357 2c7b701e16 test(cli): cover one-shot print working indicator 2026-07-14 18:45:21 +02:00
can1357 67d0e35728 Merge PR #4906: fix(cli): show progress for print mode prompts (@roboomp)
# Conflicts:
#	packages/coding-agent/src/prompts/system/workflow-notice.md
2026-07-14 18:45:15 +02:00
can1357 28b001970b Merge PR #5099: fix(agent): abort repeated empty yield results (@roboomp) 2026-07-14 18:45:03 +02:00
can1357 82327af420 fix(coding-agent): require terminal user prompt for todo suppression 2026-07-14 18:45:03 +02:00
can1357 f1ade56f65 Merge PR #5097: fix(coding-agent): suppress todo reminders for interactive questions (@roboomp) 2026-07-14 18:45:02 +02:00
can1357 a9998ae07b Merge PR #5086: fix(agent): isolate memory root resolution (@roboomp)
# Conflicts:
#	packages/coding-agent/src/internal-urls/memory-protocol.ts
2026-07-14 18:41:54 +02:00
can1357 a011e07d18 Merge PR #5078: fix(coding-agent): prevent memory URL writes from leaking to cwd (@roboomp) 2026-07-14 18:41:17 +02:00
can1357 e31a508140 Merge PR #5057: fix(cli): route npm self-updates through npm (@roboomp) 2026-07-14 18:41:16 +02:00
can1357 7c1375ceb8 fix(coding-agent): preserve auth fallback resolution warnings 2026-07-14 18:41:16 +02:00
can1357 851b5a7c0c Merge PR #5377: fix(coding-agent): forward sessionId to getApiKey in subagent auth fallback (@djdembeck) 2026-07-14 18:41:16 +02:00
can1357 79d7b74e24 Merge PR #5327: fix(coding-agent): isolate eval runtimes from terminal (@masonc15) 2026-07-14 18:41:16 +02:00
can1357 280d4b039b fix(coding-agent): persist pruned autolearn captures 2026-07-14 18:41:16 +02:00
can1357 af9e9a898b Merge PR #5217: fix(coding-agent): accept Auto-Learn capture empty stops (@roboomp) 2026-07-14 18:41:15 +02:00
can1357 645cf45ed6 fix(coding-agent): preserve all terminal advisor notes 2026-07-14 18:41:15 +02:00
can1357 b52a4cdede Merge PR #5186: fix(coding-agent): preserve late advisor notes after terminal answers (@roboomp)
# Conflicts:
#	packages/coding-agent/test/agent-session-advisor-suppression.test.ts
2026-07-14 18:40:35 +02:00
can1357 3a92c920fd Merge PR #5182: fix(coding-agent): load web search fallbacks lazily (@wolfiesch) 2026-07-14 18:39:53 +02:00
can1357 72b1ddf04c fix(session): validate pending exit diagnostics 2026-07-14 18:39:53 +02:00
can1357 7773f48ebc Merge PR #5168: fix(session): recover interrupted session turns (@paralin) 2026-07-14 18:39:53 +02:00
can1357 dde82c5ffe Merge PR #5167: fix(coding-agent): reject unknown continued session ids (@paralin) 2026-07-14 18:39:26 +02:00
can1357 583963150d fix(rpc): retain malformed frame errors 2026-07-14 18:39:26 +02:00
can1357 3539403e3c Merge PR #5156: fix(rpc): prevent rpc-ui extension UI response deadlock (@roboomp) 2026-07-14 18:39:26 +02:00
can1357 58b80dac42 Merge PR #5139: fix(coding-agent): flush throttled output tails (@wolfiesch) 2026-07-14 18:39:26 +02:00
can1357 f786fe4a6f Merge PR #5147: fix(coding-agent): support models.yaml custom config (@roboomp) 2026-07-14 18:39:26 +02:00
can1357 6fb7a7a5fd Merge PR #5392: fix(coding-agent): support GPT-5.6 Codex web search (@daandden) 2026-07-14 18:39:07 +02:00
can1357 d1c88dd89c fix(tui): reserve mixed assistant segments safely 2026-07-14 18:38:07 +02:00
can1357 f13164e464 Merge PR #5158: fix(tui): display Cursor final answers after tool output (@roboomp)
# Conflicts:
#	packages/coding-agent/src/modes/controllers/event-controller.ts
2026-07-14 18:37:31 +02:00
can1357 353bb5c8e1 Merge PR #5239: fix(tui): compact transcript retention without losing resize history (@RensTillmann) 2026-07-14 18:34:14 +02:00
can1357 fe08c97583 fix(tui): preserve cached leading diff blanks 2026-07-14 18:34:14 +02:00
can1357 9b1ecbf988 Merge PR #5129: fix(tui): highlighted streamed diff scrollback rows (@roboomp) 2026-07-14 18:34:14 +02:00
can1357 0944c8928c Merge PR #4986: fix(ai): clear stale OAuth session stickies after credential changes (@roboomp)
# Conflicts:
#	packages/ai/src/auth-storage.ts
#	packages/coding-agent/test/auth-storage-rotation.test.ts
2026-07-14 18:30:25 +02:00
can1357 7f9a2777f9 Merge PR #5170: fix(ai): scope Anthropic credential identity by organization, not just email (@chan1103) 2026-07-14 18:29:14 +02:00
can1357 8a5e73902c Merge PR #5247: Fix automatic rollover across quota-limited accounts (@jeffscottward) 2026-07-14 18:29:14 +02:00
Vu Anh Nguyen 570f8af57c fix(coding-agent): support GPT-5.6 Codex web search 2026-07-14 17:51:33 +07:00
djdembeck aa470b9e34 fix(coding-agent): forward sessionId to getApiKey in subagent auth fallback
The pre-flight auth check in resolveModelOverrideWithAuthFallback called
getApiKey without a session id. For providers with session-sticky OAuth
credentials, this returned undefined even though the credential was
usable once the subagent session started, causing the auth fallback to
silently replace the configured model with the parent's (#5325).

The subagent's id is now forwarded as the session id so session-sticky
credentials resolve during the pre-flight check. Genuinely broken auth
(stale OAuth, revoked tokens) still falls back as before.

Also propagate model resolution warnings through resolveModelOverride
and log them in the executor so users see why a pattern didn't match.
2026-07-14 00:28:42 -05:00
can1357 3047c27c33 fix(test): skip real-browser tab.evaluate test when chromium cannot exec
- Exported ensureChromiumExecutable so the test can probe launchability.
- CI runner holds the downloaded Chrome but lacks libnspr4 & co., so the
  binary fails at dynamic-link time; probe --version and skipIf instead
  of failing the release run.
2026-07-14 02:12:21 +02:00
can1357 df7193731f fix(test): raised timeout for real-browser tab.evaluate test
- CI runner cold Chromium launch exceeded bun's 5s default test timeout,
  failing the v16.5.0 release run; only test in suite launching a real browser.
2026-07-14 01:53:11 +02:00
can1357 da24614d5a feat: added scrollback rebuild controls and prewalk status-line visibility
- Added `tui.scrollbackRebuild` configuration with interactive startup/controller wiring to apply `setScrollbackRebuild`.
- Exposed prewalk session state in `SegmentContext` and rendered a dedicated prewalk segment/icon in the status line.
- Added divergence-aware TUI full-paint logic that enables scrollback erase-and-replay rebuilds for non-multiplexer divergence cases.
- Updated rendering and streaming tests to verify rebuild behavior (`3J`) and eliminate stale marker expectations under drift scenarios.
2026-07-14 00:39:34 +02:00
can1357 f9f6ed9e8d feat(coding-agent): replaced legacy pi/ role alias prefix with
- Replaced legacy `pi/` role alias prefix with canonical `@` syntax across model resolution, documentation, and tests.
- Added support for bare `*` default alias and multiple alias prefix detection with custom role resolution in `resolveConfiguredRolePattern()`.
- Enhanced thinking suffix parsing to accept unambiguous abbreviations (minimum 2 characters) for effort and level selectors.
- Extended `resolveCliModel()` and `filterAvailableModelsByEnabledPatterns()` to accept settings parameter for role alias resolution from `--model` flag.
2026-07-13 23:26:33 +02:00
can1357 4c1c5f40d8 feat(launch): rendered launch logs from daemon terminal byte streams
- Changed daemon log reads to return both sanitized display text and a raw `terminalText` slice, and included it on log RPC responses for PTY runs when grep was not used.
- Extended the logs result contract and launch tool rendering to consume `terminalText`, reconstruct terminal output, and display it in framed, preview-capped sections.
- Kept terminal row layout stable by writing space characters for empty cells when reading rows, preserving spacing during output reconstruction.
2026-07-13 19:21:45 +02:00
can1357 896c4bb17b fix(coding-agent/tools): capped expanded streaming diff previews to a viewport-sized tail
- Bounded expanded partial edit diff rendering in `formatStreamingDiff` to `previewWindowRows()` instead of an unbounded budget, preventing runaway preview growth during live updates.
- Updated streaming diff tests to simulate terminal height and verify expanded previews stay full only within the viewport, then switch to a truncated tail with the `more lines above` marker when too tall.
- Reinitialized in-memory `Settings` before each initial-messages test since the test suite reads global display configuration and needs isolation.
2026-07-13 19:00:26 +02:00
can1357 59ecd2a4d8 refactor(coding-agent/modes): added ACP type guards for elicitation narrowing
- Added `isAcceptedElicitation` in the ACP agent to narrow accepted elicitations before accessing response content.
- Added `isFormElicitation` in ACP tests and used it to narrow form-mode requests before assertions.
2026-07-13 18:53:19 +02:00
can1357 c69c048361 ci: stabilized test runs by resetting settings and shrinking UI/TUI chunks
- Initialized in-memory settings in the repro issue test by resetting settings before theme setup.
- Reduced the UI/TUI CI test bucket chunk size from 10 to 5 to avoid cumulative Bun GC heap aborts.
2026-07-13 18:51:34 +02:00