"intro":"Operational settings stored in the database — these override the file/env defaults and take effect without a redeploy. Leave a field empty (or reset it) to fall back to the default.",
"quota_daily_budget":{"label":"Daily quota budget","hint":"Total YouTube Data API units to spend per day (free tier is 10,000). Default 9000 leaves headroom."},
"backfill_quota_reserve":{"label":"Backfill quota reserve","hint":"Units kept in reserve so scheduled backfill never starves interactive syncs / enrichment."},
"backfill_recent_max_videos":{"label":"Recent backfill — max videos","hint":"Newest videos fetched per channel on the first pass."},
"backfill_recent_max_days":{"label":"Recent backfill — max age (days)","hint":"How far back the first pass reaches per channel."},
"shorts_probe_max_seconds":{"label":"Shorts probe — max duration (s)","hint":"Only videos at or below this length are probed as possible Shorts."},
"shorts_probe_batch":{"label":"Shorts probe — batch size","hint":"How many videos to classify per run."},
"enrich_batch_size":{"label":"Enrichment batch size","hint":"videos.list ids per call (YouTube caps this at 50)."},
"autotag_title_sample":{"label":"Auto-tag title sample","hint":"Recent video titles sampled per channel for language detection."},
"youtube_api_key":{"label":"YouTube API key","hint":"Optional. Used for public reads (channels/videos) so shared backfill doesn't depend on a user's OAuth. Stored encrypted; write-only."}