summaryrefslogtreecommitdiff
path: root/.agents
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-29 07:33:14 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:16 -0300
commitda920ca49e3f5d1649e811bbdc3ddba482c6aae4 (patch)
treeb74d0435ed9dcc9198641d7c8fbef54c4d6c5945 /.agents
parent74db0ccf8162e8c15f21d73168b13fdc86b12ee3 (diff)
downloadpardes-da920ca49e3f5d1649e811bbdc3ddba482c6aae4.tar.gz
pardes-da920ca49e3f5d1649e811bbdc3ddba482c6aae4.zip
The docs: a log stat is the whole ring, changed's three forms, terminal +Search rows' column range, /commands in the skill, read -t through FUSE
Dogfood round 17 found these false or missing: the skill said a stat of log was one record's length; fs.md's changed covered only unsaved edits; a terminal's +Search row is `@p<serial>:<line>:<cols>`, not a line alone; the skill's /commands line predated `both`, setting values and the description; bash's `read -t` never times out on a followed file through FUSE. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to '.agents')
-rw-r--r--.agents/skills/pardes-9p/SKILL.md14
1 files changed, 9 insertions, 5 deletions
diff --git a/.agents/skills/pardes-9p/SKILL.md b/.agents/skills/pardes-9p/SKILL.md
index 1bb825fe..7f33937f 100644
--- a/.agents/skills/pardes-9p/SKILL.md
+++ b/.agents/skills/pardes-9p/SKILL.md
@@ -65,11 +65,13 @@ $m/pane/<n>/pty/run write one line, read `exit N` + its output, or `busy` / `e
$m/log recent events, then EOF: new|del|rename|save <serial> <name>, msg <serial|-> <text>,
run <serial> <line>, exit <serial> <N|?>, send <from> <to> <repl-id>,
ask <serial> <what> <choices>, answer <serial> <choice|->, changed <serial>
- [reloaded|deleted], newcol|delcol <serial>, restored|restoredcol <old> <new>,
+ [reloaded|deleted] (under unsaved edits; a clean reload; gone from disk),
+ unsaved <serial> <name> (each pane a refusal is about), newcol|delcol <serial>, restored|restoredcol <old> <new>,
dump|restore <path>, err <serial|-> <file>: <why>
(exec 3<>$m/log; echo follow >&3; cat <&3 replays what is there, then waits for new
ones; `echo follow new` waits for new ones only; tail -f does not wait;
- while read -r line <&3; do ...; done loses nothing within a session: a Restore
+ while read -r line <&3; do ...; done loses nothing within a session (through
+ FUSE, `read -t` never times out: use `timeout N` around the loop): a Restore
hangs every connection up, so dial again, and restart a 9ns mount)
$m/screen the rendered screen as JSON, frozen per open
$m/listeners this session's dial addresses
@@ -90,7 +92,8 @@ $m/ctl the settings, one a line as a write takes them; write a setting or
on its right, its panes going below that column's own, in order, and needs such a column);
a pane's builtins (Del, Save f, Collapse, which folds that pane, and the
column word Delcol, which closes that pane's column) go to $m/pane/<n>/ctl
-$m/commands every builtin: `Word`, `Word arg`, then `root` or `pane` (which ctl takes it)
+$m/commands every builtin: `Word`, `Word arg`, then `root`, `pane` or `both` (which ctl takes
+ it), a setting's values comma-joined, then ` -- ` and one sentence of what it does
$m/layout one line per column (16 columns at most: Newcol past that fails, no space for a column): serial index x width current|notcurrent empty|full pane-serials...; active <serial>
$m/tag the workspace tag (> replaces, >> appends, one line); $m/col/<serial>/tag a column's (serials stay, as panes' do)
$m/tagexec a word as a click in the workspace tag (pane/<n>/tagexec: in that pane's tag); every exec
@@ -384,8 +387,9 @@ and 32 screen/terminal-history snapshot handles.
A file's qid version is the pane's revision for `body`, `data` and `xdata`, so
`stat` sees an edit land without reading the text; it stays zero elsewhere.
-Stat sizes are real, and for `log`, `event` and `pty/data` report the length of
-the record a read would answer — zero when nothing is waiting.
+Stat sizes are real: for `event` and `pty/data` the length of the record a read
+would answer (zero when nothing is waiting), for `log` the whole ring, the text
+an open would freeze now.
## Terminal input and screen observations