feat(action skills): composite/docker action 標準化流程強化(參數優先序、從零建立、Dockerfile 修正) #6
@@ -1,6 +1,6 @@
|
||||
---
|
||||
name: code-issues
|
||||
description: 處理一或多個 Gitea 議題的實作流程:先選擇使用 `tea` 或 Gitea REST API + `GITEA_TOKEN`(已選定則跳過),再確認議題所在專案(已知則跳過)與要處理的議題編號(一或多個);接著讀取議題描述與留言、彙整需求,整理 TODO 列表並依影響範圍由小到大排序,既有 TODO 不足以達成議題需求時補上新 TODO 並附加到議題描述;最後逐項實作 TODO,每完成一項就到議題勾選該 TODO 的 checkbox 並把進度留言到議題;議題若有母議題,實作完成後母議題 checklist 中引用本議題的 TODO 項目也要一併勾選並留言告知。議題若屬於專案看板且有「分析中/待處理/進行中/待測試/已完成」欄位可調整,依處理進度同步把議題移到對應欄位(彙整需求時「分析中」、TODO 確定「待處理」、開始實作「進行中」、實作完成且驗證通過「待測試」,「已完成」僅在使用者確認時)。全程不建立任何草稿檔,中間成果一律用議題描述或留言保存,並盡量以表格與 Mermaid 圖呈現。當使用者說處理議題、實作議題、依議題 TODO 開工、把議題需求整理成 TODO 並逐項完成、議題進度留言、調整議題看板欄位進度,或提到 code-issues、issue 實作、Gitea 議題處理時觸發。不適用於:把需求拆分成多個新議題(用 doc-issues-analyze)、只同步議題狀態不實作(用 doc-issues-sync)、或與 Gitea 無關的本機 TODO 管理。
|
||||
description: 處理一或多個 Gitea 議題的實作流程:先選擇使用 `tea` 或 Gitea REST API + `GITEA_TOKEN`(已選定則跳過),再確認議題所在專案(已知則跳過)與要處理的議題編號(一或多個);接著讀取議題描述與留言、彙整需求,整理 TODO 列表並依影響範圍由小到大排序,既有 TODO 不足以達成議題需求時補上新 TODO 並附加到議題描述;最後逐項實作 TODO,每完成一項就把進度留言到議題。議題若屬於專案看板且有「分析中/待處理/進行中/待測試/已完成」欄位可調整,依處理進度同步把議題移到對應欄位(彙整需求時「分析中」、TODO 確定「待處理」、開始實作「進行中」、實作完成且驗證通過「待測試」,「已完成」僅在使用者確認時)。全程不建立任何草稿檔,中間成果一律用議題描述或留言保存,並盡量以表格與 Mermaid 圖呈現。當使用者說處理議題、實作議題、依議題 TODO 開工、把議題需求整理成 TODO 並逐項完成、議題進度留言、調整議題看板欄位進度,或提到 code-issues、issue 實作、Gitea 議題處理時觸發。不適用於:把需求拆分成多個新議題(用 doc-issues-analyze)、只同步議題狀態不實作(用 doc-issues-sync)、或與 Gitea 無關的本機 TODO 管理。
|
||||
argument-hint: "[--tool <tea|api>] [--repo <owner/repo>] [--issues <編號,以逗號分隔>] [--host <gitea 主機>] [--yes]"
|
||||
---
|
||||
|
||||
@@ -14,7 +14,7 @@ argument-hint: "[--tool <tea|api>] [--repo <owner/repo>] [--issues <編號,以
|
||||
| B. 確認專案 | 詢問議題所在專案(owner/repo),可用目前 repo 的 origin 當預設選項 | 已知專案(`--repo`、對話已提供、或使用者確認採用 origin)|
|
||||
| C. 選擇議題 | 詢問要處理的議題編號,**一個或多個** | 已提供(`--issues` 或對話中已列出)|
|
||||
| D. 彙整 TODO | 讀議題描述+留言 → 彙整需求 → TODO 依**影響範圍小→大**排序 → 不足以達成需求的缺漏 TODO **附加到議題描述** | — |
|
||||
| E. 逐項實作 | 依排序實作每項 TODO → 每完成一項:勾選議題描述 checkbox + **留言進度到議題** → 全部完成後**同步母議題 TODO 狀態**(若有母議題) | — |
|
||||
| E. 逐項實作 | 依排序實作每項 TODO → 每完成一項:勾選議題描述 checkbox + **留言進度到議題** | — |
|
||||
|
||||
議題若**屬於專案看板**且看板有「分析中/待處理/進行中/待測試/已完成」欄位可調整,階段 D/E 需依處理進度**同步調整議題所在欄位**(見「議題進度欄位調整」)。
|
||||
|
||||
@@ -99,7 +99,6 @@ argument-hint: "[--tool <tea|api>] [--repo <owner/repo>] [--issues <編號,以
|
||||
- `api`:`GET {base}/issues/{index}` 與 `GET {base}/issues/{index}/comments`
|
||||
- 留言中若有需求補充、變更或取消,必須納入需求彙整,並以最新留言為準。
|
||||
- 一併確認**議題是否屬於專案看板(project)**與看板有哪些欄位(column):`tea` 不支援 project 操作,一律改走 API(需 `GITEA_TOKEN`);project/column API 隨 Gitea 版本差異大,先探測可用性(如 `GET {base}/projects`、議題回應中的 project 資訊),**不可用時記錄並略過欄位調整**,不影響其餘流程。
|
||||
- 一併確認**議題是否有母議題**:檢查議題描述/留言中的「屬於 #n」「parent: #n」等引用、timeline 的 cross-reference(`GET {base}/issues/{index}/timeline`)、或依賴關係 API;找到候選母議題時讀取其描述,確認其 checklist 是否有引用本議題(如 `- [ ] #<本議題編號>`)或語意對應本議題的 TODO 項目,記錄母議題編號與對應項目。無法確定時可詢問使用者;找不到就記錄「無母議題」,不臆測。
|
||||
|
||||
### 議題進度欄位調整(議題屬於專案看板時)
|
||||
|
||||
@@ -153,13 +152,12 @@ argument-hint: "[--tool <tea|api>] [--repo <owner/repo>] [--issues <編號,以
|
||||
|
||||
1. **實作**:在本機 repo 依 TODO 內容實作,只修改該 TODO 必要範圍;發現需要擴大範圍或牽動其他 TODO 時,先停止並詢問使用者。開始實作該議題第一項 TODO 前,若議題屬於專案看板,依「議題進度欄位調整」把議題移到「進行中」。
|
||||
2. **驗證**:執行適合專案的建置/測試/驗證;失敗時修正到通過,無法通過則記錄原因並在留言中標註「待人工處理」。
|
||||
3. **更新議題 TODO 狀態**:實作完成(驗證通過)後,把議題描述中該 TODO 的 checkbox 由 `- [ ]` 勾成 `- [x]`(同 D4 的更新方式);未通過驗證的 TODO 不得勾選。若母議題的 checklist 有**對應到本項 TODO** 的項目,一併勾選。
|
||||
3. **更新議題描述**:把該 TODO 的 checkbox 由 `- [ ]` 勾成 `- [x]`(同 D4 的更新方式)。
|
||||
4. **留言進度到議題**(每完成一項就留言,不可累積到最後一次補):
|
||||
- `tea`:`tea comment <index> --repo <owner>/<repo> <內容>`
|
||||
- `api`:`POST {base}/issues/{index}/comments`,body 以 UTF-8 JSON 檔帶入
|
||||
- 留言內容以表格呈現:本項 TODO、影響範圍、主要變更(檔案/模組)、驗證方式與結果、整體進度(`已完成 n/總數 m`);有助理解時附 Mermaid 圖。
|
||||
5. 全部 TODO 完成後,對每個議題留下**總結留言**:TODO 完成統計表、變更檔案清單、驗證總結、待人工處理項目(若有);若議題屬於專案看板且全部 TODO 實作完成並驗證通過,把議題移到「待測試」(有待人工處理項目時停留在「進行中」)。
|
||||
6. **同步母議題 TODO 狀態**(D1 有記錄母議題時):本議題全部 TODO 實作完成且驗證通過後,更新母議題描述,把其 checklist 中**引用本議題的項目**(如 `- [ ] #<本議題編號>`)勾成 `- [x]`(同 D4 的更新方式,保留母議題其餘內容不動),並在母議題留言告知「子議題 #<編號> 已實作完成」與總結留言連結。母議題 checklist 以其他文字描述本議題時做就近語意對應;**無法明確對應的項目不硬勾**,回報並略過。本議題尚有待人工處理項目時不得勾選母議題對應項目。
|
||||
|
||||
> 本 skill 範圍到「實作+留言」為止;是否 commit、push、開 PR 或關閉議題**不在本 skill 自動範圍**,由使用者另行指示(可搭配 `code-review-resolve` 的分類提交與 PR 流程)。
|
||||
|
||||
@@ -175,7 +173,6 @@ argument-hint: "[--tool <tea|api>] [--repo <owner/repo>] [--issues <編號,以
|
||||
- **階段 D**:每個議題的需求彙整重點、TODO 列表(含影響範圍排序)、新增了幾項 TODO 並是否已附加到議題描述。
|
||||
- **階段 E**:每項 TODO 的完成狀態與留言連結(或編號)、驗證結果、待人工處理項目;提醒後續可自行決定 commit/PR/關閉議題。
|
||||
- **欄位調整**:議題是否屬於專案看板、各議題的欄位移動紀錄(`#n:<原欄位> → <新欄位>`),或略過欄位調整的原因(不屬於專案/無可對應欄位/API 不支援)。
|
||||
- **母議題同步**:各議題是否有母議題、母議題 checklist 勾選了哪些項目與留言連結,或略過同步的原因(無母議題/無法明確對應/尚有待人工處理項目)。
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user