code: func (t *ForcedCBDTransformer) hasCBDDescendent(g *Graph, v dag.Vertex) bool {
  	s, _ := g.Descendents(v)
  	if s == nil {
  		return true
  	}
  
  	for _, ov := range s.List() {
  		dn, ok := ov.(GraphNodeDestroyerCBD)
  		if !ok {
  			continue
  		}
  
  		if dn.CreateBeforeDestroy() {
  			// some descendent is CreateBeforeDestroy, so we need to follow suit
  			log.Printf("[TRACE] ForcedCBDTransformer: %q has CBD descendent %q", dag.VertexName(v), dag.VertexName(ov))
  			return true
  		}
  	}
  
  	return false
  }
docs: // hasCBDDescendent returns true if any descendent (node that depends on this)
  // has CBD set.