5.1 KiB
5.1 KiB
AGENTS
Язык проекта
- По умолчанию использовать русский язык во всех пользовательских текстах и технических пояснениях.
- Пояснения к коммитам, PR и merge-запросам писать на русском языке.
- Комментарии в коде, встроенные справки, документацию и инструкции писать по возможности на русском языке.
Примечание
- Если внешний инструмент/интеграция требует английский формат, допускается английский, но рядом желательно дать краткое пояснение на русском.
Документация блокчейна
- Актуальная документация по форматам блокчейна находится в
Dev_Docs/Blockchain/README.md. - Это точка входа (оглавление), рядом расположены детальные файлы по форматам, типам каналов и командным сообщениям.
- При любом изменении кода, связанного с блокчейном (формат блока, типы каналов, правила чтения/записи, команды), обязательно обновлять соответствующие документы в
Dev_Docs/Blockchain/. - Дополнительно обязательно вести
Dev_Docs/Blockchain/CHANGELOG.md: дописывать изменения построчно с указанием даты/времени и хэша коммита, после которого внесено изменение.
Версионирование
- Единый файл версий проекта:
VERSION.properties(в корне репозитория). - Перед каждым новым коммитом обязательно увеличивать версии в
VERSION.properties: client.version— версия клиентского UI.server.version— версия серверной части.- Базовое правило инкремента:
+1по последнему числовому сегменту (patch), если не оговорено иное.
Deploy
- Все документы и заметки по деплою хранить в папке
Deploy Server/. - Для сервера
VPS-05(45.136.124.227) доступ выполнять через пользователяplayer. - Базовый целевой хост для деплоя по умолчанию:
player@45.136.124.227. - Базовый путь на сервере для SHiNE:
/home/player(проекты SHiNE размещать в/home/player/SHiNE/...). - По возможности все справки, комментарии и примечания в конфигах/документах писать на русском языке.
- Деплой UI выполнять только в один целевой контур за запуск: либо
prod(основной), либо один выбранный тестовый (ui_1,ui_2,ui_3,ui_drygmira,ui_milana,ui_aidar). - Если из запроса неясно, куда деплоить, обязательно сначала спросить пользователя, какой именно целевой контур нужен.
- По умолчанию сначала деплой и проверка на тестовом контуре; на основной (
prod) деплоить только после явного подтверждения пользователя, что версия проверена и готова. - При уточняющем вопросе отдельно предупреждать: деплой на основной выполнять только если точно подтверждена корректная работа.
Логи звонков (установка соединения)
- Специальный поток диагностики установки звонков идёт через
CallDeliveryReport(клиент → сервер). - На проде специальный файл для звонков:
/home/player/SHiNE/shine-server/logs/call-delivery-events.log- Общий серверный лог (и ротации) на проде:
/home/player/SHiNE/shine-server/logs/app.log/home/player/SHiNE/shine-server/logs/app.YYYY-MM-DD.log- Для анализа причин недозвона в первую очередь фильтровать записи по ключам:
CallDeliveryReportcall_connectedoutgoing_failedincoming_failedcall_busycall_declinedunknown_error- В этих записях искать поля
reason,failureStage,pcConnectionState,pcIceConnectionState,routeLabel,configuredTurnHosts*,reachableTurnHosts*.