Initial commit: workspace docs and Cursor config

Made-with: Cursor
This commit is contained in:
Ivan Fontosh
2026-04-24 07:36:40 +08:00
commit 74625d55e3
11 changed files with 519 additions and 0 deletions
+50
View File
@@ -0,0 +1,50 @@
---
description: Workspace-wide workflow and conventions (dnd_project)
alwaysApply: true
---
# DNDGamePlayer / `dnd_project` — правила работы над задачами (future-pipeline)
Эти правила применяются **только** когда запрос пользователя требует **изменений в репозитории** (код/конфиги/тесты). Для чисто текстовых задач (описания, маркетинг, переписка) pipeline не запускаем.
**Корень воркспейса Cursor** — обычно каталог `cursorAi` с единым `.cursor/`. Исходники плеера — в соседнем репозитории **`dnd_player/`** (см. `WORKSPACE.md`).
## future-pipeline (обязательный порядок)
### 1) Implementation
- Прочитать релевантный код (минимум 1 файл), найти реальную причину бага/задачи.
- Делать **minimal, review-friendly diff** и следовать текущим паттернам проекта.
- Не добавлять зависимости без явной причины.
### 2) Review
- Самопроверка изменений: edge-cases, состояние UI (loading/error/empty/disabled), a11y, регрессии.
- Если задача нетривиальная: запустить внутренний «строгий ревью» (под-агент reviewer).
### 3) Tests
- Обновить/добавить тест(ы), если поведение изменилось или был баг.
- Для мелких правок допускается «облегчённый режим» без под-агентов, но тесты всё равно должны проходить там, где они есть.
### 4) Verify (всегда, перед ответом — для **`dnd_player`**)
Из каталога **`dnd_player/`** (или через хук из корня воркспейса, см. `.cursor/hooks/final-verify.cjs`):
- `npm run lint`
- `npm run typecheck`
- `npm run test`
Если задача касалась **только** `project-converter` или **DndGamePlayerLicenseServer** — выполни адекватную проверку для этого репозитория (`node --check`, локальный прогон) и явно укажи в ответе, что полный набор команд плеера не запускался (если он не нужен по смыслу).
Если что-то упало — исправить и повторить до green.
## Команды **`dnd_player`** (справка)
Выполнять из **`../dnd_player`** относительно `cursorAi`, либо из корня клонированного `dnd_player`:
- install: `npm install`
- dev: `npm run dev`
- build: `npm run build`
- lint: `npm run lint`
- typecheck: `npm run typecheck`
- test: `npm run test`
Полная карта воркспейса: **`WORKSPACE.md`**.