# Generated SDK The generated SDK is a Java view of the control-plane route contract. Generated files live under: ```text src/main/java/net/kewwbec/network/generated/api/v1 ``` These files include: - route names - allowed HTTP methods - URI templates - required abilities - middleware metadata - request field descriptors - response type descriptors ## Usage Import the generated root: ```java import net.kewwbec.network.generated.api.v1.ControlPlaneApiV1; ``` Use domain APIs to inspect route descriptors: ```java ControlPlaneApiV1 api = ControlPlaneApiV1.INSTANCE; String version = api.apiVersion(); int endpointCount = api.endpointCount(); ``` Use route endpoint constants with handwritten clients or batching: ```java String uri = PathBuilder.resolve( SessionProfileEndpoint.VALUE.uri(), "player", playerId ); ``` ## Regeneration The source of truth is `../core-control-plane`. Run from `core-control-plane`: ```bash php artisan control-plane:sync-network-sdk --dry-run php artisan control-plane:sync-network-sdk ``` Review generated churn carefully before committing. Broad generated diffs can happen if `core-control-plane` has unrelated route changes. ## Rules - Do not manually patch generated Java. - Fix Laravel routes, requests, resources, or the generator upstream. - Re-run the sync after route changes. - Keep handwritten Java under `net.kewwbec.network`, outside `generated`.