code: func (b *Backend) GroupCompleted(groupUUID string, groupTaskCount int) (bool, error) {
  	tasks, ok := b.groups[groupUUID]
  	if !ok {
  		return false, NewErrGroupNotFound(groupUUID)
  	}
  
  	var countSuccessTasks = 0
  	for _, v := range tasks {
  		t, err := b.GetState(v)
  		if err != nil {
  			return false, err
  		}
  
  		if t.IsCompleted() {
  			countSuccessTasks++
  		}
  	}
  
  	return countSuccessTasks == groupTaskCount, nil
  }
docs: // GroupCompleted returns true if all tasks in a group finished