Commit Graph
786 Commits
Author SHA1 Message Date
can1357 2e0e0618db test(tui): cover pending tmux appearance teardown 2026-08-07 13:37:57 +02:00
can1357 d8def7418c Merge PR #7801: fix(tui): avoid leaking DA1 through tmux appearance refresh (@anatoli-tsinovoy) 2026-08-07 13:37:56 +02:00
can1357 cc28589c4a Merge PR #7810: fix(tui): preserve scrollback in Herdr panes (@chessl) 2026-08-07 13:37:56 +02:00
Chess Luo 32d6421e84 test(tui): isolate Herdr env in direct-terminal fixtures 2026-08-06 16:06:40 +08:00
Chess Luo c720597d43 fix(tui): preserve scrollback in Herdr panes 2026-08-06 15:29:21 +08:00
Anatoli Tsinovoy 54481bebb7 fix(tui): avoid tmux DA1 passthrough 2026-08-06 09:11:34 +03:00
Anatoli Tsinovoy 86c6265e16 fix(tui): read refreshed tmux appearance cache 2026-08-06 08:09:56 +03:00
can1357 d49e7da281 test(tui): isolate explicit platform Warp assertions 2026-08-05 22:16:53 +02:00
can1357 ccd5a5c988 Merge PR #7697: test: fix Windows portability of bash ACP, Warp capability, and logger closure tests (@metaphorics)
# Conflicts:
#	packages/utils/test/logger-runtime-closure.test.ts
2026-08-05 22:16:53 +02:00
can1357 7cd8f4a3a5 test(tui): cover ConPTY kitty keyboard flags 2026-08-05 21:50:01 +02:00
can1357 db09dedda9 Merge PR #7707: fix(tui): detect systemd user bus for Linux desktop notifications (@metaphorics) 2026-08-05 21:50:01 +02:00
can1357 c2827621a7 Merge PR #7695: fix(tui): trigger autocomplete for Windows drive-absolute paths (@metaphorics) 2026-08-05 21:50:01 +02:00
can1357 501cc74754 Merge PR #7747: fix(tui): handle raw-mode startup EIO instead of aborting (@mvid) 2026-08-05 21:50:00 +02:00
Mantas Vidutis 6e81c9cb6c Merge upstream/main into fix/raw-mode-startup-eio 2026-08-05 11:43:18 -07:00
metaphorics 3198f91f37 test(tui): add a platform-independent drive-letter autocomplete trigger test 2026-08-05 11:43:26 +00:00
metaphorics 54e36db16d fix(tui): trigger autocomplete for Windows drive-absolute paths 2026-08-05 11:43:26 +00:00
metaphorics f219901fe0 test(tui): treat WSL as a Windows host in the Warp image-protocol assertion 2026-08-05 11:43:19 +00:00
metaphorics 29a72eb939 test: fix Windows portability of bash ACP, warp capabilities, and logger closure tests 2026-08-05 11:43:19 +00:00
can1357 e9888367d1 refactor: migrated packages to internal utility modules and removed external dependencies
- Implemented in-house, zero-dependency utility modules in `pi-utils` covering DOM manipulation, markdown parsing, templating, browser automation helpers, and terminal buffers.
- Migrated packages across the repository to consume the new internal utilities and `omptype` schema validators instead of external dependencies.
- Removed multiple external runtime and development dependencies including Zod, Marked, LRU cache, Turndown, and Puppeteer browser packages.
2026-08-05 13:39:09 +02:00
metaphorics a6c129533c fix(tui): detect Linux user bus socket 2026-08-05 10:51:27 +00:00
can1357 40d47b557f Merge PR #7580: fix(tui): run sixel probe under WSL + Windows Terminal (@roboomp) 2026-08-05 01:11:56 +02:00
can1357 2eea289648 Merge PR #7576: fix(tui): terminate wrapped table cell lines' SGR state so borders keep default color (@miaopan607) 2026-08-05 01:11:56 +02:00
Mantas Vidutis 46051126a3 fix(tui): handle raw-mode startup EIO 2026-08-04 11:40:45 -07:00
metaphorics 3802d2dd80 chore(ts): enforce noImplicitOverride 2026-08-05 02:49:01 +09:00
roboomp 6eb9574436 fix(tui): ran sixel probe under wsl windows terminal
The SIXEL capability probe gated on process.platform === "win32", but
under WSL process.platform is "linux", so the probe never ran and inline
images fell back to the text placeholder even on Sixel-capable Windows
Terminal. Gate on isConPTYHosted() (native win32 or WSL) instead; the
existing WT_SESSION and TTY requirements still scope it to WT.

Fixes #6009
2026-08-04 02:55:38 +00:00
淼畔 6b2d532269 fix(tui): terminate wrapped table cell lines' SGR state so borders keep default color
Table rows splice every wrapped cell line between unstyled border glyphs.
The native wrap deliberately leaves fg color and bold/italic open at line
ends so continuation lines can re-open them, so a codespan broken across a
wrap leaked its color into the '|' borders, inter-cell padding, and the
following cells. Close SGR state per cell line (bold/italic off, default
fg; background preserved) in #wrapCellText.

Closes #7575
2026-08-04 09:56:54 +08:00
can1357 c6b282bc68 fix(tui): preserve kitty event reporting mode 2026-08-02 20:54:39 +02:00
roboomp 422aeeea49 fix(tui): requested base-layout keys for shortcuts
Requested Kitty flag 4 alongside escape-code disambiguation so Ghostty reports base-layout key codepoints for non-Latin keyboard layouts.

Added negotiation and shortcut-matching regression coverage.

Fixes #7320
2026-08-01 20:36:22 +00:00
roboomp b1b6d99627 fix(tui): backpressured slow loader paints
Measured each animated Loader paint and recursively scheduled the next frame with a 10% duty-cycle target, capped at 200ms to retain responsiveness.

Added a regression covering a slow synchronized-output direct-write path and documented the fix.

Fixes #7290
2026-08-01 17:23:26 +00:00
can1357 a91fa13116 Merge PR #7055: fix(tui): preserve literal code block rows (@GratefulDave) 2026-07-31 19:42:43 +02:00
can1357 f1f7ed7f75 Merge PR #7113: fix(tui): ignore system sleep in loop watchdog (@wolfiesch) 2026-07-31 19:28:43 +02:00
Alex Jaden daa9b99aab fix(coding-agent): preserve scrollback on appearance changes 2026-07-31 10:34:43 +05:00
Wolfgang Schoenberger 2841e99a95 fix(tui): ignore system sleep in loop watchdog 2026-07-30 14:48:06 -07:00
David Andrews aa2417c8f6 fix(tui): preserve literal fenced code rows 2026-07-30 15:27:21 -04:00
David Andrews 048edef450 style(tui): format code copy tests 2026-07-30 15:27:21 -04:00
David Andrews 096ff49fc5 fix(tui): preserve nested code copy 2026-07-30 15:27:21 -04:00
David Andrews 7928353e02 fix(tui): preserve assistant code copy 2026-07-30 15:27:21 -04:00
David Andrews cf069f37c8 fix(tui): preserve literal code block rows 2026-07-30 15:27:21 -04:00
can1357 83294afc0a Merge PR #7013: fix(tui): prevent UUID prefixes rendering color swatches (@roboomp) 2026-07-29 23:09:04 +02:00
roboompandcan1357 4e06b7f1f5 fix(tui): prevented UUID prefixes rendering color swatches
Excluded canonical hash-prefixed UUIDs from prose hex-color matching while preserving standalone 8-digit CSS colors.

Fixes #7002

(cherry picked from commit b423fe6e51bb1d45b88916f885f1b81e1ce54ff0)
2026-07-29 23:09:03 +02:00
can1357 e24babd8e1 Merge PR #6941: fix(tui): stop loader spinner re-wrapping text every tick (@roboomp) 2026-07-29 23:08:40 +02:00
roboompandcan1357 beaafb9955 fix(tui): handled mixed-width spinner frames
Cached one stable layout representative per frame display width so same-width animation retains the fast path while width transitions rewrap before painting. Added coverage for wider custom frames remaining within terminal bounds.

(cherry picked from commit 3aa173a574538d754e68f8d10f7b88d437709884)
2026-07-29 23:08:40 +02:00
roboompandcan1357 b152f40134 fix(tui): stopped loader spinner re-wrapping text every tick
The Loader baked the advancing braille glyph into the underlying Text
via setText, so Text.render's wrap cache (keyed on text) missed every
80ms tick and re-ran wrapTextWithAnsi plus per-line width measurement
over the whole message even though only a 1-cell glyph changed. On a
single-subagent hub wait the direct-write render loop consumed ~48% of
a saturated core.

The wrapped text now carries a stable sentinel glyph (frames[0]); the
spinner advance only bumps the frame index and requests a repaint, and
render() swaps the visible glyph over the cached layout. wrapTextWithAnsi
and stringWidth now run only when the message actually changes.

Fixes #6940

(cherry picked from commit 6ec38053ebc1e33859358df3b66f71fea27532c7)
2026-07-29 23:08:40 +02:00
can1357 7d29a65b1c Merge PR #6923: fix(coding-agent): sync WezTerm theme changes on macOS (@Sairen777) 2026-07-29 23:08:35 +02:00
Alex Jadenandcan1357 028912ef01 fix(tui): suppress appearance probes while stopped
(cherry picked from commit a53b38a8b1b6f0a6d5e45fe46b84857c93e56bd2)
2026-07-29 23:08:34 +02:00
Alex Jadenandcan1357 070ff41f4c fix(coding-agent): sync WezTerm theme changes on macOS
(cherry picked from commit fa70be267daa6f98cf18e2f257041f4e6e68a61d)
2026-07-29 23:08:34 +02:00
can1357 897b0c8d6c Merge PR #6920: fix(tui): prevent Windows pane-close deadlock (@roboomp) 2026-07-29 23:08:31 +02:00
roboompandcan1357 313f3fa1c4 fix(tui): prevented Windows pane-close deadlock
Skipped stdout draining after ProcessTerminal observes a native Windows terminal disconnect, while preserving normal postmortem cleanup and drain behavior for every other shutdown path.

Fixes #6917

(cherry picked from commit b45fc00ab4b5075ccb9650584947dde061beea20)
2026-07-29 23:08:31 +02:00
can1357 bdae83334c test(tui): cover stdout backlog guard wiring
(cherry picked from commit f7996776d11efdfa835cef93a308a33f60ea604c)
2026-07-29 23:08:23 +02:00
can1357 c793089797 Merge PR #6856: fix(tui): bound stdout backlog when the pty consumer stalls (@roboomp) 2026-07-29 23:08:23 +02:00