From 372ef8ff40991644ec2654c61328f31779f4ad21 Mon Sep 17 00:00:00 2001 From: t Date: Mon, 17 Aug 2026 23:35:36 -0600 Subject: Validation-pass fixes; DESIGN.md describes the shipped seam MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit jobs: a child whose wake pipe cannot be armed is refused up front instead of started into a state nothing can wake (the luv-less drain loop survives only for hosts without a loop); a closing child keeps its concurrency slot and its id's exclusivity until the pump actually exits, so teardown can no longer over-admit new children or let two turns share one session file. Resume-metadata reads honor the plain-error contract on a malformed store. workflow: the built-in schema subset validator is the only validator — the jsonschema probe made behavior depend on an undeclared rock (see rockspec: that dependency is deliberately rejected); dead exports and the unreachable half of the structured-output guard are gone, keeping the empty-arguments provider case. DESIGN.md's seam sections now describe the shipped division: binding-level async jobs and tool control, host-level resolve_model/ExtHost/turn events/ component handles, rock-level policy; protocol bodies run to completion on the loop thread and cannot yield, cancellation is scoped to the stream that opened it, and a child's compaction leaves protocol sessions alone. --- panto-subagents-0.1.0-1.rockspec | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'panto-subagents-0.1.0-1.rockspec') diff --git a/panto-subagents-0.1.0-1.rockspec b/panto-subagents-0.1.0-1.rockspec index 073ff56..693629e 100644 --- a/panto-subagents-0.1.0-1.rockspec +++ b/panto-subagents-0.1.0-1.rockspec @@ -17,12 +17,13 @@ -- battery, so it is normally already present in the tree this rock installs -- into. -- --- Deliberately absent: `jsonschema`. It validates structured workflow output --- when installed, and subagents/workflow.lua uses it if `require` finds it, but --- it depends on `lrexlib-pcre`, which needs a system PCRE that stock macOS does --- not have. A failed dependency install would take the whole extension down --- silently (panto logs and skips a rock that fails to load), so the built-in --- subset validator is the default and `jsonschema` stays opt-in. +-- Deliberately absent: `jsonschema`. It depends on `lrexlib-pcre`, which needs +-- a system PCRE that stock macOS does not have, and a failed dependency install +-- would take the whole extension down silently (panto logs and skips a rock +-- that fails to load). subagents/workflow.lua therefore validates structured +-- workflow output with its own built-in JSON Schema subset and never probes for +-- the rock: one validator, so the same child output cannot pass on one machine +-- and fail on another. rockspec_format = "3.0" package = "panto-subagents" -- cgit v1.3