2026-10-24 00:18:31 +04:00

5.3 KiB
Raw Blame History

Why

Аналитики фиксируют требования и решения в evaTeam Wiki (Eva). Владельцу нужно две вещи: проверять задачи аналитиков и вовремя замечать, что его решения (и решения Claude в awp-ca) расходятся с тем, что аналитики уже записали в вики. Сейчас вики живёт отдельно от хаба, и Claude её не видит.

Решения владельца 23–24.10.2026 (brainstorming, jira-hub#91):

  • проект хаба связан не только с меткой Jira, но и с одной корневой страницей Eva, дерево под ней обходится рекурсивно; у каждого проекта метка Jira есть всегда, корень вики с меткой не совпадает; на общий случай (проект без метки, несколько корней) не обобщаем;
  • страницы хранятся Markdown-файлами в ~/.local/share/jira-hub/wiki/<проект>/ — удобный формат, читаемый из терминала;
  • главное — MCP, веб — вторым; MCP вики — отдельный сервер модуля, «чтобы не перегружать»;
  • в Eva ходит отдельный агент eva-agent, не jira-agent;
  • картинки и файлы страниц — только по запросу, как вложения Jira (#83): они бывают большими;
  • запись в вики и история изменений (30 дней) — нужны, но позже; сейчас базовый функционал.

Это второй шаг к sdlc-hub после модульной перестройки (#87). Там же оставлены два хвоста, которые закрываются здесь: доски проекта в ядре (метки долг hub-modules) и единственный агент.

What Changes

  • Модуль wiki хаба (jira_hub/modules/wiki/): привязка проекта к корню Eva, копия дерева страниц Markdown-файлами и индекс для поиска, список вложений страниц, команды wiki_sync и wiki_fetch, маршруты HTTP, фоновая синхронизация раз в сутки.
  • MCP вики jira-hub mcp wiki [--project <метка>]: дерево проекта, страница, поиск, вложение, синхронизация, состояние.
  • Веб: страница «Вики» проекта — дерево, страница в Markdown, поиск, обновление, скачивание вложений.
  • Виды агентов в ядре: у каждого модуля с командами — свой агент со своим токеном, статусом, опубликованным релизом и самообновлением; claim выдаёт агенту только команды его модуля. jira-agent v14 работает без изменений.
  • Проекты без Jira в ядре: доска (board_id, board_type) и число задач переезжают в модуль jira; модуль добавляет свои поля в создание проекта, в список проектов, в MCP projects/project_create и в окно «Новый проект». Все метки долг hub-modules снимаются.
  • eva-agent (новый репозиторий aep/eva-agent, создаёт владелец): Python 3.9 на stdlib, клиент Eva JSON-RPC, транспорт через общую папку, run.py и самообновление по образцу jira-agent. Контракт команд — в этой спеке; решения агента — в его собственном design-only change.

Non-Goals

  • Запись в вики (правка и создание страниц) — позже, командами eva-agent через ту же очередь.
  • История изменений страниц за 30 дней (встроенная в Eva или своими снимками) — позже; заодно частичная перекачка только изменённых страниц.
  • Проект без метки Jira, несколько корней вики у проекта, обобщённая «привязка внешних источников».
  • Переименование в sdlc-hub.
  • Спринты и бэклог.
  • Obsidian и любые внешние читатели копии: формат файлов не подстраиваем под них.

Anti-Goals

  • Сломать живой мост: jira-agent v14 без обновления, MCP jira-hub в awp-ca, адреса веба и API модуля jira.
  • Токен Eva на Mac mini: он живёт только в конфиге eva-agent на виртуалке, как пароль Jira у jira-agent.
  • Скачивание всех картинок и файлов Eva при синхронизации.
  • Хаб, который сам ходит в Eva.