<feed xmlns='http://www.w3.org/2005/Atom'>
<title>panto-subagents.git/DESIGN.md, branch main</title>
<subtitle>Subagents and dynamic workflows extension for panto
</subtitle>
<id>https://code.tjp.lol/panto-subagents.git/atom?h=main</id>
<link rel='self' href='https://code.tjp.lol/panto-subagents.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/panto-subagents.git/'/>
<updated>2026-08-18T20:20:28Z</updated>
<entry>
<title>Persist and replay subagent progress across sessions</title>
<updated>2026-08-18T20:20:28Z</updated>
<author>
<name>t</name>
<email>t@tjp.lol</email>
</author>
<published>2026-08-18T20:18:14Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/panto-subagents.git/commit/?id=cc69a2e431779528578211a5cb3385bb23e076bf'/>
<id>urn:sha1:cc69a2e431779528578211a5cb3385bb23e076bf</id>
<content type='text'>
Record durable child-turn metadata, restore bounded progress cards during
startup replay, and keep settled cards attached to transcript entries. Add
workflow-local Lua profiles and expose discovered agents and workflows in the
session header.
</content>
</entry>
<entry>
<title>Validation-pass fixes; DESIGN.md describes the shipped seam</title>
<updated>2026-08-18T06:40:46Z</updated>
<author>
<name>t</name>
<email>t@tjp.lol</email>
</author>
<published>2026-08-18T05:35:36Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/panto-subagents.git/commit/?id=372ef8ff40991644ec2654c61328f31779f4ad21'/>
<id>urn:sha1:372ef8ff40991644ec2654c61328f31779f4ad21</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>initial commit: README and design doc</title>
<updated>2026-08-16T23:17:31Z</updated>
<author>
<name>t</name>
<email>t@tjp.lol</email>
</author>
<published>2026-08-04T20:11:01Z</published>
<link rel='alternate' type='text/html' href='https://code.tjp.lol/panto-subagents.git/commit/?id=c1ab34754d3f3695fafd344fe1a181ecf0740761'/>
<id>urn:sha1:c1ab34754d3f3695fafd344fe1a181ecf0740761</id>
<content type='text'>
</content>
</entry>
</feed>
