Federation of equivalent entities with multiple key fields

Having read the “Multiple @keys” section of “Advanced topics on federated entities” I can see that multiple independent keys (id and sku in the example given) fields can be used to uniquely identify the same entity (Product).

I will have a case similar to this. The same GraphQL request (one ore more queries) could use a variety of such key fields - e.g.:

product(id: "1") {
    federatedExtension1Product { # references product(sku: "123")
        name
    }
}
product(sku: "123") {
    federatedExtension2Product { # references product(id: "1")
        name
    }
}

Assume that there is a one and only, single product that has id=1 and sku=123 - i.e. all four Product references above (two root + two nested extension contributions via federation) refer to exactly the same entity.

Please note that I cannot “normalize” or otherwise structure this data better - I am constrained by regulatory reasons as well as inability to change the legacy code and existing data. It is just a no-go.

I am told that Apollo Federation cannot recognize this case and could behave as if all four are separate (with some fortunate aids possibly cutting it down to two - one by id and another by sku). I am thinking that it could (and should) request the other key fields (or at least one primary) to allow itself to match them and realize that they are, in fact, the same, thus avoiding unnecessary duplication of outgoing requests to fetch the data it already may have.

I am looking for help on this. Did/do you have a similar case? What did you end up doing? Is there a way to address this - how?

Note that this case is natural when there are multiple keys involved. Assuming all keys are, in fact, keys, that means that they do have unique values for each and every entity and, since there are multiple of them, each entity will have all of them. They would each exist for their own reasons and different reasons may apply to different (parts of the) queries.

Thanks!