Tool-call relief: wait-on.sh, python, brief lessons, Life reads the mind #7
Loading…
Reference in a new issue
No description provided.
Delete branch "hands/toolcall-relief"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Evidence: Eyes pass over 211 Hands/Soul runs (25,784 calls). 11% of calls were waiting: 1,181 ygg-verify.sh wait, 974 idle true/echo calls, 324 sleeps (49 refused), 287 process checks, 83 Monitor; 198 wait calls timed out. 65 python calls hit the Windows Store stub.
Deliverables:
a886d45tools/wait-on.sh (pid, log, file forms; ygg-verify.sh wait contract; Windows PIDs via tasklist) + fixtures in tools/test-tools.sh + INDEX row.18b160cbriefs.md: every non-Yggdrasil wait goes through wait-on.sh with the 280000 ms timeout rule; bare true/echo/sleep polling forbidden; ygg-verify.sh wait line untouched.18b160cbriefs.md: py -3 named for Hands and Soul with the Store-stub scar.18b160c(own scratchpad subdirectory, wait protocol verbatim, Stryker character offsets, Aetheria DOCKER_ARGS mounts, rulings quote only the operator); lesson 5 inebc746e(SKILL.md semantic-merge scar).c28d928agents/life.md: read-only whoami, view, query. No admit.df590aareferences/changelog.md entry.test-tools.sh: 70 ok, 7 FAIL on this run. All 7 FAILs are mutation-harness lines (A-build-baseline, B, B-label-forge, D2-jest, E-live-rows, E2, E2-killed) that time out under load; the unmodified base run on the same machine earlier gave 63 ok and 1 FAIL (E-live-rows), and my run overlapped a leftover earlier suite. All 11 new wait-on fixtures pass (pid finishes, pid still running, killed pid, log gains done line, log never matches, vanished pid 98, completion logged after death, log missing, file appears, empty file, bad usage).
Not merged: wait-on.sh is a script verdicts will depend on, so it needs a Soul pass first.
🤖 Generated with Claude Code
Soul pass 1 fixes
WAIT_FROMoffset was tried (30e199c) and removed (d9e45c8,6ab91ea) in favour of the rule that every job gets a fresh log path and a waiter is never pointed at a previous job's log. Soul pass 2 evidence: a truncating rerun (>, Unity-logFile) writes its done line at or below the old size, so the offset skipped it (same-size rewrite and truncate-then-regrow both hung at exit 99).GONE (no completion evidence); briefs say preferlog <log> <regex>withWAIT_PID, bare pid only without completion evidence.30e199c,de35a72.DOCKER_ARGStext.de35a72.30e199c,6ab91ea.wait-on.sh,<scratchpad>/<agent>/andpy -3; all examples use<scratchpad>/<agent>/; one canonical wait block in the Hands section, the Soul section points to it.de35a72.tools/wait-on.sh(100755). The othertools/scripts are still 100644 and share the issue; briefs call onlywait-on.shand the stopgap by path.30e199c.tools/test-tools.sh: pid GONE, invalid regex exit 3.mutation E-live-rows, fails on main too: MT_WALL=8 timing on Windows). A first run on the loaded box also failedmutation B-nonce; it passed on rerun.Known limitations (script header): F5 a launcher pid that exits while its child keeps writing gives a false 98 (pass the writer's pid or none); F6
fileform is done at the first byte (write the file last); F7 the log form greps the whole log every 2 s.