- Shipped
- September 3, 2026 at 10:49 PM UTC
- Author
- Kamo
- Commit
- a7e00ac
The dispatch prepares the hand-off on the dev machine — screenshots, video and the composed prompt written to disk — and answers with the terminal it will run in. Opening that window is what starts the session, so the console gets a live shell to watch rather than a background process it can only ask about. THE COMMAND NEVER TRAVELS. The agent is asked to PREPARE a dispatch and hands back an opaque token; this service remembers it against the member and the session, the terminal's ticket collects it, and the agent runs what it composed itself. Sending a command would have been simpler and would have made every provisioned member's terminal an arbitrary-execution endpoint. The token never reaches the browser either. It could have — the console could have been handed it and asked to pass it back — but that puts a capability into a page's memory and its network log for no gain when the server knows both halves. The browser gets a session id, which is worth nothing on its own. The session id is random rather than derived from the bug number: two dispatches of one report are two conversations, and a derived name would make the second reattach to the first, landing a new prompt in a session already having a different one. An open VS Code is no longer required. That was a real precondition when a dispatch was a background session handed to an editor; now it only decides whether the session ALSO appears as a tab there, so the console reports it and sends anyway. 9 tests: the receipt is bound to a member as well as a session, is spent once, expires, survives to the deadline, and is absent for the ordinary terminals usable name when the task has none. 50 tests pass, including the endpoint and architecture guards.