[Fusion] Rename gateway to router - #10246
Open
michaelstaib wants to merge 1 commit into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates Fusion terminology and APIs across the codebase to consistently use “router” instead of “gateway”, including docs, templates, CLI help text, and .NET extension methods.
Changes:
- Rename public-facing Fusion docs/blog content from “gateway” to “router” and update example snippets (
AddGraphQLRouter*,graph.far). - Introduce/rename .NET DI APIs (
AddGraphQLRouterCore,AddGraphQLRouter) and update tests to match. - Replace the gateway project template with a router template and update release packaging.
Reviewed changes
Copilot reviewed 173 out of 177 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| website/src/components/FusionSubscriptionsDiagramInner.tsx | Diagram label updated to “Fusion Router”. |
| website/content/docs/nitro/migration/migrate-from-1-to-16.md | Migration docs updated to router naming and APIs. |
| website/content/docs/nitro/cli/schema.md | CLI guidance updated to “Fusion routers”. |
| website/content/docs/nitro/cli/fusion.md | CLI docs updated to router terminology and graph.far. |
| website/content/docs/nitro/apis/fusion.md | Nitro “Fusion” API docs updated to router naming/APIs. |
| website/content/docs/nitro/adapters/mcp.md | MCP adapter docs updated for Fusion router wording. |
| website/content/docs/hotchocolate/server/cache-control.md | Cache-control narrative updated to router terminology. |
| website/content/docs/hotchocolate/index.md | Hot Chocolate overview updated to router terminology. |
| website/content/docs/hotchocolate/adapters/openapi.md | OpenAPI adapter Fusion integration updated to router APIs. |
| website/content/docs/fusion/source-schema-extensions.md | Fusion docs updated to router wording. |
| website/content/docs/fusion/request-limits.md | Request limits docs updated to router wording and APIs. |
| website/content/docs/fusion/performance-tuning.md | Performance tuning docs updated to router wording/APIs. |
| website/content/docs/fusion/migration/migrate-from-16-5-to-16-6.md | Migration doc updated (router resource + graph.far). |
| website/content/docs/fusion/interface-objects.md | Mermaid diagram updated to “Fusion router”. |
| website/content/docs/fusion/index.md | Fusion landing page updated to router naming throughout. |
| website/content/docs/fusion/guides/third-party-api.md | Guide updated to router wording. |
| website/content/docs/fusion/guides/first-party-api.md | Trusted documents guide updated to router wording/APIs. |
| website/content/docs/fusion/field-ownership-and-sharing.md | Ownership/sharing docs updated to router wording. |
| website/content/docs/fusion/entities-and-lookups.md | Entities/lookups docs updated to router wording. |
| website/content/docs/fusion/directives-reference.md | Directive reference updated to router wording. |
| website/content/docs/fusion/deployment-and-ci-cd.md | Deployment/CI docs updated to router naming/APIs. |
| website/content/docs/fusion/data-requirements-and-mapping.md | Data requirements docs updated to router wording. |
| website/content/docs/fusion/cache-control.md | Fusion cache-control docs updated to router wording/APIs. |
| website/content/docs/fusion/batching.md | Batching docs updated to router wording. |
| website/content/docs/fusion/authentication-and-authorization.md | Auth docs updated to router wording/APIs and examples. |
| website/content/docs/fusion/adding-a-subgraph.md | Tutorial updated to router wording and graph.far. |
| website/content/blog/2026-07-12-fusion-16-5.md | Blog post updated to router framing and graph.far. |
| website/content/blog/2026-07-06-federated-event-streams.md | Blog post updated to router terminology and examples. |
| website/content/blog/2026-06-11-open-your-graphql-api-for-the-rest.md | Blog post updated to router terminology. |
| website/content/blog/2026-06-06-newsletter-may-2026.md | Newsletter updated to router terminology. |
| website/content/blog/2026-05-28-mcp-hotchocolate-fusion.md | MCP blog updated to router terminology and examples. |
| templates/router/Properties/launchSettings.json | New router template launch settings. |
| templates/router/Program.cs | New router template Program using AddGraphQLRouter. |
| templates/router/HotChocolate.Template.Router.csproj | New router template project file. |
| templates/router/appsettings.json | New router template config. |
| templates/router/appsettings.Development.json | New router template dev config. |
| templates/router/.template.config/template.json | Template identity renamed to Router. |
| templates/HotChocolate.Templates.csproj | Packaging updated to include router template directory. |
| src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionSourceSchemaInitCommandTests.cs | Help text updated to router wording. |
| src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionSettingsSetCommandTests.cs | Help example updated to graph.far. |
| src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionRunCommandTests.cs | Help text/examples updated to router + graph.far. |
| src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionDownloadCommandTests.cs | Help text/examples updated to router + graph.far. |
| src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionConfigurationPublishValidateCommandTests.cs | Help example updated to graph.far. |
| src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionConfigurationPublishCommitCommandTests.cs | Help example updated to graph.far. |
| src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionComposeCommandTests.cs | Help example updated to graph.far. |
| src/Nitro/CommandLine/src/CommandLine/Options/OptionalTransportUrlOption.cs | Option description updated to router wording. |
| src/Nitro/CommandLine/src/CommandLine/Options/OptionalTransportClientNameOption.cs | Option description updated to router wording. |
| src/Nitro/CommandLine/src/CommandLine/Options/FusionRunPortOption.cs | Option description updated to router wording. |
| src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/PublishCommand/FusionConfigurationPublishValidateCommand.cs | Example updated to graph.far. |
| src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/PublishCommand/FusionConfigurationPublishCommitCommand.cs | Example updated to graph.far. |
| src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/FusionValidateCommand.cs | Error message updated to router wording. |
| src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/FusionSourceSchemaInitCommand.cs | Comment updated to router wording. |
| src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/FusionSettingsSetCommand.cs | Example updated to graph.far. |
| src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/FusionRunCommand.cs | Command description/examples + DI call updated to router. |
| src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/FusionDownloadCommand.cs | Command description/examples + default output updated to graph.*. |
| src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/FusionComposeCommand.cs | Example and default archive name updated to graph.far. |
| src/HotChocolate/Fusion/test/Fusion.Subscriptions.Redis.Tests/RedisSubscriptionTests.cs | Tests updated to AddGraphQLRouterCore + BuildRouterAsync. |
| src/HotChocolate/Fusion/test/Fusion.Subscriptions.NATS.Tests/NatsSubscriptionTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Subscriptions.Kafka.Tests/KafkaSubscriptionTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Subscriptions.AzureEventHubs.Tests/AzureEventHubsSubscriptionTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Subscriptions.AmazonSqs.Tests/AmazonSqsSubscriptionTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Types/FusionTagDirectiveTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Subscriptions/NatsEventStreamGatewayTests.cs | Test helper renamed to BuildRouterAsync + router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Subscriptions/EventStreamTransportFailureTests.cs | Tests updated to BuildRouterAsync + router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Subscriptions/EventStreamLookupFailureTests.cs | Tests updated to BuildRouterAsync + router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Subscriptions/EventStreamHotChocolateIntegrationTests.cs | Tests updated to BuildRouterAsync + router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Subscriptions/EventStreamEntityLookupTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Subscriptions/EventStreamCursorTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Subscriptions/EventStreamBrokerReadFailureTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/OperationPlanSingleFlightTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/OperationPlannerConfigurationTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/OperationPlanContextRoutingTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/OperationPlanContextResetTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/OperationPlanContextPoolingTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/OperationPlanCacheTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/OperationExecutionNodeTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Nodes/OperationExecutionNodeCreationTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Introspection/OptInFeaturesIntrospectionTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Introspection/ObjectDeprecationIntrospectionTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Introspection/FieldArgumentsIntrospectionTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Introspection/DirectiveDefinitionIntrospectionTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/FusionRequestExecutorProxyTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/FusionRequestExecutorManagerTests.cs | Tests updated to router core API (schema naming included). |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/FusionOptionsTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/FusionDocumentCacheTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/ExecutionNodeCompletionTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Clients/BatchBufferTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Execution/Clients/AliasBatching/AliasBatchRequestSelectionTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Execution.Tests/Configuration/DefaultGraphQLClientConfigurationParserTests.cs | Tests updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Connectors.InMemory.Tests/SupertypeNarrowingExecutionTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Connectors.InMemory.Tests/InMemorySubscriptionTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Connectors.InMemory.Tests/InMemoryConnectorTests.cs | Tests updated to router APIs. |
| src/HotChocolate/Fusion/test/Fusion.Connectors.InMemory.Tests/FileUploadTests.cs | Test server wiring updated to router server API. |
| src/HotChocolate/Fusion/test/Fusion.Connectors.ApolloFederation.Compliance.Tests/Suites/* | Compliance suites updated to override BuildRouterAsync. |
| src/HotChocolate/Fusion/test/Fusion.Connectors.ApolloFederation.Compliance.Tests/Infrastructure/OfficialV2ComplianceTestBase.cs | Base runner updated to call BuildRouterAsync. |
| src/HotChocolate/Fusion/test/Fusion.Connectors.ApolloFederation.Compliance.Tests/Infrastructure/OfficialV1ComplianceTestBase.cs | Base runner updated to call BuildRouterAsync. |
| src/HotChocolate/Fusion/test/Fusion.Connectors.ApolloFederation.Compliance.Tests/Infrastructure/FusionGatewayBuilder.cs | Builder updated to router core API. |
| src/HotChocolate/Fusion/test/Fusion.Connectors.ApolloFederation.Compliance.Tests/Infrastructure/ComplianceTestBase.cs | Base method renamed to BuildRouterAsync. |
| src/HotChocolate/Fusion/test/Fusion.Connectors.ApolloFederation.Compliance.Tests/AdditionalCoverage/* | Supplemental suites updated to BuildRouterAsync. |
| src/HotChocolate/Fusion/test/Fusion.AspNetCore.Tests/FusionTestBase.cs | Test harness updated to AddGraphQLRouter. |
| src/HotChocolate/Fusion/test/Fusion.AspNetCore.Tests/FusionExecutorWarmupTests.cs | Warmup test updated to router server API. |
| src/HotChocolate/Fusion/test/Fusion.Aspire.Tests/SchemaCompositionTests.cs | Snapshots/examples updated to graph.far. |
| src/HotChocolate/Fusion/test/Fusion.Aspire.Tests/Nitro/NitroSchemaCompositionTests.cs | Archive filename updated to graph.far. |
| src/HotChocolate/Fusion/src/Fusion.Execution/HotChocolate.Fusion.Execution.csproj | Added InternalsVisibleTo entries for updated test assemblies. |
| src/HotChocolate/Fusion/src/Fusion.Execution/DependencyInjection/HotChocolateFusionServiceCollectionExtensions.cs | Introduces AddGraphQLRouterCore and routes old API via obsolete shim. |
| src/HotChocolate/Fusion/src/Fusion.AspNetCore/DependencyInjection/FusionServerServiceCollectionExtensions.cs | Adds AddGraphQLRouter and obsoletes gateway server extension. |
| src/HotChocolate/Fusion/src/Fusion.AspNetCore/DependencyInjection/FusionServerAspNetCoreHostingBuilderExtensions.cs | Adds host builder AddGraphQLRouter + obsolete gateway alias. |
| src/HotChocolate/Fusion/src/Fusion.Aspire/NitroExtensions.cs | Aspire Nitro extensions updated to router terminology. |
| src/HotChocolate/Fusion/src/Fusion.Aspire/GraphQLResourceBuilderExtensions.cs | Default archive filename updated to graph.far. |
| src/HotChocolate/Fusion/src/Fusion.Aspire/GraphQLCompositionSettings.cs | Settings docs updated to router wording. |
| src/HotChocolate/Fusion/benchmarks/k6/eShop.Gateway/Program.cs | Benchmark updated to AddGraphQLRouter (archive name still needs alignment). |
| src/HotChocolate/Fusion/benchmarks/Fusion.Execution.Benchmarks/ApolloParityBenchmark.cs | Benchmarks updated to router core builder + executor build method. |
| src/HotChocolate/Adapters/test/Adapters.OpenApi.Tests/Validation/FusionValidationTests.cs | OpenAPI adapter tests updated to router server API. |
| src/HotChocolate/Adapters/test/Adapters.OpenApi.Tests/OpenApi/FusionOpenApiIntegrationTests.cs | OpenAPI adapter tests updated to router server API. |
| src/HotChocolate/Adapters/test/Adapters.OpenApi.Tests/Endpoints/FusionHttpEndpointIntegrationTests.cs | Endpoint integration tests updated to router server API. |
| src/HotChocolate/Adapters/test/Adapters.Mcp.Tests/FusionIntegrationTests.cs | MCP adapter tests updated to router server API. |
| .github/workflows/release.yml | Release workflow updated to patch router template placeholder version. |
Suppressed comments (1)
src/HotChocolate/Fusion/src/Fusion.Execution/DependencyInjection/HotChocolateFusionServiceCollectionExtensions.cs:79
- The obsolete
BuildGatewayAsyncshim is alsointernal, so existing callers will no longer be able to compile even though the method still exists. If this method used to be public API, keep it public (obsolete) and delegate toBuildRouterAsync.
[Obsolete("Use BuildRouterAsync() instead.")]
internal static ValueTask<IRequestExecutor> BuildGatewayAsync(
this IServiceCollection services,
CancellationToken cancellationToken = default)
=> services.BuildRouterAsync(cancellationToken);
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Comment on lines
20
to
22
| builder | ||
| .AddGraphQLGateway() | ||
| .AddGraphQLRouter() | ||
| .AddFileSystemConfiguration("gateway.far"); |
Comment on lines
59
to
66
| @@ -45,11 +65,22 @@ public static async ValueTask<IRequestExecutor> BuildGatewayAsync( | |||
| .GetExecutorAsync(cancellationToken: cancellationToken) | |||
| .ConfigureAwait(false); | |||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.