Workflow state reader
Workflow state reader ヘルパーは、workflow.getWorkflowRunById() が返す公開 WorkflowState を検査します。中断された Run の復元や resume label の確認に使用できます。また、生の Workflow スナップショットを解析せずに、ステップのペイロードや出力を読み取ることもできます。
使用例使用例への直接リンク
import { createWorkflowStateReader } from '@mastra/core/workflows'
const state = await workflow.getWorkflowRunById('run-123')
if (state) {
const reader = createWorkflowStateReader(state)
const suspendedStep = reader.getSuspendedStep()
const labels = reader.getResumeLabels()
console.log(reader.getStatus())
console.log(reader.getStepOutput('extract-data'))
console.log(suspendedStep?.path)
console.log(labels.approve)
}
関数関数への直接リンク
createWorkflowStateReader(state)createworkflowstatereaderstateへの直接リンク
1 つの WorkflowState にメソッドをバインドした reader オブジェクトを作成します。
const reader = createWorkflowStateReader(state)
const suspendedStep = reader.getSuspendedStep()
getWorkflowStepOutput(state, stepId)getworkflowstepoutputstate-stepidへの直接リンク
ステップ ID の出力を返します。parent.child のようなネストされた Workflow のドットパスにも対応します。foreach ステップでは、反復ごとに 1 つのエントリを返します。中断された反復の出力エントリは undefined になる場合があります。
const output = getWorkflowStepOutput(state, 'extract-data')
getWorkflowStepPayload(state, stepId)getworkflowsteppayloadstate-stepidへの直接リンク
ステップに渡されたペイロードを返します。foreach ステップでは、反復ごとに 1 つのエントリを返します。
const payload = getWorkflowStepPayload(state, 'extract-data')
getWorkflowSuspendedStep(state)getworkflowsuspendedstepstateへの直接リンク
Workflow の状態から、最初に中断されたステップを返します。複数のステップが中断されている場合は、suspendedPaths に保存された順序に従います。
const suspendedStep = getWorkflowSuspendedStep(state)
getWorkflowSuspendedSteps(state)getworkflowsuspendedstepsstateへの直接リンク
Workflow の状態から、中断されたすべてのステップを返します。各結果には、トップレベルのステップ ID、再開パス、実行パス、中断時のペイロード、中断時の出力、および一致する resume label が含まれます。
const suspendedSteps = getWorkflowSuspendedSteps(state)
getWorkflowResumeLabel(state, label)getworkflowresumelabelstate-labelへの直接リンク
名前を指定して resume label を返します。
const label = getWorkflowResumeLabel(state, 'approve')
getWorkflowResumeLabels(state)getworkflowresumelabelsstateへの直接リンク
Workflow の状態から、すべての resume label を返します。
const labels = getWorkflowResumeLabels(state)
Reader メソッドReader メソッドへの直接リンク
createWorkflowStateReader(state) は次のメソッドを返します。
getStatus:
getResult:
getError:
getStepOutput:
getStepPayload:
getSuspendedStep:
getSuspendedSteps:
getResumeLabel:
getResumeLabels:
注意事項注意事項への直接リンク
requestContext と tracingContext は、fields で明示的に要求した場合にのみ workflow.getWorkflowRunById() から返されます。