---
name: write-uc
description: Генерирует новые Use Case (UC) файлы для проекта Travel App Belarus, соблюдая установленный шаблон, структуру и кросс-зависимости. Используй этот скилл, когда нужно описать новый функционал, добавить детализацию к существующим модулям или обновить UC согласно архитектурным изменениям.
---

# Write UC Skill

Этот скилл предназначен для создания и обновления файлов Use Case (UC) в директории `use_cases/` проекта Travel App Belarus.

## Workflow: Создание нового UC

1. **Discovery**: Прочитай `use_cases/INDEX.md` для понимания места нового UC в общей архитектуре.
2. **Template Selection**: Используй стандартный шаблон (см. ниже).
3. **Drafting**:
   - Определи акторов (основных и вторичных).
   - Опиши Основной поток (Happy Path).
   - Опиши Альтернативные потоки (A1, A2...) и Потоки исключений (E1, E2...).
   - Сформулируй бизнес-правила (BR-XX-YY).
   - Составь CRUD-матрицу для затронутых сущностей.
   - Укажи кросс-модульные связи.
4. **Validation**: Проверь соответствие `SPRINT_MAP.md` и `DATA_MODEL.md`.

## Шаблон Use Case (Markdown)

```markdown
# UC-XX: Название модуля

**Статус:** ⬜ Ожидает / 🟡 В работе / ✅ Готов к разработке
**Спринт:** Sprint N
**Обновлён:** YYYY-MM-DD

---

## Акторы

| Актор | Тип | Описание |
|-------|-----|----------|
| Пользователь | Основной | ... |
| Система | Вторичный | ... |

---

## Концепция

Краткое описание модуля, его роли в приложении и ключевых архитектурных принципов.

---

## UC-XX.1: Название суб-кейса

**Триггер:** ...
**Предусловия:** ...

### Основной поток
1. ...
2. ...

### Альтернативные потоки
- **[A1] Название:** ...

### Потоки исключений
- **[E1] Название:** ...

### Бизнес-правила
- **BR-XX-01:** ...

---

## CRUD-матрица

| Сущность | Create | Read | Update | Delete |
|----------|--------|------|--------|--------|
| ... | ... | ... | ... | ... |

---

## Кросс-модульные связи

| Фича | UC-XX | Связан с |
|------|-------|---------|
| ... | ... | ... |

---

## 💡 Идеи для расширения
| # | Идея | Источник |
|---|------|----------|
| 1 | ... | ... |
```

## Правила именования
- Файл: `use_cases/UC-XX_name_snake_case.md`
- Бизнес-правило: `BR-XX-YY` (где XX - номер UC, YY - порядковый номер)
- Суб-UC: `UC-XX.Y`

## Полезные ссылки
- [INDEX.md](INDEX.md) - список всех UC
- [CLAUDE.md](../CLAUDE.md) - общие правила проекта
- [SPRINT_MAP.md](../SPRINT_MAP.md) - план разработки
