🐛 fix(nacos): 完善多版本连接与配置服务可靠性

- 支持 Nacos v1、v2、v3 就绪探测与受限账号连接
- 强化认证、缓存、单飞连接和关闭代际的并发边界
- 修复监听重复事件、导入身份碰撞及部分失败误报成功
- 补齐只读保护、结构化错误与六语言提示
This commit is contained in:
Syngnat
2026-07-28 23:51:17 +08:00
parent 199ab4fea1
commit e5e80cbbe8
26 changed files with 5152 additions and 354 deletions

View File

@@ -3357,6 +3357,9 @@
"connection_modal.field.port_plain": "Порт",
"connection_modal.field.primary_port": "Основной порт",
"connection_modal.field.private_key_path_optional": "Путь к закрытому ключу (необязательно)",
"connection_modal.field.nacosNamespaceId.label": "ID namespace",
"connection_modal.field.nacosNamespaceId.placeholder": "Например: dev; для public явно введите public",
"connection_modal.field.nacosNamespaceId.help": "Администраторы могут оставить поле пустым для обнаружения всех пространств имён. Учётная запись с доступом только к определённому пространству должна указать точный ID; для общего пространства явно введите public.",
"connection_modal.field.proxy_host": "Хост прокси",
"connection_modal.field.proxy_password_optional": "Пароль прокси (необязательно)",
"connection_modal.field.proxy_type": "Тип прокси",
@@ -3366,6 +3369,9 @@
"connection_modal.field.readOnly.help": "Выберите только те ограничения, которые нужны для редактирования результатов, изменения структуры, выполнения скриптов и операций импорта или синхронизации.",
"connection_modal.field.readOnly.label": "Защита прод-подключения",
"connection_modal.field.readOnly.option.dataEdit.help": "Запретить прямое редактирование в таблице результатов, массовую очистку и операции записи при публикации сообщений для этого подключения.",
"connection_modal.field.readOnly.option.nacos.dataEdit.help": "Запретить публикацию и удаление конфигураций, а также регистрацию, изменение, удаление и изменение состояния экземпляров сервиса.",
"connection_modal.field.readOnly.option.nacos.structureEdit.help": "Запретить создание, изменение и удаление пространств имён и сервисов.",
"connection_modal.field.readOnly.option.nacos.dataImport.help": "Запретить массовый импорт конфигураций в Nacos.",
"connection_modal.field.readOnly.option.dataEdit.label": "Ограничить редактирование данных",
"connection_modal.field.readOnly.option.dataImport.help": "Запретить импорт файлов, массовую загрузку и использование этого подключения как цели синхронизации.",
"connection_modal.field.readOnly.option.dataImport.label": "Ограничить импорт данных",
@@ -8901,6 +8907,7 @@
"nacos.backend.error.login_parse": "Не удалось разобрать ответ входа: {{detail}}",
"nacos.backend.error.login_empty_token": "Вход в Nacos успешен, но accessToken пуст",
"nacos.backend.error.invalid_address": "Недопустимый адрес Nacos: {{detail}}",
"nacos.backend.error.ssh_tunnel_create_failed": "Не удалось создать SSH-туннель Nacos: {{detail}}",
"nacos.backend.error.tls_setup_failed": "Ошибка настройки TLS: {{detail}}",
"nacos.backend.error.build_request": "Не удалось создать запрос: {{detail}}",
"nacos.backend.error.request_failed": "Запрос к Nacos не выполнен: {{detail}}",
@@ -8956,11 +8963,14 @@
"nacos.namespace.message.update_success": "Namespace обновлён",
"nacos.namespace.message.delete_success": "Namespace удалён",
"nacos.namespace.message.confirm_delete": "Удалить namespace {{name}} ({{id}})? Это нельзя отменить.",
"nacos.namespace.message.scoped_fallback": "Не удалось получить список всех пространств имён. Используется настроенное пространство {{id}}.",
"nacos.namespace.message.scope_required": "Эта учётная запись не может получить список пространств имён. Измените подключение и укажите разрешённый Namespace ID.",
"nacos.backend.error.parse_services": "Не удалось разобрать список сервисов: {{detail}}",
"nacos.backend.error.parse_service": "Не удалось разобрать детали сервиса: {{detail}}",
"nacos.backend.error.parse_instances": "Не удалось разобрать список инстансов: {{detail}}",
"nacos.backend.error.parse_instance": "Не удалось разобрать детали инстанса: {{detail}}",
"nacos.backend.error.service_name_required": "Требуется имя сервиса",
"nacos.backend.error.ephemeral_service_unsupported_v1": "Nacos v1 не поддерживает создание временных сервисов; создайте постоянный сервис или обновите Nacos",
"nacos.backend.error.instance_ip_required": "Требуется IP инстанса",
"nacos.backend.error.instance_port_invalid": "Недопустимый порт инстанса",
"nacos.backend.error.instance_healthy_required": "Требуется флаг healthy",
@@ -8986,6 +8996,8 @@
"nacos_service.field.healthy": "Healthy",
"nacos_service.field.enabled": "Enabled",
"nacos_service.field.ephemeral": "Ephemeral",
"nacos_service.field.persistent": "Постоянный",
"nacos_service.field.type": "Тип",
"nacos_service.field.protect_threshold": "Protect threshold",
"nacos_service.action.create_service": "Создать сервис",
"nacos_service.action.register_instance": "Зарегистрировать инстанс",
@@ -8998,6 +9010,7 @@
"nacos_service.message.instance_update_success": "Инстанс обновлён",
"nacos_service.message.instance_deregister_success": "Регистрация снята",
"nacos_service.message.instance_health_success": "Health обновлён",
"nacos_service.message.ephemeral_registration_unavailable": "GoNavi не продлевает временные экземпляры; ручная регистрация доступна только для постоянных сервисов.",
"nacos_service.message.confirm_delete_service": "Удалить сервис {{name}}? Только если нет инстансов.",
"nacos_service.message.confirm_deregister": "Снять регистрацию {{ip}}:{{port}}?",
"tab_manager.hover.kind.nacos_services": "Сервисы Nacos",
@@ -9018,6 +9031,8 @@
"nacos.backend.error.import_format_invalid": "Недопустимый формат импорта: {{format}}",
"nacos.backend.error.import_version_invalid": "Неподдерживаемая версия импорта: {{version}}",
"nacos.backend.error.import_empty": "Файл импорта не содержит конфигураций",
"nacos.backend.error.import_selection_required": "Выберите хотя бы одну конфигурацию для импорта",
"nacos.backend.error.import_partial_failed": "Не удалось импортировать часть конфигураций: импортировано {{imported}}, пропущено {{skipped}}, ошибок {{failed}}. Первая ошибка: {{detail}}",
"nacos.backend.error.import_item_invalid": "Недопустимый элемент импорта (index={{index}})",
"nacos.backend.error.export_empty": "Нет конфигураций для экспорта",
"nacos.backend.message.beta_publish_success": "Beta-конфигурация опубликована",