{
  "repo": "tidbcloud/api-gateway",
  "binary": "operator",
  "binary_path": "operator/cmd/main.go",
  "dependencies": {
    "APIGatewayOperatorLifecycle.StartControllerManager": {
      "infrastructure": {},
      "services": [
        {
          "name": "kubernetes-apiserver",
          "target_interface": "controller-runtime manager APIs",
          "operation_type": "k8s_api",
          "conditions": [
            "ctrl.NewManager(...) succeeds"
          ],
          "operations": [
            {
              "operation": "RUN CONTROLLER MANAGER",
              "trigger": "Start the controller-runtime manager and reconciliation loops",
              "conditions": [
                "mgr.Start(ctrl.SetupSignalHandler()) is invoked"
              ],
              "implementation": "main -> ctrl.NewManager(...) -> mgr.Start(...)"
            }
          ]
        }
      ]
    },
    "APIGatewayOperatorLifecycle.RegisterReconcilersAndWebhooks": {
      "infrastructure": {},
      "services": [
        {
          "name": "aws-acm",
          "target_interface": "certificate management API",
          "operation_type": "aws_api",
          "conditions": [
            "AWS config loads successfully"
          ],
          "operations": [
            {
              "operation": "MANAGE CUSTOM DOMAIN CERTIFICATES",
              "trigger": "CustomDomainDeployment reconciler uses ACM to manage certificates",
              "conditions": [
                "acm.NewFromConfig(cfg) succeeds"
              ],
              "implementation": "main -> config.LoadDefaultConfig(...) -> acm.NewFromConfig(cfg)"
            }
          ]
        },
        {
          "name": "cross-region-api",
          "target_interface": "basic auth cross-region client",
          "operation_type": "http_post",
          "conditions": [
            "Cross-region env and token are derived from controller domain"
          ],
          "operations": [
            {
              "operation": "VALIDATE OR SYNC CROSS-REGION DOMAIN STATE",
              "trigger": "Custom domain reconciler initializes cross-region client usage",
              "conditions": [
                "crossregion.NewBasicAuthClient(...) succeeds"
              ],
              "implementation": "main -> crossregion.NewBasicAuthClient(env, authKey, ...)"
            }
          ]
        }
      ]
    },
    "HTTP GET /healthz": {
      "infrastructure": {},
      "services": []
    },
    "HTTP GET /readyz": {
      "infrastructure": {},
      "services": []
    }
  }
}
