summaryrefslogtreecommitdiff
path: root/src/config.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-07-31 10:37:19 -0300
committerGabriel Schneider <[email protected]>2026-08-01 15:02:08 -0300
commit0b7a480bef38b209741c520e2478d178767a9e51 (patch)
tree837b2222db111743cdbfc7f9706323009c330c2a /src/config.zig
parent5cf16eab0a4beec196e51bdcee731b899a2af07c (diff)
downloadpardes-0b7a480bef38b209741c520e2478d178767a9e51.tar.gz
pardes-0b7a480bef38b209741c520e2478d178767a9e51.zip
the gui shell watches files too
It never did — the effect arm was `.watch => {}` with a comment saying a shell that never delivers the event simply never reloads. That was written as a deliberate scope cut and it is the whole bug: the user runs pardes-gui. The tty watcher was fine, and I proved all four suspicions false against a real binary in a real pty with the write done by a stranger process and NO input delivered afterwards: the loop does wake (postEvent signals an empty queue), zig fmt's rename-over does fire MOVED_TO and is caught, three panes across two directories all reload and closing one leaves its neighbour still following, and the self-write hash guard does not swallow a real change. The live session even had its inotify mark on src with the right mask and re-read config.zig when I touched that directory. Duplicated rather than shared with tty.zig, the way the two shells already each own LspJob, forkShell and their pty readers. The headless PARDES_TEST_GRID path deliberately passes -1: its contract is one frame per scripted input, and a reload on its own clock would put an unasked-for frame in the stream. filewatch.snap proved less than it looked. Its real blind spots were the rename-over shape — the old script only truncated, so it saw CLOSE_WRITE and never MOVED_TO — multiple directories, and the one that mattered: the suite only ever runs the TTY binary, so it structurally cannot see a gui-only regression. It now uses a new `run` directive whose writer is a child of the RUNNER, so nothing it does reaches an app pty.
Diffstat (limited to 'src/config.zig')
0 files changed, 0 insertions, 0 deletions