{
  "route": "/api/castermusic/status",
  "app": "castermusic",
  "name": "Caster Music",
  "status": "blocked_external",
  "productionReady": false,
  "fullNextRuntimeReady": false,
  "reownRuntimeReady": false,
  "artistProfileStoreReady": false,
  "audioStorageReady": false,
  "playerQueueReady": false,
  "playStreamAccountingReady": false,
  "qualifiedStreamVerifierReady": false,
  "tipUnlockVerifierReady": false,
  "rewardLedgerReady": false,
  "moderationRightsReady": false,
  "eventLogRollbackReady": false,
  "farcasterAccountAssociationReady": false,
  "productionDataMutationAllowed": false,
  "publicAnnouncementReady": false,
  "requiredLiveInputs": [
    {
      "name": "NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID or NEXT_PUBLIC_PROJECT_ID",
      "valuePrinted": false
    },
    {
      "name": "CASTER_MUSIC_ARTIST_PROFILE_STORE",
      "valuePrinted": false
    },
    {
      "name": "CASTER_MUSIC_AUDIO_STORAGE",
      "valuePrinted": false
    },
    {
      "name": "CASTER_MUSIC_COVER_STORAGE",
      "valuePrinted": false
    },
    {
      "name": "CASTER_MUSIC_PLAYER_QUEUE_RUNTIME",
      "valuePrinted": false
    },
    {
      "name": "CASTER_MUSIC_PLAY_STREAM_ACCOUNTING",
      "valuePrinted": false
    },
    {
      "name": "CASTER_MUSIC_QUALIFIED_STREAM_VERIFIER",
      "valuePrinted": false
    },
    {
      "name": "CASTER_MUSIC_TIP_UNLOCK_VERIFIER",
      "valuePrinted": false
    },
    {
      "name": "CASTER_MUSIC_REWARD_LEDGER",
      "valuePrinted": false
    },
    {
      "name": "CASTER_MUSIC_MODERATION_RIGHTS",
      "valuePrinted": false
    },
    {
      "name": "CASTER_EVENT_LOG_ROLLBACK",
      "valuePrinted": false
    },
    {
      "name": "FARCASTER_ACCOUNT_ASSOCIATION_* for castermusic.vercel.app",
      "valuePrinted": false
    }
  ],
  "blockers": [
    {
      "gate": "farcaster_account_association",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_full_next_runtime",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_reown_runtime",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_artist_profile_store",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_audio_storage_runtime",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_cover_storage_runtime",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_player_queue_runtime",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_play_stream_accounting",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_qualified_stream_verifier",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_tip_unlock_verifier",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_reward_ledger_runtime",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_moderation_rights_runtime",
      "status": "blocked_external"
    },
    {
      "gate": "castermusic_event_log_rollback",
      "status": "blocked_external"
    }
  ],
  "message": "Caster Music is live as a static Vercel fallback. Artist uploads, audio storage, player queues, qualified-stream accounting, tip/unlock verification, reward ledgers, rollback, and Farcaster accountAssociation remain blocked_external until strict runtime evidence passes."
}
