docs/archive/BRAINSTORM-TASKS-2026-02-20.md

81 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Брейншторм: Задачи (Tasks)
Дата: 2026-02-20
## Модель задачи
### Поля
- **id**: UUID
- **title**: string
- **description**: text (markdown)
- **type**: task | bug | epic | story
- **status**: backlog | todo | in_progress | in_review | done
- **priority**: critical | high | medium | low
- **labels**: string[] (bug, feature, refactor, docs...)
- **project_id**: UUID
- **parent_id**: UUID | null (бесконечная вложенность)
- **depends_on**: UUID[] (зависимости — нельзя начать пока не done)
- **assignee_slug**: string | null (кто делает)
- **reviewer_slug**: string | null (кто ревьюит)
- **time_spent**: int (минуты, для аналитики)
- **attachments**: file[] (файлы + ссылки на файлы в хранилище/git)
- **created_at**, **updated_at**
### Переходы статусов
Любой → любой. Без жёсткого flow. UI может подсвечивать нетипичные переходы.
## Комментарии
```
TaskComment:
id, task_id
author_type: human | agent | system
author_name, author_slug
content: text (markdown)
mentions: string[] # @slug упоминания
attachments: file[]
parent_comment_id: UUID | null # треды
voice_url: string | null # голосовое сообщение (оригинал)
created_at
```
- Mentions → уведомление агенту через WS (`task.comment` с `mentions`)
- Агент может отвечать на конкретный комментарий (threads)
## Принятые идеи
### ✅ Автообнаружение блокеров
Задача видит что зависимость застряла → пишет в чат/комментарий:
"Задача #15 блокирует меня, кто-нибудь займётся?"
### ✅ Задача-наблюдатель
Не на выполнение, а мониторинг: "следи за CI", "проверяй X раз в час".
Периодическая/фоновая задача.
### ✅ Задача порождает задачи
Агент в процессе работы создаёт дочерние задачи автоматически.
### ✅ Агент может отклонить задачу
"Не хватает контекста", "противоречит архитектуре", "задача слишком большая".
Агент не безмолвный исполнитель — может отказаться с обоснованием.
### ✅ Голосовые комментарии и задачи
- Голосовое сообщение → Thoth транскрибирует → текст + аудио сохраняются
- Можно записать голосовое прямо в задачу (поле voice)
- В чате тоже голосовые
### ✅ Связи между задачами (links)
Не только parent/child, но и:
- relates_to
- duplicates
- blocks / blocked_by
(Больше для человека, агенты используют depends_on)
### 💡 На будущее
- Чеклист внутри задачи (вместо подзадач для мелочей)
### ❌ Отклонено
- Шаблоны задач — не нужны
- Автостатус — не нужен
- Оценка сложности — не нужна
- Дедлайн — не нужен