This commit is contained in:
Mikhail Kilin
2026-01-18 14:49:31 +03:00
parent d701464fde
commit 060170923e
3 changed files with 200 additions and 0 deletions

102
docs/DEVELOPMENT.md Normal file
View File

@@ -0,0 +1,102 @@
# Правила локальной разработки
> **Обязательно к прочтению перед началом работы!**
---
## Инструменты
### MCP серверы
- **Serena** — для работы с кодом (символьная навигация, редактирование)
- **Context7** — для получения актуальной документации по библиотекам
Используй эти инструменты для эффективной работы с кодовой базой.
---
## Правила работы
### 1. Никогда не запускай сервисы самостоятельно
**ЗАПРЕЩЕНО** запускать `cargo run`, `cargo build` и подобные команды.
**Вместо этого попроси пользователя запустить:**
```
Запусти, пожалуйста:
cargo run
```
### 2. Тестирование — только ручное
После завершения задачи:
1. Опиши сценарии для проверки
2. Попроси пользователя проверить вручную
3. Дождись фидбека
**Формат:**
```
Готово! Проверь, пожалуйста:
1. Открой cargo run
2. понавигируйся в списке чатов кнопками h j k l
3. Нажми Enter для открытия чата
4. Убедись, что чат прогурзился
Напиши, если что-то не работает.
```
### 3. Работа поэтапно
Делай работу **небольшими итерациями**:
1. **Один этап = одна логическая единица**
- Один endpoint
- Один компонент
- Одна фича
2. **После каждого этапа:**
- Сообщи что сделано
- Дай сценарий проверки
- Дождись подтверждения
3. **Не делай сразу много:**
- ❌ Весь CRUD за раз
- ✅ Сначала GET, проверили, потом POST, проверили...
---
## Чеклист перед началом работы
- [ ] Прочитал CONTEXT.md
- [ ] Прочитал ROADMAP.md (понял текущую фазу)
- [ ] Понял задачу
- [ ] Готов работать поэтапно
- [ ] Помню: не запускаю сервисы сам, прошу пользователя
---
## Пример правильного workflow
```
Пользователь: Сделай endpoint для получения списка идей
Агент:
1. Читает документацию через Context7 (NestJS, TypeORM)
2. Использует Serena для навигации по коду
3. Создаёт endpoint GET /api/ideas
4. Сообщает:
"Создал endpoint GET /api/ideas.
Запусти backend:
cd backend && npm run dev
Проверь:
curl http://localhost:4001/api/ideas
Должен вернуться пустой массив: { data: [], meta: {...} }"
5. Ждёт фидбек
6. Переходит к следующему этапу
```