feat/monitor-wiki-page-type/resolve-and-check #41

Merged
admin merged 1 commits from feat/monitor-wiki-page-type/resolve-and-check into feat/monitor-wiki-page-type/main 2026-09-01 04:27:48 +00:00
Member

摘要

  • 需求描述:wiki 頁型別新增一種 MONITOR,給技能助理寫巡檢的監控頁。這一支負責解析端與檢核端:型別進白名單、環境變數有落點、文件與行為清單跟上。
  • 計畫名稱:無
  • 計畫頁:無
  • 分析頁:無

變更內容

檔案 為什麼改
tools/gitea.sh resolve_wiki_repo() 的型別白名單與檔頭註解加上 MONITOR。型別不在白名單裡,wiki-repo 直接回「unknown wiki type」並 exit 2,助理連寫都寫不出去
tools/check-wiki-rules.sh TYPES 加上 MONITOR,讓它跑三項檢查:專用變數優先、退回共用變數、不得跨型別代用
README.md 兩處型別列舉加上 MONITOR;環境變數表補一列 JSC_WIKI_REPO_MONITOR
skills/wiki/SKILL.md allowed types 清單加上 MONITOR;description 的呼叫端補上 jsc-assist
references/behaviors.md wiki 那一節「觸發時機」的呼叫端清單補上 jsc-assist 的 MONITOR 頁
三份 manifest 版本一起提升

設計重點

  • 型別串一次改齊。 它散在五個檔案,只改一處會出現「解析通過但檢核工具漏掉」或反過來的狀況。
  • 環境變數的規則不必另寫。 先讀 JSC_WIKI_REPO_MONITOR、再退回 JSC_WIKI_REPO、不得跨型別代用——這一條由 resolve_wiki_repo() 統一處理,新型別自動繼承。
  • MONITOR 放在型別串尾端,接在 TOOLING 之後。既有順序是依用途分群、不是字母序,所以不重排。
  • 雜湊來源的規則不寫在這個存放庫。 README 已載明雜湊規則的唯一來源是技能準則的命名總表,這裡不複述。
  • description 是濃縮而不是硬塞。 那一行原本逐一列舉呼叫端、已接近長度上限。改成括號標注頁型的寫法之後,加了一個呼叫端整行反而變短,句數維持在上限內。

測試結果

  • sh -n tools/gitea.sh、sh -n tools/check-wiki-rules.sh:都通過。
  • gitea.sh wiki-repo MONITOR:印出 knowledges/MONITOR,exit 0。改之前它回 unknown wiki type: MONITOR、exit 2。
  • 跨型別代用的防護仍在:拿一個沒設定的型別(LEARN)去試,照樣 exit 3 並要求設定它自己的變數,沒有因為新增型別而鬆掉。
  • check-wiki-rules.sh:exit 0。
  • lint-scripts.sh:exit 0(9 支)。
  • lint-frontmatter.sh:exit 0(5 支,不是 exit 3)。
  • check-behaviors.sh:exit 0(對上 5 支技能,五欄齊全,不是 exit 3)。
  • ste100-lint.sh:exit 0。
  • comment-scope.sh sweep:exit 0。

前置 Push Request

  • 無
## 摘要 - 需求描述:wiki 頁型別新增一種 `MONITOR`,給技能助理寫巡檢的監控頁。這一支負責解析端與檢核端:型別進白名單、環境變數有落點、文件與行為清單跟上。 - 計畫名稱:無 - 計畫頁:無 - 分析頁:無 ## 變更內容 | 檔案 | 為什麼改 | | --- | --- | | `tools/gitea.sh` | `resolve_wiki_repo()` 的型別白名單與檔頭註解加上 `MONITOR`。型別不在白名單裡,`wiki-repo` 直接回「unknown wiki type」並 exit 2,助理連寫都寫不出去 | | `tools/check-wiki-rules.sh` | `TYPES` 加上 `MONITOR`,讓它跑三項檢查:專用變數優先、退回共用變數、不得跨型別代用 | | `README.md` | 兩處型別列舉加上 `MONITOR`;環境變數表補一列 `JSC_WIKI_REPO_MONITOR` | | `skills/wiki/SKILL.md` | allowed types 清單加上 `MONITOR`;`description` 的呼叫端補上 `jsc-assist` | | `references/behaviors.md` | `wiki` 那一節「觸發時機」的呼叫端清單補上 `jsc-assist` 的 `MONITOR` 頁 | | 三份 manifest | 版本一起提升 | ## 設計重點 - **型別串一次改齊。** 它散在五個檔案,只改一處會出現「解析通過但檢核工具漏掉」或反過來的狀況。 - **環境變數的規則不必另寫。** 先讀 `JSC_WIKI_REPO_MONITOR`、再退回 `JSC_WIKI_REPO`、不得跨型別代用——這一條由 `resolve_wiki_repo()` 統一處理,新型別自動繼承。 - **`MONITOR` 放在型別串尾端**,接在 `TOOLING` 之後。既有順序是依用途分群、不是字母序,所以不重排。 - **雜湊來源的規則不寫在這個存放庫。** README 已載明雜湊規則的唯一來源是技能準則的命名總表,這裡不複述。 - **`description` 是濃縮而不是硬塞。** 那一行原本逐一列舉呼叫端、已接近長度上限。改成括號標注頁型的寫法之後,加了一個呼叫端整行反而變短,句數維持在上限內。 ## 測試結果 - `sh -n tools/gitea.sh`、`sh -n tools/check-wiki-rules.sh`:都通過。 - `gitea.sh wiki-repo MONITOR`:印出 `knowledges/MONITOR`,exit 0。改之前它回 `unknown wiki type: MONITOR`、exit 2。 - **跨型別代用的防護仍在**:拿一個沒設定的型別(`LEARN`)去試,照樣 exit 3 並要求設定它自己的變數,沒有因為新增型別而鬆掉。 - `check-wiki-rules.sh`:exit 0。 - `lint-scripts.sh`:exit 0(9 支)。 - `lint-frontmatter.sh`:exit 0(5 支,不是 exit 3)。 - `check-behaviors.sh`:exit 0(對上 5 支技能,五欄齊全,不是 exit 3)。 - `ste100-lint.sh`:exit 0。 - `comment-scope.sh sweep`:exit 0。 ## 前置 Push Request - 無
jiantw83 added 1 commit 2026-09-01 04:12:41 +00:00
What:
- resolve_wiki_repo 的型別白名單與檔頭註解加上 MONITOR,check-wiki-rules.sh 的 TYPES 一併加入。
- README 的兩處型別列舉加上 MONITOR,環境變數表補一列 JSC_WIKI_REPO_MONITOR。
- wiki 技能的 allowed types 與行為清單的呼叫端補上這個型別與它的擁有者。
- 三份 manifest 的版本一起提升。

Why:
- 技能助理要把巡檢結果寫進 wiki,落點就是監控頁。型別不在白名單裡,wiki-repo 會直接回「unknown wiki type」而拒絕解析,助理連寫都寫不出去。
- 型別串散在五個檔案,只改一處會讓解析通過但檢核工具漏掉,或反過來。所以一次改齊。

How:
- MONITOR 放在型別串尾端,接在 TOOLING 之後。既有順序是依用途分群,不是字母序,所以不重排。
- 環境變數的規則完全沿用既有型別:先讀 JSC_WIKI_REPO_MONITOR,再退回 JSC_WIKI_REPO,不得跨型別代用。這一條由 resolve_wiki_repo 統一處理,新型別自動繼承,不必另寫分支。
- 雜湊來源的規則不寫在這個存放庫。README 已載明雜湊規則的唯一來源是技能準則的命名總表,這裡不複述。
- wiki 技能的 description 原本逐一列舉呼叫端,已經接近長度上限。這次改成括號標注頁型的濃縮寫法,加了一個呼叫端之後整行反而變短,句數維持在上限內。

Who:
技能助理落地帶出來的頁型別需求,四個存放庫同一批改。
admin merged commit 44797aae97 into feat/monitor-wiki-page-type/main 2026-09-01 04:27:48 +00:00
admin deleted branch feat/monitor-wiki-page-type/resolve-and-check 2026-09-01 04:27:48 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: plugins/gitea#41