diff --git a/HISTORY/2026-07-31-session.md b/HISTORY/2026-07-31-session.md index f85e653..834577b 100644 --- a/HISTORY/2026-07-31-session.md +++ b/HISTORY/2026-07-31-session.md @@ -711,3 +711,54 @@ polygon/ ~900 строк Python, 37 YAML-конфигов, 19 тестов PASS. Задеплоено, проверено через curl и kubectl. Готово к интеграции с app-autotest. + +--- + +## Интеграция polygon ↔ app-autotest (2026-07-31, Sonnet + DeepSeek) + +### Промпт Соннету + +Сохранён в `polygon-docs/sonnet-integration-prompt.md`. 6 вопросов. + +### Ответ Соннета + +**Подход:** `endpoint in STANDS` вместо `_is_localhost()`. + +Список STANDS уже есть в `http_client.py`: +```python +STANDS = [ + "https://lk-api-gateway-dev.ngcloud.ru/api/v1/svc", + "https://lk-api-gateway-test.ngcloud.ru/api/v1/svc", +] +``` + +Если `NUBES_API_ENDPOINT` — один из STANDS → автоопределение как раньше. +Любой другой URL (localhost, polygon, кастом) → использовать напрямую, без detect. + +Для `stand_name`: `https://polygon.pythonk8s.dev.nubes.ru` содержит "dev" → +stand_name вернёт "dev" автоматически. Для localhost → "?" заменяется на "mock". + +**Коллизия портов:** polygon и app-autotest оба на 5000 локально. Решение: polygon на 5001. + +### Реализация (v1.2.24) + +**Файл:** `app-autotest/site/api/auth.py` (единственный файл). + +Изменения: +1. Импорт: `from api.http_client import ..., STANDS` +2. `get_client()`: `if endpoint in STANDS: detect_endpoint(...)` — автоопределение только для известных стендов +3. `get_stand()`: `if endpoint not in STANDS: s = stand_name(endpoint); return s if s != "?" else "mock"` + +**Использование:** +```bash +# Локально +NUBES_API_ENDPOINT=http://localhost:5001/api/v1/svc python app.py + +# Против задеплоенного polygon +NUBES_API_ENDPOINT=https://polygon.pythonk8s.dev.nubes.ru/api/v1/svc python app.py + +# Реальные стенды — без изменений +python app.py # NUBES_API_ENDPOINT = lk-api-gateway-test... → автоопределение +``` + +**Версия:** app-autotest v1.2.23 → v1.2.24 (`a398892`).