Commit Graph

30 Commits

Author SHA1 Message Date
shanshanzhong147 634b5a7bd0 feat(simnet): add SimNet protocol end-to-end support
- model: SimNet protocol fields + NormalizeSimnet; type+port protocol uniqueness
- server config: OmnXT runtime config delivery via compatible() simnet case
- credentials: derive per-user psk/key_id from subscription (pkg/simnet), no new table
- subscription: adapter buildOmnxtSimnetConfigs + base64 buildOmnxtProtocolLinks + OmnXT SimNet application (migration 02161)
- UA gating: hide experimental protocols from non first-party clients (download + JSON node-list)
- admin: normalize simnet on create/update and on GET responses
- tests: 21 simnet unit tests; full suite green
2026-07-27 00:17:02 -07:00
shanshanzhong147 19d28a8f89 修复(#1): 服务器用户列表缓存按 protocol 隔离 + 兜底不写缓存
服务器用户列表缓存跨协议污染修复(HIF-1 / 详见 PR #5 四件套):

1. 缓存 key 加 protocol 维度(`server:user:{server_id}:{protocol}`),对齐 ServerConfig 已有约定
2. 显式枚举协议清除用户列表缓存(AllProtocols + ServerUserListCacheKeysForServer),不用 SCAN
3. 三个兜底分支不写缓存 + Errorw 日志(带 server_id + protocol 字段)
4. hysteria2 → hysteria 兼容归一化 + 6 个新单测

Closes HIF-1
2026-06-03 05:37:03 -07:00
shanshanzhong147 2bdda7558c fix: JSON_CONTAINS node_group_ids 参数需用引号包裹
Build docker and publish / build (20.15.1) (push) Successful in 8m25s
JSON_CONTAINS 第二参数必须是 JSON 字符串,裸数字会报 Error 3146。
修复:%d → '%d'

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-27 07:22:39 -07:00
shanshanzhong147 e5e9f93f68 Merge remote-tracking branch 'origin/master' into internal 2026-03-19 01:55:01 -07:00
EUForest 39310d5b9a Features:
- Node group CRUD operations with traffic-based filtering
  - Three grouping modes: average distribution, subscription-based, and traffic-based
  - Automatic and manual group recalculation with history tracking
  - Group assignment preview before applying changes
  - User subscription group locking to prevent automatic reassignment
  - Subscribe-to-group mapping configuration
  - Group calculation history and detailed reports
  - System configuration for group management (enabled/mode/auto_create)

  Database:
  - Add node_group table for group definitions
  - Add group_history and group_history_detail tables for tracking
  - Add node_group_ids (JSON) to nodes and subscribe tables
  - Add node_group_id and group_locked fields to user_subscribe table
  - Add migration files for schema changes
2026-03-08 23:22:38 +08:00
shanshanzhong147 4d913c1728 修复缓存
Build docker and publish / build (20.15.1) (push) Successful in 7m26s
2026-03-06 21:58:29 -08:00
shanshanzhong147 7308aa9191 无订阅 支付后出现两个订阅
Build docker and publish / build (20.15.1) (push) Failing after 7m37s
2026-03-05 21:53:36 -08:00
shanshanzhong147 4d8516b2e1 同步历史版本代码 2026-03-03 09:32:22 -08:00
EUForest b9d3446407 Bug fix: Clear server user node cache 2025-11-09 17:18:25 +08:00
EUForest 52ce054b35 Add: Server location latitude and longitude 2025-11-04 14:53:43 +08:00
EUForest 2605d22f8e Add: ClearServerAllCache Func 2025-11-01 16:05:37 +08:00
EUForest 640b8c0805 add: query user subscribe node list 2025-10-13 19:16:36 +08:00
Chang lue Tsen 29dd54546d fix(model): enhance InSet function for multi-value OR queries 2025-10-04 11:51:47 -04:00
Chang lue Tsen c5be0081ca fix(model): simplify tag filtering using GORM scopes 2025-10-03 14:53:52 -04:00
Chang lue Tsen 766e210f06 fix(node): update FilterNodeParams to use NodeId and adjust query logic for tags 2025-09-29 11:18:47 -04:00
Chang lue Tsen d6fcff1fee fix(node): NodeId filter to FilterNodeParams and update cache clearing logic 2025-09-29 10:22:11 +09:00
Chang lue Tsen 5aa9bb61b7 refactor(server): remove Ratio field from Server struct and update adapter logic 2025-09-28 11:18:33 -04:00
Chang lue Tsen 0d1df5f905 feat(config): enhance NodeConfig with TrafficReportThreshold, IPStrategy, DNS, Block, and Outbound fields 2025-09-28 19:06:29 +09:00
Chang lue Tsen 64f0bcc55a feat(cache): implement cache clearing for node operations and add delete methods 2025-09-27 11:24:29 -04:00
Chang lue Tsen d2ca3eb961 fix(subscribe): add Enabled filter to node query parameters 2025-09-27 10:18:08 -04:00
Chang lue Tsen 4ad18a8b70 fix(model): update save method to use specific ID for record updates 2025-09-16 11:20:48 -04:00
Chang lue Tsen 596434454c feat(client): add additional options for Shadowsocks and Vless protocols 2025-09-16 11:20:39 -04:00
Chang lue Tsen 0c55d173cb fix(model): add sorting to server and node queries 2025-09-16 10:10:11 -04:00
Chang lue Tsen 2c5efa2026 feat(protocol): add server protocol configuration query and enhance protocol options 2025-09-13 14:20:04 -04:00
Chang lue Tsen 26b2afe06d feat(api): implement sorting functionality for nodes and servers 2025-09-01 13:13:07 -04:00
Chang lue Tsen 367ef9d2e7 feat(api): add reset sort endpoints for server and node 2025-09-01 11:41:34 -04:00
Chang lue Tsen 3012a68339 feat(api): enhance server status handling with protocol support and refactor related logic 2025-09-01 04:17:33 -04:00
Chang lue Tsen 6dc1bee14c feat(api): refactor cache key handling for server and user lists 2025-08-31 11:29:55 -04:00
Chang lue Tsen c7884d94aa feat(api): migrate server and node data handling, update related structures and logic 2025-08-26 07:05:59 -04:00
Chang lue Tsen ad4f3df74e feat(server): implement server management handlers and database schema 2025-08-25 14:06:37 -04:00