{
  "repo": "dataservices",
  "full_name": "tidbcloud/dataservices",
  "status": "scan_complete",
  "scan_started_at": "2026-03-25T23:00:00+08:00",
  "scan_completed_at": "2026-03-27T15:22:00+08:00",
  "expected_binaries": [
    {
      "name": "central",
      "path": "cmd/central/main.go",
      "status": "completed",
      "role": "primary_service",
      "description": "Central management service for DataApp, API Key, Endpoint management",
      "deployment": "global"
    },
    {
      "name": "regioncentral",
      "path": "cmd/regioncentral/main.go",
      "status": "completed",
      "role": "primary_service",
      "description": "Regional central service for DataAPI access and API key auth",
      "deployment": "regional"
    },
    {
      "name": "dataapi",
      "path": "cmd/dataapi/main.go",
      "status": "completed",
      "role": "primary_service",
      "description": "DataAPI gRPC service, forwards to regional HTTP gateway",
      "deployment": "global"
    },
    {
      "name": "dataapi_gateway",
      "path": "cmd/dataapi_gateway/main.go",
      "status": "completed",
      "role": "gateway",
      "description": "DataAPI Gateway with public HTTP routes and inner APIs, routes to executor",
      "deployment": "regional"
    },
    {
      "name": "dataapi_executor",
      "path": "cmd/dataapi_executor/main.go",
      "status": "completed",
      "role": "primary_service",
      "description": "DataAPI Executor gRPC service for actual SQL execution against TiDB",
      "deployment": "regional",
      "grpc_services": ["DataAPIExecutorService"]
    },
    {
      "name": "dataapi_control",
      "path": "cmd/dataapi_control/main.go",
      "status": "completed",
      "role": "primary_service",
      "description": "Regional control service with K8s client, exposes inner control HTTP APIs",
      "deployment": "regional"
    },
    {
      "name": "central_worker",
      "path": "cmd/central_worker/main.go",
      "status": "completed",
      "role": "worker",
      "description": "Background worker for central service (DDB cache sync)",
      "deployment": "global"
    },
    {
      "name": "adminapi",
      "path": "cmd/adminapi/main.go",
      "status": "completed",
      "role": "primary_service",
      "description": "Long-running admin API service with 6 gRPC services via grpc-gateway",
      "deployment": "global",
      "grpc_services": ["DataAppsService", "DataSourcesService", "EndpointsService", "DeploymentsService", "ApiKeyService", "ApiSpecService"]
    },
    {
      "name": "tools",
      "path": "cmd/tools/main.go",
      "status": "completed",
      "role": "etl_command",
      "description": "Flag-driven ETL utility command (not HTTP service)",
      "deployment": "tool"
    }
  ],
  "grpc_services": {
    "dataapi": ["DataAPIService"],
    "dataapi_gateway": ["DataAPIGatewayService"],
    "dataapi_executor": ["DataAPIExecutorService"],
    "regioncentral": ["RegionCentralService"],
    "adminapi": ["DataAppsService", "DataSourcesService", "EndpointsService", "DeploymentsService", "ApiKeyService", "ApiSpecService"]
  },
  "scanned_binaries": [
    {
      "name": "central",
      "output_file": "cmd-central"
    },
    {
      "name": "regioncentral",
      "output_file": "cmd-regioncentral"
    },
    {
      "name": "dataapi",
      "output_file": "cmd-dataapi"
    },
    {
      "name": "dataapi_gateway",
      "output_file": "cmd-dataapi-gateway"
    },
    {
      "name": "dataapi_executor",
      "output_file": "cmd-dataapi-executor"
    },
    {
      "name": "dataapi_control",
      "output_file": "cmd-dataapi-control"
    },
    {
      "name": "central_worker",
      "output_file": "cmd-central-worker"
    },
    {
      "name": "adminapi",
      "output_file": "cmd-adminapi"
    },
    {
      "name": "tools",
      "output_file": "cmd-tools"
    }
  ],
  "skipped_binaries": [],
  "files_generated": [
    "interfaces/cmd-adminapi.json",
    "interfaces/cmd-central-worker.json",
    "interfaces/cmd-central.json",
    "interfaces/cmd-dataapi-control.json",
    "interfaces/cmd-dataapi-executor.json",
    "interfaces/cmd-dataapi-gateway.json",
    "interfaces/cmd-dataapi.json",
    "interfaces/cmd-regioncentral.json",
    "interfaces/cmd-tools.json",
    "service-mapping/cmd-adminapi.json",
    "service-mapping/cmd-central-worker.json",
    "service-mapping/cmd-central.json",
    "service-mapping/cmd-dataapi-control.json",
    "service-mapping/cmd-dataapi-executor.json",
    "service-mapping/cmd-dataapi-gateway.json",
    "service-mapping/cmd-dataapi.json",
    "service-mapping/cmd-regioncentral.json",
    "service-mapping/cmd-tools.json"
  ],
  "review_status": "pending_review",
  "review_participants": [
    "codex"
  ],
  "review_cycles": 0,
  "scan_progress": "9/9",
  "codex_rescan_at": "2026-03-27T15:22:00+08:00",
  "codex_rescan_verdict": "scan_complete",
  "codex_rescan_note": "Fresh codex rescan rebuilt all nine binaries into canonical method-level outputs, replaced the legacy aggregate service-mapping with per-binary mappings, tightened conditions around route registration order, AliCloud and non-AliCloud branches, custom-domain fallbacks, inner auth guards, eventbus startup, and ETL workers, and closed interface-to-mapping coverage gaps to zero across central, gateway, executor, admin, and worker paths.",
  "architecture": {
    "type": "multi_service",
    "pattern": "central_regional",
    "description": "Central (global) + Regional (per-region) architecture for data services",
    "global_services": ["central", "dataapi", "adminapi", "central_worker"],
    "regional_services": ["regioncentral", "dataapi_gateway", "dataapi_executor", "dataapi_control"]
  },
  "statistics": {
    "total_binaries": 9,
    "total_services": 27,
    "total_methods": 263,
    "output_files": 18
  }
}
