feat/sdlc-flow-rules/main
develop
本 PR 併入 3 個 commit,來自已合併的子功能 PR plugins/meta#22。
references/guidelines.md
JSC_PR_WATCH_INTERVAL
plugin.json
.claude-plugin/plugin.json
.codex-plugin/plugin.json
0.1.3
feat
docs
style
refactor
perf
test
chore
revert
{類型}/{子功能}
{類型}/{功能}/main
master
fix
fix/{修改}
{子功能}
{功能}/{子功能}/{再下一層}
/main
jsc-git/tools/base-branch.sh --derive
version-guard.sh
jsc-git/tools/slugify.sh
jsc-meta:skill-check
tools/ste100-lint.sh
What:`references/guidelines.md` 新增「PR 分支階梯」一節,列出兩種型別的階梯、多層子功能的組法、base 一律由 `jsc-git/tools/base-branch.sh --derive` 推導、功能主幹自動建立,以及最後一級不能省;環境變數表補上 `JSC_PR_WATCH_INTERVAL`;稽核檢查清單新增一項「PR 的 base 符合 PR 分支階梯,沒有越級」。 Why:階梯要對所有存取庫成立,就必須有一份正本。放在技能準則裡,各 domain 的 README 與參考文件才能只寫摘要並指回來,不會養出好幾份互相打架的規則;稽核清單少了這一項,越級開的 PR 也沒有任何一關會發現。 How:階梯只寫表與六條說明,不寫實作細節,推導行為的正本仍在 `jsc-git/tools/base-branch.sh`。特別寫明第 4 條「推不出唯一合法基底就中止並詢問使用者,不猜,也不退回 `develop`」與第 6 條「`develop` 併進 `master` 才會生效」——marketplace 與 `version-guard.sh` 讀的都是存取庫的預設分支,階梯最後一級省掉就等於沒有發布。 Who:所有 jsc domain 存取庫的 PR,以及跑 `jsc-meta:skill-check` 稽核的人。
What:`plugin.json`、`.claude-plugin/plugin.json`、`.codex-plugin/plugin.json` 的 `version` 由 0.1.2 改為 0.1.3。 Why:技能準則新增了一節規則與一項稽核檢查,準則有異動就要 bump 版本,安裝端才拿得到新版。 How:三份只改 `version` 一個欄位,其餘內容不動,三份保持同一版號。 Who:`jsc-meta` 外掛的套件描述檔。
Reviewed-on: #22
No dependencies set.
The note is not visible to the blocked user.
PR 描述
摘要
feat/sdlc-flow-rules/main累積的內容整批推上develop。本存取庫是技能準則的正本,負責使用者 15 條規則第一群「SDLC 執行流程」裡 R3 的成文化:PR 一律照分支階梯逐級上推,禁止越級。階梯先前只散在各技能的內文裡,沒有一份共同依據,於是同一件事在不同 domain 有不同寫法。這裡把階梯寫成準則的一節,同時把新的環境變數登進變數表、把「base 有沒有越級」加進審核清單。本 PR 併入 3 個 commit,來自已合併的子功能 PR plugins/meta#22。
變更內容
references/guidelines.mdJSC_PR_WATCH_INTERVAL;審核清單加一項「PR 的 base 符合分支階梯,沒有越級」。準則是各 domain 共同的依據,規則不寫在這裡就等於沒有規則plugin.json、.claude-plugin/plugin.json、.codex-plugin/plugin.json0.1.3設計重點
feat、docs、style、refactor、perf、test、chore、revert走{類型}/{子功能}→{類型}/{功能}/main→develop→master;fix只走fix/{修改}→develop→master。修 bug 通常是單點,硬要它先開一條功能主幹只是多繞一圈。{子功能}可以多層,寫成{功能}/{子功能}/{再下一層},推導一律「去掉最後一段後接/main」。層數不設限,規則本身不必因為巢狀變深而改寫。jsc-git/tools/base-branch.sh --derive推導,不靠人記。推不出唯一合法基底就中止並詢問使用者,不猜、也不退回develop——退回develop就是預設允許越級,跟這條規則的目的正好相反。{類型}/{功能}/main不在 origin 上時,自動從develop建立並推上去,收尾要回報建立了哪一條分支。決策紀錄見 wiki QUESTION_FB8DF0B5 的 2026-08-27 那一節 Q3。停下來問的話,每個新功能都要多一輪問答。develop併進master才會生效,marketplace 與version-guard.sh都讀存取庫的預設分支。少了這一級,改動看起來合併了,實際上沒有人拿得到。jsc-git/tools/slugify.sh轉成 ASCII slug 再組分支名,銜接既有的「分支名只允許 ASCII」那一條,不另立新規則。jsc-meta:skill-check這類例行稽核查得到越級,規則才不會只停在文件上。測試結果
tools/ste100-lint.sh掃整個存取庫全綠,另外也對其餘六個 domain 各掃一次,全數全綠。前置 Push Request