1076
case chasm.BusinessIDReusePolicyAllowDuplicateFailedOnly:
1077
if _, ok := consts.FailedWorkflowStatuses[currentRunInfo.Status]; !ok {
1078
>
return chasm.StartExecutionResult{}, chasm.NewExecutionAlreadyStartedErr(
chasm_engine.go
1079
>
fmt.Sprintf(
1080
>
"CHASM execution already completed successfully. BusinessID: %s, RunID: %s, ID Reuse Policy: %v",
1081
>
newExecutionParams.executionRef.BusinessID,
1082
>
currentRunInfo.RunID,
1083
>
reusePolicy,
1084
>
),
1085
>
currentRunInfo.createRequestID,
1086
>
currentRunInfo.RunID,
1087
>
)
1088
>
}
1089
// Fallthrough to persist the new execution as current run.
1090
case chasm.BusinessIDReusePolicyRejectDuplicate: