| 2026-09-22 |
Docker: ZIP расширения собирается в образе фронта
...
Контекст сборки web — корень репо (+.dockerignore): стадия extension
после фронта, zip dist раздаётся статикой nginx по /extension/…
Co-Authored-By: Claude Code <noreply@anthropic.com>
root
committed
8 hours ago
|
| 2026-09-21 |
Подготовка к деплою: GAUTH_WEBHOOK_SECRET в compose, чистка MCP_TOKEN
...
- docker-compose: проброс GAUTH_WEBHOOK_SECRET в api (без него webhook
молча 503 на проде); удалён устаревший MCP_TOKEN (ТЗ 0.34)
- .env.example/README: комментарий про per-user токены вместо env
- тест webhook_disabled: секрет пуст явно — Settings теперь читает
backend/.env с реальным секретом
Co-Authored-By: Claude Code <noreply@anthropic.com>
root
committed
1 day ago
|

Docker-деплой готов к проде (ТЗ 0.33, M7)
...
- nginx: client_max_body_size 20m (вложения до 10 МБ падали бы с 413),
HTTP/1.1-апстрим с keepalive и без буферизации для /api/ и /mcp/ (SSE),
кэш хэшированной статики на год, gzip
- compose: убраны контейнеры ollama/ollama-init (Ollama — внешний сервер,
OLLAMA_BASE_URL из .env); restart для db; healthcheck api через
/api/health (start_period 30s на миграции); модель по умолчанию
согласована с конфигом (qwen3.5:2b-q4_K_M, открытый вопрос ТЗ 8.5 закрыт)
- mcp_server: FastMCP пропускал только Host localhost — в проде за nginx
/mcp отвечал 421; разрешённый Host берётся из GAUTH_REDIRECT_URI
(dev-поведение не изменилось, защита от DNS-rebinding сохранена)
- README: раздел «Деплой» — шаги, внешний TLS-прокси, лимит тела,
буферизация SSE, почему 1 воркер uvicorn
- ТЗ 0.33: TLS — внешний reverse-proxy; Ollama — внешний сервер
Проверено локально полным стеком (db+api+web на :8135): сборка образов,
SPA/health/SSO-редирект/413/gzip/MCP-флоу (initialize → tools/call),
MCP с чужим Host — 421. 117 backend-тестов, mypy, ruff — чисто.
Co-Authored-By: Claude Code <noreply@anthropic.com>
root
committed
1 day ago
|
| 2026-09-19 |
M7: docker-compose — API, PostgreSQL, фронт (nginx), Ollama + модель
...
- compose: db (postgres:17, volume), ollama + одноразовый ollama-init (pull модели),
api (alembic upgrade при старте), web (nginx: SPA + прокси /api /auth /mcp)
- backend Dockerfile: git для uv-зависимостей, alembic.ini + миграции в образ
- frontend Dockerfile: npm ci с package-lock, .npmrc до npm install
- nginx: /auth/ прокси (SSO-флоу), /mcp/ без буферизации (SSE)
- smoke-тест compose-стека (db+api+web): health через nginx, 401 без сессии
Co-Authored-By: Claude Code <noreply@anthropic.com>
root
committed
3 days ago
|
M0: каркас проекта
...
- ТЗ v0.3 (docs/TZ.md): требования, модель данных, архитектура, вехи
- backend: FastAPI-скелет (health), конфиг из окружения, интеграция gnexus-gauth
- frontend: Vue 3 + Vite + TypeScript, каркас SPA (стек/дерево), gnexus-ui-kit
- Docker: Dockerfile'ы, docker-compose (postgres/api/web), nginx с /api-прокси
- Гейты: ruff + mypy strict (pass), vue-tsc + vite build (pass)
Co-Authored-By: Claude Code <noreply@anthropic.com>
root
committed
3 days ago
|