code: func (s *serviceConfigWatch) runWatch() {
  	firstRun := true
  	for {
  		select {
  		case <-s.ctx.Done():
  			return
  		case event := <-s.updateCh:
  			if err := s.handleUpdate(event, false, firstRun); err != nil {
  				s.agent.logger.Printf("[ERR] agent.manager: error handling service update: %v", err)
  			}
  			firstRun = false
  		}
  	}
  }
docs: // runWatch handles any update events from the cache.Notify until the
  // config watch is shut down.