def METHOD_NAME() -> Iterable[Tuple[str, str, Type]]:
    def _load_bgtask_safe(_mi):
        try:
            return _mi.module_finder.find_spec(_mi.name).loader.load_module(_mi.name)
        except RuntimeError as e:
            if 'No configuration for scheduled action' in str(e):
                app.logger.warning(f'config for {_mi.name} not found')
                return None
            raise e
    module_infos = (m for m in pkgutil.walk_packages(portality.tasks.__path__) if not m.ispkg)
    modules = (_load_bgtask_safe(mi) for mi in module_infos)
    modules = filter(None, modules)
    bgspec_list = map(_get_background_task_spec, modules)
    bgspec_list = filter(None, bgspec_list)
    return bgspec_list