code: func (m *monitor) fixTip() error {
  	names, _, err := m.harvest(m.tip[len(m.tip)-1])
  	if err != nil {
  		return err
  	}
  
  	// If none of our backup tips were returned, most likely the last backup
  	// tip is dead and this check was meaningless.
  	if len(names) == 0 {
  		m.tip = m.tip[:len(m.tip)-1]
  		if len(m.tip) == 0 {
  			m.tip = defaultTip
  		}
  		return nil
  	}
  
  	// n^2 because your cycles don't matter to me & n <= maxTipSize
  	for i := 0; i < len(m.tip)-1; i++ {
  		alive := false
  		for _, n := range names {
  			if m.tip[i] == n {
  				alive = true
  			}
  		}
  		if !alive {
  			m.tip = append(m.tip[:i], m.tip[i+1:]...)
  		}
  	}
  
  	m.blanks = 0
  	return nil
  }
docs: // fixTip checks all of the stored backup tips for health. If the post at the
  // front has been deleted or caught in a spam filter, the feed will die and we
  // will stop getting posts. This will adjust backward if a tip is dead and
  // remove any other dead tips in the list. Returns whether the tip was broken.