mirror of
https://gitverse.ru/kpa39l/vesti.git
synced 2026-09-29 09:55:03 +00:00
45 lines
3.8 KiB
Markdown
45 lines
3.8 KiB
Markdown
## Why
|
|
|
|
Пользователю неудобно работать с карточками кандидатов в текущем виде. Сейчас:
|
|
- Страница кандидатов — это лента карточек (каждая с апрув-кнопкой), нет списка слева,
|
|
нет меню действий справа, нет группировки, нет bulk-операций.
|
|
- Пользователь описал целевой интерфейс: «схожий с почтовыми клиентами» — общий список
|
|
сообщений в левой панели, конкретное сообщение справа.
|
|
- Отклонять/одобрять по группам (например, «все старые посты отклонить») сейчас нельзя:
|
|
только по одному.
|
|
|
|
## What Changes
|
|
|
|
Страница кандидатов `candidates` перерабатывается в двухпанельный интерфейс:
|
|
|
|
- **Левая панель** — список кандидатов (сообщений):
|
|
- элемент списка: аватар/иконка источника, заголовок (направление + краткий текст),
|
|
мета (источник, дата поступления, views/reactions, статус).
|
|
- активный/выбранный элемент подсвечивается.
|
|
- **группировка** (сворачиваемые группы): по источнику, по дате поступления,
|
|
по статусу (новые / одобренные / отклонённые).
|
|
- выбор нескольких элементов (чекбоксы) + **bulk-действия** над группой:
|
|
«отклонить все выбранные», «одобрить все выбранные».
|
|
- **Правая панель** — детальный просмотр выбранного кандидата:
|
|
- меню действий: **Опубликовать** (approve), **Отклонить** (reject), **Переклассифицировать**,
|
|
**Переписать новость под себя** (LLM-пересказ, ввод текста).
|
|
- блок «Мой комментарий» (textarea, сохраняется).
|
|
- оригинальный пост со всеми медиа (текст, картинки/видео, ссылки, мета источника).
|
|
- Хранение комментария — новое поле/таблица (comment в posts или отдельная
|
|
post_comments), связь с пользователем.
|
|
- Статусы: у поста уже есть status (new/rejected/published?) — использовать его для
|
|
группировки; добавить, если нет.
|
|
|
|
## Why Not
|
|
|
|
- Не делаем drag&drop, не делаем виртуальную бесконечную прокрутку — достаточно
|
|
пейджинга/группировки (минимум JS, стабильно).
|
|
- Не меняем существующие роуты approve/reject — только дополняем новыми (bulk,
|
|
переклассификация, коммент).
|
|
|
|
## Open Questions
|
|
|
|
- Комментарий: отдельная таблица или поле в posts? (предлагаю поле posts.comment TEXT)
|
|
- Переписывание: LLM (qwen) генерирует черновик, пользователь редактирует и публикует?
|
|
- «Переклассифицировать» — повторный запуск классификатора на посте?
|
|
- Группировка: одновременно несколько группировок или одна выбранная? |