Commit graph

3 commits

Author SHA1 Message Date
ochenstarik-ui
79ac9cf561 Fix account slot isolation and add background checks with per-account model discovery 2026-08-31 18:42:41 +07:00
Hermes Team
17b368a155 merge: A42, A45, A47, A48 — провайдеры, замеры MoE, общая память, интерфейс по макетам
A48 (Codex): вёрстка по макетам. style.css изменён на 178 строк, добавлен
workspace.js, приложены 79 скриншотов — до, после, макеты для сверки.
Проверено глазами: логотип, шапка с поиском, панель инструментов холста,
карточки узлов с моделью и аккаунтом, читаемые подписи связей, инспектор с
вкладками, три карточки внизу. Выдуманных чисел из макета нет, пустые
состояния честные.

A47: хранилище AI-Memory под git локально, память проекта приведена к
действительности, worklog заполнен, составлен перечень агентов сервера.

A45: три кандидата замерены. Файлы и размеры сверены по диску, контрольная
сумма Qwen3-Coder пересчитана независимо и совпала. Скорость 109,6 ток/с
на 64К независимо НЕ перемерена: свободно 1,9 ГБ видеопамяти, проверка
потребовала бы остановить рабочий кодер владельца.

A42: подключение OpenRouter, NVIDIA и Ollama, отдельные ветки обнаружения
моделей, отказ с причиной вместо мнимого успеха.

Конфликт A42 с A41 разрешён в пользу A41: ветка A42 отведена от e7194d3,
до слияния A41 в main, поэтому в ней не было динамических префиксов.
Сохранены _get_prefix и генерация слотов; зашитый provider_slots не взят.
Расширенный список ролей openrouter из A42 принят.

Ожидание теста A42 поправлено: nvidia и nvidia-nim — псевдонимы одного
провайдера с одним адаптером, слоты у них общие.

517 passed, ruff clean, релизный гейт 10/10 и на конфигурации владельца,
и на пустой.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-31 17:04:56 +07:00
ochenstarik-ui
3b221b87cb feat(providers): A42 подключение OpenRouter, NVIDIA, Ollama, исправление discovery и ложной квоты Codex
1. P0-1: В action_handler.py в add_account реализовано реальное сохранение профилей
   и учетных данных для openrouter, nvidia, nvidia-nim, ollama, local, claude, opencode-go.
   Для некорректных действий возвращается честная ошибка ok: False вместо мнимого успеха.
   В AutoAssigner добавлены слоты и возможности для openrouter и nvidia.
2. P0-2: В ModelDiscoveryService убраны зашитые списки PID. Добавлены ветки
   openrouter, nvidia и выделенная ветка ollama (/api/tags и /v1/models). Ошибки серверов
   сохраняются и передаются в интерфейс.
3. P0-3: В unified_health.py разделены статусы временного отката ошибки (STATUS_COOLDOWN)
   и исчерпания квоты (STATUS_QUOTA_EXHAUSTED). RATE_LIMITED проверяется до кулдаунов.
   В health_tracker.py исключена пометка всего аккаунта при пустом model_name.
   В codex_adapter.py уточнена классификация ошибок.
4. tests/test_a42_provider_connect.py: 15 тестов, 500 passed, ruff чисто.
2026-08-31 11:36:55 +07:00