Валидация UUID

Перенесенные пользователи из Marzneshin теперь приводят к ошибке при попытке взаимодействия с ними. Например, на странице «Пользователи»

Панель 3.2.0

Скорее всего мигратор с marzneshin не совместим с актуальной версией панели. Можно попробовать провести миграцию на версии 2.8 или 2.7, после чего обновиться на 3.2

Миграция была выполнена ещё в прошлом году и все работало. Точно сказать с какой версии перестало работать трудно, но произошло это недавно :slight_smile:

Подтверждаю проблему

Пользователей переносил давно с marzban/marzneshin в remnawave через мигратор

Запрос на получение списка юзеров проходит, но таблица не отображается - появляется уведомление об ошибке валидации vlessUuid на каждого пользователя:

[
  {
    "origin": "string",
    "code": "invalid_format",
    "format": "uuid",
    "pattern": "/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/",
    "path": [
      "response",
      "users",
      2,
      "vlessUuid"
    ],
    "message": "Invalid UUID"
  },
  {
    "origin": "string",
    "code": "invalid_format",
    "format": "uuid",
    "pattern": "/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/",
    "path": [
      "response",
      "users",
      3,
      "vlessUuid"
    ],
    "message": "Invalid UUID"
  },
  ...
]

Пример ответа на запрос GET /api/users:

{
  "response": {
    "total": 30,
    "users": [
      {
        "activeInternalSquads": [
          {
            "name": "<REDACTED>",
            "uuid": "f25a3bd9-d6a0-4a90-b664-de8b94ae73f0"
          }
        ],
        "createdAt": "2026-06-02T06:54:41.785Z",
        "description": "<REDACTED>",
        "email": null,
        "expireAt": "2099-07-03T06:54:26.000Z",
        "externalSquadUuid": "<REDACTED>",
        "hwidDeviceLimit": null,
        "id": 196,
        "lastTrafficResetAt": null,
        "lastTriggeredThreshold": 0,
        "shortUuid": "ULEB0VmAgFxeWVd3",
        "ssPassword": "<REDACTED>",
        "status": "ACTIVE",
        "subRevokedAt": null,
        "subscriptionUrl": "<REDACTED>",
        "tag": null,
        "telegramId": null,
        "trafficLimitBytes": 0,
        "trafficLimitStrategy": "NO_RESET",
        "trojanPassword": "<REDACTED>",
        "updatedAt": "2026-06-02T06:54:41.781Z",
        "username": "<REDACTED>",
        "userTraffic": {
          "firstConnectedAt": "2026-06-02T07:07:45.017Z",
          "lastConnectedNodeUuid": "71944bc0-2687-4634-b0ce-352ea3bc4a93",
          "lifetimeUsedTrafficBytes": 430548209163,
          "onlineAt": "2026-08-07T07:26:30.022Z",
          "usedTrafficBytes": 430548209163
        },
        "vlessUuid": "c3cef096-7694-4696-99fb-205338819490"
      }
    ]
  }
}

В 3.x.x версии была обновлена библиотека валидации – Zod. Они в 4-ой версии сделали проверку uuid строже. Вероятно, marzban/marzneshin генерировали uuid, который не соответствует RFC 9562/4122, поэтому и возникает такая ошибка.

Исправление будет доступно в следующей версии панели – 3.2.2.