code: func (e *Runner) prepareForExecution() {
  	e.phaseRunners = []*phaseRunner{}
  	var parentRunner *phaseRunner
  	for _, phase := range e.Phases {
  		// skips phases that are meant to create special subcommands only
  		if phase.RunAllSiblings {
  			continue
  		}
  
  		// add phases to the execution list
  		addPhaseRunner(e, parentRunner, phase)
  	}
  }
docs: // prepareForExecution initialize the internal state of the Runner (the list of phaseRunner).