graphql-hive / graphql-hive/federation-composition

inconsistencies in supergraph generated by apollo and us

Open
#173 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
53
Forks
8
Avg merge
20h 50m
Merged PRs (30d)
10

Description

Internal reference for getting the subgraphs:

```sql
select schema_log.service_name, schema_log.sdl
from schema_version_to_log inner join schema_log on schema_version_to_log.action_id = schema_log.id
where schema_version_to_log.version_id = (
select id from schema_versions where target_id = '9563132d-94ed-481d-9593-e17d4e922f68' order by created_at DESC limit 1
)
```

When composing these subgraphs with apollo and our federation library we get the following diff:

```diff
6390c6390
< @join__field(external: true, graph: TEMPLATE_SERVICE)
---
> @join__field(external: true, graph: TEMPLATE_SERVICE, usedOverridden: true)
8963d8962
< @join__type(extension: true, graph: TEMPLATE_SERVICE_MEDIA, key: "assetId")
8964a8964
> @join__type(graph: TEMPLATE_SERVICE_MEDIA, key: "assetId")
10292,10293c10292,10293
< @join__field(external: true, graph: POST_ORDER_EXPERIENCE_API)
< @join__field(graph: ORDER_LEDGER)
---
> @join__field(graph: ORDER_LEDGER)
> @join__field(graph: POST_ORDER_EXPERIENCE_API)
13392c13392
< @join__type(extension: true, graph: TEMPLATE_SERVICE, key: "surfaceId")
---
> @join__type(graph: TEMPLATE_SERVICE, key: "surfaceId")
```

In apollos supergraph result:
- `usedOverridden: true` does not exist

In our supergraph result:
- `extension: true` is missing
- `external: true` is missing

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.