Commit Graph
14 Commits
Author SHA1 Message Date
jiantw83 d472f81cd2 feat(狀態回報): 收尾寫一筆 skill-end 事件
現行紀錄只記「被叫用」,沒有成敗也沒有結束碼。跑完整輪的技能與開場就
中止的技能,在紀錄裡長得一模一樣。

start 由技能用量 hook 順手發,不必改技能文件。end 只能由技能自己在收尾
步驟寫——hook 接在技能工具呼叫上,而實際工作發生在之後的模型輪次,它在
原理上看不到成敗。有 start 沒有配對的 end,就是那一輪中止了。

status 五選一,每支技能各自寫明什麼情況選哪一個。找不到回報腳本就安靜
跳過,回報失敗一律不改變技能自己的結論。
2026-09-02 16:01:17 +08:00
jiantw83 5e7de7a792 fix(frontmatter): 修正 api-doc 技能 SKILL.md frontmatter 的 YAML 純量語法錯誤
What:
- 修正 skills/api-doc/SKILL.md frontmatter 裡 description 欄位的 YAML 語法錯誤。
- 整串 description 加上單引號,內部撇號改寫成兩個單引號,內容文字一個字都沒變。
- 同步更新 plugin.json、.claude-plugin/plugin.json、.codex-plugin/plugin.json 三個 manifest 版本號,從 0.1.1 進到 0.1.2。

Why:
- description 內含「冒號加空白」,屬於未加引號的 YAML plain scalar,違反 YAML 語法規定。
- Antigravity 解析 frontmatter 時當場中斷,整支技能被靜默丟棄,沒有任何錯誤訊息;磁碟上 34 支技能,Antigravity 只認得 28 支。
- 準則要求 description 用英文撰寫,不能把「: 」改成全形冒號迴避語法問題,只能加引號修正。

How:
- 整串 description 值加上單引號,內部撇號寫成兩個單引號跳脫,其餘字元不動。
- 用 git show HEAD: 取出改前的原始值,把改後的單引號純量還原後做字串相等比對,確認逐字相同、字元數一致。
- 執行 ste100-lint.sh、check-behaviors.sh、lint-frontmatter.sh 三支檢查腳本,退出碼皆為 0;git diff --numstat 顯示只動了 frontmatter 那一行。

Who:
- 本次修到 review 技能組的 api-doc 技能,屬稽核 API 專案 Swagger/OpenAPI 文件的功能。
2026-08-31 19:04:02 +08:00
jiantw83 ced541faa5 fix(review): 補上註解腳本路徑與缺漏的失敗分支
- 註解範圍腳本的路徑少一層目錄,照著寫會找不到檔案,補上 hooks 那一層。
- 建置測試跑完卻失敗時沒有分支可走,只寫得出「通過」。現在要指出指令、結束碼,並判斷失敗是不是本次改動造成的。
- 取得差異失敗時原本會安靜跳過,現在原樣帶出錯誤並停手。判不出範圍不等於沒有東西要審。
- 禁止清單原本抄了兩份,改成只指向註解範圍的正本,兩份不會各自演化。
- 第二組不再重掃樣式判得出來的項目。hook 關掉或沒接上時就沒有最後一道網,這件事寫進技能文件,不讓它默默消失。
- 差異只算一次,落成一份快照檔給六組共讀;檔名帶執行代號,同一台機器平行跑不會互相覆蓋。註解清理改成一個檔案一個 sub agent 平行跑。
2026-08-31 11:07:05 +08:00
jiantw83 f6cd1f9ef7 feat(api-doc): 範例只掛純量成員,類別型往下遞迴
- 使用者要求改判準。類別型參數與中間層的類別屬性只留說明,範例責任往下推給屬性,一路走到最內層的純量。
- 一個值只有一個出處。範例掛在父層,屬性一改就過期,讀的人拿到的是沒有屬性定義背書的一份資料。
- 集合看元素型別,不看外殼;字典看值型別。字串集合與字串判出來一樣,位址集合與位址判出來也一樣。
- 壞味道清單原本寫「輸入與輸出參數都必須有範例」,與新判準衝突,兩支技能會對同一段程式碼給出不同標準。一併改成同一套。
- 說明與範例的兩份檢核表併成一個 sub agent,同一批資料模型檔只讀一次。
- 順帶補上偵測腳本結束碼二漏掉的一個原因:環境缺 grep。原本只寫參數與路徑,遇到這個原因換路徑重跑永遠清不掉。
2026-08-31 11:07:05 +08:00
jiantw83 b3d8337001 feat(comment-cleanup): 新增註解清理技能 2026-08-28 09:30:37 +08:00
jiantw83 aaa0227464 feat(comment-scope): 擴充審查流程痕跡規則 2026-08-28 09:30:33 +08:00
jiantw83 51c2705667 feat(review): code-review 範圍改為 5.1 到 5.8 並補上與 api-doc 的分工
What:skills/code-review/SKILL.md 的審查範圍表,第 5 組由原本一句
「smells.md group 5」改成明確的 5.1 到 5.8,並點名 5.6、5.7、5.8 三個新項目;
Notes 加一行分工,Swagger 文件稽核歸 api-doc。README.md 新增 api-doc 的技能
小節,另補一張工具表格列出 swagger-detect.sh。

Why:sub agent 讀的是 SKILL.md 的審查範圍表,範圍表沒寫清楚,新增的 5.6 到
5.8 就不會被查。使用者讀的是 README.md,新技能與新工具沒列出來就找不到。
兩支技能都碰註解與文件,界線不寫明就會對同一個缺失重複回報。

How:範圍表的第 5 組直接列出三個新項目與各自的判準重點,完整清單仍指向
references/smells.md。Notes 寫明 api-doc 負責狀態碼的回覆類型、Swagger 參數
說明與範例,第 5 組只負責原始碼註解契約。README.md 的技能小節寫明偵測先行、
只裝套件沒掛接就停手;工具表格列出 swagger-detect.sh 的用途、輸出欄位與結束碼。

Who:jsc-review 的 code-review 技能與存取庫說明文件。
2026-08-27 15:41:38 +08:00
jiantw83 dfaa66feda feat(api-doc): 新增 API 文件稽核技能
What:新增 skills/api-doc/SKILL.md。六步流程:偵測 Swagger 支援、不支援就回報
並停手、列出稽核範圍、分三個面向各開一個 sub agent 稽核、彙整去重排序、回報
發現。三個面向分別是狀態碼的回覆類型、參數說明與範例、資料模型遞迴。本技能
只回報「檔案:行號」、嚴重度與建議修法,不改程式碼。

Why:支援 Swagger 的專案要把控制器文件補全:所有可能出現的狀態碼都宣告回覆
類型,輸入輸出都要有說明與真實資料範例,參數是資料模型就每個屬性都套用、內含
模型再往下遞迴。這是 code-review 六組沒碰過的領域,跟第 5 組的原始碼註解契約
也不是同一件事,所以獨立成一支技能,不塞進既有的六組裡。

How:第一步跑 tools/swagger-detect.sh,讀結束碼決定走下去還是停手,不支援時
一個 sub agent 都不開,直接回報未啟用。範例優先取專案的真實資料,資料庫、
種子資料、測試夾具都算;真的取不到才依邏輯推導,並在文件裡標上「推導值」,
讓後面讀的人知道這個值沒被觀察過。取自資料庫的範例一律去識別化,個人資料不
進 Swagger 文件。分工另立一節:本技能只管 Swagger 文件屬性,原始碼註解契約
歸 code-review 第 5 組,同一個缺失不會被回報兩次。

Who:jsc-review 新增的 api-doc 技能,由 jsc-sdlc 的 implement 收尾時呼叫。
2026-08-27 15:41:38 +08:00
jiantw83 df81eec8fb feat(review): 技能與說明文件納入文件編號夾帶審查
What:skills/code-review/SKILL.md 的第 2 組 Obscurity 審查範圍納入 2.5,
Notes 補上與 jsc-hooks 的 comment-scope.sh 分工說明;README.md 的技能說明
與參考檔表格同步。

Why:規則正文放進 references 還不夠,sub agent 讀的是 SKILL.md 的審查範圍表。
範圍表沒寫,第 2 組就不會查這一項。使用者讀的是 README.md,參考檔沒列出來就找不到。

How:審查範圍表的第 2 組直接列出六類命中樣式,並指向 references/comment-scope.md
取完整清單。Notes 寫明 comment-scope.sh 負責樣式判定得了的項目,第 2 組負責
樣式判定不了的專案代號與客戶名稱,兩邊不重複回報。README.md 表格新增一列。

Who:jsc-review 的 code-review 技能與存取庫說明文件。
2026-08-26 19:00:38 +08:00
jiantw83andClaude Opus 5 9313dea6ee fix(review): 補齊稽核缺失並修掉護欄失效
What:依 jsc-meta:skill-check 的稽核結果修正技能與工具——補上每個步驟的可檢核完成條件、
把留在內文的標準輸入輸出流程下放 tools/、修正查表與退碼路由造成的誤判。

Why:稽核發現這些缺失會讓技能在實際執行時走錯分支或靜默通過。
完成條件缺漏是最常被違反的一項;退碼誤判與查表錯誤則會讓良性狀況被當成失敗。

How:逐項對照 references/guidelines.md 的審核檢查清單修正,新增的工具都有
documented exit codes,並以真實執行驗證每條路徑。

Who:jsc-meta:skill-check 例行稽核(2026-08-25)。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 14:58:54 +08:00
jiantw83andClaude Fable 5 ccf83badbb docs(review): translate SKILL.md into English per guidelines
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-21 14:29:47 +08:00
jiantw83andClaude Fable 5 e1cc4ed6c4 feat(review): 匯入 jsc-review 技能組
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-21 13:08:43 +08:00
jiantw83andClaude Fable 5 83e7a1113e chore(review): 修正範本 manifest 與移除 hello 範例符合 review 領域
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-21 13:08:18 +08:00
jiantw83 a87d314ba8 Initial commit 2026-08-21 04:43:03 +00:00