Commit Graph

1614 Commits

Author SHA1 Message Date
JJ Liebig 63ea2314b2 fix: detect kimi npm shim on windows (#4053)
refs #3317
2026-09-13 16:41:51 +02:00
JJ Liebig 5c0ecc6aa5 test: deflake windows metadata ttl expiry assertion (#4050)
The clear-only metadata test used a 1 ms ttl, so on loaded Windows runners set_agent_metadata could see the entry as expired, drop it, and recreate it with a None ttl before next_agent_metadata_expiry() ran. Expiry is forced explicitly later in the test, so use a long ttl to keep the no-extension assertion independent of wall-clock scheduling.
2026-09-13 16:03:42 +02:00
Kataoka Katsuki d66c39d5c5 fix(server): transfer handoff descriptors in batches (#3411)
Live handoff refused any session with more than 64 panes. The pane count
was checked twice against MAX_FDS_PER_HANDOFF, and the transfer itself put
every pane's pty master into one SCM_RIGHTS control message, so the guard
was the only thing keeping the send inside the kernel's per-message limit.
A session past the limit could only be updated by closing panes or by a
normal restart, which ends every pane process.

Send the descriptors in batches of 64 instead and drop both guards. The
receiving side accumulates across recvmsg calls until the expected count
arrives, bounds every SCM_RIGHTS payload it reads by the control bytes the
kernel returned, rejects a batch that carries more descriptors than it
asked for, and closes the descriptors it already holds on any failure. A
session of 64 panes or fewer still produces one batch, so the bytes on the
wire are unchanged and HANDOFF_VERSION stays at 1.

refs #3393

Co-authored-by: kataokatsuki <kataokatsuki@users.noreply.github.com>
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com>
2026-09-13 15:52:29 +02:00
akbash 7505c08d47 fix: retain validated split mouse reports across idle gaps (#4048)
refs #3911

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com>
2026-09-13 15:33:58 +02:00
JJ Liebig 540b20fdf0 test: relax windows docs snapshot timeout (#4049)
Windows CI runs these documentation contract fixtures under variable load. A degraded runner pushed the preview and versions snapshot integration tests past their 30s ceiling, while a healthy run finishes in seconds. Keep 30s elsewhere and give Windows a 120s ceiling.
2026-09-13 15:26:30 +02:00
akbash 858ad4e378 fix(input): preserve super-modified pane keys (#4044)
refs #3710

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com>
2026-09-13 15:14:31 +02:00
akbash a5e1c94157 fix: restrict claude session hooks to native sources (#4046)
refs #4018

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com>
2026-09-13 15:04:22 +02:00
akbash 9631f8ee21 fix: decouple pixel mouse from pane graphics (#4045)
refs #3295

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com>
2026-09-13 14:57:31 +02:00
akbash f48cd6a768 fix: order ui accent before nested config tables (#2698)
* fix: order ui accent before nested config tables

refs #2697

* test: reject duplicate ui accent examples

refs #2697

---------

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-13 14:50:29 +02:00
Can Celik fc44f61a10 fix: disconnect stalled terminal observers (#4039) 2026-09-13 13:47:53 +03:00
Rhett CfZhuang bafbc0949d fix(linux): avoid blocking proc reads for wsl agents (#2179)
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com>
2026-09-13 02:43:38 +02:00
JJ Liebig 3b9f58b70e fix: deflake windows endpoint flush drain test (#4021)
The polling peer drains at production's 2ms Windows read cadence, so a 1 MiB
frame took ~5.5s locally and exceeded the test's 10s flush deadline under CI
load. Use a 256 KiB frame, still well above the 64 KiB batch limit, and a 30s
deadline so the assertion no longer depends on CI scheduling.
2026-09-13 02:17:50 +02:00
akbash aa6b531a42 fix: update grok session after new (#2683)
* fix: update grok session after new

refs #2681

* fix: avoid powershell args shadowing

refs #2681

---------

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-13 02:04:27 +02:00
Can Celik 98a8c6ce52 fix: restore alternate-screen pane width (#4016)
refs #3329
2026-09-13 02:40:13 +03:00
akbash 5eafc61267 fix: honor space row gaps across machines (#3740)
* fix: honor space row gaps across machines

refs #3738

* test: cover scrolling with machine space gaps

refs #3738

---------

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-13 02:20:23 +03:00
Can Celik e3a46f4f89 fix: recognize codex composer sparkles (#4015)
refs #3988
2026-09-13 01:36:59 +03:00
akbash 96f2324467 fix: allow retrying partial worktree removal (#3315)
refs #3314

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-12 21:55:19 +02:00
akbash d184b41fa3 fix: batch queued endpoint input frames (#4004)
refs #3833

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-12 18:19:33 +02:00
JJ Liebig c17dc3fda7 fix: keep windows endpoint writes progressing (#3721)
refs #3651
2026-09-12 18:00:01 +02:00
JJ Liebig 6cf4bbb031 fix: finish windows ssh setup after bridge exit (#3719)
refs #3651
2026-09-12 17:24:34 +02:00
JJ Liebig a5d5f6f654 fix: ignore nested OMP session reports (#3994)
refs #2593
2026-09-12 13:52:18 +02:00
Can Celik cc36a2943e fix: preserve complete alternate-screen history reads (#3979) 2026-09-12 13:53:33 +03:00
akbash 9ad65d9031 fix: suppress Windows dead-key fallback characters in remote panes (#3972)
refs #3948

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-12 01:38:57 +04:00
Mark Jaquith fb5525fc22 fix: opencode v2 lifecycle reporting (#3757)
* fix: support opencode v2 lifecycle reporting

* fix: repair Japanese docs

* fix: ignore payload-less OpenCode events

* fix: harden opencode v2 integration install and reporting

Follow-ups on top of the V2 lifecycle support:

- create `cli.json` when OpenCode has no V1 TUI preferences (`tui.json` or
  `kv.json`) to migrate, instead of only registering into an existing file
- settle stalled socket attempts with a plain connect timer, and resend the
  latest lifecycle state after a failed delivery so the pane cannot get stuck
- resolve the OpenCode state directory from `XDG_STATE_HOME`
- remove the managed `herdr-opencode` directory on uninstall
- document failed executions reporting `blocked`, keep the integration test
  environment independent of an inherited `XDG_STATE_HOME`, and simplify
  `reconcileBlockers` to reassign its map

---------

Co-authored-by: Jonathan Liebig <jonathan.liebig@gmail.com>
2026-09-11 22:36:18 +02:00
Ogulcan Celik 38d002de59 docs: enable nesting in throwaway repro setup 2026-09-11 23:10:36 +03:00
Can Celik a0474ae770 fix: preserve whole-word selection while dragging (#3969)
refs #1836
2026-09-11 22:58:01 +03:00
Can Celik b11ac859c7 ci: reuse compiler state across validation runs (#3956)
* ci: retain zig build caches across validation runs

* ci: reduce debug information in validation builds

* ci: build only the ghostty test target for scalar checks

* ci: measure debug profiles and remove duplicate macos caching

* ci: compare scalar build scopes on one runner

* ci: keep the zig compiler path stable across runs

* ci: run macos and windows lint alongside tests

* ci: inspect remaining zig cache misses

* ci: remove completed measurement probes

* ci: compare windows linkers without changing release builds

* ci: test linux incremental reuse and correct the linker probe

* ci: measure windows incremental state reuse

* test: verify incremental reuse after a source change

* ci: finalize measured compiler cache optimizations
2026-09-11 21:06:24 +03:00
akbash 1a7c691559 fix(remote): show SSH authentication output (#3609)
* fix(remote): show SSH authentication output

refs #3606

* test(remote): stabilize SSH authentication output regression

refs #3606

---------

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com>
2026-09-11 21:12:49 +04:00
JJ Liebig eba7758ced fix(config): keep utf8 bom from breaking config reads and writes (#3962)
* fix(config): keep utf8 bom from breaking config reads and writes

refs #3678

* fix(config): only strip displaced boms when config is invalid

refs #3678

* fix(config): strip only boms the toml parser rejects

refs #3678
2026-09-11 18:36:06 +02:00
JJ Liebig c7a7cc454a fix: lint all targets on windows (#3963)
Native Windows lint and check only clippy-checked the herdr binary, while macOS and Linux run clippy across all targets. Enable --all-targets on Windows and gate the Unix-only test helpers that this exposed so Windows check matches the Unix one.
2026-09-11 18:12:49 +02:00
JJ Liebig 871ff8b91f fix: flush Windows Codex paste burst before prompt submit (#3961)
Codex's Windows input reader does not surface bracketed paste. It buffers
the prompt as a paste burst and rewrites a following Enter into a newline
until the burst idles out, so the previous size-based delay only reduced
the chance of losing the submit. Append a non-character key after the
paste so Codex flushes the burst synchronously, giving every prompt a
deterministic submit boundary.

refs #3187
2026-09-11 17:04:06 +02:00
Can Celik f3cbe03fdb fix: detect cline launchers and idle states (#3959)
refs #2396
2026-09-11 17:38:52 +03:00
Can Celik cd7edeb060 fix: preserve local direct kitty graphics transport (#3957)
refs #3785
2026-09-11 16:26:52 +03:00
Can Celik a05c403881 fix: recognize claude unicode spinner during active turns (#3953)
refs #3949
2026-09-11 16:07:33 +03:00
Can Celik 02b1b49d46 test: make windows cross-check path assertions portable (#3954) 2026-09-11 15:59:09 +03:00
Ogulcan Celik 2778411b6c chore: add one-time windows cross-check setup 2026-09-11 15:35:35 +03:00
Ogulcan Celik 0345791381 ci: trigger nix updates after stable releases 2026-09-11 14:54:05 +03:00
akbash 560cb8c1d2 fix: preserve plugin registry symlinks (#3927)
refs #3922

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-11 14:41:16 +03:00
JJ Liebig 61ca85d589 fix: explain zig version requirement on build failure (#3931) 2026-09-11 02:51:26 +02:00
Can Celik 6e7d415bcf fix: keep terminal snapshots consistent while scrolling (#3928)
refs #3900
2026-09-11 02:08:31 +03:00
Can Celik 5827145940 feat: support conditional sidebar token hiding (#3925) 2026-09-11 00:55:19 +03:00
Can Celik 043b804c44 feat: route cli commands to saved ssh machines (#3918) 2026-09-10 23:33:27 +03:00
Can Celik 425c861797 chore: upgrade libghostty and preserve terminal behavior (#3906) 2026-09-10 21:51:57 +03:00
Can Celik 90e947a6e2 fix: bound mouse selection repaint cadence (#3901)
refs #3895
2026-09-10 16:37:50 +03:00
akbash bf76cef889 fix: accept machine add options before the SSH target (#3897)
refs #3883

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-10 16:10:44 +03:00
akbash 241a1e0fad fix(input): accept WezTerm control key reports (#3592)
* fix(input): accept WezTerm control key reports

refs #3589

* fix(input): preserve WezTerm tab and escape reports

refs #3589

---------

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-10 14:54:17 +03:00
akbash 406c9e4fee fix: preserve focused viewer geometry during activation (#3746)
* fix: preserve focused viewer geometry during activation

refs #3744

* fix: preserve geometry through activation sync

refs #3744

---------

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-10 14:50:30 +03:00
Can Celik 3813af0ffe fix: use host background for pane selection highlights (#3894)
refs #3798
2026-09-10 14:27:39 +03:00
akbash 7265a2b101 fix(windows): preserve legacy mouse reports over ssh (#3742)
* fix(windows): preserve legacy mouse reports over ssh

refs #3735

* fix(windows): preserve input after missing mouse release

refs #3735

---------

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com>
2026-09-10 14:02:33 +03:00
akbash a52060315e fix(linux): identify Herdr desktop notifications (#3639)
refs #3638

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-10 13:46:15 +03:00