Lines carrying multi-tenant apply only to the self-hosted multi-tenant deployment; local only to the single-user local binary; enterprise marks an Enterprise Edition feature, which needs a licence and runs only in the multi-tenant deployment. Everything else is for everyone.
The big stuff
The task remembers. A run used to be a transcript that belonged to itself: return a task to the queue, hand it to a teammate, take it over from the agent, or delegate it again, and the next pair of hands started from the PR description and a blank page. Now the conversation is the task’s context and follows it. Every handoff ends the conversation with a memory — the agent’s own, or one the background brain writes from the transcript — and the next one opens with those memories and a task context that lists everything the task holds, artifacts included. A draft PR survives a requeue and a takeover; only ending the task tears it down. One clone per task, shared by every conversation on it. And if a memory is still being written, the task waits and says so — the next hand never starts blind.
The Board, rebuilt. Three lanes: Queued, In Progress, Done. What still needs you rides the card — a warm frame, first in its lane — rather than a column of its own. One card for every state, and what it shows follows from what it has. A working card narrates its run in the Overview’s words (fetching, cloning, starting the agent, then the agent’s own current action), opens its summary with the event that made the task, coloured only where it means act, and carries a working mark that is, yes, a tiny isometric warehouse. Lanes are read server-side — search, sort, event-type chips — and fetch as you scroll.
A claim is the stage marker. Assigning a task to a person or to the bot lands it in progress in the same write. Queued holds no assignee, returning a task to the queue is the only way to clear one, and dragging a card into In Progress is a claim. Enforced by the schema, not the UI.
Also new
- One live conversation per task: an event arriving mid-run folds into the run as a note rather than starting a rival.
- The run page’s composer says why a conversation can’t take a follow-up — returned to the queue, handed to a new delegation, taken over — instead of a disabled box.
- The native loop multi-tenant and the SDK local open a conversation from the same rows, with the mission in the system prompt and nothing re-injected through compaction.
Fixes
- Every backdrop blur in the app was being dropped from the production bundle in Chrome, because the minifier kept only the prefixed declaration. They blur now, and a test keeps the order honest.
- A crash re-claim resumes its session with one continuation note instead of sending the opening twice. local
- A native re-claim replays the system block its launch stamped rather than recomposing it live. multi-tenant
- A board card’s summary is the task’s in every state. It no longer swaps to the run’s own account once the agent finishes, or goes blank when the run fails.
Upgrading
The migrations since 1.13.3 were consolidated into one. A 1.13.3 install upgrades cleanly; a database that ran a main build between the two releases needs a clean slate. local
On upgrade, in_review tasks become in_progress and tasks held by a person while queued move to In Progress. On the API: task reads gain memory_pending, conversation reads gain ended_at and ended_reason, and in_review and claimed are refused as statuses.