hooks 0.1.7 發佈:安裝先全清、出錯轉修正、工作包 PR 閘門 #19
2 Participants
Notifications
Due Date
No due date set.
Blocks
#20 sdlc 0.1.5 發佈:工作包 PR 硬閘門與稽核修正
plugins/sdlc
Reference: plugins/hooks#19
Reference in New Issue
Block a user
hooks 0.1.7 發佈:安裝先全清、出錯轉修正、工作包 PR 閘門
摘要
develop累積的jsc-hooks0.1.7 發佈到預設分支master。marketplace 從預設分支取,所以這一步之前,五個 CLI 抓到的都還是 0.1.5 的舊版。內容分兩批:①hooks-install的兩條規則——hook 只要有錯誤(接線失敗或執行期錯誤)就轉jsc-hooks:repair修正並 PR 到develop;安裝一律先移除該 CLI 的所有 hook(含非 jsc 的第三方 hook),備份之後只重新安裝 jsc 的 hook 技能組。②sdlc-gate.sh的工作包 PR 閘門——wp-lock、wp-unlock、wp-report、wp-check,讓「PR 沒合併就禁止進下個工作包」變成程式層強制規則。repair技能本體已在master。變更內容
tools/wire-cli.shpurge {cli}(備份後移除該 CLI 全部 hook)與smoke {cli}(五支 hook 各跑一次驗執行期)。原有接線行為與回報格式不動。tools/scan-hook-errors.shunavailable。每筆標上jsc欄位,分得出該不該轉修正。skills/hooks-install/SKILL.mddescription一併改寫。README.mdscan-hook-errors.sh、改寫wire-cli.sh的三個用法;技能說明改成四道關卡;環境變數表補JSC_CLAUDE_SETTINGS_DIR。hooks/sdlc-gate.shwp-lock、wp-unlock、wp-report、wp-check {prompt|skill}四個子命令,狀態檔$JSC_HOME/wp/刻意不綁工作階段。另外把檔頭的read_stdin改成只在需要的子命令才讀,避免工具腳本轉呼叫時卡死。hooks/hooks.jsonUserPromptSubmit接上wp-check prompt,PreToolUse(matcherSkill)接上wp-check skill。plugin.json、.claude-plugin/plugin.json、.codex-plugin/plugin.json設計重點
wire-cli.sh purge子命令,規則寫在程式碼裡才驗得到行為,技能只判讀status=那一行。$JSC_HOME/backup/hooks/{cli}/{yyyyMMdd_HHmmss}/,備份失敗就不移除,驗證沒過自動還原。jq也刪得掉 JSON 鍵(awk 逐字元追蹤引號與括號深度),因為目標機器不保證裝了jq。notify,profile 層底下的使用者設定保留。hooks.json,purge 動不到,輸出直接講明,不假裝已清乾淨。smoke主動跑一輪,回報時unavailable就講unavailable。jsc欄位分流。測試結果
sh -n通過;無參數與錯誤 CLI 名一律 exit 2。purge claude在設定檔複製品上跑過:hooks鍵刪除、其他鍵完整、備份與原檔位元組相同、重跑冪等。purge codex在假 HOME 跑過:根層notify(含第三方)移除,[profiles.dev]的保留,第三方 rc 段落保留。smoke claude五支 hook 全 exit 0。scan-hook-errors.sh --cli claude掃到 30 筆(27 筆hook_non_blocking_error加 3 筆非空hookErrors,與 grep 計數一致),全部jsc=false;另以 fixture 驗證jsc=true判定正確。四個非 claude 的 CLI 都回unavailable。~/.claude/settings.json、~/.bashrc、~/.codex/config.toml全程未被修改。meta/tools/ste100-lint.sh hooks通過,無簡體字,無半形標點誤用。JSC_HOME下驗過完整情境——wp-check prompt有鎖也一律 exit 0(只注入提醒);wp-check skill對 plan、analyze、maintain exit 2,對 implement 與其他技能 exit 0,取不到技能名放行;JSC_WP_GATE=off全部放行;wp-unlock冪等且只清對應那一筆。既有lock、check、report行為回歸測試通過。wire-cli.sh smoke claude七個接線模式全 exit 0;刻意帶JSC_SKILL=jsc-sdlc:plan且有未結清 PR 時仍 exit 0。~/.jsc未被寫入任何wp/檔案。develop(合併 commit291909c、88c7d37)。前置 Push Request
hooks 0.1.6 發佈:安裝先全清、出錯轉修正to hooks 0.1.7 發佈:安裝先全清、出錯轉修正、工作包 PR 閘門