Problem
WP Codebox can run headless lab cells, but replacing fleet cooking needs a durable run registry rather than only a synchronous process plus temp artifact directory.
The orchestrator should be able to submit many Codebox runs, poll status, inspect logs/artifacts, resume from partial state when possible, and clean up safely later.
Desired shape
Add a durable headless run registry with:
run_id for each Codebox task.
- Current status: queued, booting, running, collecting_artifacts, succeeded, failed, timed_out, cancelled.
- Heartbeat/last activity timestamp.
- Runtime metadata and preview info when relevant.
- Artifact bundle refs.
- Command log/transcript refs.
- Cleanup eligibility and retention metadata.
- Replay command or recipe reference.
Layer boundary
WP Codebox owns sandbox runtime state and artifact indexing. Homeboy should consume this through provider APIs/CLI output; it should not scrape temp dirs as the product path.
Acceptance criteria
- A caller can submit or start a headless run and receive a stable
run_id.
- A caller can query status/artifacts after the original process exits or times out.
- Run metadata avoids leaking secrets.
- Cleanup can remove old runs without losing accepted/promoted evidence.
AI assistance
- AI assistance: Yes
- Tool(s): OpenCode (GPT-5.5)
- Used for: Drafting this issue from the Homeboy/WP Codebox fan-out proof.
Problem
WP Codebox can run headless lab cells, but replacing fleet cooking needs a durable run registry rather than only a synchronous process plus temp artifact directory.
The orchestrator should be able to submit many Codebox runs, poll status, inspect logs/artifacts, resume from partial state when possible, and clean up safely later.
Desired shape
Add a durable headless run registry with:
run_idfor each Codebox task.Layer boundary
WP Codebox owns sandbox runtime state and artifact indexing. Homeboy should consume this through provider APIs/CLI output; it should not scrape temp dirs as the product path.
Acceptance criteria
run_id.AI assistance