723657f2f7
- Add Status section requirement in Agent.md guidelines - Define valid status values (Planned, Ready, In Progress, Done, Blocked) - Update TASK-0001 with Ready status - Add Status section to TASK_TEMPLATE.md with Planned default Обновлена документация агента и отслеживание статусов задач: - Добавлено требование раздела Статус в руководствах Agent.md - Определены допустимые значения статусов (Planned, Ready, In Progress, Done, Blocked) - Обновлён TASK-0001 со статусом Ready - Добавлен раздел Статус в TASK_TEMPLATE.md с значением Planned по умолчанию
76 lines
4.1 KiB
Markdown
76 lines
4.1 KiB
Markdown
# Правила для агента
|
|
|
|
## Главный источник задачи
|
|
|
|
Перед началом любой работы по проекту агент обязан прочитать файл:
|
|
|
|
```text
|
|
Agent/TASK.md
|
|
```
|
|
|
|
Именно этот файл считается основным описанием задачи, требований и ограничений.
|
|
|
|
## Папка с задачами
|
|
|
|
Детальный план работ хранится в папке:
|
|
|
|
```text
|
|
Agent/Task/
|
|
```
|
|
|
|
Задачи должны называться строго по формату:
|
|
|
|
```text
|
|
TASK-0001.md
|
|
TASK-0002.md
|
|
TASK-0003.md
|
|
```
|
|
|
|
Новые задачи создаются только со следующим свободным номером. Нельзя пропускать номера без причины и нельзя переиспользовать номер удаленной или завершенной задачи.
|
|
|
|
Правила шаблона задач описаны в файле:
|
|
|
|
```text
|
|
Agent/Task/TASK_TEMPLATE.md
|
|
```
|
|
|
|
Каждая новая задача обязана соблюдать этот шаблон.
|
|
|
|
## Порядок работы
|
|
|
|
1. Сначала прочитать `Agent/TASK.md` полностью.
|
|
2. Прочитать `Agent/Task/TASK_TEMPLATE.md`.
|
|
3. Прочитать актуальные задачи `Agent/Task/TASK-*.md`.
|
|
4. После чтения сверять все решения с требованиями из задачи и конкретных task-файлов.
|
|
5. Не реализовывать вариант B или любую функциональность, которой нет в `Agent/TASK.md` или `Agent/Task/TASK-*.md`.
|
|
6. Не добавлять лишние архитектурные слои, если они не нужны для выполнения задачи.
|
|
7. Приоритет: минимальная корректная реализация, чистый жизненный цикл, понятный код.
|
|
|
|
## Правила заведения задач
|
|
|
|
- Новые задачи создавать только в `Agent/Task/`.
|
|
- Имя файла должно быть `TASK-XXXX.md`, где `XXXX` — номер из четырех цифр.
|
|
- Заголовок задачи должен начинаться с того же номера, что и имя файла.
|
|
- Структура задачи должна соответствовать `Agent/Task/TASK_TEMPLATE.md`.
|
|
- В задаче должны быть разделы `Статус`, `Цель`, `Что сделать`, `Технические требования`, `Критерии готовности`, `Заметки`.
|
|
- Статус задачи должен быть одним из значений: `Planned`, `Ready`, `In Progress`, `Done`, `Blocked`.
|
|
- Задача должна быть достаточно крупной, чтобы не дробить работу на слишком много файлов.
|
|
- Задача должна быть достаточно конкретной, чтобы по критериям готовности можно было проверить результат.
|
|
- Нельзя заводить задачи по варианту B.
|
|
|
|
## Ограничения
|
|
|
|
- Использовать VContainer для DI.
|
|
- Использовать UniTask для async-операций.
|
|
- Использовать UniRx для реактивных значений и подписок.
|
|
- Не использовать `FindObjectOfType`.
|
|
- Не использовать `Singleton.Instance`.
|
|
- Не хранить состояние в `static`.
|
|
- Не использовать `async void`, кроме Unity-колбэков.
|
|
- Все async-операции выполнять через UniTask и `CancellationToken`.
|
|
- Все подписки должны корректно освобождаться.
|
|
|
|
## Цель
|
|
|
|
Сделать только задачу `Boot Flow` из `Agent/TASK.md` и подготовить проект так, чтобы его можно было проверить по описанным требованиям.
|