### Summary

galaxy cli is able to find a collection on a remote api/v3 endpoint, but when it goes to install the collection version it fails to find it in the cache ...

```(Epdb) print(pid.stdout.decode("utf-8"))
ansible-galaxy [core 2.13.9]
  config file = /tmp/pytest-of-pulp/pytest-20/test_install_signed_collection0/ansible.cfg
  configured module search path = ['/var/lib/pulp/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/lib/python3.8/site-packages/ansible
  ansible collection location = /var/lib/pulp/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/local/bin/ansible-galaxy
  python version = 3.8.13 (default, Jun 24 2022, 15:27:57) [GCC 8.5.0 20210514 (Red Hat 8.5.0-13)]
  jinja version = 3.1.2
  libyaml = True
Using /tmp/pytest-of-pulp/pytest-20/test_install_signed_collection0/ansible.cfg as config file
Starting galaxy collection install process
[WARNING]: The specified collections path '/tmp/pytest-of-
pulp/pytest-20/test_install_signed_collection0' is not part of the configured
Ansible collections paths
'/var/lib/pulp/.ansible/collections:/usr/share/ansible/collections'. The
installed collection won't be picked up in an Ansible run.
Process install dependency map
Initial connection to galaxy_server: http://localhost:5001/pulp_ansible/galaxy/4fae352f-2a64-4c8e-8b30-5fd6e1996408/
Calling Galaxy at http://localhost:5001/pulp_ansible/galaxy/4fae352f-2a64-4c8e-8b30-5fd6e1996408/
Calling Galaxy at http://localhost:5001/pulp_ansible/galaxy/4fae352f-2a64-4c8e-8b30-5fd6e1996408/api
Found API version 'v1, v2, v3' with Galaxy server pulp_ansible (http://localhost:5001/pulp_ansible/galaxy/4fae352f-2a64-4c8e-8b30-5fd6e1996408/api)
Calling Galaxy at http://localhost:5001/pulp_ansible/galaxy/4fae352f-2a64-4c8e-8b30-5fd6e1996408/api/v3/collections/testing/k8s_demo_collection/
Calling Galaxy at http://localhost:5001/pulp_ansible/galaxy/4fae352f-2a64-4c8e-8b30-5fd6e1996408/api/v3/collections/testing/k8s_demo_collection/versions/?limit=100
Calling Galaxy at http://localhost:5001/pulp_ansible/galaxy/4fae352f-2a64-4c8e-8b30-5fd6e1996408/api/v3/collections/testing/k8s_demo_collection/versions/0.0.3/
Starting collection install process
ERROR! Unexpected Exception, this is probably a bug: The is no known source for testing.k8s_demo_collection:0.0.3

----------------DEBUG-------------------
collection: testing.k8s_demo_collection:0.0.3 <class 'ansible.galaxy.dependency_resolution.dataclasses.Candidate'>
cache: {<testing.k8s_demo_collection:0.0.3 of type 'galaxy' from pulp_ansible>: ('http://localhost:5001/pulp_ansible/galaxy/default/api/v3/plugin/ansible/content/4fae352f-2a64-4c8e-8b30-5fd6e1996408/collections/artifacts/testing-k8s_demo_collection-0.0.3.tar.gz', '360548ba80e3dce478b7915ca89a5613dc80c650a55b96f5491012a8297e12ac', <ansible.galaxy.token.BasicAuthToken object at 0x7fdf1408cac0>)}
        testing.k8s_demo_collection:0.0.3 <class 'ansible.galaxy.dependency_resolution.dataclasses.Candidate'>
        testing.k8s_demo_collection:0.0.3 == testing.k8s_demo_collection:0.0.3? False
----------------DEBUG-------------------

the full traceback was:

Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/ansible/galaxy/collection/concrete_artifact_manager.py", line 141, in get_galaxy_artifact_path
    url, sha256_hash, token = self._galaxy_collection_cache[collection]
KeyError: <testing.k8s_demo_collection:0.0.3 of type 'galaxy' from pulp_ansible>

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/ansible/cli/__init__.py", line 601, in cli_executor
    exit_code = cli.run()
  File "/usr/local/lib/python3.8/site-packages/ansible/cli/galaxy.py", line 682, in run
    return context.CLIARGS['func']()
  File "/usr/local/lib/python3.8/site-packages/ansible/cli/galaxy.py", line 104, in method_wrapper
    return wrapped_method(*args, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/ansible/cli/galaxy.py", line 1327, in execute_install
    self._execute_install_collection(
  File "/usr/local/lib/python3.8/site-packages/ansible/cli/galaxy.py", line 1364, in _execute_install_collection
    install_collections(
  File "/usr/local/lib/python3.8/site-packages/ansible/galaxy/collection/__init__.py", line 748, in install_collections
    install(concrete_coll_pin, output_path, artifacts_manager)
  File "/usr/local/lib/python3.8/site-packages/ansible/galaxy/collection/__init__.py", line 1295, in install
    b_artifact_path = (
  File "/usr/local/lib/python3.8/site-packages/ansible/galaxy/collection/concrete_artifact_manager.py", line 149, in get_galaxy_artifact_path
    raise_from(
  File "<string>", line 3, in raise_from
RuntimeError: The is no known source for testing.k8s_demo_collection:0.0.3
```

The error comes from this block of code: **https://github.com/ansible/ansible/blob/devel/lib/ansible/galaxy/collection/concrete_artifact_manager.py#L139-L145**

I inspected the key in the dict and the collection variable and they are very similar but one has signing keys and the other does not.

```
  1 {
  2     'fqcn': 'testing.k8s_demo_collection',
  3     'ver': '0.0.3',
  4     'src': <pulp_ansible "pulp_ansible" @ http://localhost:5001/pulp_ansible/galaxy/6ec55cca-6342-4cdb-82bf-aa6c2f800843/api with priority 1>,
  5     'type': 'galaxy',
  6     'signatures': frozenset()
  7 }
  8 
  9 {
 10     'fqcn': 'testing.k8s_demo_collection',
 11     'ver': '0.0.3',
 12     'src': <pulp_ansible "pulp_ansible" @ http://localhost:5001/pulp_ansible/galaxy/6ec55cca-6342-4cdb-82bf-aa6c2f800843/api with priority 1>,
 13     'type': 'galaxy',
 14     'signatures': frozenset({'-----BEGIN PGP SIGNATURE-----\n\niQEzBAABCAAdFiEEbt8wElZIC5uAHro9BaXm2iadnZgFAmRJd/AACgkQBaXm2iad\nnZhSdAf/QIm5AuYbgZ8Jxa/TcavRxoetQtgsspBBiDqvBP67BExN7xoBe/DUtjIA\nn2xbJgxzcwUI+WOYWE+iNjzjYpOBfN8jFlGMdAc21dfN+5NUvH+R0+YmwNf7Ihob\nd0qU3JozJZo+GCd2rMwprnzMp+3LvU9HD+r+hO9ELlMLQeYWVVn/    GBNrjZJ6yGlj\nBCGxvagEMhkp4Gso/ft5Q6VqFSWUrIERb9QZWKTnM7iryNO3ojcjBEvFdk+RuOho\nNN0rjN4Xu+DkbI3nUt49l+XC7yBubu9BBx30KcL1srrVI0nY6Px6LbLMnezg6C5+\nC7qsYP0E+41TQTbb7nxIELXvr/mP5g==\n=3jS8\n-----END PGP SIGNATURE-----\n'})
 15 }  
```


### Issue Type

Bug Report

### Component Name

galaxy

### Ansible Version

```console
ansible-galaxy [core 2.13.9]
  config file = /tmp/pytest-of-pulp/pytest-20/test_install_signed_collection0/ansible.cfg
  configured module search path = ['/var/lib/pulp/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/lib/python3.8/site-packages/ansible
  ansible collection location = /var/lib/pulp/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/local/bin/ansible-galaxy
  python version = 3.8.13 (default, Jun 24 2022, 15:27:57) [GCC 8.5.0 20210514 (Red Hat 8.5.0-13)]
  jinja version = 3.1.2
  libyaml = True
Using /tmp/pytest-of-pulp/pytest-20/test_install_signed_collection0/ansible.cfg as config file
```


### Configuration

```console
# if using a version older than ansible-core 2.12 you should omit the '-t all'
$ ansible-config dump --only-changed -t all
```


### OS / Environment

Centos 8 stream docker image from pulp ci builds

### Steps to Reproduce

This is a bit nebulous because it's a failing job in the pulp_ansible CI. We do know that rolling back to 2.13.8 fixes it.


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
def __init__(self, collection_name):  
        self.collection_name = collection_name  
        self.success = True  
def verify_local_collection(local_collection, remote_collection, artifacts_manager):
    
    """Verify integrity of the locally installed collection.
    :param local_collection: Collection being checked.
    :param remote_collection: Upstream collection (optional, if None, only verify local artifact)
    :param artifacts_manager: Artifacts manager.
    :return: a collection verify result object.
    """
    result = CollectionVerifyResult(local_collection.fqcn)
    b_collection_path = to_bytes(local_collection.src, errors='surrogate_or_strict')
    display.display("Verifying '{coll!s}'.".format(coll=local_collection))
    display.display(
        u"Installed collection found at '{path!s}'".
        format(path=to_text(local_collection.src)),
    )
    modified_content = []  
    verify_local_only = remote_collection is None
    
    get_json_from_validation_source = functools.partial(_get_json_from_installed_dir, b_collection_path)
    get_hash_from_validation_source = functools.partial(_get_file_hash, b_collection_path)
    if not verify_local_only:
        
        if local_collection.ver != remote_collection.ver:
            err = (