「待修項目」表原本由 doctor 與 setup 各寫一次。同一套合併與排序規則寫在 兩個地方,遲早各自漂移:一邊改了排序,另一邊漏掉一整類項目,而且沒有 任何地方看得出來。現在規則只留一份,兩支技能都呼叫它。輸入與輸出都是 TSV,一項都沒有時照樣印一列,呼叫端永遠有東西可以呈現。 doctor 的四項檢查彼此不共用資料,排成一列跑只是把等待時間乘上四倍, 現在同時啟動。doctor 呼叫接線腳本一律帶唯讀旗標,把「打錯一個子命令就 改到或刪掉檔案」的風險移進程式層,不再只靠指令打對。 deploy 的 CLI 偵測、版本結論與 marketplace 清單同樣互不相干,改成併行 取得。版本結論改讀版本守門腳本的單行結論,不再自己從表格推導。setup 把 已經確認過的模式與版本報告直接交給 deploy,操作者不必再答一次同樣的問題。 deploy、doctor、models 都補上結束碼分流:腳本回什麼碼就走哪條路,不再從 輸出內容猜。體檢目錄頁改成先讀回再更新自己那一列,整頁覆蓋會把別台機器 的紀錄一次抹掉。設定規格表補上技能盤點頁要用的環境變數,盤點頁才有地方 可寫。
10 lines
717 B
Markdown
10 lines
717 B
Markdown
# 體檢目錄
|
|
|
|
> 由 `jsc-cli:doctor` 維護。每台執行環境一列;`HASH` 取 `{主機名}/{登入帳號}`,算法與其他頁面共用。
|
|
>
|
|
> 寫入語意:一列代表一台執行環境,也就是一組主機加帳號。寫入前先讀回整頁,該執行環境已經有列就更新那一列,沒有才在文末附加一列,最後整頁寫回。禁止整頁覆蓋,也不得改動別人的列。體檢頁 `CHECK_{HASH}` 只留最新一次結果、可以整頁改寫,這份目錄頁不行。
|
|
|
|
| 體檢頁 | 主機 | 帳號 | 必要項缺漏 | 設定錯誤 | 最後體檢 |
|
|
| --- | --- | --- | --- | --- | --- |
|
|
| [[CHECK_{HASH}]] | {hostname} | {使用者帳號} | {n} | {n} | {yyyy-MM-dd HH:mm} |
|