Skip to content

feat(jobs): add durable async Agent jobs - #81

Merged
arcuru merged 21 commits into
arcuru:mainfrom
arcuru-bot:feat/workflow-revival
Sep 28, 2026
Merged

arcuru merged 21 commits into
arcuru:mainfrom
arcuru-bot:feat/workflow-revival

Conversation

@arcuru-bot

Copy link
Copy Markdown
Contributor

Summary

spawn_agent and client callers now create one delegated child session with a Directive, publish its DB ID to chaz_group, and get that ID back as the job handle. An executor validates and runs the published DB; it does not create a second child.

The child DB holds job state, claims, and terminal results, which callers can read through job_status and job_wait. Queued jobs recover after restart. Started attempts need explicit retry because their effects may be uncertain. Before execution, the executor checks the hosted Agent/home and inherited tool, grant, and delegation limits. Client-role processes can submit and observe, but cannot execute jobs.

V1 limits

Jobs are trusted same-login, broad-local only. The last-writer-wins claim is not fencing: colliding executors can overlap side effects. If submission has an unknown outcome, inspect the catalog rather than creating a replacement job.

job_wait defaults to 30 seconds (maximum 240). Inside an Agent turn, it holds one of the ten shared executor permits; enough waiting parents can delay queued children until a wait times out. External client observation does not use a permit. Yielding the permit and resuming a waiting parent after restart are deferred.

@arcuru
arcuru merged commit a6145d9 into arcuru:main Sep 28, 2026
3 checks passed
@arcuru-bot
arcuru-bot deleted the feat/workflow-revival branch September 28, 2026 21:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants