Closes #105 (Phase 3 geocoding — отдельный issue). Phase 4: 'ekburg-permits-monthly' crontab(0 2 1 * *) → tasks.refresh_all Phase 5: /analyze returns engineering.recent_permits_in_quarter + permits_summary (rns/rve counts/area/units, by_developer top-3) Filter: quarter prefix (3-segment cadastral match). Spatial 500m radius — после Phase 3 geocoding. Tests: test_analyze_recent_permits.py (3 mock), comment updates на inline_weights/market_price (shifted execute ordering). |
||
|---|---|---|
| .. | ||
| tasks | ||
| __init__.py | ||
| beat_schedule.py | ||
| celery_app.py | ||
| lifecycle.py | ||