Auth user lookup retries briefly on DB lock; SQLite opens with
busy_timeout and a single connection. Dashboard tracks TCP/UDP series
and draws them as solid/dashed lines like traffic rates.
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
fix(db): drop legacy HWID index before AutoMigrate
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
fix(db): drop legacy HWID index before AutoMigrate
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
fix(db): drop legacy HWID index before AutoMigrate
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
fix(db): drop legacy HWID index before AutoMigrate
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
fix(db): drop legacy HWID index before AutoMigrate
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
fix(db): drop legacy HWID index before AutoMigrate
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
fix(db): drop legacy HWID index before AutoMigrate
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
fix(db): drop legacy HWID index before AutoMigrate
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
fix(db): drop legacy HWID index before AutoMigrate
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
fix(db): drop legacy HWID index before AutoMigrate
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
fix(db): drop legacy HWID index before AutoMigrate
SQLite index names are global; uidx_user_hwid left by hw_id_devices
blocked creating hwid_devices and rolled back panel updates.
prepareHWIDDeviceSchema now runs before AutoMigrate and drops the
conflicting index plus legacy/broken HWID tables.
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
fix(db): silence GORM record-not-found noise for optional settings
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
fix(db): silence GORM record-not-found noise for optional settings
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
fix(db): silence GORM record-not-found noise for optional settings
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
fix(db): silence GORM record-not-found noise for optional settings
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
fix(db): silence GORM record-not-found noise for optional settings
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
fix(db): silence GORM record-not-found noise for optional settings
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
fix(db): silence GORM record-not-found noise for optional settings
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
fix(db): silence GORM record-not-found noise for optional settings
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
fix(db): silence GORM record-not-found noise for optional settings
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
fix(db): silence GORM record-not-found noise for optional settings
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
fix(db): silence GORM record-not-found noise for optional settings
Telegram and traffic_reset_day lookups are expected to miss until configured;
default Info logger flooded journal every scheduler tick and looked like errors.
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
feat(cluster): sync remote node mirrors and merge into local user subscription
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
feat(cluster): sync remote node mirrors and merge into local user subscription
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
feat(cluster): sync remote node mirrors and merge into local user subscription
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
feat(cluster): sync remote node mirrors and merge into local user subscription
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
feat(cluster): sync remote node mirrors and merge into local user subscription
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
feat(cluster): sync remote node mirrors and merge into local user subscription
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
feat(cluster): sync remote node mirrors and merge into local user subscription
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
feat(cluster): sync remote node mirrors and merge into local user subscription
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
feat(cluster): sync remote node mirrors and merge into local user subscription
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
feat(cluster): sync remote node mirrors and merge into local user subscription
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
feat(cluster): sync remote node mirrors and merge into local user subscription
- Cache remote nodes + URI/client_yaml via POST /cluster/:id/sync-nodes
- Bind local users to mirrors; Clash YAML and v2ray base64 subs merge remote entries
- UI: Sync nodes on cluster page; remote multi-select in user bind dialog
- Port now supports mihomo ports format (single/range/list)
- Add explicit RoutingMark field support
- Auto-propagate UDP flag for vmess/vless/trojan/anytls/trusttunnel
- Update validator to accept port ranges
- Sync visual config and client converter port types
- Rename module from dzx941 to kazeyukiro
- Fix missing ExpiresAt in JWTClaims
- Fix nodeDTO Port type to string
- Fix frontend tsconfig and add missing dependencies