v0.30.0
June 30, 2026
Variables get much easier to use — the `{x}` picker respects your selection, fields show the resolved variable value, and the variables editor is cleaner. Plus a round of quality and security fixes.
-
Improvement
The `{x}` picker respects your selection
If you select some text before choosing a variable, the variable now **replaces** the selection instead of being appended at the end. With no selection, it is inserted at the cursor, as before.
-
Design
Resolved value preview
Fields that contain a variable now show its **value** (or the text + value combination) in italics with a dedicated color — the same as the `{x}` icon, so they are easy to spot. Click the field to switch back to editing the `{{...}}` syntax.
-
Design
Lighter variables editor
The variables list (both global and flow) is cleaner: the "type" column is gone, the label sits under the variable name, there is a button to **copy** the ready-to-use expression (`{{global.vars.name}}` / `{{flow.vars.name}}`) and an **"i"** button showing the description only when you filled it in. The "add" form now appears only when you click **Add**. The flow settings panel is also wider and airier.
-
Security
Stricter API validation and safer publish
Invalid assignees, item filters and pagination/range parameters are now rejected with a clear error instead of being silently ignored. The per-state WIP limit saved from the designer (`PUT /design`) is now validated too — no more non-numeric values that silently disabled enforcement. Publishing a flow whose AI state has no provider now shows a non-blocking warning. Linking a non-existent flow in a process map returns a validation error instead of a server error. Internal metadata is stripped from item responses and the *Read-only* role gets a minimal payload. New diagnostic endpoint `GET /api/v1/version`.
-
Improvement
Frontend fixes and updated guide
No more blank page when opening a process map in read-only mode; unknown routes show a **404** page instead of silently redirecting to the dashboard; clearer *premium* settings; several mobile layout fixes. The in-app guide now covers process maps, variables and timeout/iterations as expressions.