April 27, 2026
Project-scoped ECM fitting, PyBaMM v26.4.0 support, SDK skills plugin, strict upload validators
Project-scoped ECM fitting
Equivalent-circuit-model fitting is now available directly inside a project. Pick any measurement already attached to one of the project’s cells (or upload a fresh CSV), preview the trace, run the fit, and save the result back to the project as a new model with one click. The new flow adds a model-vs-data plot, an error plot, a fitting-progress indicator, an OCV toggle helper, and auto-scrolls to the results when the fit completes. The standalone ECM demo continues to work for unauthenticated users.PyBaMM v26.4.0 support
The simulation engine has been updated for PyBaMM v26.4.0, which introduces a dedicatedRest
step class in place of the old zero-current step and renames the MSMR electrode-capacity
parameters from short keys (e.g. Q_n_1, Q_p_1) to descriptive strings (e.g. “Negative
electrode host site occupancy capacity (1) [A.h]”). Existing experiments and MSMR parameter sets
continue to parse correctly under the new release.SDK skills as a Claude Code plugin
The Ionworks Python SDK now ships with a set of installable Claude Code skills covering api-discovery, cell-data, data-upload, simulations, pipelines, and projects-and-studies. Each skill documents the relevant sub-clients, method signatures, and the create-or-get patterns so an AI assistant can drive the SDK against the current API surface. Install via/plugin marketplace add ionworks/ionworks-skills and /plugin install ionworks to get the
slash commands and SessionStart hook for any Ionworks project.Strict upload validators in the Python API
CellMeasurementClient.create and create_or_get now run optional client-side validators
before sending data to Studio so processing bugs surface as a local error instead of a confusing
upload result. A hard time-gap check (>5 h between consecutive rows) runs by default; passing
voltage_window enables a voltage-continuity check (catches chronological misordering from a
faulty data split), and passing rated_capacity enables a consecutive same-direction full-step
check plus a soft warning for any step whose capacity exceeds 5× rated.Studio
Studio
Improvements
- Measurement chart controls collapse into a compact header summary; per-axis variable selectors now allow adding and removing series dynamically with a unified two-column layout.
- Study visualization no longer collapses to an empty state when switching between studies whose experiment-type tabs differ — the filter resets to All when the previous tab isn’t present.
- Users with a stale session can recover by signing out via the sign-in page instead of being stuck on the redirect.
- The empty cells page now uses the correct organization-level permission check, so users who can create cells no longer see a misleading “contact a project admin” message.
- Pipeline element details view no longer triggers rapid duplicate fetches for
Data FitandValidationconfigs.
Pipeline
Pipeline
Improvements
- Simulations now compile faster by default, speeding up repeated runs that share the same model.
- Simulation objectives with custom mesh or spatial-method settings (such as
CycleAgeing) now serialise and reload correctly.
Python API
Python API
Fixes
- Time-monotonicity validation error message now reports the correct two adjacent values (the previous off-by-one showed the values just before the actual violation).
Data Processing
Data Processing
Fixes
- Sign-convention detection no longer misclassifies low-current pulse datasets as all-rest; the rest threshold now scales relative to the 95th-percentile current so violations are caught on small-amplitude data.