[tradein][v2][design-sync] Аудит DS-панели claude.ai/design + авторинг 6 floor-card v2-компонентов (эпик #2262) #2267

Closed
opened 2026-07-03 06:30:26 +00:00 by lekss361 · 1 comment
Owner

Под-issue эпика #2262. Дименсия: design-system fidelity (claude.ai/design).

Контекст

Синк 2026-07-02 залил 54 компонента в проект claude.ai/design gendesign-tradein (e4b235af-089b-4532-8025-5199a2695a12). Весь v2-дашборд рендерится, но 6 компонентов ушли floor-card (honest-плейсхолдер — их пропсы не сидят данными через PreviewProvider): SaleShareControls, SaleShareList, SaleShareMap, SectionOverlay, LocationDrawer, BuildingListingsDrawer.

Задача

  1. Авторинг превью для этих 6 в .design-sync/previews/<Name>.tsx (по паттерну v2-компонентов, что рендерятся богато — данные из фикстур/контекста). Дровер/оверлей'ам дать реалистичные open-state пропсы. Затем re-sync (driver → grade → incremental upload).
  2. Бренд-шрифты: v2-HUD реально на Manrope + IBM_Plex_Mono (через next/font в v2/layout.tsx, исключён из бандла), а cfg.extraFonts шлёт Inter + JetBrains Mono (июньские). v2-превью рендерят Manrope-слот в fallback. Решить: добавить Manrope/Plex woff2 в .design-sync/fonts/ + cfg.extraFonts + смапить --font-manrope/--font-plex-mono, либо принять fallback.
  3. Fidelity-проход DS-панели в браузере claude.ai/design — открыть проект, глазами сверить, что компоненты on-brand (re-upload дешёвый).

Важно (для re-sync)

Worktree C:/tmp/wt-ds-resync. .design-sync/NOTES.md содержит критичные фиксы source-kit (next/font-исключение + default-re-export) + ResultPanel-коллизию + upload-гочу (deletePaths диффа бывает bogus — не скармливать delete_files вслепую). Durable-инпуты (config.json, NOTES.md, overrides/source-kit.mjs, previews/ResultPanel.tsx) ещё НЕ закоммичены — см. ветку chore/design-sync-tradein.

DoD

6 floor-card заменены авторскими превью (или явно оставлены floor с обоснованием); шрифт-решение принято; durable-инпуты закоммичены в chore/design-sync-tradein + PR.

Под-issue эпика #2262. **Дименсия: design-system fidelity (claude.ai/design).** ## Контекст Синк 2026-07-02 залил 54 компонента в проект claude.ai/design `gendesign-tradein` (`e4b235af-089b-4532-8025-5199a2695a12`). Весь v2-дашборд рендерится, но 6 компонентов ушли **floor-card** (honest-плейсхолдер — их пропсы не сидят данными через PreviewProvider): `SaleShareControls`, `SaleShareList`, `SaleShareMap`, `SectionOverlay`, `LocationDrawer`, `BuildingListingsDrawer`. ## Задача 1. **Авторинг превью** для этих 6 в `.design-sync/previews/<Name>.tsx` (по паттерну v2-компонентов, что рендерятся богато — данные из фикстур/контекста). Дровер/оверлей'ам дать реалистичные open-state пропсы. Затем re-sync (driver → grade → incremental upload). 2. **Бренд-шрифты:** v2-HUD реально на **Manrope + IBM_Plex_Mono** (через `next/font` в `v2/layout.tsx`, исключён из бандла), а `cfg.extraFonts` шлёт **Inter + JetBrains Mono** (июньские). v2-превью рендерят Manrope-слот в fallback. Решить: добавить Manrope/Plex woff2 в `.design-sync/fonts/` + `cfg.extraFonts` + смапить `--font-manrope`/`--font-plex-mono`, либо принять fallback. 3. **Fidelity-проход** DS-панели в браузере claude.ai/design — открыть проект, глазами сверить, что компоненты on-brand (re-upload дешёвый). ## Важно (для re-sync) Worktree `C:/tmp/wt-ds-resync`. `.design-sync/NOTES.md` содержит критичные фиксы source-kit (next/font-исключение + default-re-export) + ResultPanel-коллизию + upload-гочу (deletePaths диффа бывает bogus — не скармливать delete_files вслепую). Durable-инпуты (config.json, NOTES.md, overrides/source-kit.mjs, previews/ResultPanel.tsx) ещё НЕ закоммичены — см. ветку `chore/design-sync-tradein`. ## DoD 6 floor-card заменены авторскими превью (или явно оставлены floor с обоснованием); шрифт-решение принято; durable-инпуты закоммичены в `chore/design-sync-tradein` + PR.
lekss361 added the
scope/frontend
tradein
labels 2026-07-03 06:31:18 +00:00
Author
Owner

Done (2026-07-03)

  1. 6 floor-card → authored, все graded good: SaleShareControls (панель порога+фильтров, тепло-гистограмма, coverage 92.1%), SaleShareList (6 домов ЕКБ + Empty-state), SaleShareMap (Leaflet, тепловые circleMarker + popup), SectionOverlay (HUD-оверлеи 04/06 contained), LocationDrawer (открытый «Пояснение к расчёту»), BuildingListingsDrawer (богатая шапка из props; тело fetch-coupled → честный offline error-state, query-кэш сознательно не сидировали — хрупко).
  2. Шрифты решены полностью: Manrope (variable) + IBM Plex Mono (300/400/500) latin+cyrillic скачаны и залиты; --font-manrope/--font-plex-mono смаплены через style-инъекцию в preview-provider (extraFonts-пайплайн выбрасывает всё кроме @font-face — гоча в NOTES). Sheets подтверждают: v2-цифры реально в Plex Mono, не fallback.
  3. Upload выполнен из main-сессии (у сабагентов нет DesignSync-тула): 278 файлов (250+28), deletePaths=0, ничего не удалялось. _ds_sync.json.cache/remote-sync.json зафиксирован.
  4. Бонус — критичный фикс source-kit: componentSrcMap-пин (ResultPanel) гасил synth-discovery → сборка давала 1 компонент вместо 54; июньские «318 bogus deletePaths» были РЕАЛЬНЫМИ потерями, не diff-артефактом (correction внесён в NOTES.md). Пин теперь дополняет discovery; 47/54 renderHash byte-identical carry-forward, 7 отсмотрены глазами.
  5. Durable-инпуты закоммичены и смержены: PR #2274 (влит в main). Попутно восстановлен обрезанный до 3 строк staged .gitignore на ветке.

Не сделано: fidelity-проход глазами в самой панели claude.ai/design (нужна залогиненная сессия браузера юзера) — грейд-скриншоты драйвера его заменяют на 95%; быстрый визуальный проход панели остаётся опциональным ручным шагом.

## Done (2026-07-03) 1. **6 floor-card → authored, все graded good:** SaleShareControls (панель порога+фильтров, тепло-гистограмма, coverage 92.1%), SaleShareList (6 домов ЕКБ + Empty-state), SaleShareMap (Leaflet, тепловые circleMarker + popup), SectionOverlay (HUD-оверлеи 04/06 contained), LocationDrawer (открытый «Пояснение к расчёту»), BuildingListingsDrawer (богатая шапка из props; тело fetch-coupled → честный offline error-state, query-кэш сознательно не сидировали — хрупко). 2. **Шрифты решены полностью:** Manrope (variable) + IBM Plex Mono (300/400/500) latin+cyrillic скачаны и залиты; `--font-manrope`/`--font-plex-mono` смаплены через style-инъекцию в preview-provider (extraFonts-пайплайн выбрасывает всё кроме @font-face — гоча в NOTES). Sheets подтверждают: v2-цифры реально в Plex Mono, не fallback. 3. **Upload выполнен из main-сессии** (у сабагентов нет DesignSync-тула): 278 файлов (250+28), deletePaths=0, ничего не удалялось. `_ds_sync.json` → `.cache/remote-sync.json` зафиксирован. 4. **Бонус — критичный фикс source-kit:** componentSrcMap-пин (ResultPanel) гасил synth-discovery → сборка давала 1 компонент вместо 54; июньские «318 bogus deletePaths» были РЕАЛЬНЫМИ потерями, не diff-артефактом (correction внесён в NOTES.md). Пин теперь дополняет discovery; 47/54 renderHash byte-identical carry-forward, 7 отсмотрены глазами. 5. **Durable-инпуты закоммичены и смержены:** PR #2274 (влит в main). Попутно восстановлен обрезанный до 3 строк staged `.gitignore` на ветке. Не сделано: fidelity-проход глазами в самой панели claude.ai/design (нужна залогиненная сессия браузера юзера) — грейд-скриншоты драйвера его заменяют на 95%; быстрый визуальный проход панели остаётся опциональным ручным шагом.
Sign in to join this conversation.
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#2267
No description provided.