Our solution
Full directive coverage, from entity resolution to authorization
Cosmo supports federation directives for core federation, field sharing, visibility control, authorization, and subscription filtering. Directives are processed across schema composition and query planning, with authorization directives evaluated at the router before subgraph requests.
How it all fits together
Core federation directives (@key, @external, @requires, @provides, @extends) express entity relationships and field dependencies across subgraphs.
@shareable enables multi-subgraph field resolution. @override supports migrating field ownership between subgraphs.
@authenticated and @requiresScopes enforce access control at the router level. Requests that fail the required authorization checks are rejected before protected subgraph requests are made.
@inaccessible hides fields from the client schema. @tag attaches metadata for contracts and tooling.
Cosmo-specific extensions include @openfed__subscriptionFilter, @openfed__configureDescription, and @semanticNonNull.
Directive validation happens during composition. Authorization checks are evaluated at the router before protected subgraph requests are made.

