Files
netrunner-proxy/tools
nineap 40ddb0a0f6 Добавить опциональную авторизацию клиента и динамические лимиты трафика
Сервер получает флаги --require-auth/--backend-url (по умолчанию выключено,
поведение уже развёрнутых нод не меняется). Auth-кадр хендшейка расширен с
"session_id:leg_id" до "session_id:leg_id:token"; при включённом
--require-auth сервер валидирует токен через новый AuthValidator
(BackendClient к netrunner-backend, с кешем на 60с).

Muxer теперь ведёт монотонный учёт трафика сессии (переживает реконнект
ног — раньше total_bytes мог занижаться после переподключения) и раз в ~30с
отчитывается бэкенду; при превышении лимита сессия разрывается. Токен
клиента прокидывается через EngineConfig/TunnelConfig до Tauri-плагина
(desktop.rs + Android Kotlin-плагин).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-07 00:31:03 +07:00
..
2026-06-30 18:51:09 +07:00
2026-06-30 18:51:09 +07:00
2026-06-30 18:51:09 +07:00

tools — вспомогательные крейты

Утилиты, общие для проекта.

lognetrunner-logger

Единый логгер и реестр ошибок для всех крейтов. Обёртка над tracing/tracing-subscriber.

Файл Что внутри
src/lib.rs Глобальный Logger (один на процесс), два режима, PII-слой.
src/error.rs AppError + реестр кодов ERR_* (стабильные идентификаторы).
  • Режимы: production (JSON в файл с суточной ротацией + перехват паник) и debug (цветная консоль; на Android — tracing_android).
  • Уровень меняется на лету (Logger::set_level).
  • Макросы info!/error!/… ре-экспортируются, чтобы во всех крейтах писать netrunner_logger::info! без прямой зависимости на tracing.

bindgen — генератор FFI-биндингов

Однострочная обёртка вокруг uniffi_bindgen: по .udl-описанию клиента (client/src/netrunner_client.udl) генерирует Kotlin/Swift-обёртки для вызова нативных функций из мобильного приложения. Запускается из Makefile (цель build-android).

Детали — в rustdoc соответствующих крейтов.