swpa
|
387d1d600a
|
fix: 修復 Single Page Application (SPA) 「狀態殘留 (State Leakage)」問題
fix: 修復「延遲渲染 (Lazy Rendering)」與「編輯模式」之間的一個極度邊角的情境 (Edge Case) 衝突。
|
2026-06-11 10:32:21 +08:00 |
swpa
|
8f026aac9e
|
fix: 處理系統代理連線 (Proxy Connection) 狀態落差問題 - 導入「自訂斷線碼 (Custom Close Code)」。
|
2026-06-10 15:13:21 +08:00 |
swpa
|
7a49ef9833
|
feat(core): 系統底層架構重構、資安強化與極致效能優化
本次提交涵蓋了 Phase 3.5 至 Phase 4 的核心架構翻修,徹底解決了 SSH 互動陷阱、資料庫冗餘、機密外洩以及巨量 DOM 渲染的效能瓶頸。
🏗️ 1. 資料庫與快取架構整併 (DB Consolidation)
- 重構 `cmts_options` 資料表,主鍵簡化為 `(host, path)`,徹底解耦 `config_type`。
- 實現 `running-tree` 與 `full-tree` 共用全域選項字典,達成極致的「增量掃描 (Incremental Scanning)」。
- 強化 `init_db.py` 防呆機制,保留 `config_backups` 避免誤刪珍貴快照。
🔒 2. 企業級資安與權限管理 (Security Hardening)
- 導入 `python-dotenv`,全面落實 12-Factor App 規範。
- 徹底淨化 `index.html`, `shared.py`, `database.py` 中的硬編碼 (Hardcoded) 密碼。
- 建立 `.env.example` 範例檔,確保正式機密碼「零外洩 (Zero Secrets Leakage)」。
- 強化 God Mode 驗證邏輯,未設定環境變數時預設拒絕所有進階授權 (Fail-Fast)。
📡 3. SSH 引擎與 SSE 廣播機制 (SSH & SSE Engine)
- 修復 SSH Echo 與 MOTD 陷阱,導入精準的 `prompt_pattern` 絕對靜音偵測。
- 廢除危險的 `Ctrl+C`,改用底層 `Ctrl+U (\x15)` 瞬間清空輸入緩衝區,確保 100% 停留在 config 模式。
- 完善 SSE (Server-Sent Events) 廣播機制,前端精準呈現「百分比進度條」與「動態狀態文字」。
⚡ 4. 前端效能與使用者體驗 (Performance & UX)
- 升級 Regex 解析器,完美支援水平列表與無標題說明,成功找回消失的 `❓` 提示。
- 導入 HTML5 `<datalist>`,將 Enum 欄位無痛升級為「半自由下拉選單 (Combobox)」。
- 解決「延遲載入 (Lazy Load)」與「編輯模式」的衝突:實作「預先渲染但不展開」機制,結合 `content-visibility: auto` 達成零效能損耗。
- 實作 Xterm.js DOM 事件防火牆 (Capture Phase Interception),完美阻擋第三方外掛產生的殘缺鍵盤事件,消除 Console 紅字報錯。
⚠️ Breaking Changes (破壞性變更)
- 系統啟動前必須建立 `.env` 檔案並填入必要的資料庫與設備連線資訊。
- 資料庫結構已變更,舊有環境需執行 `python init_db.py --reset` 重新建表。
|
2026-06-10 14:37:16 +08:00 |
swpa
|
061ee3435a
|
refactor: God Mode 安全防護
|
2026-06-08 17:01:55 +08:00 |
swpa
|
bc933e1e39
|
feat: 導入動態日誌管控機制架構
|
2026-06-05 18:29:04 +08:00 |
swpa
|
19d5a30305
|
refactor: UX 輸入欄位優化!透過 HTML5 <datalist> 結合背景非同步抓取,保留原本純文字輸入的彈性(支援模糊搜尋與手動輸入)
|
2026-06-05 13:52:31 +08:00 |
swpa
|
8bc68b8bf1
|
feat: 智能視覺診斷 (Visual Diagnostics) :
- CM 一鍵診斷中心:整合基礎狀態、PHY 射頻指標與 OFDM MER 頻譜。引入 Chart.js 將 ASCII 報表轉化為紅黃綠狀態圖與長條圖。
|
2026-06-05 13:52:02 +08:00 |
swpa
|
3cd7ce253e
|
refactor: 混合式架構 (Hybrid Approach) 的設定載入訊息設計。
-前端模擬動態流 (Simulated Streaming)
-真實動態流 (True Streaming)
|
2026-06-03 17:24:08 +08:00 |
swpa
|
ecedee49d2
|
fix: 修復系統中「鎖定狀態未向下繼承」的嚴重 UI/UX 漏洞。
|
2026-06-02 17:35:33 +08:00 |
swpa
|
6698e34292
|
refactor: 關鍵的 UX 與安全性升級。
- 1. 移除隱含風險的關閉方式,並實作嚴格的「執行中鎖定 (Execution Lock)」,能有效防止幽靈寫入與併發衝突。
- 2. 跨視圖併發防護 (Cross-View Concurrency)。
|
2026-06-01 16:20:34 +08:00 |
swpa
|
2cbbdb7b0c
|
fix: 聯動防呆機制-如果右側預覽視窗正在顯示這個節點的指令,連帶關閉它,防止無鎖寫入。
|
2026-06-01 11:39:58 +08:00 |
swpa
|
2168ccf770
|
perf(core): 實施 Priority 3 效能與體驗極致優化
- 前端渲染優化:將 tree-ui.js 的巨量字串拼接改為 Array.join,大幅降低 V8 引擎 GC 負擔與畫面卡頓。
- Terminal 資源回收:強化 WebSocket 斷線偵測,主動 cancel 背景任務並確保 SSH 連線乾淨釋放 (terminal.py)。
- 智慧 Prompt 偵測:全面導入 Regex 匹配設備 Prompt,取代盲目 Timeout 等待,巨幅提升爬蟲與設定寫入速度 (cmts_scraper.py, backup.py, config.py)。
|
2026-05-31 18:19:12 +08:00 |
swpa
|
60195a735e
|
perf(memory): 實施 Priority 2 記憶體洩漏修復與資源回收優化
- 前端 OOM 防護:實作 clearTreeCache 並於切換設備時觸發,釋放巨量樹狀圖快取 (tree-ui.js, app.js)。
- 後端 SSE 資源回收:延長輪詢 timeout 降低 CPU 負載,並透過 finally 確保斷線時 Queue 絕對釋放 (leaf_options.py)。
- SSH 連線生命週期:全面導入 async with Context Manager,確保爬蟲任務中 AsyncSSH 連線與 Process 乾淨關閉 (cmts_scraper.py)。
|
2026-05-31 16:15:44 +08:00 |
swpa
|
4437e4e3fa
|
refactor(backend): 實施 Priority 1 核心穩定性升級與連線防護
- 實作設備級別鎖 (Per-Host Lock):將全域鎖改為 defaultdict(asyncio.Lock),大幅提升多人併發操作能力 (shared.py, config.py, backup.py)。
- 修復 Netmiko 連線洩漏:全面導入 try...finally 機制,確保發生異常時 disconnect() 絕對會被執行 (query.py, config.py)。
- 解除 Event Loop 阻塞:將解析樹狀圖等 CPU-Bound 任務移至 asyncio.to_thread 背景執行,防止 API 請求卡死 (config.py)。
- 強化 AsyncSSH 生命週期:於備份還原路由導入 async with Context Manager,確保 SSH 連線與 Process 絕對乾淨釋放 (backup.py)。
|
2026-05-31 14:24:10 +08:00 |
swpa
|
d0d80b26ac
|
chore: 將所有須一的程式碼寫入單一文字檔, 方便提供給Gemini AI分析。
|
2026-05-31 10:25:28 +08:00 |
swpa
|
e9b07ddadc
|
chore: 調整Monica Code設定
|
2026-05-30 23:27:33 +08:00 |
swpa
|
fb1c091be9
|
fix(backup): 設備終端機分頁機制(Pagination)問題處理
- 根據 config_type 切換模式與指令,並加上 | nomore 關閉分頁
refactor(backup): 將 CMTS 的 CLI 配置文字轉換為完美的邏輯巢狀 JSON (兩階段解析法)
- 階段 0: 預處理 (清理雜訊,移除危險的自動黏合)
- 階段 2: 邏輯群組化與字典合併 (保留嚴格型別防護)
refactor(ui): 獲取整台 CMTS 的完整配置 (串流進度回報版)
- 前端串流接收器 (Streaming UI)
fix(ui): 修復 SSH 終端機無底洞溢出與頁籤底部左右捲軸錯位問題
- 於 .xterm 新增 height: 100% 與 box-sizing: border-box,確保終端機畫布完美貼合黑底外框,並將捲動權限成功交還給終端機內部。
|
2026-05-30 00:48:53 +08:00 |
swpa
|
cf4b6f2e3b
|
refactor: 將 Tree Editor 升級為 Streaming 架構
|
2026-05-29 16:21:43 +08:00 |
swpa
|
61241c796e
|
feat: 前端串流接收器 (Streaming UI)
feat: 後端 SSH 交易寫入管道 (Transactional SSH Pipeline)
refactor: 終端機緩衝區 (Terminal Buffer) 吞吐時機
feat: Streaming、Fail-safe 以及全域併發鎖
|
2026-05-29 15:16:46 +08:00 |
swpa
|
9a3850031c
|
feat(backup): 優化備份模組 UI 佈局與搜尋過濾防呆機制
- style: 重構「歷史備份紀錄」版面,移除 Flex 衝突,實作滿版分隔線與按鈕高度對齊。
- refactor: 將日期選擇器回歸原生 <input type="date">,支援作業系統語系顯示。
- fix(search): 升級 applyBackupFilters 邏輯,加入 Null-Safety (|| '') 與 .trim() 防禦性編程,避免空值導致畫面崩潰。
- feat(search): 擴充搜尋範圍,現在可同時精準比對「快照名稱」與「備份描述」。
|
2026-05-28 22:24:57 +08:00 |
swpa
|
f8285f7ff7
|
fix: 對 CMTS 設定階層實施強化排查機制
|
2026-05-28 13:28:39 +08:00 |
swpa
|
a868d82bd5
|
fix: 1.清除 ANSI 控制碼。 2.清除殘留的 --More-- 文字
|
2026-05-28 11:56:45 +08:00 |
swpa
|
e00642553f
|
fix: 將 startLockStatusPolling 改成特務模式(State Diffing), 解決樹狀圖瀏覽延遲。
|
2026-05-28 10:51:04 +08:00 |
swpa
|
77821fc620
|
feat: Smart Diff Recovery & Preview
|
2026-05-28 10:24:17 +08:00 |
swpa
|
eb8c3af98e
|
chore: Adjusting the layout design
|
2026-05-27 11:33:01 +08:00 |
swpa
|
f2de682b9b
|
chore: Remove dynamically generated temporary JSON files.
|
2026-05-26 18:40:19 +08:00 |
swpa
|
cfc4060d2b
|
feat: Core Backup Engine & Async Stability
|
2026-05-26 18:30:10 +08:00 |
swpa
|
9de6896363
|
fix: modify the prefix of APIRouter
|
2026-05-25 16:53:40 +08:00 |
swpa
|
d11f70b898
|
feat: 實作 Phase 1 & 2 備份資料庫 Schema 與 API 路由
|
2026-05-25 16:40:55 +08:00 |
swpa
|
d53f90efff
|
fix: 將 God-Mode 的唯讀預覽變更成平坦化 (Flatten) 設計
|
2026-05-22 18:34:19 +08:00 |
swpa
|
05fdccf235
|
chore: update .gitignore and ignore cache
|
2026-05-21 16:57:45 +08:00 |
swpa
|
3cebbb2824
|
feat: 1.PostgreSQL 高可用性架構升級, 2.導入continue.dev與Roo Code偕同開發模式。
|
2026-05-21 16:57:45 +08:00 |
swpa
|
289204780a
|
feat: Finalize JSON cache architecture and prepare for PostgreSQL migration
- 穩定並完善現有基於 JSON 檔案的 running/full 雙軌快取機制
- 確認 __metadata__ (版本與掃描時間) 的讀寫邏輯運作正常
- 確立下一階段 PostgreSQL + asyncpg 的升級藍圖與 Schema 設計
- 準備建立 feature/postgres-migration 分支進行資料庫無痛轉移
|
2026-05-21 16:57:08 +08:00 |
swpa
|
78b7493bd4
|
fix: To resolve SSE (Server-Sent Events) issue "Waiting for connections to close."
|
2026-05-21 16:57:08 +08:00 |
swpa
|
17ff31dcf7
|
Merge branch 'enhancement/ux'
|
2026-05-21 16:57:08 +08:00 |
swpa
|
de705431f7
|
fix: 修正深度過濾攔截器辨識符號
|
2026-05-21 16:57:08 +08:00 |
swpa
|
69228013be
|
refactor: 修改進度條為全廣播機制
|
2026-05-21 16:56:19 +08:00 |
swpa
|
91f7f5be34
|
feat: Design god-mode for debugging
|
2026-05-21 16:55:40 +08:00 |
swpa
|
03814b29dc
|
feat: 1.重構快取掃描邏輯,新增局部與全域操作分離, 2.GUI按鈕格規格統一化。
|
2026-05-21 16:55:05 +08:00 |
swpa
|
682c9341a7
|
refactor: 編輯流程優化
|
2026-05-21 16:54:36 +08:00 |
swpa
|
de48fb1790
|
feat: 1.工具維護者 (System Admin) 機制設計, 新增 URL 隱藏密鑰與彩蛋解鎖法。 2.使用者介面微調整。
|
2026-05-21 16:53:47 +08:00 |
swpa
|
3fea4a972a
|
feat: 導入 SSE 串流機制與 API 路由標準化
1. 實作 StreamingResponse 即時回傳爬蟲進度。2. 新增 IS_SCANNING 全域變數防止併發掃描。3. 統一 main.py 路由前綴,修復心跳機制 404 錯誤。
|
2026-05-21 16:53:47 +08:00 |
swpa
|
93eb15ac9c
|
fix: 解決編輯模式下含有雙引號與特殊符號導致的 HTML 破版問題
|
2026-05-21 16:53:47 +08:00 |
swpa
|
b7395a1763
|
refactor: 完成前端 ES6 模組化全面拆分與 app.js 瘦身
|
2026-05-21 16:53:47 +08:00 |
swpa
|
7592643e3e
|
Refactor: 使用 ES6 Modules 抽離 Terminal 邏輯
|
2026-05-21 16:53:12 +08:00 |
swpa
|
8f4faa8956
|
refactor: isNoCommand 讀取寫入邏輯重整
|
2026-05-21 16:52:20 +08:00 |
swpa
|
523ebc706f
|
fix: 讓樹狀結構符合Harmonic設定檔的結構
|
2026-05-21 16:52:20 +08:00 |
swpa
|
4c5f1e410d
|
chore: 將虛擬環境移出版本控制
|
2026-05-21 16:51:52 +08:00 |
swpa
|
b6989ca443
|
chore: 將虛擬環境移出版本控制
|
2026-05-21 16:51:52 +08:00 |
swpa
|
98e78789e5
|
feat: 全面快取資料設計 & heartbeat 機制除錯完成
|
2026-05-21 16:51:08 +08:00 |