sagitchu
1995759dbe
feat: add secure passkey login for issue 536
2026-09-30 19:03:03 +08:00
sagit
129fa0aa4c
fix(frontend): constrain service monitor records modal ( #557 )
2026-09-24 16:12:03 +08:00
sagit
b4c2989285
Merge branch 'main' into codex/issues-548-549-traffic-units
2026-09-24 15:38:49 +08:00
sagitchu
5d60c4fbe1
feat: support adaptive traffic units and precise quotas
2026-09-24 15:33:53 +08:00
sagitchu
62c56e0a79
feat: add mode-specific wallpapers and installer regression coverage
2026-09-24 14:59:52 +08:00
sagit
5041c722c9
fix: harden license lifecycle ( #547 )
2026-08-13 09:25:05 +08:00
sagit
0e24b53a5b
fix: preserve license state across panel upgrades ( #544 )
2026-08-11 17:04:20 +08:00
sagit
538e64ffc0
Fix modal scroll position jumps ( #542 )
...
Preserve page scroll positions while Radix modals acquire focus and forward the dialog overlay ref correctly.
2026-08-07 22:38:02 +08:00
sagit
9e6f80019d
feat(monitor): show backup nodes in topology ( #538 )
2026-08-03 14:14:01 +08:00
sagit
cbe2fc492e
feat(monitor): show backup tunnel latencies ( #535 )
...
Closes #508
2026-08-03 10:15:22 +08:00
sagit
e112d81697
fix: bound and configure tunnel quality probes ( #533 )
...
Closes #528 and #532 .
2026-07-31 15:37:26 +08:00
sagit
11a27d3c67
feat: add per-rule traffic reset ( #526 )
...
Reset only the selected forwarding rule's displayed upload/download usage without affecting user totals, tunnel quotas, historical statistics, nftables baselines, or running services.
Closes #523
2026-07-10 17:05:20 +08:00
sagit
82f6047506
fix(forward): split proxy protocol directions
...
Closes #520
2026-06-21 21:03:47 +08:00
sagitchu
a599f383f5
feat: add nftables forwarding mode
2026-06-01 19:47:26 +08:00
sagitchu
abf13bdac9
fix: close remaining security remediation gaps
2026-05-14 11:10:06 +08:00
sagitchu
bd13477fa3
fix: stop caching sensitive configs in browser
2026-05-14 00:34:52 +08:00
sagitchu
106a30bf9d
fix: tighten websocket auth and client cache handling
2026-05-14 00:24:56 +08:00
sagitchu
465815cf34
fix: harden auth, config access, and backups
2026-05-13 23:53:06 +08:00
sagitchu
25dfb84324
fix: panel self-upgrade helper not recreating containers
...
- Add --force-recreate --remove-orphans to docker compose up so helper
actually replaces running containers with newly pulled images
- Add upgrade.log file for post-mortem debugging when helper fails
- Add pre-flight validation for docker-compose.yml and .env
- Fix "立即升级" button permanently disabled by relaxing the disabled
condition so auto-check on click can fire
2026-05-07 19:51:18 +08:00
sagit
5ebd4c2a91
feat: add panel self-upgrade workflow ( #492 )
2026-05-06 17:58:01 +08:00
sagitchu
5d22d4cb06
fix: refine advanced settings layout
2026-05-04 17:25:58 +08:00
sagitchu
cdcdfd8ff0
fix: use custom probe targets for diagnostics
...
Move custom probe target controls into the tunnel advanced settings and reuse the configured target in tunnel diagnosis output.
2026-05-02 14:23:51 +08:00
sagitchu
0f3242bf11
fix: reject raw probe target whitespace
2026-05-01 23:54:31 +08:00
sagitchu
d97d91801d
fix: reject leading zero probe IPv4
2026-05-01 23:50:41 +08:00
sagitchu
727ef56c67
fix: improve probe target form feedback
2026-05-01 23:46:56 +08:00
sagitchu
a40150b136
fix: type tunnel probe target payloads
2026-05-01 23:42:21 +08:00
sagitchu
a923ec4785
fix: validate probe target port input
2026-05-01 23:39:14 +08:00
sagitchu
42c5492c1d
feat: add tunnel probe target UI
2026-05-01 23:36:14 +08:00
sagitchu
e5acc49186
feat: show current best exit state
2026-05-01 13:30:46 +08:00
sagit
3f3159aafd
Add best exit selection ( #486 )
...
* docs: add best exit selection design
* feat: add best exit selection
2026-05-01 08:12:17 +08:00
sagitchu
023be27287
feat: add monitoring retention controls
2026-04-28 11:41:07 +08:00
sagitchu
bd27b94909
fix: omit per-IP speed payload for users
2026-04-27 23:34:35 +08:00
sagitchu
a5a500bc0f
feat: add per-IP limit controls
2026-04-27 23:17:02 +08:00
sagit
9f19d5fe15
fix: send valid announcement update payload
2026-04-27 15:34:47 +08:00
sagit
2ca3849917
fix: apply proxy protocol and max connection settings
2026-04-27 10:54:25 +08:00
sagit
a625884d61
fix: remove unwanted hover underline from forward advanced settings ( #473 )
...
* fix: remove forward advanced settings hover underline
* fix: clear frontend lint warnings
2026-04-26 19:12:38 +08:00
sagit
799bb66fe5
feat: add local remote address toggle ( #472 )
2026-04-26 16:30:05 +08:00
sagit
3f374df724
fix: 保留用户/规则高级设置并增强节点运行时恢复 ( #468 )
...
* fix: 用户编辑时 maxConn 字段未正确回填
- User 接口添加 maxConn 类型定义
- handleEdit 中回填 maxConn 值
- normalizeUserItem 添加 maxConn 字段处理
解决编辑用户时最大连接数显示为 0 的问题
* fix: 保留转发设置并增强节点运行时恢复
2026-04-25 18:12:13 +08:00
sagit
9b923a2d0b
fix: remove duplicate maxConn input in user form ( #467 )
2026-04-24 21:56:46 +08:00
sagit
d9f28f53c7
style: move advanced settings to bottom and optimize UI ( #466 )
2026-04-24 19:10:36 +08:00
sagit
1d08a1ccfc
fix: ensure page refresh to login page upon logout ( #465 )
2026-04-23 20:43:27 +08:00
sagit
db25ba2cbe
style: move maxConn and speed limit inputs to advanced settings accordion ( #464 )
2026-04-23 20:29:52 +08:00
sagit
a498067261
fix: properly initialize maxConn in forward rules ( #463 )
...
* fix: initialize maxConn in forward creation and edit forms
* fix: add maxConn to Forward interface
2026-04-23 20:23:18 +08:00
sagit
b5922dccf2
fix: include maxConn when submitting forward forms ( #462 )
...
* fix: frontend missing maxConn setting during forward creation
* docs: check off plan
2026-04-23 20:11:20 +08:00
sagit
c259645227
feat: implement user and forward max connection limit ( #461 )
...
* docs: add implementation plan for max conn limit
* feat: add CLimiters support for websocket reporter
* feat: add max_conn field to user and forward models
* feat: implement max conn limiter dispatching
* feat: add maxConn to user and forward CRUD API
* feat: add max conn UI to user management and forward rules
* fix: load MaxConn in get forward record and add e2e contract test for max conn limit
2026-04-23 17:35:39 +08:00
sagitchu
6e60f5cfbd
fix: add visually hidden DialogTitle to resolve a11y warning and fix modal background
2026-04-22 09:21:47 +08:00
sagitchu
61dba0ae57
fix: remove trailing brace in tunnel.tsx to resolve CI error
2026-04-21 20:20:19 +08:00
sagitchu
f3d6366471
fix: increase kcp tunnel bandwidth limit and fix modal backgrounds
2026-04-21 20:16:58 +08:00
sagitchu
5107f59d94
fix: tolerate offline nodes when controlling forward services and editing tunnels
...
- controlForwardServices: skip offline nodes instead of failing entire operation,
so forward pause/resume/delete works when some entry nodes are offline
- onNodeOnline: always sync forward state on node reconnect (not just post-upgrade),
so forwards that changed status while a node was offline get synced
- add ListForwardIDsByNode repo method to sync all forwards (including paused)
- tunnel edit UI: allow deselecting already-selected offline nodes in
entry/chain/exit selectors, matching the backend's existing tolerance
2026-04-21 16:53:47 +08:00
sagitchu
431613cb6a
fix(frontend): listen to session changes so logout redirects to login page
2026-04-21 16:24:46 +08:00