From 66500ac6e4f002a673e95e9788a4992178bf989a Mon Sep 17 00:00:00 2001 From: Gabriel Schneider Date: Tue, 29 Sep 2026 18:16:13 -0300 Subject: The 9P monkey counts the lines a write runs as the tree does: a short write's unended tail is a line of its own Since round 24 (uwzuqzxp), a write to a lines file shorter than a Twrite holds is whole, as acme takes each write, so a look line written a byte a Twrite is as many looks as bytes, each missing with its own err. one_failure_rule still split the data on newlines whole, allowed one err, and failed the fixed smoke seed (20260929 step 607, size 20 6 written in bytes to look: 7 errs). served_lines models the tree's write (tree.zig) and has a self-check run at start. Co-Authored-By: Claude Opus 5.5 --- test/monkey9p.py | 41 ++++++++++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 5 deletions(-) (limited to 'test/monkey9p.py') diff --git a/test/monkey9p.py b/test/monkey9p.py index 4c1732e5..6a8f27c1 100644 --- a/test/monkey9p.py +++ b/test/monkey9p.py @@ -640,12 +640,13 @@ def op_write(sess, op): timeout = SLOW_TIMEOUT if slow(data) else TIMEOUT ok, body = w.call(TOPEN, struct.pack('