summaryrefslogtreecommitdiff
path: root/src/CHANGELOG.md
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-03 13:11:24 -0300
committerGabriel Schneider <[email protected]>2026-09-03 13:11:24 -0300
commit7c6165f184e45af30ac697f8e8a584529ac4a287 (patch)
treea03b6bc02ba77c7abe503a304370a59fd9a17e9c /src/CHANGELOG.md
parente81b63106b83bce66641e8dd27d6aa348252baf1 (diff)
downloadpardes-7c6165f184e45af30ac697f8e8a584529ac4a287.tar.gz
pardes-7c6165f184e45af30ac697f8e8a584529ac4a287.zip
boot: argv naming nothing opens an errors pane, not a stack trace
`pardes nosuchfile` returned error.BadArgs out of nativeMain, which std prints as `error: BadArgs` with a return trace under it — indistinguishable from a crash, for a typo, and it left the human with no editor at all. A launch that names something look.resolve cannot make a target of now boots one +Errors pane filling the window, saying `file or directory not found` and the argument AS TYPED: acme's own vocabulary for output that came from the program rather than from a word somebody clicked, and the word rather than a resolved path because `pardes ~/notes/tdoo.md` wants to see its own typo back. A chdir that fails on a directory that really is one stays BadArgs. That is a permission problem rather than a typo, and the two want different answers. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> Claude-Session: https://claude.ai/code/session_016Q4RATpafkwahrovHQLKRf
Diffstat (limited to 'src/CHANGELOG.md')
-rw-r--r--src/CHANGELOG.md10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/CHANGELOG.md b/src/CHANGELOG.md
index 66c9fb0c..4cef906d 100644
--- a/src/CHANGELOG.md
+++ b/src/CHANGELOG.md
@@ -50,6 +50,16 @@
is one a v1 daemon panics encoding, so a mixed pair — `zig build` replacing
the binary under a running session — meets a `Refusal.version` instead of
losing every pane shell the daemon owns.
+- `pardes nosuchfile` opens an editor. It used to return `BadArgs` out of
+ `main`, which std prints as `error: BadArgs` with a return trace under it:
+ indistinguishable from a crash, for a typo, and it left the human with no
+ editor at all. A launch that names nothing now boots one `+Errors` pane
+ filling the window — acme's own vocabulary for output that came from the
+ program rather than from a word somebody clicked — saying `file or directory
+ not found` and the argument AS TYPED. A `chdir` that fails on a directory
+ that really is one is still `BadArgs`: that is a permission problem, not a
+ typo, and the two want different answers.
+
- A filtered terminal costs what an unfiltered one does. `Filter`'s second
stage asked `RGB.contrast` for every cell it painted, and that call ends in
`std.math.pow` six times over — a libm round trip per cell, per frame, to