Skip to content

Issue: Динамические мета-теги, исправление локализации и индексация (Sitemap/AI) #12

@perekljuchatel

Description

@perekljuchatel

Проблема и Факты

  • Локализация: Тег <html lang="en"> принудительно включает автоматический перевод интерфейса в мобильных браузерах, что перекрывает элементы управления (кнопки, навигацию).
  • SEO/Social: Отсутствие динамических Open Graph мета-тегов приводит к генерации пустых превью при шеринге ссылок. Это снижает CTR и узнаваемость продукта.
  • Индексация и AI: Публичный контент не индексируется поисковиками и LLM-краулерами. Отсутствуют файлы sitemap.xml и специализированные данные для обучения/инференса нейросетей.

Ожидаемый результат

  1. Исправление локализации: Атрибут lang в корневом теге должен соответствовать фактическому языку контента (статическая правка или динамическая подстановка).
  2. Динамические Meta: Генерация уникальных Title, Description и OG-Image (1200x630 px) для каждой задачи, доски и публичного профиля.
  3. Sitemap: Автоматическая генерация и регулярное обновление sitemap.xml, включающего все публично доступные ресурсы.
  4. AI Readiness:
    • Реализован файл /llms.txt (стандарт для LLM-краулеров) для предоставления структурированного контекста.
    • Мета-описания оптимизированы под RAG-подход: вместо дублирования названий они должны содержать: Заголовок | Текущий статус | Краткая суть решения (ответ на запрос).

Рекомендации по реализации

  • Бэкенд (NestJS): Реализовать логику сборки мета-данных на стороне сервера.
  • RAG-логика: Алгоритм формирования описания должен агрегировать данные из полей задачи, включая статус и финальный результат/решение.
  • Инфраструктура: Использовать существующий Caddy для эффективной отдачи статических файлов индексации и кэшированных изображений.

Вопросы к техлидам

  1. Производительность: Как эффективно реализовать кэширование мета-данных и файлов индексации (Sitemap/AI) в Redis, чтобы исключить паразитную нагрузку на PostgreSQL при массовом обходе ботами?
  2. Безопасность: Как настроить фильтрацию через систему CASL, чтобы в публичные файлы индексации и превью гарантированно не попали данные из приватных (закрытых) разделов?
  3. Формат данных: Какую структуру llms.txt вы предлагаете внедрить для наиболее эффективного потребления нейросетями в рамках текущей архитектуры?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions