Commit graph

2357 commits

Author SHA1 Message Date
root
c6e57a8101 docs: add task tracking record for backup feature 2026-04-26 19:54:46 +08:00
root
64e8f18997 feat: add backup/restore to x-ui.sh and update assets 2026-04-26 19:53:15 +08:00
root
3a4c6f7094 feat: add backup and restore CLI subcommands 2026-04-26 19:50:37 +08:00
root
8a861894c9 feat: add backup UI page and frontend model fields 2026-04-26 19:46:16 +08:00
root
50d3b2cd7e feat: add BackupJob and wire up routes and scheduling 2026-04-26 19:40:13 +08:00
root
3181d5805d fix: add filename validation to downloadBackup endpoint 2026-04-26 19:37:31 +08:00
root
ce2cfd6bc9 docs: add BackupController task record 2026-04-26 19:34:07 +08:00
root
b84390904e feat: add BackupController API endpoints 2026-04-26 19:33:50 +08:00
root
7f3855eb9a fix: add filename validation, error handling, and safety backup visibility 2026-04-26 19:31:49 +08:00
root
5b2946a46d feat: add BackupService with dump, archive, restore logic 2026-04-26 19:22:06 +08:00
root
4da2346c62 style: fix backup getter method format to match project convention 2026-04-26 19:17:33 +08:00
root
b0bdb3f785 docs: add backup config fields task record 2026-04-26 19:10:42 +08:00
root
92b297251a feat: add backup config fields to entity and setting service 2026-04-26 19:10:25 +08:00
root
3891bb9212 docs: add database backup and snapshot implementation plan 2026-04-26 19:06:26 +08:00
root
492b832354 docs: add node role constraint to backup design spec 2026-04-26 18:55:04 +08:00
root
a04804beb2 docs: add database backup and snapshot design spec 2026-04-26 18:48:48 +08:00
root
1a6f7c6e53 fix: dark theme nested td visibility in selected rows, adjust batch bar margin 2026-04-26 18:11:33 +08:00
root
47b734ef2d fix: dark mode selected row background and batch toolbar layout
- Override Ant Design default selected row background in dark mode with theme color
- Restructure batch action toolbar with nested flex containers for better spacing and wrapping
- Bump version to v1.7.3.2
2026-04-26 17:40:08 +08:00
root
8566ccf752 chore: remove codex and copilot-instructions from tracking 2026-04-26 17:25:00 +08:00
root
9badadc97b chore: remove tracked files matching gitignore (vscode, docs) 2026-04-26 17:23:54 +08:00
root
19a36435bd chore: exclude AGENTS.md from version control 2026-04-26 17:21:17 +08:00
root
bd154b7bee chore: update gitignore to exclude claude, build, backup and docs 2026-04-26 17:19:29 +08:00
root
9ee5fd432d chore: bump version to v1.7.3.1 2026-04-26 17:16:33 +08:00
root
18bdc2baa5 feat: add batch select and batch edit for inbound clients 2026-04-26 17:11:58 +08:00
root
fb7beb4dd2 chore: bump version to v1.7.2.11 2026-04-26 01:09:42 +08:00
root
7ff73313a9 fix: auto-fill flow for registration-created eligible clients 2026-04-26 01:08:22 +08:00
root
b47bac3dc6 fix: default flow to vision in client add modals 2026-04-26 01:05:09 +08:00
root
64ceb8343f chore: bump version to v1.7.2.9 2026-04-26 00:54:56 +08:00
root
e3d84b38ca fix: auto-fill vision flow for eligible new clients 2026-04-26 00:53:11 +08:00
root
3048950743 fix: allow subscription links for disabled clients 2026-04-26 00:47:44 +08:00
root
d6de00cd00 fix: repair clash subscription toggle and separate clash path settings 2026-04-26 00:43:09 +08:00
root
67bf6c1a9a chore: bump version to v1.7.2.8 2026-04-26 00:27:37 +08:00
root
18bba12ef1 fix: replace user quick import dropdown with direct action buttons 2026-04-26 00:26:20 +08:00
root
7b24a8d704 chore: bump version to v1.7.2.7 2026-04-26 00:11:14 +08:00
root
22d518b5c9 fix: show user quick import dropdown 2026-04-26 00:09:37 +08:00
root
3ba7e43bc3 feat: add URL Schemes for Quick Import buttons (Android/iOS/Desktop)
- Android: clash://install-config (Clash Meta for Android)
- iOS: shadowrocket://add/sub/ (Shadowrocket)
- Desktop: clash-verge://install-config (Clash Verge)
- Extended API to return subEnable/subUrl for standard subscription
2026-04-25 22:46:35 +08:00
root
aa775a111f feat: add Clash link and Quick Import button to user panel
- New API endpoint /panel/api/inbounds/userSubscriptions for non-admin users
- Redesigned /panel/user with Clash link card (copy button) and Quick Import dropdown (Android/iOS/Desktop with icons)
- Added i18n keys for en_US and zh_CN
- Bumped version to v1.7.2.5
2026-04-25 21:31:02 +08:00
root
1d57d5d1c4 chore: bump version to v1.7.2.4 2026-04-25 21:00:16 +08:00
root
7af6b2e801 docs: update tasktracking with servername/encryption fix 2026-04-25 20:59:22 +08:00
root
699e5959c3 fix: use servername field and add encryption to Clash proxy entries
- sni → servername (mihomo/Clash Meta field name)
- Add encryption field parsed from inbound settings
2026-04-25 20:59:08 +08:00
root
919761e9c6 chore: bump version to v1.7.2.3 2026-04-25 20:46:28 +08:00
root
6156661a20 docs: update tasktracking with YAML indentation fix 2026-04-25 20:46:00 +08:00
root
d1e571adb7 fix: Clash proxy YAML indentation for Clash Verge compatibility
Proxy entry fields were at same indent level as list item marker,
causing "invalid yaml" in Clash Verge. Fixed to 4-space indent for
fields and 6-space for nested *-opts sub-fields.
2026-04-25 20:45:49 +08:00
root
e059425d92 chore: bump version to v1.7.2.2 2026-04-25 20:36:10 +08:00
root
ef9e123fcc style: gofmt web/service/setting.go 2026-04-25 20:35:10 +08:00
root
0366a21d6d fix: Clash proxy entries missing reality-opts, client-fingerprint, network
- Fix REALITY settings extraction: publicKey/shortIds/fingerprint are
  nested under realitySettings.settings, not directly under realitySettings
- Add network field to all proxy entries (default "tcp")
- Move non-REALITY fingerprint into else branch to avoid duplication
2026-04-25 20:32:30 +08:00
root
25cf22d161 feat: support full mihomo template and multi-server for Clash Link
- Add splitTemplate() to split at proxies:/proxy-groups: markers (like mihomo-gen)
- Store clash_template.yaml and servers.yaml as files alongside x-ui.json
- Add Clash/Servers editors in Xray advanced config page
- Support multi-server proxy generation (each server × each client)
- Remove inline template editor from Clash settings panel
- Bump version to v1.7.2.1
2026-04-25 18:23:42 +08:00
root
67c4f6a1ad fix: update rate limit tests to use CF-Connecting-IP header
The middleware was changed to trust CF-Connecting-IP instead of
X-Real-IP/X-Forwarded-For, but the tests still used the old headers.
TestRateLimitMiddleware_DifferentIPsIndependent was failing because
all requests fell back to the same httptest RemoteAddr.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-25 15:14:02 +08:00
root
b53703f1a1 fix: add -settingStatus CLI flag to reduce DB inits during install/update
Worker nodes with remote MariaDB experienced slow configuration because
config_after_update() and config_after_install() made 5-8 separate
x-ui setting CLI calls, each spawning a new Go process and re-initing
the DB connection. Add a single -settingStatus flag that returns all
needed info in one call, reducing DB inits from 5-6 down to 2.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-25 15:05:11 +08:00
root
88584a1f70 chore: bump version to v1.7.0.1 2026-04-25 11:46:40 +08:00