|
Some checks are pending
Sprint UI-deep, пункт 1: реальный Chromium через Playwright Test.
Установлены @playwright/test 1.60.0 и otplib (для item 11).
Конфиг tests/e2e/playwright.config.ts — workers=1, traces+screenshots
on-failure, screenshot dir reports/playwright-artifacts/.
Хелперы tests/e2e/lib/ui.ts:
- apiSignup() — быстрый signup через API + login
- attachSession() — кладёт access_token в localStorage, грузит путь
- watchPage() — listener console-errors и network 4xx/5xx
- expectNoErrors() — assert после flow'a
Item 1 (5 specs, все ✓ на стейдже):
- 1.1 attach session → /dashboard, без console-ошибок
- 1.2 создание товара через UI (Empty CTA → форма → Сохранить)
- 1.3 первый контрагент через Modal
- 1.4 создать товар + контрагент через API, открыть форму приёмки,
smoke на компоненты страницы
- 1.5 OnboardingPage (/) рендерится
Найден 1 реальный баг → починен:
- ProductEditPage: race на currencies.data — если быстро Сохранить,
цена-MoneyInput добавляет строку с currencyId='' → server 400 с
криптичным JSON validation. Фикс: MoneyInput disabled пока
!currencies.data + canSave проверяет row.currencyId.
- Form error display показывал "Request failed with status code 400";
теперь использует общий humanizeError() (exporting из @/lib/api).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
||
|---|---|---|
| .. | ||
| 24x7.md | ||
| architecture.md | ||
| audit-2026-04-27.md | ||
| audit-2026-05-06.md | ||
| audit-moysklad.md | ||
| backup-restore.md | ||
| forgejo.md | ||
| logging.md | ||
| observability.md | ||
| openapi.md | ||
| openiddict-keys.md | ||
| release-checklist.md | ||
| secrets.md | ||
| sprint-ui-deep-progress.md | ||
| sprint1-progress.md | ||
| sprint2-progress.md | ||
| sprint3-progress.md | ||
| sprint4-progress.md | ||
| sprint5-progress.md | ||
| sprint6-progress.md | ||
| sprint7-progress.md | ||
| stage-access.md | ||
| stage-setup.md | ||
| stage-testing-progress.md | ||
| telegram-bridge.md | ||
| TZ-доработка.md | ||
| TZ-тестирование.md | ||