fix(mera/b2c): подсказка дублировала адрес, а числа в результате спорили #3138

Merged
lekss361 merged 1 commit from fix/3xxx-mera-b2c-copy into main 2026-08-27 11:33:37 +00:00
Owner

Два дефекта, найденных проходом клиентского пути на проде 27.08 — оба видны любому, кто открывает «Проверить квартиру».

1. Подсказка адреса печатала одно и то же дважды

Строка выпадающего списка состоит из главной строки (label) и пояснительной (full_address). Подсказчик для дома отдаёт их совпадающими буква в букву — снято с прода:

{"label":"Свердловская область, г. Екатеринбург, ул. Малышева, д. 51",
 "full_address":"Свердловская область, г. Екатеринбург, ул. Малышева, д. 51"}

Человек видел адрес продублированным в каждой строке списка.

Показываем вторую строку только когда она отличается. Замысел (короткое имя сверху, полный адрес под ним) сохраняется, если подсказчик когда-нибудь начнёт их различать — поэтому чиню сравнением, а не удалением строки.

2. Числа в результате спорили друг с другом

Что видел клиент:

30 — похожих квартир продаётся в радиусе 1 км
15 дн. — столько в среднем висит объявление из этих 6

Слово «этих» указывает на 30, а рядом стоит 6. Читается как ошибка в расчёте — ровно тот случай, когда человек перестаёт верить цифрам и уходит.

Шесть — это объявления, у которых известна дата публикации; медиана считается только по ним. Теперь доля названа явно: «дата известна у 6 из 30». Когда известна у всех — доля не упоминается вовсе, чтобы «30 из 30» не шумело.

Честное имя величины сохранено. Это возраст активного объявления, а не срок продажи: выборка цензурирована, эти квартиры ещё продаются. Тест, запрещающий писать «продаются», как был, так и остался — новая формулировка его проходит.

Проверка

$ npx vitest run src/app/mera-public
Test Files  4 passed (4)
     Tests  27 passed (27)

$ npx tsc --noEmit    # чисто

Два новых теста пинят именно этот класс поломки: подпись не должна содержать число, спорящее с плиткой выше, и не должна упоминать долю, когда та равна целому.

Два дефекта, найденных проходом клиентского пути на проде 27.08 — оба видны любому, кто открывает «Проверить квартиру». ## 1. Подсказка адреса печатала одно и то же дважды Строка выпадающего списка состоит из главной строки (`label`) и пояснительной (`full_address`). Подсказчик для дома отдаёт их совпадающими буква в букву — снято с прода: ```json {"label":"Свердловская область, г. Екатеринбург, ул. Малышева, д. 51", "full_address":"Свердловская область, г. Екатеринбург, ул. Малышева, д. 51"} ``` Человек видел адрес продублированным в **каждой** строке списка. Показываем вторую строку только когда она отличается. Замысел (короткое имя сверху, полный адрес под ним) сохраняется, если подсказчик когда-нибудь начнёт их различать — поэтому чиню сравнением, а не удалением строки. ## 2. Числа в результате спорили друг с другом Что видел клиент: > **30** — похожих квартир продаётся в радиусе 1 км > **15 дн.** — столько в среднем висит объявление из этих **6** Слово «этих» указывает на 30, а рядом стоит 6. Читается как ошибка в расчёте — ровно тот случай, когда человек перестаёт верить цифрам и уходит. Шесть — это объявления, у которых известна дата публикации; медиана считается только по ним. Теперь доля названа явно: «дата известна у 6 из 30». Когда известна у всех — доля не упоминается вовсе, чтобы «30 из 30» не шумело. **Честное имя величины сохранено.** Это возраст активного объявления, а не срок продажи: выборка цензурирована, эти квартиры ещё продаются. Тест, запрещающий писать «продаются», как был, так и остался — новая формулировка его проходит. ## Проверка ``` $ npx vitest run src/app/mera-public Test Files 4 passed (4) Tests 27 passed (27) $ npx tsc --noEmit # чисто ``` Два новых теста пинят именно этот класс поломки: подпись не должна содержать число, спорящее с плиткой выше, и не должна упоминать долю, когда та равна целому.
lekss361 added 1 commit 2026-08-27 11:29:38 +00:00
fix(mera/b2c): подсказка дублировала адрес, а числа в результате спорили
All checks were successful
CI Trade-In / changes (pull_request) Successful in 9s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / browser-tests (pull_request) Has been skipped
CI / changes (pull_request) Successful in 10s
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Successful in 1m0s
e85cafd9a9
Оба дефекта найдены проходом клиентского пути на проде 27.08.

ПОДСКАЗКА АДРЕСА печатала одно и то же дважды. Строка списка состоит из
главной строки (`label`) и пояснительной (`full_address`), но подсказчик
для дома отдаёт их совпадающими буква в букву — проверено на проде:

    {"label":"Свердловская область, г. Екатеринбург, ул. Малышева, д. 51",
     "full_address":"Свердловская область, г. Екатеринбург, ул. Малышева, д. 51"}

Человек видел адрес продублированным в каждой строке выпадающего списка.
Показываем вторую строку только когда она отличается: замысел (короткое имя
сверху, полный адрес под ним) сохраняется, если подсказчик когда-нибудь
начнёт их различать.

ЧИСЛА В РЕЗУЛЬТАТЕ спорили друг с другом. Плитка сверху: «30 похожих
квартир продаётся в радиусе 1 км». Плитка под ней: «столько в среднем висит
объявление из этих 6». Слово «этих» указывает на 30, а стоит рядом 6 —
читается как ошибка в расчёте.

Шесть — это те объявления, у которых известна дата публикации; медиана
считается только по ним. Теперь доля названа явно («дата известна у 6 из
30»), а когда известна у всех — не упоминается вовсе, чтобы «30 из 30» не
шумело. Честное имя величины сохранено: это возраст активного объявления,
а не срок продажи (тест на это как был, так и остался).

Проверено: 27 тестов mera-public зелёные, tsc --noEmit чист.
lekss361 merged commit 92547d7440 into main 2026-08-27 11:33:37 +00:00
lekss361 deleted branch fix/3xxx-mera-b2c-copy 2026-08-27 11:33:37 +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#3138
No description provided.