refactor(tradein/v2): перенос HUD v2 в tradein-mvp (прод-app) → /trade-in/v2 #2037

Merged
lekss361 merged 1 commit from feat/tradein-v2-mvp-port into main 2026-06-28 10:17:11 +00:00
Owner

Фоллоу-ап к #2035. Исправляет размещение: прод-/trade-in/* обслуживает отдельное приложение tradein-mvp/frontend (basePath=/trade-in, standalone), а v2 в #2035 по ошибке попал в главный frontend, где прод его не отдаёт (Caddy шлёт /trade-in/*tradein-frontend).

Что сделано

  • Перенёс v2 (15 компонентов + роут + ассет) → tradein-mvp/frontend:
    • src/components/trade-in/v2/ (15 файлов)
    • src/app/v2/{page,layout}.tsx — без префикса trade-in (basePath сам даёт прод-URL /trade-in/v2)
    • public/trade-in-v2/building.png
  • HeroBar: <img>next/image — плоский <img> не префиксит basePath → на проде был бы 404 у фото здания.
  • Удалил мёртвый v2 из главного frontend (прод его не отдавал).

git распознал как 18 renames (только HeroBar с правкой кода).

Верификация

  • next build с NEXT_PUBLIC_BASE_PATH=/trade-in зелёный, роут /v2 prerendered (25.5 kB / 128 kB), 12/12 страниц.
  • Grep: в главном frontend не осталось ссылок на v2.

Деплой

Триггерит deploy-tradein.yml (push в main с tradein-mvp/**) → пересборка tradein-frontendhttps://gendsgn.ru/trade-in/v2.

Дальше

  • Wiring к боевым ручкам — issue #2036 (теперь в правильном app — рядом с реальным эстиматором tradein-mvp).
Фоллоу-ап к #2035. **Исправляет размещение**: прод-`/trade-in/*` обслуживает отдельное приложение `tradein-mvp/frontend` (basePath=/trade-in, standalone), а v2 в #2035 по ошибке попал в **главный** `frontend`, где прод его не отдаёт (Caddy шлёт `/trade-in/*` → `tradein-frontend`). ## Что сделано - Перенёс v2 (15 компонентов + роут + ассет) → `tradein-mvp/frontend`: - `src/components/trade-in/v2/` (15 файлов) - `src/app/v2/{page,layout}.tsx` — без префикса `trade-in` (basePath сам даёт прод-URL **`/trade-in/v2`**) - `public/trade-in-v2/building.png` - **HeroBar**: `<img>` → `next/image` — плоский `<img>` не префиксит basePath → на проде был бы 404 у фото здания. - Удалил мёртвый v2 из главного `frontend` (прод его не отдавал). git распознал как 18 renames (только HeroBar с правкой кода). ## Верификация - `next build` с `NEXT_PUBLIC_BASE_PATH=/trade-in` ✅ зелёный, роут `/v2` prerendered (25.5 kB / 128 kB), 12/12 страниц. - Grep: в главном `frontend` не осталось ссылок на v2. ## Деплой Триггерит `deploy-tradein.yml` (push в main с `tradein-mvp/**`) → пересборка `tradein-frontend` → **https://gendsgn.ru/trade-in/v2**. ## Дальше - Wiring к боевым ручкам — issue #2036 (теперь в правильном app — рядом с реальным эстиматором tradein-mvp).
lekss361 added 1 commit 2026-06-28 10:10:49 +00:00
refactor(tradein/v2): перенос HUD v2 в tradein-mvp frontend
All checks were successful
CI / changes (pull_request) Successful in 6s
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Successful in 1m3s
CI / openapi-codegen-check (pull_request) Successful in 1m59s
fcb85deab8
Прод-/trade-in/* обслуживает tradein-mvp/frontend (basePath=/trade-in,
standalone), а не главный frontend — v2 по ошибке попал в главный, где
прод его не отдаёт. Markup-only порт (fixtures, без API):

- компоненты v2 → tradein-mvp/frontend/src/components/trade-in/v2/
- роут src/app/v2/ (basePath даёт прод-URL /trade-in/v2)
- public/trade-in-v2/building.png
- HeroBar: <img> → next/image (плоский img не префиксит basePath → 404)
- удалён мёртвый v2 из главного frontend

next build (NEXT_PUBLIC_BASE_PATH=/trade-in) зелёный, роут /v2 prerendered.
lekss361 scheduled this pull request to auto merge when all checks succeed 2026-06-28 10:13:17 +00:00
lekss361 merged commit 7b8ffd4200 into main 2026-06-28 10:17:11 +00:00
lekss361 deleted branch feat/tradein-v2-mvp-port 2026-06-28 10:17:12 +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#2037
No description provided.