3x-ui/internal/web/job
Sanaei 4605f00a15 fix(nodes): keep the credential-presence flag on the node heartbeat push
The Nodes page cache is overwritten wholesale by the heartbeat websocket
push, but the job broadcast a raw []*model.Node while the REST list returns
[]*service.NodeView. model.Node tags the api token json:"-" and carries no
hasApiToken field, so every push stripped the flag the edit form reads to
decide whether a token is already stored.

One 5s tick after the page loaded, editing any non-mTLS node then failed
with "Name, address, port and API token are required" — and stayed failed,
because setQueryData refreshes dataUpdatedAt, so the query never goes stale
and never refetches the intact REST payload.

Broadcast the NodeView read contract instead.
2026-07-28 17:38:46 +02:00
..
check_client_ip_frozen_ban_test.go fix(iplimit): ban a dead connection once instead of every scan 2026-07-11 22:48:58 +02:00
check_client_ip_job.go fix(iplimit): ban a dead connection once instead of every scan 2026-07-11 22:48:58 +02:00
check_client_ip_job_integration_test.go fix(job): batch ip-limit per-email lookups and persistence 2026-07-02 16:39:31 +02:00
check_client_ip_job_test.go fix(clients): parse only settings.clients across protocols (#5855) 2026-07-08 20:31:00 +02:00
check_client_ip_scale_test.go refactor: modernize Go with strings.SplitSeq and maps.Copy 2026-07-08 22:10:54 +02:00
check_cpu_usage.go style: adopt golangci-lint v2 and resolve all findings 2026-06-27 15:42:22 +02:00
check_hash_storage.go refactor: focused service files, leaf subpackages, and an internal/ layout (#5167) 2026-06-10 15:19:22 +02:00
check_hash_storage_test.go refactor: focused service files, leaf subpackages, and an internal/ layout (#5167) 2026-06-10 15:19:22 +02:00
check_memory_usage.go style: adopt golangci-lint v2 and resolve all findings 2026-06-27 15:42:22 +02:00
check_xray_running_job.go feat(notifications): event bus architecture with Telegram and SMTP subscribers (#5326) 2026-06-15 21:03:41 +02:00
clear_logs_job.go fix(logs): limit Xray log growth (#5840) 2026-07-08 00:33:34 +03:00
clear_logs_job_test.go fix(logs): limit Xray log growth (#5840) 2026-07-08 00:33:34 +03:00
free_os_memory.go perf(memory): report real RSS and cut footprint via GOGC + periodic release 2026-06-25 22:16:38 +02:00
ldap_sync_job.go fix(ldap): convert default total GB to bytes when auto-creating clients (#5854) 2026-07-08 20:24:21 +02:00
ldap_sync_job_test.go fix(ldap): convert default total GB to bytes when auto-creating clients (#5854) 2026-07-08 20:24:21 +02:00
mtproto_job.go fix(mtproto): stop dropping connections on client/inbound edits; add live updates + ad-tag (#5838) 2026-07-07 01:13:24 +02:00
node_heartbeat_job.go fix(nodes): keep the credential-presence flag on the node heartbeat push 2026-07-28 17:38:46 +02:00
node_traffic_sync_job.go fix(node): adopt a node inbound's host overrides into the master 2026-07-11 23:17:57 +02:00
node_traffic_sync_job_test.go refactor: focused service files, leaf subpackages, and an internal/ layout (#5167) 2026-06-10 15:19:22 +02:00
outbound_subscription_job.go refactor: focused service files, leaf subpackages, and an internal/ layout (#5167) 2026-06-10 15:19:22 +02:00
periodic_traffic_reset_job.go refactor: focused service files, leaf subpackages, and an internal/ layout (#5167) 2026-06-10 15:19:22 +02:00
stats_notify_job.go refactor: focused service files, leaf subpackages, and an internal/ layout (#5167) 2026-06-10 15:19:22 +02:00
warp_ip_job.go refactor: focused service files, leaf subpackages, and an internal/ layout (#5167) 2026-06-10 15:19:22 +02:00
xray_traffic_inform_test.go style: drop the line comments added with the triage fixes 2026-07-27 14:37:57 +02:00
xray_traffic_job.go style: drop the line comments added with the triage fixes 2026-07-27 14:37:57 +02:00