- Enhanced tests to ensure consistent messageId generation for legacy inbox rows lacking a messageId. - Updated test descriptions for better clarity regarding the new messageId handling. - Adjusted test expectations to align with the updated behavior of relaying legacy inbox rows with generated messageIds.
18 lines
2 KiB
Markdown
18 lines
2 KiB
Markdown
# Landing (Voice-to-Text) — планы итераций
|
||
|
||
Здесь лежат **планы итераций** для разработки лендинга.
|
||
|
||
Правило процесса:
|
||
1) Сначала уточняем требования и фиксируем их в планах итераций (максимально подробно).
|
||
2) Затем **несколько раз перепроверяем** планы (логика, полнота, риски, несостыковки, критерии “готово”).
|
||
3) Только после этого начинаем реализацию строго по шагам.
|
||
|
||
Общее правило качества (Definition of Done для любой итерации):
|
||
- **SSG-совместимость**: нет логики, которая требует сервер на каждом запросе (лендинг — статический).
|
||
- **Контент редактируемый**: тексты/списки/ссылки лежат в `landing/data/*` и `landing/content/*`/`landing/locales/*`, а не “зашиты” в секциях.
|
||
- **SEO**: корректные `title/description`, `og/twitter`, `canonical`, `alternate` (i18n), sitemap/robots.
|
||
- **A11y**: навигация с клавиатуры, корректные подписи/alt, адекватный фокус, контраст.
|
||
- **Производительность**: изображения оптимизированы, нет тяжёлых блокирующих ресурсов, разумные размеры бандла.
|
||
- **Проверяемость**: ключевая логика (platform/arch, выбор ассета) вынесена в `utils/` и покрыта тестами (минимум smoke).
|
||
|
||
Рекомендация: держать под рукой `landing/docs/ARCHITECTURE_GUARDRAILS.md` — там перечислены инварианты, которые защищают от регрессов (SSG, i18n, sitemap, downloads, analytics).
|