{
  "repo": "api-gateway",
  "full_name": "tidbcloud/api-gateway",
  "status": "pending_review",
  "scan_started_at": "2026-03-28T22:50:00+08:00",
  "scan_completed_at": "2026-03-28T23:20:00+08:00",
  "review_completed_at": null,
  "expected_binaries": [
    {
      "name": "server",
      "path": "ui/cmd/server/main.go",
      "status": "completed",
      "role": "primary_service"
    },
    {
      "name": "operator",
      "path": "operator/cmd/main.go",
      "status": "completed",
      "role": "primary_service"
    },
    {
      "name": "ddbtoredis",
      "path": "ddbtoredis/cmd/main.go",
      "status": "completed",
      "role": "worker"
    },
    {
      "name": "sentinel",
      "path": "sentinel/sentinel.py",
      "status": "completed",
      "role": "worker"
    }
  ],
  "scanned_binaries": [
    {
      "name": "server",
      "output_file": "ui-cmd-server"
    },
    {
      "name": "operator",
      "output_file": "operator-cmd"
    },
    {
      "name": "ddbtoredis",
      "output_file": "ddbtoredis-cmd"
    },
    {
      "name": "sentinel",
      "output_file": "sentinel"
    }
  ],
  "skipped_binaries": [],
  "current_binary": null,
  "scan_progress": "4/4",
  "files_generated": [
    "interfaces/ui-cmd-server.json",
    "service-mapping/ui-cmd-server.json",
    "interfaces/operator-cmd.json",
    "service-mapping/operator-cmd.json",
    "interfaces/ddbtoredis-cmd.json",
    "service-mapping/ddbtoredis-cmd.json",
    "interfaces/sentinel.json",
    "service-mapping/sentinel.json"
  ],
  "review_status": "pending_review",
  "review_participants": [
    "opencode",
    "kimi",
    "codex"
  ],
  "review_cycles": 2,
  "review_verdict": null,
  "codex_rescan_at": "2026-03-31T15:00:00+08:00",
  "codex_rescan_verdict": "scan_complete",
  "codex_rescan_note": "Manual meta validation found that the previous approved api-gateway scope only covered ui/cmd/server and had drifted from the current repo runtime truth. This rescan keeps the existing ui/cmd/server surface and adds three missing in-repo runtimes: operator/cmd as a controller-runtime based custom domain operator with healthz/readyz endpoints, ddbtoredis/cmd as a long-running DynamoDB-to-Redis sync worker with tracing, and sentinel as a Python scheduled Kong probe worker exposing Prometheus metrics on port 9090. The repo now needs review again because the approved scope materially expanded.",
  "statistics": {
    "total_binaries": 4,
    "total_services": 8,
    "total_methods": 23,
    "output_files": 8
  }
}
