FR-047 全站 spec 拆分+wireframe 量產計畫(2026-07-06 拍板)

3 個 session 執行(W1 拆分重整 → W2 / W3 wireframe 量產)。每個 session 冷接時先讀本檔全文2026-07-06-planning-hub-split-handoff.md§2.5 wireframe 慣例(樣式唯一依據,本檔不重複)。

§1

🧭 原始需求(WHY)

user 審 spec 站後的方向(規劃頁已另案處理,見 planning handoff):workspace 型頁面要拆成「hub 導航+功能子頁」,讓工程師 30 秒知道「有幾塊、動哪塊碰哪支檔」;每頁 §5 第一張圖必須是版面 wireframe(區塊格局+標代表性 API+可點跳轉),比舊 Graphviz 骨架圖好讀。本計畫把同一模式掃到全站其餘頁面。

§2

全站盤點結果(2026-07-06 程式掃描 55 內容頁)

  • 數值紅旗(功能總覽 >8 或 UC >5)命中 36 頁——但多數是單畫面 CRUD 頁(搜尋/新增/編輯/刪除逐列列出),拆了反而碎。
  • 逐頁看功能總覽「位置」欄後,真正 multi-screen 的只有少數(多個各自成畫面的 tab / 獨立表單頁 / wizard / 兩畫面混寫一份)。

修正後拆分判準(skill 更新用這版,取代先前「>8 或 >5」草案)

數值紅旗(功能總覽 >8 項、UC >5 條、或 >450 行)只是觸發人工判定;拆分條件是「獨立畫面數 ≥2」——各自成畫面的 tab、獨立表單頁、多步 wizard、或兩條 route 混寫一份。單畫面 CRUD+dialog 群不拆,只補 wireframe。

§3

拆分清單

A 級(確定拆,W1 執行)

現況證據 拆法
system-admin/user-manage.md(499 行/22 功能) Tab0 列表+Tab1 批次匯入 wizard(Step1/Step2)+獨立使用者表單頁,三個畫面混一份 hub(列表)+ user-form.md(新增/編輯表單頁)+ user-import.md(匯入 wizard);user-profile.md 既有子頁不動
system-admin/notify-smtp-config.md(355 行/19 功能) 「通知頁」(Telegram/Discord 兩 tab)與「SMTP 列表+表單頁」兩條畫面混寫一份(違反一頁一 route) 直接拆兩份平級 spec:notify-channels.md(Telegram/Discord)+ smtp-config.md(列表+表單);不需 hub;原檔退役
audit-execution/audit-review.md(492 行/12 功能) Tab0 三欄判定工作區(樹/參考面板/判定+觀察)+ Tab1 風險管理(獨立功能域 UC-AR-02、finding 多對多) hub + audit-verdict.md(Tab0 判定工作區)+ audit-risk.md(Tab1 風險)
compliance-framework/module-frame.md(294 行/14 功能) 頁1 列表 / 頁2 明細下鑽 / 頁3 五 tab 編輯器(=module-frame 版的 SSP 編輯器)三個畫面 hub(頁1 列表)+ module-frame-detail.md(頁2 下鑽)+ module-frame-defaults.md(頁3 編輯器;五 tab 段落交叉引用 project-ssp-* 對應頁,只寫 API base 與行為差異,勿複製欄位定義)

B 級(W1 內判定,給判準不預拆)

判定問題 判準
audit-execution/ap-authoring.md(488 行) Tab1/Tab2 是唯讀投影(行程聯集回填),不是獨立功能;488 行主因是行程卡 field-level 內容 投影 tab 不構成獨立畫面 → 預設不拆;僅當行程卡 dialog 群(新增稽核人員等)自成完整流程才拆一子頁
evidence/evidence-classification-reports.md(360 行) 驗證報表+誤判報表兩塊、共同 Header 若兩報表是同 route 切換顯示 → 不拆;若各自有 route/入口 → 拆兩頁

不拆(確認過,wireframe only)

remote-agent-manage(444,單畫面+dialog 群)、cloud-integrations(423,卡片式單畫面)、poam(390,表格+右抽屜)、my-tasks(357,左清單+右抽屜)、survey 三頁(manage 已是 hub+designer/fill 子頁結構)、project-overview(323,左樹右面板)等其餘全部。

§4

Wireframe 量產規範

  • 樣式/API 標註/可點連結慣例 = planning handoff §2.5 全文(canonical:docs/specs/v1.8.0/project-management/assets/wireframes/project-planning-hub-wireframe.svg);render_html.py 已支援 .svg 內嵌。
  • 每頁一張,放 §5 第一張圖;SVG 存該功能群 assets/wireframes/<page>-wireframe.svg
  • *-ui-layout.dot 骨架圖處理:資訊被 wireframe 涵蓋 → 移除引用(.dot 檔留著不刪);有補充價值(互動流/狀態切換)→ 保留在 wireframe 之後。
  • 事實來源:區塊與 API 從該頁 §1.1/§5/§6 現文取(已核過 code),不重掃 code;發現 spec 自相矛盾才回 code 查。
  • 單頁畫面若無「子頁」可連,色塊連本頁內錨點(§6/UC,pandoc 自動 id),build 後抽查可跳。
§5

Session 切分

順序:planning 拆分 session(已交接)先跑完 → W1 → W2 → W3。序列執行,因為 NAV_STRUCTURE(render_html.py)與各群 md 會被多方修改,避免同檔並行衝突。

W1 — 拆分重整(A 級 4 頁+B 級 2 頁判定)

  • A 級 4 頁照上表拆(hub 比照 project-ssp-edit.md、子頁 field-level 比照 project-ssp-inventory.md);B 級 2 頁按判準判定並記錄結論(tracker 備註)
  • 拆出的每頁(含 hub)都做 wireframe(§2.5 慣例)
  • NAV_STRUCTURE 更新(user-manage/audit-review/module-frame 加子頁縮排;notify-smtp-config 換成兩個平級 entry)+全站 grep 修舊錨點連結
  • build 綠+敏感 grep=0+「GRC 系統」=0 → 更新 tracker → 每頁獨立 commit
  • 產出:約 7~9 個新/改檔+各自 wireframe

W2 — wireframe 量產(前半,約 25 頁)

  • 範圍:project-management 11 頁(dashboard / list / create / ap-list / overview / ssp-edit hub+5 子頁;規劃頁 6 檔歸 planning session,勿碰)+ audit-execution 4 頁(ap-authoring / poam / my-tasks / my-audits;audit-review 已在 W1)+ survey 3 頁+ evidence 7 頁
  • 每頁:畫 wireframe → 接進 §5 第一張 → 舊 layout.dot 按規範處理 → build 抽查連結可跳
  • 分批 commit(一個功能群一 commit)

W3 — wireframe 量產(後半,約 24 頁)+收尾

  • 範圍:system-admin 12 頁(user-manage 群已在 W1)+ compliance-framework 5 頁(module-frame 群已在 W1)+ collab 3 頁+ reporting 2 頁+ auth 2 頁
  • 收尾:writing-feature-specs skill 更新——①拆分判準用本檔「修正後判準」版;②template reference 加 §2.5 wireframe 慣例全文;③「pilot 合格樣貌」改指 hub+子頁雙樣本
  • 全站 build 終驗(斷鏈 0)+ tracker 總結一行+(等 user 下令才做其他收尾)
§6

各 session 啟動 prompt(user 複製貼)

W1:

請執行 FR-047 全站計畫 W1(拆分重整)。先讀
docs/features/FR-047-2607-feature-spec-handbook/handoff/2026-07-06-sitewide-wireframe-and-split-plan.md
全文+同資料夾 2026-07-06-planning-hub-split-handoff.md 的 §2.5 wireframe 慣例。
照計畫 A 級 4 頁拆分(user-manage/notify-smtp-config/audit-review/module-frame)、
B 級 2 頁按判準判定;每頁含 wireframe;NAV 與舊錨點同步修。
只動目標檔、顯式 git add、不切 branch、push 等我指示。

W2:

請執行 FR-047 全站計畫 W2(wireframe 量產前半)。先讀
docs/features/FR-047-2607-feature-spec-handbook/handoff/2026-07-06-sitewide-wireframe-and-split-plan.md
全文+planning handoff §2.5 慣例。範圍:project-management 11 頁+audit-execution 4 頁+
survey 3 頁+evidence 7 頁(規劃頁 6 檔與 W1 已拆頁勿碰)。每頁 §5 第一張換 wireframe
(標代表性 API+可點錨點),舊 ui-layout.dot 按計畫規範處理,一群一 commit。
只動目標檔、顯式 git add、不切 branch、push 等我指示。

W3:

請執行 FR-047 全站計畫 W3(wireframe 量產後半+收尾)。先讀
docs/features/FR-047-2607-feature-spec-handbook/handoff/2026-07-06-sitewide-wireframe-and-split-plan.md
全文+planning handoff §2.5 慣例。範圍:system-admin 12 頁+compliance-framework 5 頁+
collab 3 頁+reporting 2 頁+auth 2 頁;完成後做 skill 更新(拆分判準修正版+wireframe 慣例
進 template reference)與全站 build 終驗。其他收尾動作等我下令。
只動目標檔、顯式 git add、不切 branch、push 等我指示。