rates/backend
jtricerolph b712196262 Scraper: process-wide lock, one scrape at a time
Concurrent manual scrapes were interleaving (two Chromium sessions on one
LXC) causing the page timeouts behind partial results. SCRAPE_LOCK guards
run_manual_scrape and process_queue; the trigger endpoint returns 409 when
busy, and the frontend keeps the job queued and retries after 30s.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-05 16:14:55 +00:00
..
api Scraper: process-wide lock, one scrape at a time 2026-07-05 16:14:55 +00:00
jobs Port occupancy sync + category ordering from the forecasting version 2026-07-05 14:18:03 +00:00
services Scraper: process-wide lock, one scrape at a time 2026-07-05 16:14:55 +00:00
auth.py Fix require_cap TypeError, rewrite /analysis/comparison, add room category sync 2026-07-05 13:47:10 +00:00
database.py Add Rate Monitor app — Booking.com + direct booking engine competitor rates 2026-07-05 12:06:30 +00:00
Dockerfile Add Rate Monitor app — Booking.com + direct booking engine competitor rates 2026-07-05 12:06:30 +00:00
main.py Add Rate Monitor app — Booking.com + direct booking engine competitor rates 2026-07-05 12:06:30 +00:00
migrate_direct_data.py Add Rate Monitor app — Booking.com + direct booking engine competitor rates 2026-07-05 12:06:30 +00:00
requirements.txt Add Rate Monitor app — Booking.com + direct booking engine competitor rates 2026-07-05 12:06:30 +00:00
scheduler.py Port occupancy sync + category ordering from the forecasting version 2026-07-05 14:18:03 +00:00
schema.sql Flag hotels absent from successful scrapes as 'not_listed' + widen booking_com_id 2026-07-05 14:44:02 +00:00