docs: def _is_plugin_ok(self, instance):
          ''' Return `True` if:
          1. Plugin meets plugin interface.
          2. Is not already registered in the plugin collection.
          3. Have accepted tags.
  
          Otherwise, return `False` and log warnings.
  
          '''
          try:
              verifyObject(IPlugin, instance)
          except BrokenImplementation:
              logger.warning(
                  "Plugin '%(name)s' doesn't provide the plugin interface",
                  {'name': self._full_class_name(instance)}
              )
              return False
  
          # Check if the plugin is already registered
          reg = self.plugins.get(instance.name)
          if reg:
              logger.warning(
                  "Plugin '%(name)s' by '%(instance)s' is already provided by '%(reg)s'", {
                      'name': instance.name, 'instance': self._full_class_name(instance),
                      'reg': self._full_class_name(reg)
                  }
              )
              return False
  
          for tag in instance.tags:
              if tag not in PLUGIN_TAGS:
                  logger.warning(
                      "Invalid tag '%(tag)s' in '%(instance)s'",
                      {'tag': tag, 'instance': self._full_class_name(instance)}
                  )
                  return False
  
          return True