gendesign/tradein-mvp/backend
lekss361 40c6f8b30f fix(tradein): убрать require_admin полностью — Caddy basic_auth достаточен
Доделка PR #437 (refactor: убрать X-Admin-Token UI / middleware). require_admin
Depends остался в admin.py — блокировал /admin/scrape/* возвратом 401 для всех
запросов без X-Admin-Token. Frontend /scrapers/avito (PR #472) не шлёт header
(полагается на Caddy basic_auth gate), → 'Invalid or missing X-Admin-Token'.

Изменения:
- admin.py: удалена функция require_admin + 7 Depends() в endpoint decorators
  (/scrape, /geocode-missing, /scrape/cian/upload-cookies, /scrape/cian/test-auth,
   /scrape/avito-house, /scrape/avito-detail, /scrape/avito-imv)
- config.py: удалено settings.admin_token field
- cron-scrape.sh: удалён ADMIN_HDR + X-Admin-Token из всех curl
- upload-cian-cookies.sh: удалён TRADEIN_ADMIN_TOKEN loading + header

Auth contract: Caddy basic_auth gate'ит /trade-in/api/v1/admin/* (через handle_path
конфиг). Application layer — open после Caddy unwrap. ADMIN_TOKEN env переменная
больше не используется backend'ом, но её можно держать в .env.runtime как
dead reference (без последствий).
2026-05-23 17:16:00 +03:00
..
app fix(tradein): убрать require_admin полностью — Caddy basic_auth достаточен 2026-05-23 17:16:00 +03:00
data/sql feat(tradein): search matview + indexes (Phase 3.1) (#469) 2026-05-23 14:01:18 +00:00
tests feat(tradein): cross-source matching service (3-tier: cadastr / fingerprint / geo / composite) (#470) 2026-05-23 14:12:16 +00:00
.dockerignore feat: add tradein-mvp subproject (Trade-In Estimator под /trade-in) 2026-05-21 00:25:39 +03:00
Dockerfile feat: add tradein-mvp subproject (Trade-In Estimator под /trade-in) 2026-05-21 00:25:39 +03:00
pyproject.toml feat(tradein): scrape_pipeline.py — Avito full orchestrator (search → houses → detail) (#451) 2026-05-23 12:55:13 +00:00