Commit Graph

7307 Commits

Author SHA1 Message Date
can1357 3b66177abd Merge PR #8226: fix(advisor): accept silent Gemini reviews (@roboomp) 2026-08-11 15:15:44 +02:00
can1357 64baa7c1bd chore(format): applied biome formatting and removed dead code from merged prs 2026-08-11 15:14:15 +02:00
can1357 2670dc345c Merge PR #7930: fix(coding-agent): let a classifier refusal cascade when its tool calls never ran (@mvid)
# Conflicts:
#	packages/coding-agent/src/session/turn-recovery.ts
2026-08-11 15:09:34 +02:00
can1357 706371bb91 fix(extension-api): preserved overlay option factories 2026-08-11 15:08:39 +02:00
Vanko ed820703a7 fix(extension-api): restore overlayOptions/onHandle passthrough in ui.custom
showHookCustom hardcoded the overlay geometry and never read
overlayOptions/onHandle, which regressed the v0.45.6 API (PR
badlogic/pi-mono#667). Forward overlayOptions to showOverlay (keeping the
full-cover defaults as fallback), invoke onHandle with the returned
OverlayHandle, widen the options type via a shared ExtensionCustomOptions,
and re-export OverlayHandle/OverlayOptions from the extension API.
2026-08-11 15:08:39 +02:00
can1357 600bac9615 Merge PR #8213: Fix/8030 osc133 command start (@Mustaqeem66) 2026-08-11 15:07:43 +02:00
can1357 7e8be71ead Merge PR #7247: fix(advisor): prevent false full replays and preserve cache growth (@cuipengfei) 2026-08-11 15:07:43 +02:00
can1357 f460e6dd71 Merge PR #7703: fix: discover workspace AGENTS files (@listellm) 2026-08-11 15:07:43 +02:00
can1357 24c348862f Merge PR #8197: fix(status-line): recognized kimi-code subscription windows in the usage segment (@tehfiend) 2026-08-11 15:06:16 +02:00
can1357 270fe8d454 Merge PR #8183: fix(cursor): omit undefined exec args and keep exec-resolved under owned dialects (@jairuspace) 2026-08-11 15:06:16 +02:00
can1357 4b8dbcee07 Merge PR #8172: fix: make terminal Mermaid state diagrams readable (@shawnkoh) 2026-08-11 15:06:16 +02:00
can1357 e56777e138 fix(lsp): rearmed cached idle checker after shutdown 2026-08-11 15:06:16 +02:00
can1357 7b3bd4781b Merge PR #8154: fix(lsp): stop idle checker during shutdown (@MikeeI) 2026-08-11 15:06:16 +02:00
can1357 046fdeab00 Merge PR #8153: fix(lsp): cancel requests after client timeout (@MikeeI) 2026-08-11 15:06:15 +02:00
can1357 55d1831dd3 Merge PR #8152: perf(session): weakly cache conversion histories (@MikeeI) 2026-08-11 15:06:15 +02:00
can1357 da680b6e67 Merge PR #8150: perf(rpc): reuse serialized output frames (@MikeeI) 2026-08-11 15:06:15 +02:00
can1357 5ba362777a Merge PR #8149: perf(session): reuse parsed journal during resume (@MikeeI) 2026-08-11 15:06:15 +02:00
can1357 7a8c72df94 Merge PR #8141: fix(eval): re-validate memoized kernel runner path (@roboomp) 2026-08-11 15:06:15 +02:00
can1357 4348999768 Merge PR #8087: test(coding-agent): flush immediate before asserting tiny-title prewarm (@szavadsky) 2026-08-11 15:06:14 +02:00
can1357 d57656f283 Merge PR #8074: fix(coding-agent): display subagent registration time locally (@anatoli-tsinovoy) 2026-08-11 15:06:13 +02:00
can1357 7896a58406 Merge PR #8050: fix(tui): keep pasted images when a mode command submits the draft (@fatihaziz) 2026-08-11 15:06:13 +02:00
can1357 c0ad19005b Merge PR #8018: test(coding-agent): hermeticize agent dir in claude-plugins discovery tests (@szavadsky) 2026-08-11 15:06:13 +02:00
can1357 dedddb86f5 Merge PR #7998: fix(ai): map Cursor plan rails to dashboard percents and show mo N% (@dnth) 2026-08-11 15:06:12 +02:00
can1357 66a55fb916 Merge PR #7983: fix(vibe): restore the pre-vibe toolset when switching between vibe sessions (@iskWang) 2026-08-11 15:06:12 +02:00
can1357 6592b799b3 Merge PR #7980: fix(session): attribute a run to the model that produced its output (@enieuwy) 2026-08-11 15:06:12 +02:00
can1357 19edecaa48 fix: kept out-of-order todo completions visible 2026-08-11 15:06:12 +02:00
can1357 f6d4f1e38b Merge PR #7965: fix(coding-agent): surface todo progress in the collapsed panel (@z80dev) 2026-08-11 15:06:12 +02:00
can1357 00d90809fc test: removed redundant policy-key suite 2026-08-11 15:06:11 +02:00
can1357 8504e4865f Merge PR #7945: fix(coding-agent): resolve xd:// device dispatches against device user policy first (@re2zero) 2026-08-11 15:06:11 +02:00
can1357 261eb965ac fix(task): preserved direct role alias fallback 2026-08-11 15:06:11 +02:00
can1357 0748651036 Merge PR #7910: fix(task): key subagent fallback chains off the pre-expansion model role (@enieuwy) 2026-08-11 15:06:11 +02:00
can1357 d13121fbf8 Merge PR #7856: fix(coding-agent): answer panel commands immediately during a turn (@mvid) 2026-08-11 15:06:11 +02:00
Fatih Al-Aziz 8a22872ece fix(tui): preserve mode submissions across async input 2026-08-11 16:46:45 +07:00
Fatih Al-Aziz de9ee6d412 fix(tui): preserve mode attachments across async paths 2026-08-11 16:25:20 +07:00
Fatih Al-Aziz bb42aaaced test(tui): accept follow-up attachment argument 2026-08-11 15:59:08 +07:00
Fatih Al-Aziz d194f2d76c fix(tui): honor transformed mode attachments 2026-08-11 15:52:58 +07:00
roboomp 86b8f510c8 fix(advisor): accepted silent Gemini reviews
Allowed advisor streams to treat Google STOP responses without visible content as successful silence while preserving the default retry behavior for interactive agents.

Added provider and advisor-path regressions covering retry counts, system instructions, and the advise declaration.

Fixes #8223
2026-08-11 08:22:54 +00:00
Muhammad Mustaqeem bf99f9ce5b test(tui): lock the paired OSC 133 command zone instead of its absence
The existing assertion encoded the exact behaviour #8030 reports as the bug:
it required that no `133;C` ever be emitted, which is what leaves Ghostty's
sticky `.input` cursor semantic latched for the rest of the session.

Rewrite it around the property the fix actually guarantees. The marker must
now be present, but it must be immediately followed by `133;D;0` and appear
exactly once per bubble, so the command zone is opened and closed within the
same render and later assistant/tool output is still never grouped under the
submitted prompt. That was the real concern behind the original assertion,
and it is now checked directly rather than by proxy.

Refs #8030
2026-08-11 10:47:01 +05:00
Bejay Cole e7f487381b fix(status-line): recognized kimi-code subscription windows in the usage segment
Kimi's usage provider built window ids from the raw duration/timeUnit ("300time_unit_minute") and left the aggregate quota on "default", so the status-line usage segment, which matches canonical "5h"/"7d" windows, never rendered for kimi-code sessions.

Derive window ids from the reported span instead (300 minutes -> "5h", 7 days -> "7d"), mirroring the minimax-code convention, and tag the aggregate quota as the weekly window. The payload carries only resetTime for the aggregate, but the observed reset horizon matches the plan's weekly cycle. The segment aggregator also falls back to the reported span (duration within a minute of 5h or 7d) when the id isn't canonical, so cache rows written by older builds still light up the 5h meter in mixed-version fleets.
2026-08-10 17:01:41 -06:00
jairuspace 375087c06b test(cursor): assert shellStream omits unset optional bash kwargs
shellStream bypasses executeTool normalization; cover start-event and
execute args so absent cwd/timeout cannot regress to present-undefined.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 13:51:55 -06:00
jairuspace 5cbd482f8e fix(cursor): omit undefined exec args and keep exec-resolved under owned dialects
Cursor bash/grep frames wrote optional kwargs as present-undefined, and
tools.format gemini projectors dropped kCursorExecResolved so settled
calls ran twice.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 13:39:40 -06:00
Shawn Koh cfbd567628 fix: preserve punctuation label colors 2026-08-11 01:19:54 +08:00
Shawn Koh e658d9f7be fix: address Mermaid rendering review 2026-08-11 01:14:29 +08:00
Shawn Koh a42868f550 fix: make terminal state diagrams readable 2026-08-11 01:00:35 +08:00
can1357 baf8a1df7e feat(coding-agent/web): expanded web search and fetching providers
- Expanded web search and fetching providers with robust parsing, authentication storage integration, and response validation.
- Added support for new configurations including SearXNG safesearch, Cloudflare AI Gateway endpoints, and dynamic Firecrawl base URLs.
- Implemented comprehensive test suites covering error handling, content filtering, and provider-specific response behaviors.
2026-08-10 11:06:22 +02:00
roboomp 78465e7aaf fix(eval): re-validate memoized kernel runner path
ensureRunnerScript() memoized the staged runner path in a module-level
RUNNER_SCRIPT_PATH and returned it on the warm path with no existence
check, defeating the cold path's own self-heal. If the tmpdir cache
(os.tmpdir()/omp-<lang>-runner) was cleared mid-session (e.g. a macOS
periodic clean_tmps sweep), the process kept handing out a path to a
deleted file and every later Python/Julia/Ruby kernel start failed to
spawn until restart.

Extract the three copy-pasted ensureRunnerScript implementations into a
single stageRunnerScript helper that re-checks fs.existsSync before
reusing the memoized path, so a swept runner is re-staged on the next
call. Route the Python, Julia, and Ruby kernels through it.

Fixes #8140
2026-08-10 07:03:13 +00:00
Bonobo 3321be5055 perf(session): weakly cache conversion histories
Why:
The module-global array memo strongly retains the most recently converted
transcript and output after its session is disposed.

Changes:
- Store exact-repeat and append-growth state in a WeakMap per input array.
- Preserve generation invalidation and per-message weak caching.

Evidence:
- Seven disposal runs collected both arrays after 50 forced-GC passes and
  reduced median heap delta by 87.54%.

Refs #8119
2026-08-10 04:09:44 +02:00
Bonobo 9de7862a29 perf(rpc): reuse serialized output frames
Why:
RpcFrameEncoder serializes normal frames once for protocol routing and again
for output, while v2 snapshots serialize message payloads separately.

Changes:
- Feed the existing JSON into frame-size enforcement.
- Build v2 message snapshots from the serialized frame.

Evidence:
- End-to-end paired medians improved 10.72% for v1 and 15.72% for v2
  across 25 pairs, with identical output hashes.

Refs #8118
2026-08-10 04:08:41 +02:00
Bonobo 00fc4d5376 perf(session): reuse parsed journal during resume
Why:
SessionManager.open() parses the complete journal for its header and then
setSessionFile() parses the same journal again.

Changes:
- Reuse the entries already loaded by open() through a private setup path.
- Keep the public setSessionFile() contract unchanged.

Evidence:
- A 19.98 MB, 12,000-entry journal improved from 48.011 ms to
  25.406 ms median across 15 runs with identical restored state.

Refs #8117
2026-08-10 04:08:09 +02:00
Bonobo e8dd853fa4 fix(lsp): cancel requests after client timeout
Why:
Local timeout cleanup removes pending state but leaves the language server
working on an abandoned request.

Changes:
- Send $/cancelRequest after an issued request reaches its client timeout.
- Preserve the existing timeout error and pending-request cleanup.

Evidence:
- The workspace-readiness regression observes cancellation for the dropped
  status request before polling succeeds.

Refs #8116
2026-08-10 04:07:11 +02:00