{
  "ok": true,
  "writesExternalSystems": false,
  "route": "/api/brain/readiness",
  "currentMode": "sentinel_learning_brain_cloudflare_contract",
  "projectName": "Sentinel Learning Brain",
  "schemaVersion": "sentinel-learning-brain-0.1.0",
  "summary": {
    "projectsRegistered": 1,
    "signalSources": 12,
    "outputCandidateTypes": 10,
    "storageTables": 15,
    "cloudflareRoutes": 35,
    "externalWritesAllowed": 0
  },
  "runtimeTargets": [
    "cloudflare_pages_functions",
    "supabase_postgres_rls",
    "cloudflare_r2_private_artifacts",
    "future_hermes_local_model_provider"
  ],
  "supabaseBoundary": {
    "rlsRequired": true,
    "datasetCandidatesRequireAllowedUseGate": true,
    "rawSecretsAllowed": false
  },
  "storage": {
    "supabaseConfigured": false,
    "cloudflareD1Configured": true,
    "activePersistenceMode": "cloudflare_d1",
    "businessIdConfigured": true,
    "tables": [
      "sentinel_project_manifests",
      "sentinel_signal_events",
      "sentinel_issue_observations",
      "sentinel_decision_observations",
      "sentinel_outcome_observations",
      "sentinel_pattern_rollups",
      "sentinel_lesson_candidates",
      "sentinel_eval_candidates",
      "sentinel_skill_change_candidates",
      "sentinel_software_change_candidates",
      "sentinel_dataset_candidates",
      "sentinel_release_gates",
      "sentinel_update_packages",
      "sentinel_deployment_records",
      "sentinel_monitoring_records"
    ]
  },
  "hostedBrain": {
    "provider": "openai",
    "model": "gpt-5.5",
    "providerRef": "hosted-frontier:gpt_5_5-business",
    "configured": true,
    "routingMode": "proposal_generation_enabled"
  },
  "guardrail": "Readiness never exposes Supabase service keys, reads customer payloads, trains models, deploys updates, or writes customer systems."
}