Feature request from a voice/chat operating session.
Problem: when a coding instance is mid-run, calling coding_loop_start again for that same instance/repo fails outright with an "already being worked on" error. Today the only options are to wait and manually re-poll for the run to finish, or stop the current run early, then remember to come back and issue the next objective myself. If I forget to check back, the follow-up request is just lost.
Requested behavior: let a caller attach one (or more) queued objective(s) to an instance while it's busy, so that the moment the active run reaches a terminal state (done, failed, or max iterations), the platform automatically starts the next queued objective without a human needing to catch the exact moment it frees up.
Suggested shape:
- A way to enqueue a follow-up objective for a specific instance (e.g. queue_instance_objective or an optional queue_if_busy flag on coding_loop_start) instead of erroring when the instance is occupied.
- Queue is per-instance, FIFO, visible via a list/check call so the caller can see what's queued and cancel/reorder before it starts.
- When the active run ends, the next queued objective is dequeued and started automatically, same semantics as a normal coding_loop_start (same max_iterations handling, same budget checks).
- If no queue and the instance is busy, keep today's current error behavior as the default (don't silently auto-queue unless asked).
Use case that surfaced this: reviewing a just-shipped feature with a self-review run, while wanting to line up a second, unrelated build task to start automatically right after — without babysitting the run to catch the free moment.
Feature request from a voice/chat operating session.
Problem: when a coding instance is mid-run, calling coding_loop_start again for that same instance/repo fails outright with an "already being worked on" error. Today the only options are to wait and manually re-poll for the run to finish, or stop the current run early, then remember to come back and issue the next objective myself. If I forget to check back, the follow-up request is just lost.
Requested behavior: let a caller attach one (or more) queued objective(s) to an instance while it's busy, so that the moment the active run reaches a terminal state (done, failed, or max iterations), the platform automatically starts the next queued objective without a human needing to catch the exact moment it frees up.
Suggested shape:
Use case that surfaced this: reviewing a just-shipped feature with a self-review run, while wanting to line up a second, unrelated build task to start automatically right after — without babysitting the run to catch the free moment.