docs(wiki skills): 禁止覆蓋目錄頁內容

This commit is contained in:
Codex
2026-08-14 16:00:28 +08:00
parent 94076dbef7
commit 251cfb94db
2 changed files with 10 additions and 6 deletions
+5 -2
View File
@@ -35,6 +35,7 @@ argument-hint: "[--source <需求描述|檔案路徑|議題編號>] [--impl-mode
- TODO 頁 title 預設固定為 `TODO-{yyyyMMdd}-{HASH}`,不詢問使用者;`yyyyMMdd` 使用 Asia/Taipei 當日日期,`HASH` 由需求彙整、關聯計畫或系統名稱產生穩定短雜湊並轉成全大寫。
- 必須詢問使用者是否需要把本 TODO 連結到計畫;使用者回答不需要時,不更新目錄頁,也不要把 TODO 加到目錄。
- 需要加入目錄頁時,目錄標題使用 `{關聯計畫的系統名稱}-代辦`,並連結到 TODO 頁。系統名稱優先從關聯計畫取得;若沒有關聯計畫,從需求內容尋找或產生系統名稱。
- 目錄頁禁止整頁覆蓋:不存在時才新建;存在時必須保留既有內容,只修改本 TODO 既有列或在既有表格附加新列。
## 參數
@@ -123,7 +124,7 @@ scope: <階段 2 產出的 scope>
1. 依 `spec-gitea` 決定 host 與 token,不輸出 token。
2. 確認 `--wiki-repo`;缺少就詢問。`--wiki-index` 未帶時固定使用 `CONTENTS`,`--wiki-page` 未帶時固定使用 `TODO-{yyyyMMdd}-{HASH}`。
3. 詢問使用者是否需要把本 TODO 連結到計畫。若不需要,記錄為「不更新目錄頁」;若需要,確認或產生關聯計畫的系統名稱,用於目錄列標題。
4. 分頁讀取 `GET /repos/<owner>/<repo>/wiki/pages`,以 title 查表取得 todo 頁 `sub_url`;若需要連結到計畫,也取得目錄頁 `sub_url`。不得為了找頁面自行猜測 title 轉義規則。
4. 分頁讀取 `GET /repos/<owner>/<repo>/wiki/pages`,以 title 查表取得 todo 頁 `sub_url`;若需要連結到計畫,也取得目錄頁 `sub_url`。目錄頁不存在時才建立;目錄頁存在時必須讀取原內容並保留,不得用新目錄內容整頁覆蓋。不得為了找頁面自行猜測 title 轉義規則。
5. 讀取既有 todo 頁;若不存在,策略為「建立」。
6. 既有 todo 頁存在時解析 frontmatter:
@@ -141,7 +142,7 @@ scope: <階段 2 產出的 scope>
同步順序固定:
1. 寫入 todo 頁。
2. 若使用者確認需要連結到計畫,upsert 目錄頁表格列;若使用者回答不需要,跳過目錄頁更新。
2. 若使用者確認需要連結到計畫,upsert 目錄頁表格列:目錄頁不存在才建立;存在時禁止整頁覆蓋,只修改既有 `<關聯計畫的系統名稱>-代辦` 列,或在既有表格/頁末附加新列。若使用者回答不需要,跳過目錄頁更新。
3. 讀回 todo 頁確認內容已更新;有更新目錄頁時也讀回目錄頁確認。
目錄頁表格列格式:
@@ -150,6 +151,8 @@ scope: <階段 2 產出的 scope>
| [<關聯計畫的系統名稱>-代辦](<todo page title percent-encoded>) | todo wiki:<關聯計畫的系統名稱> 代辦——執行規則、需求彙整、分群任務與驗收條件 |
```
若既有目錄頁沒有 `| 頁面 | 內容 |` 表格,附加一段新的目錄表格到頁面末尾,不得刪除或重排既有內容。
API 寫入方式:
- 建立新頁:`POST /repos/<owner>/<repo>/wiki/new`,body 帶 `title`、`content`、`message`。