done_buckets (set of "room:lo:hi") в scrape_runs.counters, дописывается per-bucket. Endpoint принимает resume_run_id → новый run читает done_buckets прошлого и пропускает уже завершённые бакеты (skip пагинации; probe-запросы остаются). Без resume_run_id — full walk как раньше. on_bucket сигнатура → (key, lots). |
||
|---|---|---|
| .. | ||
| v1 | ||
| __init__.py | ||