develop
master
references/guidelines.md
純新增 74 行,沒有刪除任何既有內容。
jsc-hooks/hooks/assistant-gate.sh
lint-scripts.sh
lint-frontmatter.sh
check-behaviors.sh
ste100-lint.sh
assistant-gate.sh
What: - 新增「助理運行閘門」一節:規格表、心跳判定的六碼處置、豁免清單十一支。 - 節內另立「fail-closed 閘門的專屬規則」四條,那是準則現在完全沒有的東西。 - 環境變數表補上閘門開關與心跳門檻兩列。 - 三份 manifest 的版本一起提升。 Why: - 整組 hook 的通則是資料不足就放行,這一道相反。例外不點名,後來的人會以為可以隨便再開一道 fail-closed 的閘門,而那種閘門開錯就是整組技能鎖死。 - 豁免清單與腳本檔頭是同一件事實。準則沒有那張表,兩邊就會各走各的,改一支忘了另一支。 How: - 四條專屬規則裡有兩條是這一輪實作時才想清楚的。逃生門的判斷要擺在載入共用函式庫之前——函式庫讀不到時 sh 會就地結束並回擋人的那個碼,逃生門也跟著跑不到,人就繞不過去;這一條只對 fail-closed 成立。豁免清單只收解鎖路徑,方向與重啟閘門相反,那一道解鎖靠閘門外的動作,這一道解鎖靠跑一支技能。 - 「清單認技能名不認呼叫鏈」那一條補了一個更狠的實例:巡檢要先把結果寫上監控頁才寫心跳,只豁免助理自己會做出自咬環。所以新增豁免技能時不只要想它會呼叫誰,還要想那條呼叫鏈上有沒有一步是解鎖條件本身的前置。 - 心跳判定回「檔案系統問不出來」時放行不擋,理由與代價都寫進去了。那一碼與「時間戳壞掉」的差別在有沒有出路。 Who: 助理閘門實作完之後,把當中的判斷收進準則,讓下一道同類閘門有依據。
Reviewed-on: #60
Reviewed-on: #61 Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
No dependencies set.
The note is not visible to the blocked user.
摘要
變更內容
references/guidelines.md純新增 74 行,沒有刪除任何既有內容。
設計重點
jsc-hooks/hooks/assistant-gate.sh逐項比對過,全部對得上。測試結果
lint-scripts.sh、lint-frontmatter.sh、check-behaviors.sh、ste100-lint.sh全部 exit 0。assistant-gate.sh逐項比對,兩邊都有。前置 Push Request