anchor.diff:  
           | ChildWorkflowExecutionFailed(initiatedEvtId, _, workflowExec, _, details, reason) ->            
               let (StartChildWorkflowExecutionInitiated(_, _, _, _, _, _, input, control, _, _)) = findEventTypeById initiatedEvtId events
  -            failedStage control workflowExec.RunId input details reason
  +            retryAction control workflowExec.RunId input details reason
   
           | ChildWorkflowExecutionCompleted(initiatedEvtId, _, _, _, result) ->
               let (StartChildWorkflowExecutionInitiated(_, _, _, _, _, _, _, control, _, _)) = findEventTypeById initiatedEvtId events
  
positive.code: 
  type Activity = Activity<string, string>
  
  type StageExecutionState =
      {
          mutable StageNumber   : int
          mutable AttemptNumber : int
          mutable MaxAttempts   : int
      }
  
  /// The different actions that can be taken as a stage in the workflow
  type StageAction = 
      | ScheduleActivity      of IActivity
      | StartChildWorkflow    of Workflow
  
  /// Represents a stage in the workflow
  and Stage =
      {
          StageNumber : int           // zero-based index, e.g. 5 = 6th stage
          Action      : StageAction   // what action to perform at this stage in the workflow?
      }
  
  and Workflow (domain, name, description, version, ?taskList, 
                ?stages                  : Stage list,
                ?taskStartToCloseTimeout : Seconds,
                ?execStartToCloseTimeout : Seconds,
                ?childPolicy             : ChildPolicy,
                ?identity                : Identity,
                ?maxAttempts) =
      do if nullOrWs domain then nullArg "domain"
      do if nullOrWs name   then nullArg "name"
  
  
negative.code: type IActivity =
      inherit ISchedulable
  
      abstract member TaskList                    : TaskList    
      abstract member TaskHeartbeatTimeout        : Seconds
      abstract member TaskScheduleToStartTimeout  : Seconds
      abstract member TaskStartToCloseTimeout     : Seconds
  