Commit Graph

  • ed6bc1d898 docs(api): align OpenAPI with runtime contracts (#6409) main dev-latest Gleb Gudkov 2026-09-04 16:23:41 +03:00
  • 3b5273b1d6 fix(amneziawg): reject obfuscation values amneziawg-go's own UAPI rejects Sanaei 2026-09-04 14:57:29 +02:00
  • be5ee3e0e1 fix(amneziawg): three defects in the embedded relay's connection handling Sanaei 2026-09-04 14:57:11 +02:00
  • 24cb6bfe1f perf(amneziawg): return gVisor's pooled buffers on the embedded data path Sanaei 2026-09-04 14:56:54 +02:00
  • d34ec97f62 perf(node): push a client edit to every node at once, not one after another Sanaei 2026-09-04 11:39:56 +02:00
  • 3ef06b7000 docs(readme): refresh all seven READMEs for the current feature set Sanaei 2026-09-04 09:49:25 +02:00
  • 2e81865a02 style(node): tighten the comments and probe assertion from the QA pass Sanaei 2026-09-04 02:48:44 +02:00
  • 5fc4b9f463 fix(node): let a node-reported tag outrank a stale adopted alias Sanaei 2026-09-04 02:48:35 +02:00
  • ab4229534e fix(node): cap the status body the heartbeat probe decodes Sanaei 2026-09-04 02:35:11 +02:00
  • 0775fcaad2 fix(node): keep an adopted inbound alias across a remote id cache refresh Sanaei 2026-09-04 02:35:02 +02:00
  • 6f40a51d62 fix(node): sweep a selected inbound the node reports without its prefix Sanaei 2026-09-04 02:34:53 +02:00
  • f6bfcfe759 refactor(ci): make the Claude workflow review pull requests and nothing else Sanaei 2026-09-04 02:09:50 +02:00
  • 41db85a096 docs(claude): teach the bot briefings about AmneziaWG and PIA Sanaei 2026-09-04 02:09:28 +02:00
  • 63b46cd612 perf(clients): apply a multi-inbound client create concurrently Sanaei 2026-09-04 01:01:20 +02:00
  • 2ddcf53020 Feature/fix external subscription client expiry (#6333) duqigit 2026-09-04 04:32:05 +08:00
  • 13e87a18c8 chore(ci): give the race job a 25m test timeout Sanaei 2026-09-03 21:57:38 +02:00
  • bd1c27b03d fix(amneziawg): H1-H4 generator + queue-depth throughput fixes (#6330) kuzzrus 2026-09-03 22:50:23 +03:00
  • 0ff3c23948 fix(api-docs): generate request bodies for all encodings (#6296) ilyusha 2026-09-03 22:20:38 +03:00
  • f294e1806d feat(release): publish SHA-256 sums and verify them in install.sh/update.sh (#6393) ilyusha 2026-09-03 21:44:00 +03:00
  • 4019f47de2 fix(x-ui.sh): put the fail2ban backend override in jail.d, not jail.conf (#6392) ilyusha 2026-09-03 21:42:14 +03:00
  • 8411b1dd9e chore: upgrade Vitest to v5 Sanaei 2026-09-03 20:37:10 +02:00
  • a31fa9abfa fix(node): refuse a node's claim on another inbound's client Sanaei 2026-09-03 18:06:35 +02:00
  • f17e4684e0 fix(sub): apply the device limit to ?view=raw Sanaei 2026-09-03 18:06:35 +02:00
  • f9de0226fe fix(xray): confine log paths written under any key case Sanaei 2026-09-03 18:06:15 +02:00
  • 25d0c06f89 fix(ci): skip a head the review bot already reviewed, and report a refused run Sanaei 2026-09-03 17:26:00 +02:00
  • 47964afbc5 fix(clients): render all tunnel configs for multi-inbound client (#6346) (#6349) MRVX 2026-09-03 18:33:48 +03:30
  • de18c5a006 fix: do not type successfull login twice (#6374) Mapioe 2026-09-03 20:00:25 +05:00
  • 195988bdc1 fix(install): fetch x-ui.sh and unit files from the installed release tag (#6391) ilyusha 2026-09-03 17:50:53 +03:00
  • 23511108bf fix(database): keep the SQLite store owner-only (#6390) ilyusha 2026-09-03 17:37:35 +03:00
  • 540caa4e93 fix(hysteria): standard geco share links and persistent uTLS None (#6325) Rouzbeh† 2026-09-03 18:05:07 +03:30
  • f9898e0b24 fix(sub): randomize fresh panel subscription paths (#6375) ilyusha 2026-09-03 17:34:37 +03:00
  • ded2aa150c fix(frontend): isolate subscription language preference (#6394) dawn 2026-09-03 22:33:37 +08:00
  • 0c72dd8384 fix(sub): restore compatible SOCKS subscription inbound (#6395) dawn 2026-09-03 22:33:14 +08:00
  • 04e8458054 fix(frontend): improve dense QR readability (#6396) dawn 2026-09-03 22:32:27 +08:00
  • e95fe80fc4 fix(amneziawg): avoid manager lock inversion (#6397) dawn 2026-09-03 22:31:53 +08:00
  • 65b9bfed8b fix(ci): stop the review bot handing over fixes in prose Sanaei 2026-09-03 13:42:48 +02:00
  • 38dd9bcc70 Bump Go dependency versions Sanaei 2026-09-02 21:59:39 +02:00
  • e264ea89c1 chore(deps): bump docs and frontend deps Sanaei 2026-09-02 21:37:55 +02:00
  • ac193cd9d3 refactor(ci): split the issue analyst out and brief the review job from a file Sanaei 2026-09-02 21:06:58 +02:00
  • c62ee0bbd8 fix(outbound): test VLESS vnext endpoints (#6358) Sangeeth Thilakarathna 2026-09-03 00:16:49 +05:30
  • 8abe87b625 fix(outbounds): preserve stable subscription tags (#6345) dawn 2026-09-03 02:46:20 +08:00
  • f64453041a fix: preserve per-inbound WireGuard peer addresses (#6344) Matt Van Horn 2026-09-02 11:45:11 -07:00
  • b81216135d fix(clients): sync auto-renewal across inbounds (#6339) dawn 2026-09-03 02:39:03 +08:00
  • 71607e3861 fix: Prevent node snapshots from resurrecting bulk-deleted clients (#6382) Matt Van Horn 2026-09-02 11:25:40 -07:00
  • 1bf078c51e feat(routing): add panel-only comment field to routing rules (#6361) Sentiago 2026-09-02 21:22:50 +03:00
  • 7100fbcd08 feat(sub): leastLoad member weights for subscription balancers (#6304) DIMFLIX 2026-09-02 21:21:27 +03:00
  • f9cfd87cb2 feat(nord): support multi-server NordLynx outbounds (#6311) Masterain 2026-09-03 02:20:10 +08:00
  • f727d04f65 v3.7.0 v3.7.0 Sanaei 2026-08-24 15:07:15 +02:00
  • fcf60eb2e2 chore: bump dependencies and clear deprecated frontend APIs Sanaei 2026-08-24 14:56:40 +02:00
  • 103b0dfe8d fix(job): expire stored client IPs of offline clients Sanaei 2026-08-24 13:27:40 +02:00
  • 2d30ab3ada fix(panel): stop one poisoned DNS answer from blocking outbound tests Sanaei 2026-08-24 13:27:40 +02:00
  • d175050f2e fix(job): force-disconnect over-limit Hysteria2 clients Sanaei 2026-08-24 13:27:40 +02:00
  • 7a595cb46d fix(sub): keep Hysteria2 mport on external-proxy links Sanaei 2026-08-24 13:27:39 +02:00
  • f13baa9af5 fix(tgbot): split long messages at line boundaries (#6293) Sangeeth Thilakarathna 2026-08-24 16:33:37 +05:30
  • 9408424959 fix(panel): forward the panel's proxy to update.sh's own downloads (#6259) Kuzz007 2026-08-24 04:01:56 +03:00
  • f204997c98 chore(i18n): update tr-TR translations (#6288) Turan 2026-08-24 03:47:45 +03:00
  • effcccceac feat(amneziawg): add native AmneziaWG protocol support (#6105) Kuzz007 2026-08-24 03:41:15 +03:00
  • d9b599b9aa fix(sub): forward tlsSettings.cipherSuites into the JSON subscription Sanaei 2026-08-24 02:38:40 +02:00
  • cc245a908e style: format struct literals and whitespace Sanaei 2026-08-24 00:06:01 +02:00
  • c26ff59b47 chore(sub): drop the inlined externalLinkEnabled test helper Sanaei 2026-08-23 23:18:49 +02:00
  • 6f7a305239 fix(node): stop stale expiry sync from undoing client extensions (#6228) (#6231) mrchatam 2026-08-24 00:47:56 +03:30
  • da01b7637d feat(sub): client-side balancers for the JSON subscription (#6243) DIMFLIX 2026-08-23 23:34:20 +03:00
  • 81fcacab11 chore(build): bump Go toolchain to 1.27.0 Sanaei 2026-08-23 21:51:39 +02:00
  • 02002dc1c3 feat(routing): add client picker to user rules (#6271) Zane 2026-08-23 05:13:34 +08:00
  • 326009e9d3 fix(traffic): clear cross-panel rows only for clients actually renewed (#6263) n0ctal 2026-08-23 02:12:33 +05:00
  • 585f4ecdc0 fix: reject Hysteria inbound updates with empty client auth (#6268) Matt Van Horn 2026-08-22 22:11:42 +01:00
  • bd6a6aba43 feat(pia): add PIA login-and-add WireGuard outbounds (#6272) Masterain 2026-08-23 05:11:06 +08:00
  • a3e617215c fix(ci): pin the head the review job checks out Sanaei 2026-08-22 21:09:24 +02:00
  • a255ab7c65 fix(node): don't stamp InboundsAdoptedAt when the sync adopted nothing (#6284) yzxcj797 2026-08-23 02:37:55 +08:00
  • af3e6c11b6 docs(api): document WireGuard and mtproto secret generation on clients/add (#6282) ilyusha 2026-08-22 21:37:39 +03:00
  • b73ceae081 fix(frontend): refresh subscription settings after save (#6287) dawn 2026-08-23 02:11:51 +08:00
  • 1250fbb734 feat(clients): allow removing a single HWID device (#6265) Kuzz007 2026-08-21 15:17:05 +03:00
  • 5321665d5b feat(ci): give the review bot a severity scale and a tally Sanaei 2026-08-21 03:19:33 +02:00
  • 73a971c2d1 fix(ci): give the review bot the pull request's own code and CI verdict Sanaei 2026-08-20 23:12:35 +02:00
  • 19a2c23c01 fix(ci): repair the review comment and the conflict-resolution guard Sanaei 2026-08-20 20:14:24 +02:00
  • e4798a027c chore(lint): adapt to staticcheck v0.8.0 under golangci-lint v2.13.1 Sanaei 2026-08-20 19:37:40 +02:00
  • 845abc380e fix(ci): make the review bot post its findings and acknowledge mentions Sanaei 2026-08-20 15:59:51 +02:00
  • 58669f6146 refactor(ci): replace the in-house review lanes with the official code-review skill Sanaei 2026-08-20 15:08:04 +02:00
  • 19e71d9acc refactor(ci): move the bot's repository briefing into versioned files a test pins Sanaei 2026-08-20 05:18:13 +02:00
  • f7db247b07 perf(clients): write client_inbounds deltas and check identity from the clients table Sanaei 2026-08-20 04:09:57 +02:00
  • c8a3a2d723 fix(security): require a 2FA code to replace the stored TOTP secret Sanaei 2026-08-19 19:54:15 +02:00
  • b51f09768b fix(netsafe): classify IPv6 transition and CGNAT ranges as internal Sanaei 2026-08-19 19:37:14 +02:00
  • 3c087f6fd9 chore(docs): update dependencies and adapt to zbsearch 4 Sanaei 2026-08-19 18:38:40 +02:00
  • ce63bf3e66 fix(frontend): restore the two rolldown bindings npm dropped from the lockfile Sanaei 2026-08-19 18:18:49 +02:00
  • b9eda09da9 chore(frontend): update dependencies and adapt to oxlint 1.79 Sanaei 2026-08-19 17:48:28 +02:00
  • 92fb94d856 Move to TypeScript 7 and the oxc toolchain (oxlint + oxfmt) (#6262) Sanaei 2026-08-19 15:36:27 +02:00
  • 380aff4d82 Add remote routing URL support (#6168) Duxxie 2026-08-18 17:02:11 +03:00
  • 3a2f9b48da feat(web): add network-only PWA installability (#6190) korsun009 2026-08-18 16:33:20 +03:00
  • 3f1dd4bf5a fix: follow-ups from the post-merge reviews of #6221, #6227, #6230 and #6239 (#6250) n0ctal 2026-08-18 18:24:59 +05:00
  • abd320994a Add per-client external link controls (#5650) jason zhang 2026-08-18 19:55:04 +08:00
  • 708a69acde fix(reality): make the REALITY target check usable on a private network (#6242) shustovTE 2026-08-18 14:47:59 +03:00
  • f75ea08ab4 fix(frontend): keep the MSW worker in step with the lockfile (#6222) n0ctal 2026-08-18 16:44:55 +05:00
  • 5c7ca5b579 feat(clients): give each client its own traffic reset cycle (#6240) n0ctal 2026-08-18 16:08:44 +05:00
  • b8903fadf4 feat(clients): renew on a calendar day instead of a rolling interval (#6239) n0ctal 2026-08-18 15:46:00 +05:00
  • 1872659d83 chore(gitignore): fully ignore internal/web/dist, build stub included Sanaei 2026-08-18 12:42:49 +02:00
  • 6638ac4a1e i18n: translate importKeepHostSettings keys Sanaei 2026-08-18 12:27:33 +02:00
  • d6472740dc feat(limitip): let operators exempt trusted addresses from the IP limit (#6230) n0ctal 2026-08-18 15:23:10 +05:00
  • 6e80a468e3 feat(server): keep this machine's own settings when importing a database (#6227) n0ctal 2026-08-18 15:03:52 +05:00
  • e940f30bb8 feat(clients): cap how many times a client may auto-renew (#6238) n0ctal 2026-08-18 14:53:11 +05:00
  • 6a674c7f0c fix(node): keep disabled inbounds the node snapshot cannot report (#6221) n0ctal 2026-08-18 14:50:09 +05:00