본문으로 건너뛰기

실행.이력서()

그만큼.resume()메서드는 새 데이터로 일시 중단된 Workflow 실행을 재개하므로 특정 단계부터 계속 실행할 수 있습니다.

사용예
사용예에 대한 직접 링크

const run = await workflow.createRun()

const result = await run.start({ inputData: { value: 'initial data' } })

if (result.status === 'suspended') {
const resumedResults = await run.resume({
resumeData: { value: 'resume data' },
})
}

매개변수
매개변수에 대한 직접 링크

resumeData?:

z.infer<TResumeSchema>
일시 중지된 단계를 재개하기 위한 데이터입니다

step?:

Step<string, any, any, TResumeSchema, any, TEngineType> | [...Step<string, any, any, any, any, TEngineType>[], Step<string, any, any, TResumeSchema, any, TEngineType>] | string | string[]
실행을 재개할 단계입니다. Step 인스턴스, Step 배열, 단계 ID 문자열 또는 단계 ID 문자열 배열을 사용할 수 있습니다

requestContext?:

RequestContext
재개할 때 사용할 Request Context 데이터입니다

retryCount?:

number
중첩 Workflow 실행을 위한 선택적 재시도 횟수입니다

forEachIndex?:

number
일시 중지된 .foreach() 단계의 특정 반복을 대상으로 지정합니다. 재개할 반복의 0부터 시작하는 인덱스를 전달하세요. 다른 반복은 일시 중지된 상태로 유지됩니다. 동일한 resumeData를 사용하여 해당 단계의 일시 중지된 모든 반복을 재개하려면 이 필드를 생략하세요.

tracingContext?:

TracingContext
자식 span을 생성하고 메타데이터를 추가하기 위한 Tracing 컨텍스트입니다. Mastra의 Tracing 시스템을 사용할 때 자동으로 주입됩니다.

currentSpan?:

Span
자식 span을 생성하고 메타데이터를 추가하기 위한 현재 span입니다. 실행 중 사용자 정의 자식 span을 생성하거나 span 속성을 업데이트하는 데 사용합니다.

tracingOptions?:

TracingOptions
Tracing 구성을 위한 옵션입니다.

metadata?:

Record<string, any>
루트 Trace span에 추가할 메타데이터입니다. 사용자 ID, 세션 ID 또는 기능 플래그와 같은 사용자 정의 속성을 추가할 때 유용합니다.

requestContextKeys?:

string[]
이 Trace의 메타데이터로 추출할 추가 RequestContext 키입니다. 중첩 값에는 점 표기법을 지원합니다(예: 'user.id').

traceId?:

string
이 실행에 사용할 Trace ID입니다(1~32자의 16진수). 제공하면 이 Trace가 지정된 Trace의 일부가 됩니다.

parentSpanId?:

string
이 실행에 사용할 부모 span ID입니다(1~16자의 16진수). 제공하면 루트 span이 이 span의 자식으로 생성됩니다.

tags?:

string[]
이 Trace에 적용할 태그입니다. Trace를 분류하고 필터링하는 문자열 레이블입니다.

outputOptions?:

OutputOptions
출력 구성을 위한 옵션입니다.

includeState?:

boolean
결과에 Workflow 실행 상태를 포함할지 여부입니다.

보고
보고에 대한 직접 링크

result:

Promise<WorkflowResult<TState, TOutput, TSteps>>
단계 출력과 상태가 포함된 Workflow 실행 결과로 이행되는 Promise입니다

traceId?:

string
Tracing이 활성화된 경우 이 실행과 연결된 Trace ID입니다. 로그를 연결하고 실행 흐름을 디버깅하는 데 사용합니다.

spanId?:

string
Tracing이 활성화된 경우 이 실행과 연결된 루트 span ID입니다. span 수준 조회와 연결에 사용합니다.

확장된 사용 예
확장된 사용 예에 대한 직접 링크

if (result.status === 'suspended') {
const resumedResults = await run.resume({
step: result.suspended[0],
resumeData: { value: 'resume data' },
})
}
노트

정확히 한 단계만 일시 중지된 경우 step 매개변수를 생략할 수 있으며, Workflow가 해당 단계를 자동으로 재개합니다. 일시 중지된 단계가 여러 개인 Workflow에서는 재개할 단계를 명시적으로 지정해야 합니다.

싱글 재개.foreach() iteration
resuming-a-single-foreach-iteration에 대한 직접 링크

.foreach() 단계가 여러 반복에서 일시 중지되면 forEachIndex(0부터 시작)를 사용하여 서로 다른 resumeData로 한 번에 하나의 반복을 재개하세요. forEachIndex로 지정하지 않은 반복은 재개될 때까지 일시 중지된 상태로 유지됩니다.

// Resume only the second iteration (index 1) with its own data
await run.resume({
step: 'approve',
resumeData: { ok: true },
forEachIndex: 1,
})

// Later, resume the first iteration with different data
await run.resume({
step: 'approve',
resumeData: { ok: false },
forEachIndex: 0,
})

forEachIndex를 생략하면 해당 단계에서 일시 중지된 모든 반복이 동일한 resumeData로 재개됩니다.