Two rapid POST /scrape requests could both pass the lock check before either background task acquired SCRAPE_LOCK, queuing two sequential scrapes for the same date range. The second would hit Cloudflare after the first already succeeded, causing repeated retries. _SCRAPE_PENDING is set on submission and cleared when the task starts, closing the gap between the 409 check and lock acquisition. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| analysis.py | ||
| bookability.py | ||
| competitors.py | ||
| direct.py | ||