最適化実験の完全なエディター
最適化実験が、アプリの他の部分と同じプロトコルエディターを使うようになった。 素朴なテキストフィールドが、YAML 構文ハイライト、ダークモード対応、フロントエンド の事前検証、テンプレート選択とステップ調整のための完全なプロトコルビルダー ダイアログを備えた CodeMirror ベースのエディターに置き換えられた。 新しいプロトコルは “Constant Current Charge” テンプレートをあらかじめ読み込む ため、ユーザーは動作する出発点を得られる。設計最適化の反復的メトリクス
設計最適化がCyclewiseMetric と StepwiseMetric のラッパーを
エンドツーエンドでサポートするようになった。最適化フォームでは、解析済みの
実験から駆動される境界付き入力フィールドで特定のサイクルやステップのメトリクスを
ターゲットにでき、パイプライン変数を PyBaMM 変数と混在させられ、ラップされた
メトリクスを保存/読み込みでラウンドトリップできる。基盤となる UCP→PyBaMM
パーサーも、繰り返しブロックがフラットに展開されてしまう長年のバグを修正した。
これはサイクル単位メトリクスの solution.cycles インデックスを壊していた。
2 つの新しいテンプレートが同梱される。簡略化された Charge 最適化と、複合
システムモデルである。Arbin サイクラー対応
ionworksdata がネイティブの Arbin エクスポート(CSV、XLSX、およびバイナリの
.res 形式)を読み取るようになった。.res リーダーは mdb-export を使って
基盤の Access データベースからデータを抽出し(Python の MDB ライブラリは不要)、
インターリーブされたマルチセッション記録に対応するため行を DateTime で
ソートし、絶対開始時刻を Global_Table.Start_DateTime から読み取る。自動検出が
ファイルヘッダーから適切なリーダーを選択し、arbin res も明示的なリーダー名
として公開される。Maccor プロトコル対応範囲
Maccor のパーサーとシミュレーターが、従来は解析時やシミュレーション中に失敗して いた、いくつかの実世界のプロトコル機能を扱えるようになった。これには制限ごとの 安全 goto、Chg/Dis Func CCCV ステップタイプ、堅牢な VAR setvar 処理が含まれる。
Maccor の ionworksdata リーダーも、一部のファームウェアバージョンで使われる
コンパクトな短縮形のカラムヘッダーセットへの対応を獲得した。これは従来
ColumnNotFoundError: "Time [s]" でクラッシュし、容量/エネルギーのカラムを
黙って削除していた。機械検証可能な UCP 入力スキーマ
ディスカバリーエンドポイント/discovery/schemas/protocol が、パーサー自身の
列挙型から生成された JSON Schema を公開するようになった。これは解析後のメモリ上の
形ではなく、実際の YAML 記述形式({Charge: {...}} のような単一キーの辞書)に
一致する。パリティテストが 17 個の正常フィクスチャと 6 個の異常フィクスチャを
スキーマとパーサーの両方を通してラウンドトリップさせるため、両者がドリフトする
ことはない。レガシーな kind: 形式を POST /protocols/validate に送信すると、
正規の YAML 例を指し示す有用なエラーが返るようになり、discover-api と
run-simulations スキルは jsonschema.validate(...) によるローカルの事前検証を
示している。Studio
Studio
改善
- 組織 ID が、組織配下にあるすべての行(結合テーブルを含む)に非正規化される ようになり、RLS チェックとリソース横断クエリが簡素化された。
- スカッシュされたベースラインマイグレーションが、約 100 個の過去のマイグレーション を単一の冪等ファイルに集約した。内部環境での順不同のフィーチャーブランチ デプロイを扱う CI/CD の修復ステップも備える。
- Ionworks Agent タブが、Ionworks Agentic Toolkit を指す静的な手順ページに置き換えられた。アプリ内の pydantic-ai チャットエージェント は削除され、SKILL.md ベースのワークフローに置き換わった。
- 新しいセル仕様がデフォルト容量を事前入力しなくなり、ユーザーは最初から実際の セル容量を入力するようになった。
- ストレージ権限が組織レベルで適用されるようになり、同じ組織のメンバーが互いの 測定ファイルを期待通り読み取れるようになった。
created_by_emailが、セル仕様・セルインスタンス・セル測定の各レスポンスで、getとlistの両エンドポイントにわたって一貫して設定されるようになった。- シミュレーション使用量が組織レベルで集計されるようになり(バックエンドが既に
適用している組織レベルの使用量制限に合致する)、専用の
GET /organizations/current/usageエンドポイントから取得されるようになった。
Pipeline
Pipeline
改善
- コスト/目的関数レイヤーを、焦点を絞ったモジュール(アキュムレーター、誤差 メトリクス、ノーマライザー、NaN ポリシー)に再構成し、スカラー化、正規化の デフォルト、部分解の扱いに関するいくつかの正しさの修正を行った。
FunctionParametersが目的関数およびデータフィットの設定内で正しく シリアライズされるようになり、関数値パラメータを持つ設定が JSON を通して ラウンドトリップするようになった。
- ハーフセル ECM が、プロットとメトリクス用にアノードおよびカソードの電位変数
(
Anode potential [V]、Cathode potential [V])を公開するようになった。 get_cycle_metricsが出力でCycle countカラム名をCycle numberに 改名せずそのまま維持するようになり、データパイプライン全体で使われている 入力規約に合致するようになった。
Python API
Python API
改善
validate_measurement_data、CellMeasurement.create、CellMeasurement.create_or_getがskip_checksパラメータを受け付けるようになり、呼び出し側は厳格モードを 全面的に無効化する代わりに、単一の厳格バリデーター(例:time_gaps)を緩める ことができる。未知のチェック名はValueErrorを発生させ、正規のセットはionworks.validators.STRICT_CHECK_NAMESとして公開される。validate_strict=Trueが推奨デフォルトになった。
Data Processing
Data Processing
改善
- CSV、XLSX、ネイティブの
.resエクスポートをカバーする新しい Arbin リーダー (上記のハイライトを参照)。 - Maccor リーダーが、一部のサイクラーファームウェアバージョンで使われる コンパクトな短縮形のカラムヘッダーセットを受け付けるようになった。
Documentation
Documentation
改善
- Landesfeind フィットのワークスルー例を含む、新しい電解質パラメータ化ページ。
- 最適化実験エディター、反復的メトリクス、簡略化された Charge テンプレート、 複合システムモデルが文書化された。
- カスタム変数リファレンスが、ハーフセル ECM におけるアノード/カソード電位の 公開を文書化するようになった(英語と日本語)。
- Maccor のネイティブ
CCCVステップタイプが文書化された(英語と日本語)。 - Arbin がサポート対象サイクラーの表に掲載された。
- データフィッティングガイドの説明の拡充を含め、ドキュメントサイト全体に SEO メタデータ(キーワード、OG タグ、引き締めた説明)を追加した。
Skills
Skills
改善
- ミラーリングされる各パッケージ(
ionworksdata、ionworks-schema、ionworks-api、iwutil、ionworkspipeline、skills)が、Keep-a-Changelog 形式のパッケージごとのCHANGELOG.mdを同梱するようになった。これはリリース ワークフローの一部として作成・検証される。 discover-apiとrun-simulationsスキルを、新しい UCP 入力 JSON Schema を 参照しローカルの事前検証を示すよう更新した。upload-dataスキルを、validate_strict=Trueを推奨し新しいskip_checksパラメータを文書化するよう更新した。