Skip to main content
March 23, 2026
Protocols section, job cancellation, parameterized durations, and optimization management

Dedicated Protocols section with parameterized input support

Studio now has a dedicated Protocols section where you can browse, edit, and clone saved experiment templates. Each protocol detail page shows the source YAML, a tabbed UCP/human-readable preview, and automatically detected input parameters with a generated parameters_schema. This makes it easy to build reusable, parameterized protocols and simulate them with different input values.Find out more →

Cancel running jobs from Studio

You can now cancel pipelines, optimizations, and simulations directly from the UI. Each detail page shows a cancel button for in-progress jobs, with optimistic status updates and automatic rollback if the cancellation fails. On the backend, cancelling a parent job cascades to all child jobs.

Protocol termination conditions and parameterized durations

Protocol simulations now support early termination based on variable conditions — useful for ending long protocols (e.g. multi-cycle Arbin tests) after a target number of cycles. Duration and termination end conditions also accept input['...'] references, enabling fully parameterized experiments such as eVTOL design optimization with variable cruise duration.Find out more →

Edit and delete optimizations

Optimization name and description are now editable from the detail page, and you can delete optimizations with a confirmation dialog. The experiment-step validation toggle is also exposed as a per-objective setting, letting you control whether each objective validates against experiment steps.
Improvements
  • Added cancel buttons for running pipelines, optimizations, and simulations with cascading cancellation.
  • Added optimization editing (name and description) and delete with permission checks.
  • Exposed the validate-against-experiment-steps toggle on each optimization objective.
  • Unified table UI across optimizations, protocols, and pipelines — actions behind three-dot menus, clickable row names, no more “Actions” column header.
  • Added more plot variables to the protocol simulator results view.
  • Design parameters and experiment conditions are now preserved when rerunning simulations, and columns for differing parameters default to visible.
  • Removed the slug and additional_data fields from cell specification, instance, and measurement models.
Fixes
  • Fixed 500 error when simulating non-UTF-8 protocol files (e.g. BioLogic .mps).
  • Fixed optimization detail page layout issues.
Improvements
  • Added support for input['...'] parameter references in UCP duration and termination end conditions.
  • Deprecated the ionworkspipeline.workflows module in favor of the newer API.
Improvements
  • Added termination_condition callback for ending protocol simulations early when a variable condition is met.
  • Added support for Python-style list repetition (["step"] * N) in PyBaMM experiment strings.
  • Added support for PV_CHAN_Cycle_Index branching in Arbin protocol parsing.
Fixes
  • Fixed latin-1 fallback decoding for non-UTF-8 protocol files in the standalone simulator.
Improvements
  • Large request payloads (>512 KB) are now gzip-compressed automatically, reducing upload sizes significantly (e.g. 24.5 MB to 3.7 MB for typical serialized models).
  • Removed slug and additional_data fields from cell models.
  • Job status fields now use typed enums instead of raw strings.