3x-ui/web
abdulrahman 73b2d64247 fix(multi-node): scope tag and email unique constraints per node
inbounds.tag was globally UNIQUE which prevents two remote nodes from having inbounds on the same port. client_traffics.email was globally UNIQUE which causes transaction rollback when different nodes have clients with the same email.

Changed both to composite unique indexes scoped by their parent ((node_id, tag) and (inbound_id, email)). tagExists() is now node-aware so UI tag generation doesn't see remote node tags as conflicts. Adds migrateLegacyUniqueConstraints() to drop old constraints on startup.
2026-05-12 18:57:25 +03:00
..
controller feat(api-docs): enhance API documentation with missing endpoints, search, collapse, and route sync test 2026-05-12 18:40:27 +03:00
entity v3 2026-05-10 02:13:42 +02:00
global Refactor code and fix linter warnings (#3627) 2026-01-05 05:54:56 +01:00
job feat(nodes): traffic-writer queue, full-mirror sync, WS event fixes 2026-05-10 16:25:23 +02:00
locale v3 2026-05-10 02:13:42 +02:00
middleware v3 2026-05-10 02:13:42 +02:00
network docs: add comments for all functions 2025-09-20 09:35:50 +02:00
runtime feat(nodes): traffic-writer queue, full-mirror sync, WS event fixes 2026-05-10 16:25:23 +02:00
service fix(multi-node): scope tag and email unique constraints per node 2026-05-12 18:57:25 +03:00
session v3 2026-05-10 02:13:42 +02:00
translation feat(panel): xray metrics dashboard with observatory probe history 2026-05-12 02:17:45 +02:00
websocket feat(nodes): traffic-writer queue, full-mirror sync, WS event fixes 2026-05-10 16:25:23 +02:00
web.go Fix: traffic writer restart freeze (#4265) 2026-05-12 11:36:05 +02:00