Skip to main content
Before you start, take a copy of your sessions (GET /api/sessions/{id}/config) and read Upgrade and roll back.

The signal API is gone: use input requests

WAIT_FOR_SIGNAL and tool approvals now raise an input request (a high-risk approval) instead of a signal. Find waiting questions with GET /api/inputs or GET /api/sessions/{sessionId}/inputs. See Ask for input and Who decides.
Answers to high-risk requests must come from a person. An agent’s API key cannot answer them.

Control planes are retired: use supervisors

The model and rules-first control planes are gone. A stored supervisor of those types stays stored, does not start, and is named in a warning at start-up. Create a supervisor with the rules engine (see Write a rules supervisor), or an http supervisor that calls your model, instead. Direct steering also changes. A person can only steer a unit that a supervisor owns if that supervisor lists the command in operatorAccess; the default is none. Otherwise you get 409 CONTROLLED_BY_SUPERVISOR. Units with no owner fall to the default supervisor (yukta.supervisor.default.enabled). See How supervisors work.

Deprecated API aliases

Older paths such as /api/workflow/{sessionId}/{executionId}/pause still answer but are marked deprecated. Move to the paths in the API reference.

The Overview page is removed

/ now redirects to /sessions. Update any bookmark that pointed at the Overview.

Check your upgrade

  1. Start the new server and open /sessions.
  2. Run one workflow that contains an approval. You should see an input request, not a signal wait.
  3. Open the supervisors page and confirm the supervisors you expect are listed.
If something fails, Troubleshoot lists the common causes.