release: v0.1.3 develop 到 master #24

Merged
admin merged 4 commits from develop into master 2026-08-27 04:14:31 +00:00
Member

摘要

  • 需求描述:把 jsc-meta 0.1.3 從 develop 放行到 master。內容是使用者 15 條規則第一群「SDLC 執行流程」六條在本存取庫的落實:references/guidelines.md 新增「PR 分支階梯」一節,環境變數表補上 JSC_PR_WATCH_INTERVAL,審核清單加一項。本存取庫是技能準則的唯一來源,也是 marketplace 正本所在。
  • 計畫名稱:無
  • 計畫頁:無
  • 分析頁:無

變更內容

檔案 為什麼改
references/guidelines.md 新增「PR 分支階梯」一節:階梯表分 fix 與其餘類型兩列,六條規則講清楚 {子功能} 怎麼組、中文簡述要先過 jsc-git/tools/slugify.sh、base 一律由 jsc-git/tools/base-branch.sh --derive 推導、推不出唯一合法基底就中止詢問而不猜、功能主幹不在 origin 時自動從 develop 建立並回報。第 6 條點明階梯最後一級不能省。環境變數表補上 JSC_PR_WATCH_INTERVAL(預設 60 秒)。審核清單新增「PR 的 base 符合『PR 分支階梯』,沒有越級」。
plugin.json、.claude-plugin/plugin.json、.codex-plugin/plugin.json 三份 manifest 版本同步升到 0.1.3。

設計重點

  • 這一段才會讓已安裝的 CLI 抓到新內容。 marketplace 與 jsc-hooks/hooks/version-guard.sh 都讀存取庫的預設分支 master——version-guard.sh 取 raw plugin.json 時刻意不指定 ref,拿到的就是預設分支那一份。內容留在 develop 上再完整,已經安裝的 CLI 一律抓不到,版本檢查也照舊回報舊版本。階梯的前三級都已走完,這是最後一級,也是唯一會讓使用者端真的拿到新內容的一級。準則裡的第 6 條寫的就是這件事,這支 PR 不能自己違反自己剛寫下的規則。
  • 行為變更清單。 本批只動文件,沒有程式碼變更:
    1. 準則新增「PR 分支階梯」一節,成為階梯規則的唯一來源。其他存取庫(jsc-git 的 skills/pr/SKILL.md、jsc-sdlc 的 references/branch.md)一律指回這裡,不抄第二份。
    2. 環境變數表新增 JSC_PR_WATCH_INTERVAL,實作在 jsc-gitea/tools/pr-watch.sh,預設 60 秒。
    3. 審核清單多一項,之後 jsc-meta:skill-check 每次稽核都會查 PR 的 base 有沒有越級。
  • 為什麼準則要收這一節。 階梯原本只散在各技能的內文裡,靠模型自律遵守;內文靠不住——換一個工作階段、換一個模型,或只是上下文被截掉,規則就跟著消失,而且沒有任何徵兆看得出來。收進準則之後,它同時是稽核項目與程式判定(base-branch.sh --derive)的依據。
  • 升級後使用者會立刻感受到的差異。
    • R3 分支階梯(jsc-git 0.0.8 實作):越級的 PR 會被擋下來。base 一律由 --derive 推導,推不出唯一合法基底就中止並問使用者,不退回 develop。
    • R4 工作包隔離(jsc-hooks 0.2.3、jsc-sdlc 0.1.9 實作):不是自己領的那一包的 PR 會被擋,查無歸屬才放行只提醒。逃生門是 JSC_WP_GATE=off。
    • 之後跑 jsc-meta:skill-check 會多查一項 base 越級。
  • 相關紀錄:工作日誌在 https://gitea.jsc.idv.tw/knowledges/LOG/wiki/LOG_FB8DF0B5,決策紀錄在 https://gitea.jsc.idv.tw/knowledges/QUESTION/wiki/QUESTION_FB8DF0B5 的 2026-08-27 一節。

測試結果

  • git log --oneline origin/master..origin/develop:4 個 commit,最上面是已合併的 plugins/meta#23,其下是 #22 與兩個實作提交,沒有夾帶別批的內容。
  • git diff --stat origin/master origin/develop:4 個檔案、21 行新增、3 行刪除,與上表逐項對得上,沒有預期外的檔案。
  • 本次放行不含任何程式碼變更,只有 references/guidelines.md 與三份 manifest,內容與已合併的 plugins/meta#22、plugins/meta#23 完全相同。語言檢查在那兩支 PR 已經跑過,這支 PR 沒有重跑 tools/ste100-lint.sh。

前置 Push Request

  • 無
## 摘要 - 需求描述:把 `jsc-meta` 0.1.3 從 `develop` 放行到 `master`。內容是使用者 15 條規則第一群「SDLC 執行流程」六條在本存取庫的落實:`references/guidelines.md` 新增「PR 分支階梯」一節,環境變數表補上 `JSC_PR_WATCH_INTERVAL`,審核清單加一項。本存取庫是技能準則的唯一來源,也是 marketplace 正本所在。 - 計畫名稱:無 - 計畫頁:無 - 分析頁:無 ## 變更內容 | 檔案 | 為什麼改 | | --- | --- | | `references/guidelines.md` | 新增「PR 分支階梯」一節:階梯表分 `fix` 與其餘類型兩列,六條規則講清楚 `{子功能}` 怎麼組、中文簡述要先過 `jsc-git/tools/slugify.sh`、base 一律由 `jsc-git/tools/base-branch.sh --derive` 推導、推不出唯一合法基底就中止詢問而不猜、功能主幹不在 origin 時自動從 `develop` 建立並回報。第 6 條點明階梯最後一級不能省。環境變數表補上 `JSC_PR_WATCH_INTERVAL`(預設 60 秒)。審核清單新增「PR 的 base 符合『PR 分支階梯』,沒有越級」。 | | `plugin.json`、`.claude-plugin/plugin.json`、`.codex-plugin/plugin.json` | 三份 manifest 版本同步升到 0.1.3。 | ## 設計重點 - **這一段才會讓已安裝的 CLI 抓到新內容。** marketplace 與 `jsc-hooks/hooks/version-guard.sh` 都讀存取庫的**預設分支** `master`——`version-guard.sh` 取 raw `plugin.json` 時刻意不指定 ref,拿到的就是預設分支那一份。內容留在 `develop` 上再完整,已經安裝的 CLI 一律抓不到,版本檢查也照舊回報舊版本。階梯的前三級都已走完,這是最後一級,也是唯一會讓使用者端真的拿到新內容的一級。準則裡的第 6 條寫的就是這件事,這支 PR 不能自己違反自己剛寫下的規則。 - **行為變更清單。** 本批只動文件,沒有程式碼變更: 1. 準則新增「PR 分支階梯」一節,成為階梯規則的唯一來源。其他存取庫(`jsc-git` 的 `skills/pr/SKILL.md`、`jsc-sdlc` 的 `references/branch.md`)一律指回這裡,不抄第二份。 2. 環境變數表新增 `JSC_PR_WATCH_INTERVAL`,實作在 `jsc-gitea/tools/pr-watch.sh`,預設 60 秒。 3. 審核清單多一項,之後 `jsc-meta:skill-check` 每次稽核都會查 PR 的 base 有沒有越級。 - **為什麼準則要收這一節。** 階梯原本只散在各技能的內文裡,靠模型自律遵守;內文靠不住——換一個工作階段、換一個模型,或只是上下文被截掉,規則就跟著消失,而且沒有任何徵兆看得出來。收進準則之後,它同時是稽核項目與程式判定(`base-branch.sh --derive`)的依據。 - **升級後使用者會立刻感受到的差異。** - R3 分支階梯(`jsc-git` 0.0.8 實作):**越級的 PR 會被擋下來**。base 一律由 `--derive` 推導,推不出唯一合法基底就中止並問使用者,不退回 `develop`。 - R4 工作包隔離(`jsc-hooks` 0.2.3、`jsc-sdlc` 0.1.9 實作):**不是自己領的那一包的 PR 會被擋**,查無歸屬才放行只提醒。逃生門是 `JSC_WP_GATE=off`。 - 之後跑 `jsc-meta:skill-check` 會多查一項 base 越級。 - 相關紀錄:工作日誌在 <https://gitea.jsc.idv.tw/knowledges/LOG/wiki/LOG_FB8DF0B5>,決策紀錄在 <https://gitea.jsc.idv.tw/knowledges/QUESTION/wiki/QUESTION_FB8DF0B5> 的 2026-08-27 一節。 ## 測試結果 - `git log --oneline origin/master..origin/develop`:4 個 commit,最上面是已合併的 `plugins/meta#23`,其下是 `#22` 與兩個實作提交,沒有夾帶別批的內容。 - `git diff --stat origin/master origin/develop`:4 個檔案、21 行新增、3 行刪除,與上表逐項對得上,沒有預期外的檔案。 - 本次放行不含任何程式碼變更,只有 `references/guidelines.md` 與三份 manifest,內容與已合併的 `plugins/meta#22`、`plugins/meta#23` 完全相同。語言檢查在那兩支 PR 已經跑過,**這支 PR 沒有重跑 `tools/ste100-lint.sh`**。 ## 前置 Push Request - 無
jiantw83 added 4 commits 2026-08-27 04:00:47 +00:00
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
admin approved these changes 2026-08-27 04:14:27 +00:00
admin merged commit d4e3af8397 into master 2026-08-27 04:14:31 +00:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: plugins/meta#24