func()

in error.go [74:91]


func (je *JobError) RootCause() error {
	// this step failed, return the error
	if je.Code == ErrStepFailed {
		return je
	}

	// precendent step failure, track to the root
	if je.Code == ErrPrecedentStepFailed {
		precedentStepErr := &JobError{}
		if !errors.As(je.StepError, &precedentStepErr) {
			return je.StepError
		}
		return precedentStepErr.RootCause()
	}

	// no idea
	return je
}