# FR-047 功能 SPEC 量產 — 執行者 Prompt（自包含）

> 給執行 session 的開場 prompt（複製貼上，`<頁面>` 換成 tracker 認領的頁面）：
> ```
> 請執行 FR-047 功能 SPEC 量產。先讀 docs/features/FR-047-2607-feature-spec-handbook/handoff/2026-07-05-mass-production-prompt.md，
> 依 writing-feature-specs skill 的 SOP 撰寫「<頁面>」的 spec（該群 _overview 未寫則先寫），
> 完成後更新 tracker，停下等驗收，不做收尾。
> ```
> 模型：照 tracker 各頁標註（Opus / Sonnet）。一個 session 建議認領 1~3 頁（同群優先）。

## 冷接自檢 3 問（答不出來先讀 FR-047 design.md，別開工）

1. 這套手冊給誰、解決什麼？（新手全端工程師「查功能會查到天荒地老」→ 一頁 route 一份 13 節 spec，md 是 living truth）
2. 為什麼表結構不能信探勘摘要、endpoint 不能抄 docs/api/？（真相來源唯一：db_schema.json / routes.json / serializer 逐條對）
3. 你的頁面寫完，「完成」的定義是什麼？（build ✅ + 自查 grep 0 + 顯式 add commit + tracker 更新）

## 執行步驟

1. **讀 SOP**：invoke `writing-feature-specs` skill（8 步流程 + 13 節模板規格 + 圖形化慣例全在裡面，本 prompt 不重複）
2. **認領**：開 [tracker](../tracker.md)，把你的頁面標 `🚧 撰寫中`；標 `🔍` 的頁面先驗證 route 是否 live（FE 選單 / `public.ui_routes` enable=1），死 route 在 tracker 註記後跳過
3. **_overview 先行**：該功能群 `_overview.md` 不存在就先寫（頁面地圖 / 共用狀態機 / 角色基調 / 核心資料模型；範本 = `docs/specs/v1.8.0/project-management/_overview.md`）
4. **寫頁面 spec**：照 skill 的 8 步（事實蒐集三來源 → md → dot 圖 → build → 自查 → commit → tracker）
5. **停**：一句話 status 給 user；§5 實機截圖統一由主導 session 補拍（留佔位 callout 即可）；不寫 SUMMARY / Notion

## 品質紅線（違反 = 退件重做）

- §1.1 功能總覽不是按 FE 實際 UI 元素盤點（漏按鈕 / 選單 / dialog）
- §9 schema 名沒對 `scripts/deliverables/out/db_schema.json`
- §6.1 endpoint 沒對 `scripts/deliverables/out/routes.json`
- 憑 FR design 文件寫行為沒開 code 驗
- 角色 / 狀態機定義抄進頁面（該引用 _overview）
- `git commit -am`、build 沒跑、tracker 沒更新

## 座標速查

| 物件 | 路徑 |
|------|------|
| SOP skill | `.claude/skills/writing-feature-specs/`（SKILL.md + references/page-spec-template.md） |
| Tracker（認領 / 回報） | `docs/features/FR-047-2607-feature-spec-handbook/tracker.md` |
| 合格範本 | `docs/specs/v1.8.0/project-management/project-planning.md` + `_overview.md` |
| 事實 dump | `scripts/deliverables/out/{db_schema,routes}.json` |
| Build | `python3 scripts/deliverables/render_html.py "docs/specs/v1.8.0"` |
| 敏感資訊 pattern | `docs/交付文件/v1.8.0/conventions.md` §B |
