chore(tradein/frontend): удалить остаточный слой фикстур (#2755) #2785

Merged
bot-backend merged 2 commits from chore/2755-fixture-layer into main 2026-08-07 10:00:49 +00:00

2 commits

Author SHA1 Message Date
fd1affca8b test(tradein/frontend): колонка ссылки в «05 РЫНОК» — прочерк, а не кнопка-обманка (#2755)
All checks were successful
CI / changes (pull_request) Successful in 15s
CI Trade-In / changes (pull_request) Successful in 15s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / browser-tests (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Successful in 1m53s
CI / frontend-tests (pull_request) Successful in 2m4s
CI / openapi-codegen-check (pull_request) Successful in 3m19s
Проверка на удалённую в предыдущем коммите ветку. Она была недостижима, но
выглядела как рабочий элемент интерфейса — некликабельный <span>, стилизованный
под кнопку-ссылку «Росреестр ↗». Без проверки ничто не мешает ей вернуться:
достаточно снова сделать поле опциональным.

Три утверждения через настоящий mapSources: есть URL — ссылка именно на него;
URL нет — прочерк и НИ ОДНОЙ ссылки; javascript:-схема отбрасывается safeUrl,
и строка тоже получает прочерк, а не кнопку.

Проверено, что тест краснеет: возврат «Росреестр ↗» на место прочерка роняет
2 утверждения из 3.

Refs #2755
2026-08-07 14:48:01 +05:00
3f0751f0b6 chore(tradein/frontend): удалить остаточный слой фикстур и комментарии про исчезнувший контракт (#2755)
All checks were successful
CI Trade-In / changes (pull_request) Successful in 11s
CI / changes (pull_request) Successful in 10s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / browser-tests (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Successful in 1m57s
CI / frontend-tests (pull_request) Successful in 2m2s
CI / openapi-codegen-check (pull_request) Successful in 2m56s
После #2747 фикстуры дизайн-макета перестали быть значением по умолчанию, но
сам слой остался: 671 строка выдуманных цен, сделок и аналитики, из которых
живыми были пять статических констант UI-хрома.

п.1 — мёртвые числовые экспорты. Проверено на потребителей: импорт, реэкспорт,
строковый/динамический доступ, тесты, .design-sync (previews берут данные из
своего `_fixtures.ts` -> `app/ui-preview/estimate/fixture`, не отсюда). Ноль у
восемнадцати экспортов. `fixtures.ts` -> `ui-config.ts`: остались dropdownOptions,
navLabels, overlayTitles, overlayNums, version. Имя файла было той же неправдой,
что и комментарии ниже. Экспорт `user` («Андрей Петров» / «Брусника» / почта)
осиротел ещё до #2747 — у TopNav свой нейтральный «Гость» — удалён вместе с
типом `User`, у которого он был единственным потребителем.

НЕ удалено, потому что живое: `sources` был мёртв, но рядом `buildSources` в
mappers.ts считает то же самое из API — удалён только фикстур. `LOCATION_FIXTURE`
в LocationDrawer оставлен: это не выдуманные числа, а честное состояние загрузки
(сплошные прочерки).

п.2 — шапка mappers.ts обещала «fixtures stay as the prop DEFAULT»; после #2747
это прямая неправда. Переписаны и она, и обоснование опциональности полей
AdRowData/DealRowData. Заодно ещё четыре обоснования, ссылавшиеся на storybook и
«ещё не подключённую» страницу: ни того, ни другого не существует.

п.3 — ветка `r.url === undefined` рисовала некликабельную кнопку-ссылку
«Росреестр ↗». Корень не в ветке, а в типе: поля были опциональными ради
фикстур, и это же породило ещё четыре недостижимых подстановки —
`?? "Avito"`, `?? "Росреестр"`, `?? "по улице"`, два `?? "—"`. Единственный
производитель этих строк — mapSources — заполняет все поля всегда, поэтому
поля сделаны обязательными: отсутствующее значение теперь ошибка компиляции,
а не выдуманный бренд на экране. Строка без ссылки рисует прочерк.

п.4 — три правила `.placeholderPanel` от удалённого в #2747 компонента, ноль
ссылок в разметке.

Замер: -759 / +125 строк. 13 проверок поведения (#2769) зелёные до и после;
проверено, что они ещё умеют краснеть — поломка mapHistory даёт 2 падения,
SaleShareList 5, ветки 429 в LoginPage 1. tsc чисто, next build зелёный,
/v2 те же 48.4 kB (фикстуры и раньше вытряхивались tree-shaking'ом — ещё одно
подтверждение нуля потребителей), eslint те же два предсуществующих
предупреждения.

Refs #2755
2026-08-07 14:24:53 +05:00