同時準備切換兩端
受支援的 web profile 模型只保留一個 @dsh-themes/* 直接包。切換會先移除舊包再新增目標,所以必須在第一次修改前準備恢復材料。
- 01
檢查並識別目前狀態
從 web profile 讀取直接包名與精確版本。依賴不明確或存在版本範圍時應停止。
- 02
校驗目標製品
讓受控下載與完整 artifact SHA-256、manifest 身份、精確相容性、slug 和 version 一致。
- 03
校驗舊製品
準備舊版本的精確 tgz 與摘要;如果舊狀態是內建配色,則明確記錄沒有 @dsh-themes/* 包。
- 04
寫入 rollback 記錄
記錄 previous、target 身份,以及已驗證製品的絕對路徑與完整製品摘要;不要寫入 profile 內容或憑據。
- 05
確認即將發生的修改
移除任何內容前,複核 current、target、相容性與已準備的回滾資訊。
node /absolute/path/to/dsh-theme-manager/scripts/run-dsh.mjs plugin --profile web remove @dsh-themes/current-theme
node /absolute/path/to/dsh-theme-manager/scripts/run-dsh.mjs plugin --profile web add /absolute/path/to/verified-target.tgz --save-exact
node /absolute/path/to/dsh-theme-manager/scripts/run-dsh.mjs plugin --profile web list --json
node /absolute/path/to/dsh-theme-manager/scripts/run-dsh.mjs --profile web --dump-config只在目前狀態匹配時回滾
- 01
驗證記錄
修改 profile 前,拒絕格式錯誤、欄位缺失、檔案已移動或身份不匹配的製品引用。
- 02
確認目前 target 仍然匹配
如果 profile 在切換後又被獨立修改,不要直接消費原 rollback 記錄。
- 03
重新校驗舊製品
安裝前再次檢查完整位元組;payload hash 不能替代完整製品摘要。
- 04
移除目標並恢復精確舊狀態
安裝原來的精確包;若返回內建配色,則不安裝任何 @dsh-themes/* 包。
- 05
重啟並驗證
確認唯一預期直接依賴,檢查 dump config,重啟 DSH,再驗證真實執行時身份。
始終從已驗證輸入開始
常見問題
修改前需要了解的事項
關於格式、相容性、證據與回滾的簡明說明。
這篇指南核實哪些範圍?
本指南涵蓋:單一啟用直接依賴;精確 rollback 製品記錄;CLI 與真實執行時後置檢查
我應該先做什麼?
一次安全切換其實是兩次已經準備好的安裝:你計劃啟用的目標,以及隨時可以恢復的精確舊狀態。
最需要記住的邊界是什麼?
如果切換中途失敗,應移除殘缺 target,再安裝已經準備好的 previous 製品。穩定狀態只能是一個 @dsh-themes/* 直接包,或者內建配色。
繼續學習
檢視驗證證據並繼續操作
對比已釋出製品,或返回安裝文件。