{
  "product": "Control",
  "channel": "stable",
  "current": "0.1.25",
  "releases": [
    {
      "version": "0.1.25",
      "url": "https://otaserver.lion-lydian.ts.net/control/releases/control-0.1.25.bin",
      "size": 1555744,
      "sha256": "62cfa579bb32614664d1fc31a326fffcccb16deba7e576f39f97ad6e01e51b91",
      "generatedAt": "2026-05-10T10:40:03Z",
      "notes": "OTA public over Ethernet"
    },
    {
      "version": "0.1.23",
      "url": "https://otaserver.lion-lydian.ts.net/control/releases/control-0.1.23.bin",
      "size": 1465536,
      "sha256": "33a3c0651bd6b89c09baf40eba5116aa85dd4a0b88b956b57a1b16bcd46a0620",
      "generatedAt": "2026-05-10T09:25:19Z",
      "notes": "Public OTA"
    },
    {
      "version": "0.1.22",
      "url": "http://100.89.74.76/control/releases/control-0.1.22.bin",
      "size": 1337600,
      "sha256": "d2e4e9268534973f42a307a8875a27781f0c04a273bdb88873fdf3b9722e7d3d",
      "generatedAt": "2026-05-06T17:51:13Z",
      "notes": "Manual OTA publish"
    },
    {
      "version": "0.1.21",
      "url": "http://100.89.74.76/control/releases/control-0.1.21.bin",
      "size": 1337120,
      "sha256": "94ee4d59867b21147ff816d7db8d374ee9e9df9c424275964e10a29a8a59d135",
      "generatedAt": "2026-05-06T17:11:12Z",
      "notes": "Startup changed"
    },
    {
      "version": "0.1.20",
      "url": "http://100.89.74.76/control/releases/control-0.1.20.bin",
      "size": 1335616,
      "sha256": "483c6269697f044b0fe47001eba62a756389e7077425aeca63d178ad341a62b9",
      "generatedAt": "2026-05-06T14:15:47Z",
      "notes": "Ethernet web responsiveness fix"
    },
    {
      "version": "0.1.14",
      "url": "http://100.89.74.76/control/releases/control-0.1.14.bin",
      "size": 1251744,
      "sha256": "7b589cf690bdecc3873fcdf80f049171b994aa42fa722be9693358e93c37b482",
      "generatedAt": "2026-05-01T05:05:08Z",
      "notes": "Manual OTA publish"
    },
    {
      "version": "0.1.13",
      "url": "http://100.89.74.76/control/releases/control-0.1.13.bin",
      "size": 1251744,
      "sha256": "7b589cf690bdecc3873fcdf80f049171b994aa42fa722be9693358e93c37b482",
      "generatedAt": "2026-05-01T04:45:40Z",
      "notes": "test 13"
    },
    {
      "version": "0.1.12",
      "url": "http://100.89.74.76/control/releases/control-0.1.12.bin",
      "size": 1251744,
      "sha256": "7b589cf690bdecc3873fcdf80f049171b994aa42fa722be9693358e93c37b482",
      "generatedAt": "2026-05-01T04:44:50Z",
      "notes": "Web UI show wrong status of websocket fixed"
    },
    {
      "version": "0.1.11",
      "url": "http://100.89.74.76/control/releases/control-0.1.11.bin",
      "size": 1250432,
      "sha256": "9cb08819d223afc98ecd3a6db2af0cbc5f9e9d0d66bb4fe4e51b88eb603a7a9f",
      "generatedAt": "2026-04-30T14:05:41Z",
      "notes": "Use stable /api/test source for WebSocket runtime card on Setup"
    },
    {
      "version": "0.1.10",
      "url": "http://100.89.74.76/control/releases/control-0.1.10.bin",
      "size": 1250448,
      "sha256": "0c6988ebee989957d30d40437e1e321a804fbb8132b3b43960f218052c62ec2e",
      "generatedAt": "2026-04-30T14:01:03Z",
      "notes": "Fix WebSocket runtime badge state on Setup page"
    },
    {
      "version": "0.1.9",
      "url": "http://100.89.74.76/control/releases/control-0.1.9.bin",
      "size": 1250256,
      "sha256": "44bf817622d772fca84798a6d40532b9a14bb2c15f626850c6b5b3b721e8caa3",
      "generatedAt": "2026-04-30T13:52:54Z",
      "notes": "Add WebSocket runtime status card to Setup above WebSocket config"
    },
    {
      "version": "0.1.8",
      "url": "http://100.89.74.76/control/releases/control-0.1.8.bin",
      "size": 1247952,
      "sha256": "b6fee4e341dcc9828b04827e19181d7857e5b7e6fdc16972e58e22f3dce11b5c",
      "generatedAt": "2026-04-30T13:48:12Z",
      "notes": "Move WebSocket/OTA controls out of Test and keep Test diagnostics-only"
    }
  ]
}
