async def METHOD_NAME(
    request: YamllintRequest.PartitionRequest, yamllint: Yamllint
) -> Partitions[Any, PartitionInfo]:
    if yamllint.skip:
        return Partitions()
    matching_filepaths = FilespecMatcher(
        includes=yamllint.file_glob_include, excludes=yamllint.file_glob_exclude
    ).matches(request.files)
    config_files = await Get(
        YamllintConfigFiles, YamllintConfigFilesRequest(filepaths=tuple(sorted(matching_filepaths)))
    )
    default_source_files: set[str] = set()
    source_files_by_config_file: dict[str, set[str]] = defaultdict(set)
    for source_dir, files_in_source_dir in group_by_dir(matching_filepaths).items():
        files = (os.path.join(source_dir, name) for name in files_in_source_dir)
        if source_dir in config_files.source_dir_to_config_files:
            config_file = config_files.source_dir_to_config_files[source_dir]
            source_files_by_config_file[config_file].update(files)
        else:
            default_source_files.update(files)
    config_file_snapshots = await MultiGet(
        Get(Snapshot, DigestSubset(config_files.snapshot.digest, PathGlobs([config_file])))
        for config_file in source_files_by_config_file
    )
    return Partitions(
        (
            *(
                Partition(tuple(sorted(files)), PartitionInfo(config_snapshot=config_snapshot))
                for files, config_snapshot in zip(
                    source_files_by_config_file.values(), config_file_snapshots
                )
            ),
            *(
                (
                    Partition(
                        tuple(sorted(default_source_files)), PartitionInfo(config_snapshot=None)
                    ),
                )
                if default_source_files
                else ()
            ),
        )
    )