mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-06-08 14:14:19 +00:00
docs: update tasktracking for node management tasks 3-5
This commit is contained in:
parent
c09c618207
commit
fe46db245e
1 changed files with 36 additions and 0 deletions
36
docs/Tasktracking/2026-04-24-node-management-sidebar.md
Normal file
36
docs/Tasktracking/2026-04-24-node-management-sidebar.md
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
# Tasktracking: Node Management Sidebar
|
||||||
|
|
||||||
|
**Date:** 2026-04-24
|
||||||
|
**Branch:** fix
|
||||||
|
**Status:** In Progress
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Adding a Node Management sidebar page to the 3x-ui web panel for cluster node visibility.
|
||||||
|
|
||||||
|
## Tasks
|
||||||
|
|
||||||
|
| # | Task | Status | Commit |
|
||||||
|
|---|------|--------|--------|
|
||||||
|
| 1 | Add `GetNodeStates` database query | DONE | 85c6b661 |
|
||||||
|
| 2 | Create `NodeController` with API endpoints | DONE | 16eb179e |
|
||||||
|
| 3 | Register `NodeController` routes in server | DONE | — |
|
||||||
|
| 4 | Add i18n translations for node page | DONE | fc77154c |
|
||||||
|
| 5 | Add sidebar menu item | DONE | c09c6182 |
|
||||||
|
| 6 | Create `nodes.html` template page | PENDING | — |
|
||||||
|
| 7 | Build and verify | PENDING | — |
|
||||||
|
|
||||||
|
## Task 2 Details
|
||||||
|
|
||||||
|
**File created:** `web/controller/node.go`
|
||||||
|
|
||||||
|
**Endpoints:**
|
||||||
|
- `GET /node/list` — returns connected nodes with online/offline status based on heartbeat threshold
|
||||||
|
- `GET /node/config` — returns current node role, ID, sync intervals, and DB connection settings
|
||||||
|
- `POST /node/config` — validates and persists node + DB settings to `x-ui.json`
|
||||||
|
|
||||||
|
**Bug fixes applied from spec:**
|
||||||
|
1. Added missing `"time"` import (used by `time.Now().Unix()`)
|
||||||
|
2. Added missing `"os"` import (used by `os.ErrInvalid`)
|
||||||
|
3. Removed unused `"net/http"` import
|
||||||
|
4. Removed unused `"model"` import (return type of `database.GetNodeStates()` is inferred)
|
||||||
Loading…
Reference in a new issue