# v0.0.72 — Ретраи pull, корректная ошибка лимита, счётчик дедупа (2026-08-24) _code-fixes. По итогам код-ревью (см. `infra/2026-08-24-upload-logic-schema.md`)._ ## 1. Ретраи pull (site/routes/api_bp.py, `upload_refs`) - `PULL_RETRIES = 3`, `PULL_RETRY_DELAY = 2` (сек). - Pull из ВМ-буфера теперь в цикле: при любой ошибке (DNS `gaierror -5`, сеть) — до 3 попыток с паузой 2с. После исчерпания — проброс исходной ошибки (502 «Pull failed»). - Закрывает инцидент 18:42 (разовый DNS-сбой ронял всю загрузку). ## 2. Корректная ошибка лимита сессии (`upload_refs`) - `add_file` возвращает `False` и для «сессия исчезла», и для «превышен лимит 500МБ». - Теперь: при `False` — если `get_files(sid) is None` → 404 «Session not found»; иначе (лимит) → файл пропускается (`delete` с ВМ) и загрузка продолжается. Раньше оба случая давали ложное «Session not found». ## 3. Счётчик «Добавлено из папки» (site/templates/index.html) - `addFileWithDedup` теперь возвращает `true` (файл добавлен) / `false` (дедуп). - `added++` только при `true` — дубли больше не завышают счётчик. - Проверено: папка [Договор.txt, Договор.txt (дубль), Акт.txt] → «Добавлено из папки: 2 файла». ## Проверка - `node --check` — OK, `py_compile` (app.py, api_bp.py) — OK. - Локально: счётчик дедупа работает (2 файла при одном дубле). - Ретраи/лимит — на проде после деплоя. - Версия 0.0.71 → 0.0.72.