From 7c6165f184e45af30ac697f8e8a584529ac4a287 Mon Sep 17 00:00:00 2001 From: Gabriel Schneider Date: Thu, 3 Sep 2026 13:11:24 -0300 Subject: boot: argv naming nothing opens an errors pane, not a stack trace MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `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) Claude-Session: https://claude.ai/code/session_016Q4RATpafkwahrovHQLKRf --- src/CHANGELOG.md | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/CHANGELOG.md') 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 -- cgit v1.3