I have a command task to call a batch file which returns 1 if File.Ok does not exists and 0 if File.Ok exists in a particular location. Following this command task I have 2 links:
link 1: $commandtask.status = succeeded
link 2: $commandtask.status = failed
After each of these links there are several session and other tasks.
PROBLEM: Whenever File.OK is not found, Link 2 is executed followed by tasks/sessions of this branch (as desired and expected) but after executing all remaining items the workflow gets failed.
note: I have not checked 'Fail Parent if task fails' property anywhere.
You might have checked the "Fail parent if task does not run" in some task. If the task with this property checked does not run then it fails the workflow.