Skip to content

Feature idea: AI-assisted moderation suggestions for the Reports queue #114

Description

@lopatnov

Идея

Владелец репозитория явно одобрил эту идею к проработке (не к реализации) в обсуждении 2026-08-16. Зависит от решения по #113 (Microsoft Agent Framework как строительный блок) — не реализовывать до согласования MAF-паттерна интеграции, включая обязательную опциональность.

Сейчас в проекте уже есть очередь модерации: Report — пользователи репортят статьи/комментарии, админ вручную ревьюит с полным контекстом (см. CLAUDE.md, «Admin Panel»). Идея — не автоматизировать бан/удаление, а дать админу AI-подсказку при просмотре репорта: вероятная классификация (спам/оффтоп/токсичность/легитимный контент) + краткое обоснование, отображаемая как дополнительная аннотация в уже существующем экране ревью репортов.

Явные ограничения (не обсуждаются, зафиксированы по итогам разговора с владельцем)

  • Только подсказка, не авто-действие. Финальное решение (бан/удаление/оставить) всегда делает админ вручную, как сейчас. Агент не банит и не удаляет ничего сам.
  • Полностью опционально, выключено по умолчанию — отдельный toggle (например moderation_assistant_enabled в SiteSettings), независимый от других AI-фич. Без настроенного LLM-ключа фича должна быть полностью невидима в админке, а не показывать ошибку.
  • Должна работать по общему паттерну опциональности/секретов/rate-limiting, который предстоит согласовать в Tech radar: Microsoft Agent Framework as the AI building block for optional features #113 — не изобретать свой вариант в этом issue.

Открытые вопросы для будущего проектирования

  • Классификация одним shot-запросом (без multi-step agent workflow) может быть достаточна для этой задачи — стоит явно решить, нужен ли вообще полный MAF-агент здесь, или хватит простого вызова через Microsoft.Extensions.AI без агентных абстракций (сложность vs польза).
  • Что именно уходит в промпт: текст статьи/комментария + причина репорта — нужно явно решить, что НЕ отправлять (email пользователя, другие приватные поля).
  • UI: где именно в экране Reports показывать подсказку, не создавая ложного ощущения «AI уже решил».

Статус

Идея одобрена владельцем к проработке. Требует: решения по #113 (MAF, паттерн опциональности), затем — плана от architect перед реализацией.


Generated by Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions