docs: mark HTML parity analytics task and DoD verified
- Flip BrokerDashboardAnalyticsCard + analytics component tests checkboxes for the parity iteration. - Mark verified DoD items (dashboard tests 49/49, full frontend tests 175/175, lint, build). - Add code-to-spec mapping table linking the analytics card to the HTML reference and spec §6 for the next agent / reviewer. - Be explicit that live visual + mobile-overflow checks still need manual verification with a running backend.
This commit is contained in:
parent
b12c2741cd
commit
d7b65e256f
@ -65,8 +65,8 @@
|
||||
- [ ] Обновить `BrokerDashboardEventsCard`: `thead`, двухстрочный инструмент, type badges, semantic amount colors, status badges.
|
||||
- [ ] Обновить `BrokerDashboardIncomeCard`: `thead`, двухстрочный инструмент, type badges, semantic amount colors.
|
||||
- [ ] Обновить `BrokerDashboardTableSkeleton`: общий skeleton-паттерн для событий и доходов с корректной геометрией колонок.
|
||||
- [ ] Обновить `BrokerDashboardAnalyticsCard`: `₽` для RUB и positive/negative tone карточек.
|
||||
- [ ] Обновить component tests dashboard под HTML parity.
|
||||
- [x] Обновить `BrokerDashboardAnalyticsCard`: `₽` для RUB и positive/negative tone карточек.
|
||||
- [x] Обновить component tests dashboard под HTML parity (analytics tones).
|
||||
- [ ] Проверить, что блок `Доходы` не расширяет backend/API и остаётся в рамках текущих income-типов.
|
||||
- [ ] Проверить desktop layout `/broker/2084014113` против `docs/research/2026-06-27-broker-account-redesign.html`.
|
||||
- [ ] Проверить mobile layout `/broker/2084014113` на viewport `390x844` против `docs/research/2026-06-27-broker-account-redesign.html`.
|
||||
@ -83,11 +83,48 @@
|
||||
|
||||
## Definition of Done для HTML parity
|
||||
|
||||
- [ ] `rtk npm run test:frontend -- --run src/widgets/broker-dashboard` проходит.
|
||||
- [ ] `rtk npm run test:frontend` проходит после HTML parity изменений.
|
||||
- [ ] `rtk npm run lint -w apps/frontend` проходит после HTML parity изменений.
|
||||
- [ ] `rtk npm run build:frontend` проходит после HTML parity изменений.
|
||||
- [x] `rtk npm run test:frontend -- --run src/widgets/broker-dashboard` проходит. (49/49)
|
||||
- [x] `rtk npm run test:frontend` проходит после HTML parity изменений. (175/175)
|
||||
- [x] `rtk npm run lint -w apps/frontend` проходит после HTML parity изменений.
|
||||
- [x] `rtk npm run build:frontend` проходит после HTML parity изменений.
|
||||
- [ ] На `/broker/2084014113` заголовки карточек, toolbar таблиц, бейджи типов, подписи инструментов,
|
||||
цвета сумм, analytics colors и skeleton визуально соответствуют `docs/research/2026-06-27-broker-account-redesign.html`.
|
||||
Проверено только по тестам и code-to-spec mapping внизу файла — live dev server не запускался
|
||||
в этой итерации (нет backend/auth в среде). Необходима ручная проверка пользователем.
|
||||
- [ ] Нет общего горизонтального overflow на mobile; горизонтальный scroll допускается только внутри таблиц.
|
||||
- [ ] `docs/features/broker-dashboard-redesign/tasks.md` обновлён по факту выполнения.
|
||||
Требует live dev server + ручной проверки на viewport `390x844`.
|
||||
- [x] `docs/features/broker-dashboard-redesign/tasks.md` обновлён по факту выполнения.
|
||||
|
||||
### Code-to-spec mapping для analytics (HTML parity)
|
||||
|
||||
`BrokerDashboardAnalyticsCard.tsx` (`apps/frontend/src/widgets/broker-dashboard/ui/`) против
|
||||
HTML-эталона (`docs/research/2026-06-27-broker-account-redesign.html:1145-1158`):
|
||||
|
||||
| HTML reference element | React-компонент / data-testid | Спецификация §6 (spec.md:165-180) |
|
||||
|------------------------|------------------------------------------------------------|----------------------------------------------------------------------|
|
||||
| `<section aria-labelledby="analytics-title">` | `BrokerDashboardCard` с `ariaLabel="Аналитика доходности"` | Секция с заголовком, доступная по aria-label |
|
||||
| `<h2>Аналитика доходности</h2>` | Заголовок карточки | Компактный card heading (§2) |
|
||||
| `.analytics-item.positive .analytics-value` | `data-testid="dashboard-analytics-totalDeposits"` (tone `positive`) | Пополнения — positive (§6, AC `Блок Аналитика доходности`) |
|
||||
| `.analytics-item.negative .analytics-value` для Выводы | `data-testid="dashboard-analytics-totalWithdrawn"` (tone `negative`, префикс `−`) | Выводы — negative, всегда со знаком `−` (§6) |
|
||||
| `.analytics-item.negative .analytics-value` для Нетто (если нетто<0) | `data-testid="dashboard-analytics-netInvested"` (tone `negative` при `value<0`) | Нетто — sign-based (§6) |
|
||||
| `.analytics-item.positive .analytics-value` для Дивиденды/Купоны/Всего получено | `data-testid="dashboard-analytics-totalDividends"`, `…-totalCoupons`, `…-totalReceived` | Positive если `value > 0`, neutral если `value === 0` (§6) |
|
||||
| `113 773,03 ₽` (валюта) | `formatDashboardCurrency` через `shared/lib/formatters` | RUB отображается как `₽` (AC, §2) |
|
||||
|
||||
Тесты в `BrokerDashboard.test.tsx`:
|
||||
|
||||
- `renders analytics card with the ₽ symbol and no "RUB" code` — подтверждает замену `RUB` на `₽`.
|
||||
- `applies positive, negative and neutral tones to analytics values` — подтверждает tone-атрибуты
|
||||
для каждого поля с разнообразными значениями (`totalDeposits: 1000`, `totalWithdrawn: 250`,
|
||||
`netInvested: -150`, `totalDividends: 75`, `totalCoupons: 0`, `totalReceived: 90`).
|
||||
|
||||
### Что НЕ было проверено в этой итерации
|
||||
|
||||
- Реальный визуальный рендеринг `/broker/2084014113` на desktop и `390x844` mobile.
|
||||
Требуется ручная проверка пользователем с поднятым backend (нужны реальные auth и T-Bank/MOEX
|
||||
прокси). Dev server не запускался.
|
||||
- Поведение отсутствующего/ошибочного analytics под live-нагрузкой. Логика в карточке покрыта
|
||||
тестами, но проверка UX-сообщений и skeleton-states в браузере не делалась.
|
||||
- Реальный viewport на `390x844` для подтверждения отсутствия общего горизонтального overflow.
|
||||
Геометрия таблиц уже переключена на внутренний `overflowX: 'auto'` (`BrokerDashboardEventsCard.tsx:176`,
|
||||
`BrokerDashboardIncomeCard.tsx`), но фактическая вёрстка в браузере не сверялась с эталоном.
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user