Mastra.addDynamicWorkflows()
beta
動的 Workflow はベータ版です。API が安定するまでは、メジャーバージョンを上げずに破壊的変更が加わる場合があります。
.addDynamicWorkflows() メソッドは、相互に参照できる動的 Workflow 定義のセットを追加します。一般的な用途は、ルート Workflow と、まだ定義されていない内部の補助 Workflow をまとめて追加することです。
最初にセット全体が検証されます。その後、依存関係順に各メンバーが登録されるため、補助 Workflow は、それを内包する Workflow より先に必ず登録されます。
単一の定義を追加する場合は addDynamicWorkflow() を使用します。
使用例使用例への直接リンク
await mastra.addDynamicWorkflows([
helperDefinition, // nested by the root — order in the array doesn't matter
rootDefinition, // graph contains { type: 'workflow', workflowId: helperDefinition.id }
])
パラメータパラメータへの直接リンク
defs:
readonly DynamicWorkflowGraph[]
追加する Workflow 定義。ネストされた Workflow の参照先には、実行中のレジストリまたは同じセット内の別メンバーを指定できます。
戻り値戻り値への直接リンク
すべてのメンバーの検証、登録、永続化が完了すると解決される Promise。
動作動作への直接リンク
- 参照は、インスタンスのレジストリとセット内の ID を合わせた範囲から解決されます。そのため、ルート Workflow は同じ呼び出しで追加された補助 Workflow を内包できます。登録順は配列の順序ではなく、依存関係グラフから決まります。
- 拒否されたセットは何も登録しません。ID の重複、無効なメンバー、依存関係の循環は、状態を変更する前に検出されます。登録または永続化が途中で失敗した場合、メモリ内のレジストリは以前の状態に戻されます。
- Storage への書き込みは最後に行われます。セットの途中で Storage レベルの障害が起きると、一部の行が書き込まれたままになる場合があります。ただし、レジストリはロールバックされ、孤立した行は次回起動まで使用されません。
関連項目関連項目への直接リンク
- Mastra.addDynamicWorkflow(): 単一の定義を追加
- 動的 Workflow: 動的 Workflow のセットアップと使用方法
- 動的 Workflow 定義: 定義フィールドとグラフエントリ