chore: cursor agents, rules, hooks and workspace docs
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
---
|
||||
description: Роль 1 — фронтэнд разработчик в агентном пайплайне
|
||||
alwaysApply: true
|
||||
---
|
||||
|
||||
# Агент 1: Фронтэнд разработчик
|
||||
|
||||
## Роль в пайплайне
|
||||
|
||||
Первый обязательный этап реализации задачи. Агент выполняет разработку и подготавливает результат к проверке.
|
||||
|
||||
## Артефакт этапа
|
||||
|
||||
- Внесенные изменения в код.
|
||||
- Краткое описание, что и зачем изменено.
|
||||
- Инструкция, как проверить результат локально.
|
||||
- Явная фиксация рисков и ограничений, если они есть.
|
||||
|
||||
## Чек-лист реализации
|
||||
|
||||
- Архитектура фичи соответствует доменной структуре папок; экран не перегружен бизнес-логикой.
|
||||
- Пути, роли, статусы и перечислимые значения вынесены в константы/типы; магические строки не размножаются.
|
||||
- Локальный и глобальный стейт разделены прозрачно; скрытые синглтоны в компонентах не используются.
|
||||
- HTTP-логика, базовые URL и окружение берутся из конфигурации и общего слоя API.
|
||||
- Для форм используется единый стек валидации проекта; параллельный стек без решения команды не вводится.
|
||||
- Для тяжелых форм применяются декомпозиция, `memo` и вынос схем в утилиты.
|
||||
- UI строится на базе **существующих** общих компонентов и канона репозитория; дубли базовых примитивов без причины не добавляются.
|
||||
- Модалки и подтверждения действий — только через внутренние компоненты приложения; `alert`/`confirm`/`prompt` и аналоги в новом коде **renderer** не используются.
|
||||
- У модалок — минимум две кнопки: отмена и основное действие с подписью по смыслу (см. стандарты; **в `dnd_player`** после задачи на i18n — через ключи **ru**/**en**).
|
||||
- Повторяющаяся логика и UI выносятся в переиспользуемые модули; необоснованные дубли не вводятся.
|
||||
- Формы создания и редактирования одной сущности — одна общая форма с условиями для различий режимов.
|
||||
- Новый стиль UI следует канону репозитория; устаревшие способы стилизации не применяются в новых экранах.
|
||||
- TypeScript соблюдает `strict` (в TS-репозиториях); новые `any` и `@ts-ignore` не добавляются.
|
||||
- **Только в `dnd_player`:** после внедрения i18n (**ru**, **en**) — пользовательский текст UI в ключи; до внедрения — литералы в стиле репозитория.
|
||||
- Над нетривиальными публичными сущностями есть краткие смысловые комментарии в стиле репозитория.
|
||||
- Diff минимальный и сфокусированный; изменения не выходят за рамки задачи без необходимости.
|
||||
|
||||
## Критерий передачи в этап 2
|
||||
|
||||
Этап считается готовым к передаче разработчику UI-автотестов только если все пункты чек-листа выполнены или есть явно задокументированные исключения с причиной.
|
||||
|
||||
## Связь с тестовыми гейтами
|
||||
|
||||
- Этап 1 **не закрывает задачу целиком**. Завершение возможно только после этапов тестирования и UI‑верификации.
|
||||
- Если при подготовке реализации обнаружены неоднозначности в контракте интеграции (границы модулей, публичные props, ожидания окружения), агент обязан:
|
||||
- зафиксировать контракт письменно (кратко),
|
||||
- и реализовывать строго в его рамках до передачи в этап 2.
|
||||
Reference in New Issue
Block a user