fix(site-finder): remove dead sat_factor (computed+written, never applied) (#1509) #1698

Merged
lekss361 merged 1 commit from fix/score-sat-factor-1509 into main 2026-06-17 18:28:46 +00:00
Owner

Проблема (#1509)

sat_factor (=1+((sold_pct-50)/100)*0.3) вычислялся в 09_macro_and_trend.py, писался в district_economics.sat_factor, анпакался в 10_score_v2.py — но никогда не применялся ни в одном score. server.py тоже его фетчил и не применял. Живой market уже использует другую sat-метрику → двойной учёт absorption.

Решение (убрать как dead code — выбор владельца)

Снос end-to-end: computation в 09_macro_and_trend.py, unpack в 10_score_v2.py, fetch в server.py, doc-строка в static/index.html, + миграция 162_drop_district_economics_sat_factor.sql (DROP COLUMN IF EXISTS).

⚠️ НЕ тронут analytics_queries.py — там НЕЗАВИСИМЫЙ in-memory sat_factor из _district_market_saturation() (queries domrf_kn_*, не эту колонку).

Verify

grep подтверждает ноль живых читателей в site-finder/. ruff clean; pytest (score/macro/trend/district_econ/server) → 361 passed, 1 skipped.

Closes #1509

## Проблема (#1509) `sat_factor` (=`1+((sold_pct-50)/100)*0.3`) вычислялся в `09_macro_and_trend.py`, писался в `district_economics.sat_factor`, анпакался в `10_score_v2.py` — но **никогда не применялся** ни в одном score. `server.py` тоже его фетчил и не применял. Живой `market` уже использует другую sat-метрику → двойной учёт absorption. ## Решение (убрать как dead code — выбор владельца) Снос end-to-end: computation в `09_macro_and_trend.py`, unpack в `10_score_v2.py`, fetch в `server.py`, doc-строка в `static/index.html`, + миграция `162_drop_district_economics_sat_factor.sql` (`DROP COLUMN IF EXISTS`). ⚠️ НЕ тронут `analytics_queries.py` — там НЕЗАВИСИМЫЙ in-memory `sat_factor` из `_district_market_saturation()` (queries domrf_kn_*, не эту колонку). ## Verify grep подтверждает ноль живых читателей в `site-finder/`. `ruff` clean; `pytest` (score/macro/trend/district_econ/server) → **361 passed, 1 skipped**. Closes #1509
lekss361 added 1 commit 2026-06-17 18:17:43 +00:00
fix(site-finder): remove dead sat_factor (computed+written, never applied) (#1509)
Some checks failed
CI / changes (pull_request) Has been cancelled
CI / backend-tests (pull_request) Has been cancelled
CI / frontend-tests (pull_request) Has been cancelled
CI / openapi-codegen-check (pull_request) Has been cancelled
CI / changes (push) Successful in 8s
CI / backend-tests (push) Has been cancelled
CI / frontend-tests (push) Has been cancelled
CI / openapi-codegen-check (push) Has been cancelled
9e5086890f
sat_factor = 1 + ((sold_pct-50)/100)*0.30 was computed in 09_macro_and_trend.py,
written to district_economics.sat_factor, and fetched in server.py and 10_score_v2.py
— but never multiplied into any score. The live market sub-score uses a separate
sat_score = min(100, sold_pct*100/70) directly, so sat_factor was dead code that
would double-count absorption if ever wired in.

- 09_macro_and_trend.py: remove sat_factor computation, ALTER TABLE column, UPDATE
  binding, and debug print column
- 10_score_v2.py: remove sat_factor from SELECT and unpacking
- server.py: remove sat_factor variable assignment and from macro_factors response
- static/index.html: remove sat_factor documentation row
- data/sql/162_drop_district_economics_sat_factor.sql: DROP COLUMN IF EXISTS
lekss361 merged commit c514b992ee into main 2026-06-17 18:28:46 +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#1698
No description provided.