{
  "repo": "config-service",
  "full_name": "tidbcloud/config-service",
  "status": "scan_complete",
  "scan_started_at": "2026-03-26T10:00:00Z",
  "scan_completed_at": "2026-03-27T11:18:26+08:00",
  "expected_binaries": [
    {
      "name": "config-service",
      "path": "app/config-service/main.go",
      "status": "completed",
      "role": "primary_service"
    },
    {
      "name": "overlay",
      "path": "app/overlay/main.go",
      "status": "skipped",
      "role": "admin_cli",
      "skip_reason": "cli_tool_no_http"
    }
  ],
  "scanned_binaries": [
    {
      "name": "config-service",
      "output_file": "config-service"
    }
  ],
  "skipped_binaries": [
    {
      "name": "overlay",
      "skip_reason": "cli_tool_no_http_api"
    }
  ],
  "files_generated": [
    "interfaces/config-service.json",
    "service-mapping/config-service.json"
  ],
  "review_status": "pending_review",
  "review_participants": [
    "codex"
  ],
  "review_cycles": 0,
  "scan_progress": "1/1",
  "codex_rescan_at": "2026-03-27T11:18:26+08:00",
  "codex_rescan_verdict": "scan_complete",
  "codex_rescan_note": "Fresh codex rescan rebuilt config-service into canonical lifecycle, HTTP, and background-worker method surfaces; corrected the old false implication that account-service/core-service/PD were in the request path; captured Auth0 warmup, gardener and infra-api client bootstrap, the leader-elected alive-cluster watcher, PD proxy write conditions, and the fact that tenant-worker helpers remain dead code because main() never starts them.",
  "statistics": {
    "total_binaries": 1,
    "total_services": 3,
    "total_methods": 21,
    "output_files": 2
  }
}
