diff --git a/docs/paperclip_dev_review_2026-04-11.md b/docs/paperclip_dev_review_2026-04-11.md index 41cedfa..a5bde01 100644 --- a/docs/paperclip_dev_review_2026-04-11.md +++ b/docs/paperclip_dev_review_2026-04-11.md @@ -2,8 +2,7 @@ > 日期:2026-04-11 > 審查對象:`origin/dev` -> 初次審查 commit:`43c1770` -> 追蹤審查 commit:`aceb1ba` +> 審查 commit:`43c1770` > 用途:提供另一個 agent 依此修正 Paperclip package;本文件聚焦在匯入後行為與規格一致性 --- @@ -23,77 +22,13 @@ paperclipai company import --dry-run --json 3. 已有 `agents/`、`teams/`、`projects/`、`tasks/`、`skills/` 基本結構 4. importer 可以成功解析 package -第二輪追蹤後,原本的 P1-P4 都已修正完成,包含: - -1. recurring routine 與 task slug 已對齊 -2. `daily-secretary-digest` 已移到正確 project 目錄 -3. `quant-strategist` 的過大權限已移除 -4. project 的 Paperclip 專屬 metadata 已改由 `.paperclip.yaml` 承載,dry-run 匯入後可正確保留 - -目前剩下 1 個新的 Paperclip 專屬結構問題,建議修完後再視為本輪完成。 +但目前仍有幾個會影響「匯入後是否符合設計意圖」的問題,需要先修再進下一步。 --- ## 2. 必修問題 -### P5. `ceo` agent 的 `role` 不是 Paperclip 預期的 `ceo` - -**現況** - -`agents/ceo/AGENTS.md` 目前是: - -```yaml -role: manager -``` - -參考: - -- `origin/dev:agents/ceo/AGENTS.md` 第 1-7 行 - -**影響** - -這不是純命名風格問題。Paperclip 內部有多處行為直接依賴: - -```ts -agent.role === "ceo" -``` - -例如: - -- 公司 branding 變更權限 -- company import/export 等 company portability 權限 -- CEO 專屬任務分派與部分控制面能力 - -參考: - -- `paperclip/server/src/routes/companies.ts` 第 60-75 行 -- `paperclip/server/src/routes/agents.ts` 第 127-139 行 - -如果匯入後 `ceo` 的 role 仍然是 `manager`,那他雖然因 `.paperclip.yaml` 的 `canCreateAgents: true` 仍保有部分管理能力,但不會被系統視為真正 CEO,會失去部分 CEO-safe 路由與公司層級操作能力。 - -**建議修法** - -把 `agents/ceo/AGENTS.md` 中的: - -```yaml -role: manager -``` - -改為: - -```yaml -role: ceo -``` - -**建議採用:** - -直接改成 `role: ceo` - ---- - -## 3. 已修正問題(追蹤確認) - -### 已修正 P1. 07:30 主排程沒有綁到真正的 recurring task +### P1. 07:30 主排程沒有綁到真正的 recurring task **現況** @@ -122,13 +57,11 @@ role: ceo **建議採用:** -**追蹤結果:** - -已修正。`origin/dev` 目前的 routine key 已改為 `daily-quant-run`,且 dry-run 匯入結果中 `daily-quant-run.routine` 已正確存在。 +保留 task 檔案語義,將 `.paperclip.yaml` 的 routine key 改成 `daily-quant-run`,與 `TASK.md` slug 對齊。 --- -### 已修正 P2. `quant-strategist` 權限過大 +### P2. `quant-strategist` 權限過大 **現況** @@ -154,13 +87,11 @@ agents: **建議採用:** -**追蹤結果:** - -已修正。`quant-strategist` 的 `canCreateAgents` 已移除。 +先移除 `quant-strategist.permissions.canCreateAgents` --- -### 已修正 P3. `PROJECT.md` 的 owner / status 意圖沒有被保留下來 +### P3. `PROJECT.md` 的 owner / status 意圖沒有被保留下來 **現況** @@ -193,13 +124,12 @@ status: active **建議採用:** -**追蹤結果:** - -已修正。`PROJECT.md` 已收斂成較乾淨的 base package 內容,project 的 `leadAgentSlug` / `status` 目前改由 `.paperclip.yaml` 承載,且 dry-run 匯入結果可正確保留。 +- `PROJECT.md` 只保留:`name`、`description`、`slug` +- project owner / runtime 狀態改放進 `.paperclip.yaml` --- -### 已修正 P4. `daily-secretary-digest` 放在錯的 project 資料夾底下 +### P4. `daily-secretary-digest` 放在錯的 project 資料夾底下 **現況** @@ -233,17 +163,13 @@ projects/board-ops/tasks/daily-secretary-digest/TASK.md 同時保持: -**追蹤結果:** - -已修正。該檔案已移到: - -```text -projects/board-ops/tasks/daily-secretary-digest/TASK.md +```yaml +project: board-ops ``` --- -## 4. 建議但非阻塞問題 +## 3. 建議但非阻塞問題 ### S1. 第一版 package 已經不是方案 A,而是接近量化完整版 @@ -284,28 +210,31 @@ paperclipai company import . --dry-run --json --- -## 5. 建議修改順序 +## 4. 建議修改順序 另一個 agent 建議依照這個順序修: -1. 修 P5:把 `agents/ceo/AGENTS.md` 的 `role` 改為 `ceo` -2. 跑一次 `paperclipai company import --dry-run --json` -3. 確認匯入後 CEO 具備 company-level portability / branding 等 CEO-safe 權限 -4. 若有需要,再更新 `docs/INDEX.md` 或其他說明文件 +1. 修 P1:對齊 routine key 與 recurring task slug +2. 修 P4:把 `daily-secretary-digest` 移到正確目錄 +3. 修 P2:收斂 `quant-strategist` 權限 +4. 修 P3:整理 `PROJECT.md` 與 `.paperclip.yaml` 的 project metadata 分工 +5. 跑一次 `paperclipai company import --dry-run --json` +6. 更新 `docs/INDEX.md` 或其他說明文件,讓口徑一致 --- -## 6. 修正後的驗收標準 +## 5. 修正後的驗收標準 修完後,至少要確認: -1. `agents/ceo/AGENTS.md` 的 frontmatter 為 `role: ceo` -2. `paperclipai company import --dry-run --json` 仍可成功通過 -3. 匯入後 CEO 在系統中被辨識為真正的 CEO,而不是一般 manager -4. 文件敘述與 package 實際內容一致 +1. `daily-quant-run` 在 dry-run 結果中不再是 `routine: null` +2. `daily-secretary-digest` 檔案實體位於 `projects/board-ops/tasks/` +3. `quant-strategist` 不再持有不必要的高權限 +4. `PROJECT.md` 中不再放 importer 會直接吃掉卻不保留的欄位,或已明確改為 `.paperclip.yaml` 承載 +5. 文件敘述與 package 實際內容一致 --- -## 7. 給下一位 Agent 的一句話任務說明 +## 6. 給下一位 Agent 的一句話任務說明 -請修正 `origin/dev` 的 Paperclip package,將 `agents/ceo/AGENTS.md` 的 `role` 改成 `ceo`,確保匯入後 CEO 能取得 Paperclip 的 CEO-safe 行為與公司層級權限;修完後用 `paperclipai company import --dry-run --json` 驗證。 +請修正 `origin/dev` 的 Paperclip package,使 recurring routines 能正確綁定到任務、project 與 task 的目錄/metadata 一致、並移除不必要的高權限設定;修完後用 `paperclipai company import --dry-run --json` 驗證。