Модуль wiki, агенты модулей, поля проектов (#91) #92
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "feat/91-wiki"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #91
Второй шаг к sdlc-hub. Он даёт:
wiki: Markdown-копию дерева EVA Wiki по проекту, поиск, вложения по запросу, MCPjira-hub-wikiи страницу «Вики»;jira,wiki) в ядре;hub-modulesбольше нет.Спека:
openspec/changes/wiki-module/. План:docs/superpowers/plans/2026-10-24-wiki-module.md.eva-agent — отдельный репозиторий
aep/eva-agent, отдельный PR.Что сделано
tokens={client, agents: {jira, wiki}}, прежний агентский токен стал токеномjira;agent_statusхранит строку на каждого агента;jira_project.claim, релиз (release/<модуль>/), самообновление и/agent/settingsу каждого агента свои.GET /agents,GET /agent?module=,jira-hub agent publish --module.ProjectFieldиproject_viewу модулей.PATCH /projects/{label}.wiki_root;wiki_syncиwiki_fetch;POST /agent/wiki/pages;markdownify, ссылкиattachment:/page:);/wiki/*;jira-hub-wiki(9 инструментов);Совместимость
claim, релиз v14,/agent/settingsбезboard_id.tests/fixtures/baseline/mcp_tools.expected.json(серверjira-hub) не изменился ни на байт.schema: v7,agent_status,jira_project, таблицы wiki;settings: ключи wiki,min_agent_versionпереехал в jira,board_idудалён;routes: только новые маршруты.Проверка
make check: pytest957 passed, vitest52 files / 485 tests passed, tsc и eslint чистые.npm run e2e:39 passed,44 skipped(screens-тесты).openspec validate wiki-module --strict: valid.⚠️ Выкатка — порядок важен (I-2)
Порядок:
git pull→ сразуlaunchctl kickstart -k gui/$(id -u)/ru.aepif.jira-hub→make web→/mcpreconnect.Между pull и kickstart нельзя запускать
jira-hub mcp,jira-hub tokensи переподключать MCP. Новый код мигрирует живую базу в v7, а старый процесс хаба с ней уже не работает.Откат: предыдущий коммит, копия базы
backups/*schema-v6*и возвратrelease/jira/*вrelease/.Rulings I made
Полный список с ценой ошибки —
design.md, раздел «Decisions made without discussion», #1–#79. Основные:INSERT OR IGNOREстрокagent_statusдля агентов модулей при каждомmigrate.Цена ошибки: правка одного места.
POST /projectsотдаёт{project, batch_id}, как в спеке, безbatch_ids.Цена ошибки: второй пакет виден только через
GET /batches.(?i:\beva\b|wiki_|wiki/)|DOC-.Цена ошибки: правка регэкспа.
Цена ошибки: закрыто в Task 7.
paths.dir_name(label)с экранированием.Цена ошибки: экзотические метки получают экранированное имя.
CommandHooks.before_result/abort_result: копия собирается вне блокировки базы.Цена ошибки: правка контракта модуля.
GET /wiki/search→{"results": [...]}, спека поправлена.Цена ошибки: формат ответа.
Цена ошибки: два известных недочёта.
ProjectField.validate_edit(#78);on_project_updated» вregistry.check(#42);DROP COLUMN, нужен SQLite ≥ 3.35 (#36);.<метка>.new.<id>под замком метки (#59);Отложено (уйдёт в follow-up issue при закрытии)
command_retryдаёт второй живойwiki_sync;/wiki/attachments/{id}не привязан к проекту сессии.🤖 Generated with Claude Code
tokens -> {client, agents: {модуль: токен}}, agent_status по агентам (ключ agent, last_call_at), настройки агента и маршруты agent-scope по модулю токена, min_agent_version переехал в модуль jira. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>Окно «Новый проект» собирает поля из MODULES[].projectFields; Project — ядро плюс поля модулей; useUpdateProject (PATCH /projects/{label}); метка «долг hub-modules» снята; e2e читают токен агента из tokens.agents.jira. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>