v0.75.5
July 31, 2026
The rules you write are the rules that hold. Some conditions the designer offered — "greater than or equal", JavaScript rules written the way the assistant suggested, fields in the very form the AI recommended — were accepted on save and then silently ignored by the engine. Now the places where you write and the places where your process runs speak the same language: deadlines have a single grammar, a badly written value is rejected right away instead of vanishing, and if a rule errors at runtime you find it written in the item's history.
-
Improvement
Transition rules tell the truth
"Greater than or equal" and "less than or equal" conditions now actually fire: the designer offered them, saving accepted them, but the engine treated them as always-false and routed items down the fallback branch with no signal. The same held for "does not contain", "starts with", "ends with" and "not in list". The operator vocabulary is now one and the same from the menu to the engine, and previously saved designs have been aligned automatically. JavaScript rules written with `return` — the form the AI assistant and the editor itself always proposed — now work: they used to fail silently and become always-false. A syntax error is flagged as you type and blocks saving with a clear message; a runtime error lands in the item's history instead of never being known. And fields written as `data.importo` — the form the AI suggested — are now resolved like the other two equivalent spellings.
-
Improvement
Deadlines have a single grammar
"30s" used to mean thirty seconds to the server and thirty weeks to the designer, and a bare number was seconds on one side and minutes on the other. Server, designer and engine now read durations the same way: minutes, hours, days, weeks (`30m`, `2h`, `1d`, `1w`), bare number = minutes, combined forms like `1h30m` allowed. A badly written duration is rejected on save, naming the phase and the valid formats — it used to silently erase the deadline, leaving the item with no time limit. The editor already flags it as you type.
-
Improvement
Saving and publishing agree
A final phase with outgoing steps is now refused at save time, with the same message publication gives: no more "saved successfully" followed by an inexplicable refusal when you publish. Import removes them on its own, with a warning, so older exports remain importable. A badly written data requirement is rejected immediately, instead of becoming a gate no data can ever satisfy — with the item stuck waiting forever.
-
Security
Reference integrity, inside your organisation
AI assistants configured for your organisation must actually exist: a nonexistent, disabled or other-organisation identifier used to save and then be silently ignored — it is now refused with a clear error and no half-applied change. Roles — for actors in process maps and for tasks in flows — are checked within your own organisation: a reference to someone else's role is dropped with a warning. An MCP key's role is explicitly immutable: trying to change it gets an explicit refusal instead of a fake success. And links in Markdown content only allow web and email addresses: potentially dangerous schemes are neutralised, including obfuscated variants.
-
Improvement
Polish that removes friction
The procedures list supports search, category and archive filters, and pagination — and an unrecognised parameter gets an error instead of a fake success. "Show full URL" on the webhook connector now really shows the full URL, with a copy button that only confirms on success. And saving a process map version while another is open elsewhere no longer produces an incomprehensible error, but an explained conflict, touching nothing.