The “__typename” and “id” combination might not be unique, or it might be that “id” alone is unique across all objects.
Cool thing! Kudos for building it.
Nuutti Kotivuori
22

It will always be unique across the query – to ensure that it is unique, I am using a combination of resource path, typename and ID, i.e. {foo{bar1: baz, bar2:baz}} here bar1 has a resource path foo,bar1 and bar2 has a resource path foo,bar2 .