chore(tradein): две ручки ротации без читателей и врущий комментарий над ними #3232

Merged
lekss361 merged 1 commit from chore/3212-dead-rotation-knobs into main 2026-08-29 14:57:41 +00:00
Owner

Второй кусок чистки: −35 строк, +9. Первый — #3224 (мёртвые символы).

Что нашлось

proxy_rotate_attempts и proxy_rotate_attempt_timeout_s тюнили ретраи changeip-GET. Сам changeip снят в #2616 шаг 2 (аккаунт mobileproxy закрыт, ссылки нет), и с тех пор ручки живут чистым пламбингом:

Settings  →  property адаптера  →  поле протокола ScraperConfig  →  ∅

Ни одного потребителя. Держали их только четыре теста, которые заполняют поля при сборке конфига.

Врущий комментарий

Над ними в contracts.py стояло оправдание:

«оставлены как budget-верхняя-граница для app.tasks.avito_detail_backfill wait_for»

wait_for там берёт соседнее поле — avito_proxy_rotate_settle_s (avito_detail_backfill.py:249). Комментарий приписывал этим двум полям работу третьего и ровно этим прикрывал их мёртвость: читаешь — и кажется, что поля при деле.

Что рядом проверено и ОСТАВЛЕНО

Соседние ручки из того же блока живые, их не трогаю:

ручка кто читает
avito / cian / yandex_proxy_max_rotations pipeline._max_rotations
avito_proxy_rotate_settle_s asyncio.wait_for в avito_detail_backfill:249

Сжатие комментария

В config.py блок на 13 строк пересказывал историю changeip. Заменён на 9 строк о том, что нужно знать сейчас: кто читает две оставшиеся ручки, где живая ротация (ASOCKS_API_TOKEN / proxy_rotation, #2611) и что удалено в этом PR. История changeip остаётся в #2616.

Приёмка

ruff check — clean. pytest4974 passed, 37 skipped.

Второй кусок чистки: −35 строк, +9. Первый — #3224 (мёртвые символы). ## Что нашлось `proxy_rotate_attempts` и `proxy_rotate_attempt_timeout_s` тюнили ретраи changeip-GET. Сам changeip снят в **#2616 шаг 2** (аккаунт mobileproxy закрыт, ссылки нет), и с тех пор ручки живут чистым пламбингом: ``` Settings → property адаптера → поле протокола ScraperConfig → ∅ ``` Ни одного потребителя. Держали их только четыре теста, которые заполняют поля при сборке конфига. ## Врущий комментарий Над ними в `contracts.py` стояло оправдание: > «оставлены как budget-верхняя-граница для `app.tasks.avito_detail_backfill` wait_for» `wait_for` там берёт **соседнее** поле — `avito_proxy_rotate_settle_s` (`avito_detail_backfill.py:249`). Комментарий приписывал этим двум полям работу третьего и ровно этим прикрывал их мёртвость: читаешь — и кажется, что поля при деле. ## Что рядом проверено и ОСТАВЛЕНО Соседние ручки из того же блока живые, их не трогаю: | ручка | кто читает | |---|---| | `avito` / `cian` / `yandex_proxy_max_rotations` | `pipeline._max_rotations` | | `avito_proxy_rotate_settle_s` | `asyncio.wait_for` в `avito_detail_backfill:249` | ## Сжатие комментария В `config.py` блок на 13 строк пересказывал историю changeip. Заменён на 9 строк о том, что нужно знать сейчас: кто читает две оставшиеся ручки, где живая ротация (`ASOCKS_API_TOKEN` / `proxy_rotation`, #2611) и что удалено в этом PR. История changeip остаётся в #2616. ## Приёмка `ruff check` — clean. `pytest` — **4974 passed, 37 skipped**.
lekss361 added 1 commit 2026-08-29 14:07:21 +00:00
chore(tradein): две ручки ротации, которых не осталось читателей, и врущий комментарий над ними
All checks were successful
CI Trade-In / changes (pull_request) Successful in 9s
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI Trade-In / browser-tests (pull_request) Has been skipped
CI / changes (pull_request) Successful in 11s
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
CI Trade-In / backend-tests (pull_request) Successful in 5m8s
1141035899
proxy_rotate_attempts / proxy_rotate_attempt_timeout_s тюнили ретраи changeip-GET.
Сам changeip снят в #2616 шаг 2 (аккаунт mobileproxy закрыт, ссылки нет), и с тех
пор ручки живут пламбингом: Settings -> property адаптера -> поле протокола
ScraperConfig -> и всё. Ни одного потребителя, только четыре теста, которые
заполняют их при сборке конфига.

Комментарий над ними в contracts.py оправдывал их сохранение так:
  «оставлены как budget-верхняя-граница для app.tasks.avito_detail_backfill wait_for»
— но wait_for там берёт СОСЕДНЕЕ поле, avito_proxy_rotate_settle_s
(avito_detail_backfill.py:249). То есть комментарий приписывал этим двум полям
работу третьего и тем самым прикрывал их мёртвость.

Соседние ручки проверены и ОСТАВЛЕНЫ, они действительно читаются:
  * avito/cian/yandex_proxy_max_rotations — pipeline._max_rotations;
  * avito_proxy_rotate_settle_s — asyncio.wait_for в avito_detail_backfill.

Заодно сжат комментарий в config.py: перечисление истории changeip заменено на
то, что нужно знать сейчас — кто читает оставшиеся две ручки и где живая ротация
(ASOCKS_API_TOKEN / proxy_rotation, #2611).

ruff clean, 4974 passed / 37 skipped.
lekss361 merged commit 195f9f3697 into main 2026-08-29 14:57:41 +00:00
lekss361 deleted branch chore/3212-dead-rotation-knobs 2026-08-29 14:57:41 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#3232
No description provided.