release: develop 併入 master(doctor、setup) #14

Merged
admin merged 3 commits from develop into master 2026-08-26 02:59:50 +00:00
Member

摘要

  • 需求描述:把已合併進 develop 的變更放行到預設分支 master。marketplace 與版本前置檢查都讀預設分支,不合進 master,已安裝的 CLI 叫不出新技能。
  • 計畫名稱:無
  • 計畫頁:無
  • 分析頁:無

變更內容

檔案 為什麼改
skills/doctor/SKILL.md 新增體檢技能:版本、Hook 接線、全域設定、自我設定四項檢查,只讀不改
skills/setup/SKILL.md 新增設定技能:讀待修清單逐項確認後修復
tools/config-spec.tsv 設定規格表,必要或選擇的唯一判準
tools/scan-config.sh 依規格表盤點設定現況,唯讀
tools/apply-config.sh 寫入 rc 檔的 # jsc-config 段落或建立目錄,寫前備份
templates/check-page.md、templates/check-contents.md 體檢頁與體檢目錄版面
README.md、三份 manifest 同步文件與版本 0.1.2

設計重點

  • 內容與 PR #13 完全相同,這支只負責讓預設分支跟上。
  • 合進 master 之後,/jsc-cli:deploy 更新才抓得到 doctor 與 setup 兩支技能。

測試結果

  • scan-config.sh -o scan all:44 項全部走完,summary 為 missing 1、invalid 0、unset 23、skipped 2。
  • scan-config.sh scan global(連線):GITEA_HOST 與 GITEA_TOKEN 驗證通過,token 值未出現在輸出。
  • scan-config.sh orphans:無輸出,原始碼用到的變數都已登錄。
  • apply-config.sh:假家目錄實測 set、unset、mkdir,bash 與 fish 兩種語法都正確,備份目錄建立成功。

前置 Push Request

## 摘要 - 需求描述:把已合併進 `develop` 的變更放行到預設分支 `master`。marketplace 與版本前置檢查都讀預設分支,不合進 master,已安裝的 CLI 叫不出新技能。 - 計畫名稱:無 - 計畫頁:無 - 分析頁:無 ## 變更內容 | 檔案 | 為什麼改 | | --- | --- | | `skills/doctor/SKILL.md` | 新增體檢技能:版本、Hook 接線、全域設定、自我設定四項檢查,只讀不改 | | `skills/setup/SKILL.md` | 新增設定技能:讀待修清單逐項確認後修復 | | `tools/config-spec.tsv` | 設定規格表,必要或選擇的唯一判準 | | `tools/scan-config.sh` | 依規格表盤點設定現況,唯讀 | | `tools/apply-config.sh` | 寫入 rc 檔的 `# jsc-config` 段落或建立目錄,寫前備份 | | `templates/check-page.md`、`templates/check-contents.md` | 體檢頁與體檢目錄版面 | | `README.md`、三份 manifest | 同步文件與版本 0.1.2 | ## 設計重點 - 內容與 [PR #13](https://gitea.jsc.idv.tw/plugins/cli/pulls/13) 完全相同,這支只負責讓預設分支跟上。 - 合進 master 之後,`/jsc-cli:deploy` 更新才抓得到 `doctor` 與 `setup` 兩支技能。 ## 測試結果 - `scan-config.sh -o scan all`:44 項全部走完,`summary` 為 missing 1、invalid 0、unset 23、skipped 2。 - `scan-config.sh scan global`(連線):`GITEA_HOST` 與 `GITEA_TOKEN` 驗證通過,token 值未出現在輸出。 - `scan-config.sh orphans`:無輸出,原始碼用到的變數都已登錄。 - `apply-config.sh`:假家目錄實測 set、unset、mkdir,bash 與 fish 兩種語法都正確,備份目錄建立成功。 ## 前置 Push Request - [plugins/hooks PR #22](https://gitea.jsc.idv.tw/plugins/hooks/pulls/22):`doctor` 執行期呼叫 `wire-cli.sh status`。 - [plugins/gitea PR #21](https://gitea.jsc.idv.tw/plugins/gitea/pulls/21):體檢結果寫 `CHECK_{HASH}`,需要類型白名單放行。
jiantw83 added 3 commits 2026-08-26 02:57:48 +00:00
What: 新增 jsc-cli:doctor,一次體檢技能版本、Hook 接線、全域設定與自我設定,只讀不改,結果寫進 wiki CHECK_{HASH}。
Why: 安裝或更新技能組之後,沒有任何工具說得出這台機器還缺什麼。設定散在環境變數、rc 檔與專案目錄,出錯時只能一個一個猜。
How: 版本比對複用 jsc-hooks 的 version-guard.sh report,接線狀態複用新加的 wire-cli.sh status(唯讀),設定則由 tools/scan-config.sh 比對 tools/config-spec.tsv 判定必要或選擇。規格表是必要性的唯一判準,掃描只負責抓出漏登錄的變數。
Who: 體檢與修復流程,搭配 jsc-cli:setup 收尾。
What: 新增 jsc-cli:setup,讀 doctor 的待修清單逐項確認後修復,並新增 tools/apply-config.sh 負責實際寫入。
Why: 體檢找得出問題,修還是得靠人一個一個查文件。修法又分三種:算得出來的、要人給值的、只能手動的,混在一起講不清楚。
How: 依規格表的 fix 欄分流,auto 直接寫、ask 先用決策樹問到值、manual 印步驟。複合修復交回原主(deploy、hooks-install、models)。apply-config.sh 只動 rc 檔的 # jsc-config 標記段落,寫前備份到 $JSC_HOME/backup/config/,寫後重讀驗證,fish 自動改用 set -gx 語法。
Who: 體檢與修復流程,接在 jsc-cli:doctor 之後。
Reviewed-on: #13
admin approved these changes 2026-08-26 02:59:47 +00:00
admin merged commit bb92a558d7 into master 2026-08-26 02:59:50 +00:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Reference: plugins/cli#14