mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-08-31 16:41:59 +00:00
|
Some checks are pending
CI / go-test (push) Waiting to run
CI / codegen (push) Waiting to run
CI / govulncheck (push) Waiting to run
CI / race (push) Waiting to run
CI / fuzz-smoke (push) Waiting to run
CI / golangci (push) Waiting to run
CI / frontend (push) Waiting to run
CodeQL Advanced / Analyze (go) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
CodeQL Advanced / Analyze (javascript-typescript) (push) Waiting to run
Release 3X-UI / build (386) (push) Waiting to run
Release 3X-UI / build (amd64) (push) Waiting to run
Release 3X-UI / build (arm64) (push) Waiting to run
Release 3X-UI / build (armv5) (push) Waiting to run
Release 3X-UI / build (armv6) (push) Waiting to run
Release 3X-UI / build (armv7) (push) Waiting to run
Release 3X-UI / build (s390x) (push) Waiting to run
Release 3X-UI / Build for Windows (push) Waiting to run
Release 3X-UI / Publish rolling dev release (push) Blocked by required conditions
Hot-applying an inbound change swaps it via DelInbound+AddInbound on the running core. That unregisters any client's reverse.tag handler on the xray-core side without closing the bridge's already-established connection, so the reverse tunnel is silently orphaned until someone manually restarts xray. diffInbounds now bails out of the hot-apply path whenever the old or new inbound carries a reverse-tagged client, falling back to a full restart, which actually drops the socket and lets the bridge redial on its own. Also scope the .claude ignore rule to its contents (.claude/*) instead of the whole directory, so individual files under .claude/ can be tracked selectively. |
||
|---|---|---|
| .. | ||
| config | ||
| database | ||
| eventbus | ||
| logger | ||
| mtproto | ||
| sub | ||
| tunnelmonitor | ||
| util | ||
| web | ||
| xray | ||