# Redis client (historical batch-jobs path) The batch-search product (`run_batch_search`, `/agent/batch/{id}`, Hirebase chunk workers) has been removed. `discover_jobs` is the search. Page scrape still uses `/agent/scrape/{id}`. `lib/batch-jobs/redis.ts` remains the shared Upstash client for credits, search runs, shortlist, seen listings, digest, lab traces, and scrape/crawl jobs. Do not delete it. ## Troubleshooting: values come back as objects The Upstash Redis client **parses JSON on `GET` by default**. This app stores JSON as a **string** with `SET` and expects a **string** back on `GET`. The client is constructed with `automaticDeserialization: false`. After changing that setting, restart the deployment so a new process picks up the client. ## Required for Redis-backed features - `UPSTASH_REDIS_REST_URL` - `UPSTASH_REDIS_REST_TOKEN` QStash (`QSTASH_TOKEN` and signing keys) is still used by digest fan-out and page-scrape jobs. `BATCH_PUBLIC_APP_URL` must be the app origin (`https://.hf.space`), not the Hugging Face gallery URL.