mirror of
https://github.com/MoonshotAI/kimi-code.git
synced 2026-07-13 11:19:15 +00:00
* fix(approval): include file content and diff in approval display After #26 the WriteTool/EditTool input display was reduced to `{kind: 'file_io', operation, path}`, dropping the args carried by the previous generic fallback. The approval panel then only had a path to show — no file content for Write, no diff hunk for Edit — and ctrl+e expanded to the same one-liner. Extend the file_io display with optional `content` / `before` / `after` fields so Write can attach its full content and Edit can attach its old_string/new_string hunk. The adapter promotes file_io+content to a file_content block and file_io+before/after to a diff block, matching what the panel renders for the legacy generic-fallback path. * feat(tui): open full-screen viewer for approval previews Inline ctrl+e expand-in-place inflated the approval panel past one viewport for any non-trivial Edit / Write, which collided with pi-tui's inline differential renderer and the terminal's "snap to bottom on stdout" reflex: scrolling back glitched and the screen flickered. On top of that, the diff renderer's O(m·n) LCS DP ran every frame the panel was visible, so each spinner tick re-paid the cost. Make ctrl+e hand off to a dedicated full-screen viewer instead. The viewer renders all body lines once at construction and slices them on scroll, so per-frame cost is O(viewport) regardless of payload size. It uses the same nested-takeover pattern as TaskOutputViewer; the approval panel instance is preserved and refocused on close so the selection / feedback state survives. The panel itself drops its local `expanded` toggle and always renders the compact cluster view; ctrl+e now exclusively forwards to the host when there is something to preview, and falls through to the existing plan-expand toggle otherwise. * chore(changeset): restore approval previews |
||
|---|---|---|
| .. | ||
| background | ||
| fixtures | ||
| planning | ||
| policies | ||
| providers | ||
| agent.test.ts | ||
| ask-user.test.ts | ||
| bash-env.test.ts | ||
| bash-windows-kill.test.ts | ||
| bash.test.ts | ||
| builtin-current.test.ts | ||
| edit.test.ts | ||
| enter-plan-mode.test.ts | ||
| exit-plan-mode-options.test.ts | ||
| exit-plan-mode.test.ts | ||
| fetch-url.test.ts | ||
| file-type.test.ts | ||
| glob.test.ts | ||
| grep.test.ts | ||
| input-schema-io.test.ts | ||
| list-directory.test.ts | ||
| path-guard.test.ts | ||
| plan-mode-hard-block.test.ts | ||
| read-file.test.ts | ||
| read-media-desc.test.ts | ||
| read-media.test.ts | ||
| read.test.ts | ||
| result-builder.test.ts | ||
| rg-locator.test.ts | ||
| shell-cancel.test.ts | ||
| shell-quoting.test.ts | ||
| skill-tool-dispatch.test.ts | ||
| skill-tool.test.ts | ||
| todo-list.test.ts | ||
| web-search.test.ts | ||
| write.test.ts | ||