diff options
| author | t <t@tjp.lol> | 2026-08-18 14:18:14 -0600 |
|---|---|---|
| committer | t <t@tjp.lol> | 2026-08-18 14:20:28 -0600 |
| commit | cc69a2e431779528578211a5cb3385bb23e076bf (patch) | |
| tree | 8833171e25bb3dfb71fc4a2e0b8fe583782da764 /subagents/jobs.lua | |
| parent | 372ef8ff40991644ec2654c61328f31779f4ad21 (diff) | |
Persist and replay subagent progress across sessions
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.
Diffstat (limited to 'subagents/jobs.lua')
| -rw-r--r-- | subagents/jobs.lua | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/subagents/jobs.lua b/subagents/jobs.lua index 3f9a8af..a774b27 100644 --- a/subagents/jobs.lua +++ b/subagents/jobs.lua @@ -28,7 +28,8 @@ -- `job:close()` frees it. Jobs are otherwise left open until close_all() ends -- the turn, so a result can still be read after its coroutine resumed. -- --- `job:close()` also JOINS the pump, and a pump parked in a tool batch is +-- A settled consumer may close a job immediately after caching its result; +-- otherwise close_all() handles it. `job:close()` also JOINS the pump, and a pump parked in a tool batch is -- waiting on the owner thread to come back to the uv loop — the very thread -- every entry point here runs on. Closing an unsettled job would therefore -- deadlock, so nothing does: only settle() closes a job, once its pump has |
