числа лендинга: покрытие 88 % было выше всего диапазона представительных пересборок #3295
No reviewers
Labels
No labels
Fable 5 ревью
GG-форсайт
admin
analytics
auth
automation
bug
business
chore
ci
compliance
data
data-moat
docs
duplicate
dx
enhancement
feedback/max
generative
needs-discussion
needs-human
observability
pause-bots
performance
priority/p0
priority/p1
priority/p2
priority/p3
scope/backend
scope/db
scope/devops
scope/frontend
scope/qa
scrapers
security
site-finder
stage/1
stage/2
status/blocked
status/done
status/needs-analysis
status/needs-fix
status/qa
status/ready
status/review
status/wip
tech-debt
tradein
ux
week ревью 1
wontfix
ИРД
вторичка
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: lekss361/gendesign#3295
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "fix/mera-honest-coverage-number"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Замер
Прогон бэктеста на проде,
engine=full, Екатеринбург, выборка 400, представительный отбор (--spread scattered, три соли):Опубликовано было: расхождение 14,5 %, покрытие 88 %.
Покрытие 88 % лежит выше всего диапазона 82,8–86,0. Это не «чуть оптимистично» — на представительной выборке такое значение не достигается. Оно получалось только на кластеризованной
ORDER BY id DESC, где 20 строк витрины приходились на четыре улицы.Заменено на медианы трёх пересборок: покрытие 84,3 %, расхождение 15,3 %. В оговорки добавлен сам диапазон — величина разового замера гуляет, и точечное значение без него обещает точность, которой у замера нет.
Три блокера ревью, снятые замером
1. Подпись окна. Числа перевели на новую выборку, а подпись осталась прежней — «сделки II квартала 2026 года». Автор честно записал, что квартальный состав пересборки не смотрел, и оставил критерий снятия. Выполнил:
Пересборка покрывает четыре квартала, II квартал 2026 — четверть её. Прежняя подпись была бы прямым враньём.
2. Знаменатель. Был 5 954 — сделки только II квартала. Для выборки по четырём кварталам это завышало долю вчетверо: 5,5 % вместо 1,3 %. Замер тем же фильтром, что у выборки: в окне 24 333, из них II квартал 2026 — 5 954. Оба числа одним запросом.
3. Уверенность. Плитка «325 из 327» была из прогона 29.08, а лид секции печатал «замер 31.08» — старому числу приписывалась новая дата. Хуже: 325 в лиде совпало с 325 в плитке и читалось как одна выборка, хотя это разные прогоны. Заменено на «400 из 400» из той же пересборки.
4. Оговорка уверенности не выводилась вовсе — блок собирал оговорки двух величин из трёх. Плитка «уверенность низкая» стояла без единого слова о том, почему. Теперь выводится, и говорит суть: порог требует разброса цен среди сопоставимых объявлений не выше 24 %, а замер по 60 случайным адресам даёт медиану 29 %. «Высокая» недостижима не из скромности, а арифметически.
Проверки
157 тестов. Фальсификация каждого утверждения:
expected 5954 to be 24333иexpected 5.458 to be less than 2(второй ассерт ловит само завышение доли);tscrc=0 ·eslint --max-warnings 0rc=0.Снимает три блокера ревью на этой же ветке. 1. ПОДПИСЬ ОКНА. Числа перевели на представительную выборку, а подпись осталась от прежнего прогона: «сделки II квартала 2026 года». Автор честно записал, что квартальный состав пересборки не смотрел, и оставил критерий снятия — посчитать deal_date по выборке. Посчитал: III кв 2025 — 106 (26,5 %) I кв 2026 — 88 (22,0 %) IV кв 2025 — 110 (27,5 %) II кв 2026 — 96 (24,0 %) Пересборка покрывает ЧЕТЫРЕ квартала, II квартал 2026 — четверть её. Прежняя подпись для этих чисел была бы прямым враньём. 2. ЗНАМЕНАТЕЛЬ. Был 5 954 — сделки только II квартала. Для выборки по четырём кварталам это завышало долю вчетверо: 5,5 % вместо 1,3 %. Замер тем же фильтром, что у выборки: в окне 24 333, из них II квартал 2026 — 5 954. Оба числа одним запросом. 3. УВЕРЕННОСТЬ. Плитка «325 из 327» была из прогона 29.08, а лид секции печатал «замер 31.08» — старому числу приписывалась новая дата, и 325 в лиде совпадало с 325 в плитке, читаясь как одна выборка. Заменено на «400 из 400» из ТОЙ ЖЕ пересборки. Знаменатель 400 — запрошенные сделки, а не 325 сматчившихся: уверенность считается на каждой оценке. 4. Оговорка уверенности не выводилась вовсе: AccuracyV3 собирал оговорки двух величин из трёх. Плитка стояла без единого слова о том, почему уверенность низкая. Добавлена третья. Тесты проверены фальсификацией: возврат знаменатели одного квартала даёт «expected 5954 to be 24333» и «expected 5.458 to be less than 2»; снятие оговорки из вывода — «оговорка не выводится». 157 passed.