{
  "modules": {
    "main-admin": {
      "version": "0.1.14",
      "sha256": "f3f51f2a0e32874ef740c5bfa76a812213d013d920c0ab9698ab25f2dd7ec965",
      "changelog": "Ротация TLS-сертификата обновляет и перезапускает раздельные инстансы xray@vless/xray@trojan."
    },
    "web-admin": {
      "version": "1.2.27",
      "sha256": "ef08308bc08ce76663e9328fa799d66cf9723afe42ee9605b9f47305ebf73e90",
      "changelog": "Таблицы туннелей и групп: сортировка по всем полям + фильтры (тип/статус — мультивыбор, название/маршрут — текст)."
    },
    "wg-admin": {
      "version": "1.3.23",
      "sha256": "08dba3bc0c10b2d1368090bcd897259a01b2f54d33d1e90da2f1079af72f5d71",
      "changelog": "Исправлен статус L3 uplink: определяется через kernel interface UP; ping-probe через TUN peer IP; frontend: правильное поле unit при импорте из picker."
    },
    "firewall-sync-admin": {
      "version": "1.5.7",
      "sha256": "96c351c356d25b36207b159e4d289acf83b416bc58e8d65967b7774be6c4f2c4",
      "changelog": "Исправлены чипы в обзоре firewall."
    },
    "server-admin": {
      "version": "1.6.32",
      "sha256": "302f15de209ec8347f4fe3f5f0301dec2f8d8ca4aa66874cf8ffc11545ec5304",
      "changelog": "Xray разнесён на независимые инстансы: xray@vless (VLESS) и xray@trojan (Trojan) — стоп/старт по отдельности."
    },
    "vps-auth": {
      "version": "1.0.9",
      "sha256": "37ffec8fc14561163142bbfaacc05ae9034298a8d2133da190e2fd98bc4e7017",
      "changelog": "Фикс мигания формы авторизации при переключении между модулями."
    }
  }
}
