chore: edit mds

This commit is contained in:
itqop 2025-12-18 11:52:02 +03:00
parent dbbd366953
commit ea94f98e74
11 changed files with 223 additions and 200 deletions

View File

@ -1,6 +1,6 @@
# CLAUDE.md
# Developer Guide
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
This file provides detailed technical documentation for developers working with this codebase.
## Project Overview
@ -293,6 +293,6 @@ See [TESTING.md](TESTING.md) for comprehensive testing guide including:
See [PROJECT_STATUS.md](PROJECT_STATUS.md) for detailed implementation status and TODOs. Key points:
- Core infrastructure is complete (auth, DB API client, RAG service)
- All main API endpoints are implemented
- TgBackendInterface is fully implemented (not a stub)
- Frontend integration pending (static/ directory is empty)
- No tests yet (tests/ directory is empty)
- TgBackendInterface is fully implemented
- 99% test coverage (unit + integration + E2E tests)
- Frontend integration complete

View File

@ -7,7 +7,7 @@
## Текущее состояние
### Готово (Backend)
### Готово (Backend)
- Структура FastAPI приложения
- JWT авторизация (8-значный логин)
- TgBackendInterface (полная реализация с httpx)
@ -20,9 +20,9 @@
- `POST /api/v1/query/backend` - последовательные запросы
- `POST/GET/DELETE /api/v1/analysis/sessions` - сессии анализа
- Docker setup (Dockerfile, docker-compose.yml)
- Документация (README.md, DB_API_CONTRACT.md, CLAUDE.md)
- Документация (README.md, DB_API_CONTRACT.md)
### Требуется доделать
### Требуется доделать
- Frontend файлы (перенос из rag-bench-old-version)
- API client для frontend
- Интеграция frontend с новым API
@ -645,20 +645,20 @@ app.middleware("http")(log_requests)
## Приоритезация задач
### 🔴 Критично (сделать в первую очередь)
### Критично (сделать в первую очередь)
1. Перенос статических файлов из rag-bench-old-version → `static/`
2. Создание `api-client.js`
3. Добавление login screen в `index.html`
4. Переписывание вызовов API в `app.js`
5. Тестирование auth flow
### 🟡 Важно (сделать после критичного)
### Важно (сделать после критичного)
6. Интеграция Settings UI
7. Environment selector
8. Сохранение и загрузка сессий анализа
9. Ручное тестирование всех сценариев
### 🟢 Желательно (если есть время)
### Желательно (если есть время)
10. Автоматические тесты (pytest)
11. Production deployment настройка
12. Logging middleware

View File

@ -44,7 +44,7 @@ cp rag-bench-old-version/settings.js static/
## Шаг 2: Создание api-client.js
См. полную реализацию в [DEVELOPMENT_PLAN.md](DEVELOPMENT_PLAN.md#12-создать-api-client-для-frontend).
См. полную реализацию в DEVELOPMENT_PLAN.md (раздел "Создать API client для frontend").
Создать файл `static/api-client.js` с классом `BriefBenchAPI`.

View File

@ -1,60 +1,60 @@
# 🚀 Production Readiness Checklist
# Production Readiness Checklist
Полная проверка готовности Brief Bench FastAPI к развертыванию в продакшн.
## Backend (FastAPI)
## Backend (FastAPI)
### Код и архитектура
- [x] **Все API endpoints реализованы**
- Auth: `/api/v1/auth/login`
- Settings: GET/PUT `/api/v1/settings`
- Query: POST `/api/v1/query/bench`, `/api/v1/query/backend`
- Analysis: CRUD `/api/v1/analysis/sessions`
- Health: `/health`
- Auth: `/api/v1/auth/login`
- Settings: GET/PUT `/api/v1/settings`
- Query: POST `/api/v1/query/bench`, `/api/v1/query/backend`
- Analysis: CRUD `/api/v1/analysis/sessions`
- Health: `/health`
- [x] **Бизнес-логика покрыта тестами: 99%**
- 119 unit tests (99% coverage)
- Integration tests (DB API)
- E2E tests (полный стек)
- 119 unit tests (99% coverage)
- Integration tests (DB API)
- E2E tests (полный стек)
- [x] **Services реализованы**
- AuthService (JWT токены)
- RagService (RAG backends: IFT, PSI, PROD)
- AuthService (JWT токены)
- RagService (RAG backends: IFT, PSI, PROD)
- [x] **Interfaces реализованы**
- TgBackendInterface (базовый HTTP клиент)
- DBApiClient (DB API integration)
- TgBackendInterface (базовый HTTP клиент)
- DBApiClient (DB API integration)
- [x] **Models валидация**
- Все Pydantic models для request/response
- Валидация входных данных
- Все Pydantic models для request/response
- Валидация входных данных
## Frontend (Static Files)
## Frontend (Static Files)
- [x] **HTML/CSS/JS файлы**
- index.html
- styles.css (Material Design)
- app.js (основная логика)
- api-client.js (API клиент)
- settings.js (настройки)
- index.html
- styles.css (Material Design)
- app.js (основная логика)
- api-client.js (API клиент)
- settings.js (настройки)
- [x] **Интеграция с backend**
- API client использует `/api/v1` endpoints
- JWT токены в localStorage
- Правильная обработка ошибок (401, 502, etc.)
- StaticFiles монтированы в main.py
- API client использует `/api/v1` endpoints
- JWT токены в localStorage
- Правильная обработка ошибок (401, 502, etc.)
- StaticFiles монтированы в main.py
- [x] **UI функциональность**
- Login screen
- Multi-environment tabs (IFT, PSI, PROD)
- Settings panel
- Query interface
- Results display
- Session management
- Login screen
- Multi-environment tabs (IFT, PSI, PROD)
- Settings panel
- Query interface
- Results display
- Session management
## ⚠️ Конфигурация (ТРЕБУЕТ ВНИМАНИЯ!)
## Конфигурация (ТРЕБУЕТ ВНИМАНИЯ!)
### 🔴 КРИТИЧНО - Сделать перед деплоем:
### КРИТИЧНО - Сделать перед деплоем:
- [ ] **1. Создать `.env` файл**
```bash
@ -121,55 +121,54 @@
DEBUG=false
```
## Docker & Deployment
## Docker & Deployment
- [x] **Dockerfile готов**
- Multi-stage build
- Копирует static/ файлы
- Expose 8000
- Uvicorn с правильными параметрами
- Multi-stage build
- Копирует static/ файлы
- Expose 8000
- Uvicorn с правильными параметрами
- [x] **docker-compose.yml готов**
- Порты пробрасываются (8000:8000)
- Volume для certs (read-only)
- Volume для static файлов
- .env подключается
- restart: unless-stopped
- Порты пробрасываются (8000:8000)
- Volume для certs (read-only)
- Volume для static файлов
- .env подключается
- restart: unless-stopped
## Безопасность
## Безопасность
- [x] **Authentication**
- JWT токены (30 дней expiration)
- Bearer token authentication
- Middleware для проверки токенов
- JWT токены (30 дней expiration)
- Bearer token authentication
- Middleware для проверки токенов
- [x] **Secrets management**
- .env не в git (.gitignore)
- .env.integration не в git
- .env.e2e не в git
- ⚠️ ВАЖНО: Сменить JWT_SECRET_KEY в продакшн!
- .env не в git (.gitignore)
- .env.integration не в git
- .env.e2e не в git
- ВАЖНО: Сменить JWT_SECRET_KEY в продакшн!
- [x] **mTLS сертификаты**
- Хранятся только на сервере
- Read-only volume в Docker
- Не коммитятся в git
- Хранятся только на сервере
- Read-only volume в Docker
- Не коммитятся в git
- [ ] **HTTPS (рекомендуется)**
- Настроить reverse proxy (nginx/traefik)
- Let's Encrypt сертификаты
- Редирект HTTP → HTTPS
## Документация
## Документация
- [x] **README.md** - основная документация
- [x] **CLAUDE.md** - архитектура и гайд для Claude
- [x] **DB_API_CONTRACT.md** - контракт с DB API
- [x] **TESTING.md** - полное руководство по тестированию
- [x] **PROJECT_STATUS.md** - статус реализации
- [x] **tests/integration/README.md** - интеграционные тесты
- [x] **tests/e2e/README.md** - E2E тесты
## 🔍 Pre-Deployment Testing
## Pre-Deployment Testing
### Локальное тестирование
@ -238,7 +237,7 @@
docker-compose down
```
## 🚀 Deployment Steps
## Deployment Steps
### 1. Подготовка сервера
@ -308,7 +307,7 @@ server {
}
```
## 📊 Post-Deployment Verification
## Post-Deployment Verification
После деплоя проверить:
@ -320,7 +319,7 @@ server {
- [ ] Session save/load работает
- [ ] Логи не содержат ошибок: `docker-compose logs -f`
## 🔧 Мониторинг и обслуживание
## Мониторинг и обслуживание
### Логи
@ -357,19 +356,19 @@ docker-compose up -d --build
### Backup
Критичные данные:
- `.env` - секреты и конфигурация
- `certs/` - mTLS сертификаты
- Пользовательские данные хранятся в DB API (не в FastAPI)
- `.env` - секреты и конфигурация
- `certs/` - mTLS сертификаты
- Пользовательские данные хранятся в DB API (не в FastAPI)
## Performance Considerations
## Performance Considerations
- RAG запросы могут занимать до 30 минут (настроено)
- Async/await для всех I/O операций
- Connection pooling в httpx clients
- Рассмотреть rate limiting для production
- Рассмотреть caching для settings (опционально)
- RAG запросы могут занимать до 30 минут (настроено)
- Async/await для всех I/O операций
- Connection pooling в httpx clients
- Рассмотреть rate limiting для production
- Рассмотреть caching для settings (опционально)
## 🐛 Troubleshooting
## Troubleshooting
### Проблема: Контейнер не запускается
@ -400,30 +399,30 @@ docker-compose up -d --build
2. JWT_SECRET_KEY одинаковый между запусками
3. Токен не истек (30 дней по умолчанию)
## Final Checklist Summary
## Final Checklist Summary
Перед деплоем в продакшн:
1. Backend код готов (99% coverage)
2. Frontend интегрирован
3. Docker конфигурация готова
4. ⚠️ **`.env` создан и заполнен**
5. ⚠️ **`JWT_SECRET_KEY` сгенерирован новый**
6. ⚠️ **RAG hosts настроены**
7. ⚠️ **DB_API_URL настроен**
8. ⚠️ **mTLS сертификаты размещены** (если используются)
9. ⚠️ **CORS настроен** (при необходимости)
10. ⚠️ **DEBUG=false**
11. Unit тесты passed
12. Integration тесты passed (опционально)
13. Локальное тестирование пройдено
14. Docker build успешен
1. Backend код готов (99% coverage)
2. Frontend интегрирован
3. Docker конфигурация готова
4. **`.env` создан и заполнен**
5. **`JWT_SECRET_KEY` сгенерирован новый**
6. **RAG hosts настроены**
7. **DB_API_URL настроен**
8. **mTLS сертификаты размещены** (если используются)
9. **CORS настроен** (при необходимости)
10. **DEBUG=false**
11. Unit тесты passed
12. Integration тесты passed (опционально)
13. Локальное тестирование пройдено
14. Docker build успешен
---
**Статус готовности: 🟡 ПОЧТИ ГОТОВ**
**Статус готовности: ПОЧТИ ГОТОВ**
**Готово:** Код, тесты, Docker, документация
⚠️ **Требуется:** Конфигурация окружения (.env, сертификаты, финальная настройка)
**Готово:** Код, тесты, Docker, документация
**Требуется:** Конфигурация окружения (.env, сертификаты, финальная настройка)
После выполнения пунктов из раздела "КРИТИЧНО" → **🟢 ГОТОВ К ПРОДАКШН**
После выполнения пунктов из раздела "КРИТИЧНО" → **ГОТОВ К ПРОДАКШН**

View File

@ -5,7 +5,7 @@
---
## 📋 Что реализовано
## Что реализовано
### 1. Структура проекта
@ -15,45 +15,45 @@ brief-bench-fastapi/
│ ├── api/
│ │ └── v1/
│ │ ├── __init__.py
│ │ └── auth.py POST /api/v1/auth/login
│ │ └── auth.py POST /api/v1/auth/login
│ ├── models/
│ │ ├── __init__.py
│ │ ├── auth.py LoginRequest, LoginResponse, UserResponse
│ │ ├── settings.py EnvironmentSettings, UserSettings
│ │ ├── analysis.py SessionCreate, SessionResponse, SessionList
│ │ └── query.py BenchQueryRequest, BackendQueryRequest
│ │ ├── auth.py LoginRequest, LoginResponse, UserResponse
│ │ ├── settings.py EnvironmentSettings, UserSettings
│ │ ├── analysis.py SessionCreate, SessionResponse, SessionList
│ │ └── query.py BenchQueryRequest, BackendQueryRequest
│ ├── services/
│ │ ├── __init__.py
│ │ └── auth_service.py AuthService (login logic)
│ │ └── auth_service.py AuthService (login logic)
│ ├── interfaces/
│ │ ├── __init__.py
│ │ ├── base.py ⚠️ TgBackendInterface (ЗАГЛУШКА - нужна реализация)
│ │ └── db_api_client.py DBApiClient (методы для DB API)
│ │ ├── base.py TgBackendInterface (ЗАГЛУШКА - нужна реализация)
│ │ └── db_api_client.py DBApiClient (методы для DB API)
│ ├── middleware/
│ │ └── __init__.py
│ ├── utils/
│ │ ├── __init__.py
│ │ └── security.py JWT encode/decode
│ │ └── security.py JWT encode/decode
│ ├── __init__.py
│ ├── config.py Settings из .env
│ ├── dependencies.py DI: get_db_client, get_current_user
│ └── main.py FastAPI app с CORS
├── static/ Пусто (нужно скопировать из rag-bench)
├── tests/ Полный набор тестов (unit/integration/e2e)
├── certs/ Не создана (для mTLS)
├── .env.example
├── .gitignore
├── requirements.txt
├── Dockerfile
├── docker-compose.yml
├── DB_API_CONTRACT.md Полный контракт для DB API
├── README.md
└── PROJECT_STATUS.md Этот файл
│ ├── config.py Settings из .env
│ ├── dependencies.py DI: get_db_client, get_current_user
│ └── main.py FastAPI app с CORS
├── static/ Пусто (нужно скопировать из rag-bench)
├── tests/ Полный набор тестов (unit/integration/e2e)
├── certs/ Не создана (для mTLS)
├── .env.example
├── .gitignore
├── requirements.txt
├── Dockerfile
├── docker-compose.yml
├── DB_API_CONTRACT.md Полный контракт для DB API
├── README.md
└── PROJECT_STATUS.md Этот файл
```
---
## Реализованные компоненты
## Реализованные компоненты
### 1. Configuration (app/config.py)
- Загрузка из .env через pydantic-settings
@ -88,7 +88,7 @@ brief-bench-fastapi/
### 3. Interfaces (app/interfaces/)
**base.py (⚠️ ЗАГЛУШКА!):**
**base.py (ЗАГЛУШКА!):**
```python
class TgBackendInterface:
def __init__(self, api_prefix: str, **kwargs)
@ -152,7 +152,7 @@ class TgBackendInterface:
---
## Что НЕ реализовано (TODO)
## Что НЕ реализовано (TODO)
### 1. TgBackendInterface реализация (КРИТИЧНО!)
Файл: `app/interfaces/base.py`
@ -259,28 +259,28 @@ class RagService:
- `app/middleware/logging.py` - логирование запросов
- `app/middleware/error_handler.py` - глобальная обработка ошибок
### 9. Tests COMPLETED
- **Unit Tests** (119 tests, 99% coverage) - `tests/unit/`
### 9. Tests COMPLETED
- **Unit Tests** (119 tests, 99% coverage) - `tests/unit/`
- All services, models, utilities tested in isolation
- All external dependencies mocked
- Run: `.\run_unit_tests.bat`
- **Integration Tests** (DB API integration) - `tests/integration/`
- **Integration Tests** (DB API integration) - `tests/integration/`
- FastAPI endpoints with real DB API
- Requires DB API service running
- Run: `.\run_integration_tests.bat`
- **End-to-End Tests** (Full stack) - `tests/e2e/`
- **End-to-End Tests** (Full stack) - `tests/e2e/`
- Complete workflows: auth → query → save → retrieve
- Requires all services (FastAPI + DB API + RAG backends)
- Real network calls to RAG backends
- Run: `.\run_e2e_tests.bat`
- **Test Documentation** - `TESTING.md`
- **Test Documentation** - `TESTING.md`
- Comprehensive testing guide
- Setup instructions for each test level
- Troubleshooting and best practices
---
## 🔑 Важные детали для продолжения
## Важные детали для продолжения
### Архитектура авторизации
1. Пользователь отправляет POST /api/v1/auth/login?login=12345678
@ -346,7 +346,7 @@ Body: {
---
## 🚀 План дальнейшей работы
## План дальнейшей работы
### Этап 1: Реализовать TgBackendInterface
**Приоритет:** ВЫСОКИЙ
@ -398,7 +398,7 @@ app.include_router(analysis.router, prefix="/api/v1")
---
## 📦 Dependencies (requirements.txt)
## Dependencies (requirements.txt)
```
fastapi==0.104.1
@ -416,7 +416,7 @@ fastapi-cors==0.0.6
---
## 🔧 Команды для разработки
## Команды для разработки
```bash
# Установить зависимости
@ -436,7 +436,7 @@ curl http://localhost:8000/health
---
## 📝 Примечания
## Примечания
1. **TgBackendInterface** - это ваша реализация, которая будет использоваться во всех клиентах (DBApiClient, возможно RagClient в будущем)
@ -454,7 +454,7 @@ curl http://localhost:8000/health
---
## 🎯 Готово к продолжению!
## Готово к продолжению!
Вся базовая структура создана. Следующий шаг - реализация TgBackendInterface и остальных endpoints.

View File

@ -4,13 +4,13 @@ FastAPI backend для системы тестирования RAG с multi-user
## Возможности
- 🔐 JWT авторизация (8-значный логин)
- 🌐 Multi-environment: ИФТ, ПСИ, ПРОМ
- 📊 Bench mode: batch тестирование
- 🤖 Backend mode: имитация бота (вопросы по одному)
- 💾 Сохранение сессий анализа
- 🔒 mTLS для RAG backend
- 📝 Аннотации и экспорт
- JWT авторизация (8-значный логин)
- Multi-environment: ИФТ, ПСИ, ПРОМ
- Bench mode: batch тестирование
- Backend mode: имитация бота (вопросы по одному)
- Сохранение сессий анализа
- mTLS для RAG backend
- Аннотации и экспорт
## Требования
@ -186,7 +186,6 @@ docker-compose down
## Документация
- [CLAUDE.md](CLAUDE.md) - архитектура и гайд для разработки
- [TESTING.md](TESTING.md) - руководство по тестированию
- [PRODUCTION_CHECKLIST.md](PRODUCTION_CHECKLIST.md) - чек-лист для продакшн
- [DB_API_CONTRACT.md](DB_API_CONTRACT.md) - контракт с DB API
@ -194,13 +193,13 @@ docker-compose down
## Status
**Проект готов к продакшн**
**Проект готов к продакшн**
- Backend полностью реализован (все endpoints, services, interfaces)
- Frontend интегрирован (HTML/CSS/JS)
- 99% test coverage (unit + integration + E2E)
- Docker ready
- ⚠️ Требуется: настройка `.env` и сертификатов
- Backend полностью реализован (все endpoints, services, interfaces)
- Frontend интегрирован (HTML/CSS/JS)
- 99% test coverage (unit + integration + E2E)
- Docker ready
- Требуется: настройка `.env` и сертификатов
**Перед деплоем:** см. [PRODUCTION_CHECKLIST.md](PRODUCTION_CHECKLIST.md)

View File

@ -543,7 +543,6 @@ Current coverage:
- [Integration Tests](tests/integration/README.md) - DB API integration
- [E2E Tests](tests/e2e/README.md) - Full stack testing
- [DB API Contract](DB_API_CONTRACT.md) - External API spec
- [CLAUDE.md](CLAUDE.md) - Architecture overview
- [PROJECT_STATUS.md](PROJECT_STATUS.md) - Implementation status
## Summary

27
format.py Normal file
View File

@ -0,0 +1,27 @@
from pydantic import BaseModel, Field
class Docs(BaseModel):
research: list
analytical_hub: list
class RagResponse(BaseModel):
"""Ответ от RAG на вопрос пользователя."""
body_research: str = Field(description="Текст ответа от Research на вопрос")
body_analytical_hub: str = Field(description="Текст ответа от Analytical Hub на вопрос")
docs_from_vectorstore: Docs | None = None
docs_to_llm: Docs | None = None
class RagResponseBench(RagResponse):
"""Ответ на вопрос + время обработки именно этого вопроса."""
processing_time_sec: float = Field(
description="Время обработки запроса в секундах",
ge=0,
)
question: str = Field(description="Исходный вопрос")
class RagResponseBenchList(BaseModel):
answers: list[RagResponseBench]

View File

@ -107,7 +107,7 @@ pytest -x
pytest -s
```
## Покрытие (Coverage)
## Покрытие тестами
### Unit Tests: **99%** (567 строк, 4 непокрыто)
@ -133,51 +133,51 @@ pytest -s
## Что тестируется
### 1. Authentication (test_auth.py)
- Успешная авторизация с валидным 8-значным логином
- Отклонение невалидных форматов логина
- Обработка ошибок DB API
- Генерация JWT токенов
- Валидация токенов
- Успешная авторизация с валидным 8-значным логином
- Отклонение невалидных форматов логина
- Обработка ошибок DB API
- Генерация JWT токенов
- Валидация токенов
### 2. Settings (test_settings.py)
- Получение настроек пользователя
- Обновление настроек
- Обработка несуществующих пользователей
- Валидация формата настроек
- Требование авторизации
- Получение настроек пользователя
- Обновление настроек
- Обработка несуществующих пользователей
- Валидация формата настроек
- Требование авторизации
### 3. Query (test_query.py)
- Bench mode запросы
- Backend mode запросы
- Валидация окружений (ift/psi/prod)
- Проверка соответствия apiMode
- Обработка ошибок RAG backend
- Построение headers для RAG
- Session reset в Backend mode
- Bench mode запросы
- Backend mode запросы
- Валидация окружений (ift/psi/prod)
- Проверка соответствия apiMode
- Обработка ошибок RAG backend
- Построение headers для RAG
- Session reset в Backend mode
### 4. Analysis (test_analysis.py)
- Создание сессий анализа
- Получение списка сессий
- Фильтрация по окружению
- Пагинация
- Получение конкретной сессии
- Удаление сессии
- Требование авторизации
- Создание сессий анализа
- Получение списка сессий
- Фильтрация по окружению
- Пагинация
- Получение конкретной сессии
- Удаление сессии
- Требование авторизации
### 5. Security (test_security.py)
- Создание JWT токенов
- Декодирование токенов
- Обработка невалидных токенов
- Обработка истекших токенов
- Кастомное время жизни токенов
- Создание JWT токенов
- Декодирование токенов
- Обработка невалидных токенов
- Обработка истекших токенов
- Кастомное время жизни токенов
### 6. Models (test_models.py)
- Валидация LoginRequest (8 цифр)
- Валидация QuestionRequest
- Валидация BenchQueryRequest
- Валидация BackendQueryRequest
- Валидация EnvironmentSettings
- Дефолтные значения
- Валидация LoginRequest (8 цифр)
- Валидация QuestionRequest
- Валидация BenchQueryRequest
- Валидация BackendQueryRequest
- Валидация EnvironmentSettings
- Дефолтные значения
## Моки

View File

@ -435,4 +435,3 @@ When adding new E2E tests:
- [Integration Tests](../integration/README.md) - Tests for DB API integration only
- [Unit Tests](../unit/) - Fast isolated tests
- [DB API Contract](../../DB_API_CONTRACT.md) - External DB API specification
- [CLAUDE.md](../../CLAUDE.md) - Project architecture overview

View File

@ -88,20 +88,20 @@ tests/integration/
## Что тестируется
### Auth Integration (`test_auth_integration.py`)
### Auth Integration (`test_auth_integration.py`)
- Успешная авторизация с реальным DB API
- Генерация и валидация JWT токенов
- Защита endpoint-ов с использованием JWT
- Обработка ошибок аутентификации
### Settings Integration (`test_settings_integration.py`)
### Settings Integration (`test_settings_integration.py`)
- Получение настроек пользователя из DB API
- Обновление настроек для всех окружений (IFT, PSI, PROD)
- Частичное обновление настроек
- Персистентность настроек
- Проверка структуры данных настроек
### Analysis Integration (`test_analysis_integration.py`)
### Analysis Integration (`test_analysis_integration.py`)
- Создание сессий анализа в DB API
- Получение списка сессий с фильтрацией
- Пагинация сессий
@ -109,7 +109,7 @@ tests/integration/
- Удаление сессий
- Целостность данных (включая Unicode, вложенные структуры)
### Query Integration (`test_query_integration.py`)
### Query Integration (`test_query_integration.py`)
- Получение настроек пользователя для запросов
- Проверка соответствия apiMode (bench/backend)
- Обновление настроек между запросами
@ -117,10 +117,10 @@ tests/integration/
## Что НЕ тестируется
**RAG Backend взаимодействие** - требует запущенные RAG сервисы (IFT/PSI/PROD)
**mTLS сертификаты** - требует реальные сертификаты
**Производительность** - используйте отдельные performance тесты
**Нагрузочное тестирование** - используйте инструменты типа Locust/K6
**RAG Backend взаимодействие** - требует запущенные RAG сервисы (IFT/PSI/PROD)
**mTLS сертификаты** - требует реальные сертификаты
**Производительность** - используйте отдельные performance тесты
**Нагрузочное тестирование** - используйте инструменты типа Locust/K6
## Troubleshooting