{
  "modules": {
    "main-admin": {
      "version": "0.1.13",
      "sha256": "de8b5e9662f804f43817b08c3317d55df579fc18c756604ad0a99a1750b25004",
      "changelog": "Диагностика: игнорирует failed-статус transient юнитов webadmin-* и wgadmin-* (тоннельные процессы)."
    },
    "web-admin": {
      "version": "1.2.17",
      "sha256": "d942769532c4202228a99728af1c96ff7e56e05857cc5e83c1e42430b5eb31a1",
      "changelog": "L3 DNS/routing fix: l3-cleanup.sh (auto-installed); hysteria route.ipv4/ipv6: [] prevents global routing capture."
    },
    "wg-admin": {
      "version": "1.3.22",
      "sha256": "ffe74505bbb14ec39d1cd178ca95d481e31dc9c676426a7bc3e66e8709dd1a48",
      "changelog": "Исправлен статус L3 uplink: определяется через kernel interface UP; ping-probe через TUN peer IP; frontend: правильное поле unit при импорте из picker."
    },
    "firewall-sync-admin": {
      "version": "1.5.6",
      "sha256": "541b5e56fe020605a3452e8bb8df2842b484015da8d5e749d2c400f971b53464",
      "changelog": "Фикс мигания формы авторизации при переключении между модулями."
    },
    "server-admin": {
      "version": "1.6.28",
      "sha256": "4b0e694e9d35574a70d2fae42ffa1b7f974afa6ce9434ee336b9dc6fed519fc8",
      "changelog": "Убран туннель trojan → WireGuard (Trojan TCP-only, WireGuard UDP-only).",
      "url": "/server-admin-1.6.28.tar.gz"
    },
    "vps-auth": {
      "version": "1.0.9",
      "sha256": "37ffec8fc14561163142bbfaacc05ae9034298a8d2133da190e2fd98bc4e7017",
      "changelog": "Фикс мигания формы авторизации при переключении между модулями."
    }
  }
}