Launch Atlas logoLaunch.Atlas
#32Build開發者

PR Template

讓作者在按下 Create PR 之前先回答 reviewer 會問的問題

PR Template · 卡片插圖
CHOOSE YOUR MODE

先決定你現在是要學,還是要在專案裡做

網站負責解釋與分發工作包;真正的 Repository 掃描、缺口判斷與文件產出交給 Coding Agent。

SDLC 實作課 · 交付物練習

先理解這份文件替你消除什麼不確定

讓作者在按下 Create PR 之前先回答 reviewer 會問的問題

Review 卡住通常不是程式碼難,是脈絡缺。PR Template 強制作者寫清楚「為什麼改、改了什麼、怎麼驗證、有什麼風險」。

OWNER & HANDOFF

誰負責、交給誰

主責: Dev Lead 維護模板、Dev 填寫

協作: QA(驗證欄位)、DevOps(rollout 欄位)

下游收件: Reviewer、release notes、incident retro

WHEN TO USE

何時值得做

REQUIRED

必要時機: 任何進主幹的 PR

SKIP

不需要時: trivial typo 修正可允許簡化版

CAUTION

常見誤用: 模板太長無人填;只剩標題格式檢查

看懂6 段骨架知道每段要留下哪一種判斷
看會雙版本範本先用輕量版練習,再讀完整版
做出自己的草稿手動貼到 Claude Code、Codex 或其他 Agent
  1. 01讀大綱
  2. 02比範本
  3. 03填素材
  4. 04貼提示詞
  5. 05對照驗收

Anatomy · 文件解剖

輕量版先回答 6 個核心章節

章節名稱可以因團隊調整,但每一段要求的判斷不能被省略。先讀問題,再看格式。

  1. 01

    Summary

    範本必要章節

    一句話 + type tag。type: feat / fix / refactor / perf / docs / chore / breaking

  2. 02

    Why

    範本必要章節

    必含 problem + link_to_issue。缺 issue link 標 _TODO_

  3. 03

    Changes

    範本必要章節

    每個 high-risk 檔案必列;low-risk 可彙總

  4. 05

    Test Plan & Risk

    範本必要章節

    test_plan 必含 evidence 或 _TODO_;risk 必含 blast radius + detection signals

  5. 09

    Reviewer Checklist

    範本必要章節

    6-7 項 checkbox,作者預先勾選自評,reviewer 二次驗證

  6. 12

    Confidence & TODO

    範本必要章節

    把已確認的內容、判斷依據與仍待補充的資訊清楚分開。

Study · 對照學習

同一份交付物,先練核心,再看完整深度

輕量範本適合第一次練習與 MVP;完整範本保留跨職能交棒需要的細節。兩者都要求未知事項保持可見。

SmartTrip 實例待補

這張卡目前提供已審定的輕量與完整範本;不以 AI 臨時生成的內容冒充實際案例。

LIGHT TEMPLATE

30 分鐘內先完成核心章節。

---
doc_type: "pr-template"
variant: "light"
status: "draft"
owner: "<your-name>"
last_updated: "YYYY-MM-DD"
upstream:
  required: ["git-diff", "commit-messages"]
  optional: ["linked-issue"]
---

# PR: <one-liner-title>

**Status:** Draft · **Author:** <name> · **Last updated:** YYYY-MM-DD

> [!IMPORTANT]
> **AI 填寫規則:** 本範本 6 段(編號 1, 2, 3, 5, 9, 12),全部必填——刻意沿用完整版的章節編號讓兩版可對照。每結論行內加 `(依據:diff path:line / commit §X / issue §Y)`;每量化欄位 `[H]/[M]/[L]` confidence badge;缺資料寫 `_TODO: 需要 XXX_` 不編造;**「沒有效能影響」若無 benchmark 必須標 [L]**;security / observability / breaking-change 三項必須涵蓋。

---

## 1. Summary

<!-- ai-fill: 一句話 + type tag。type: feat / fix / refactor / perf / docs / chore / breaking -->

**One-liner:** <50 字內描述>
**Type:** `feat` / `fix` / `refactor` / `perf` / `docs` / `chore` / `breaking`

---

## 2. Why

<!-- ai-rule: 必含 problem + link_to_issue。缺 issue link 標 _TODO_ -->

- **Problem:** <要解決什麼>
- **Link to issue:** <URL or _TODO: 缺 issue_>
- **Source:** commit §XX / issue §YY

---

## 3. Changes

<!-- ai-rule: 每個 high-risk 檔案必列;low-risk 可彙總 -->

| File | Summary | Risk |
|---|---|---|
| `<path>` | <做了什麼> | low / mid / high |

---

## 5. Test Plan & Risk

<!-- ai-rule: test_plan 必含 evidence 或 _TODO_;risk 必含 blast radius + detection signals -->

### Test plan

- **Unit:** <test names>
- **Integration:** <scenarios>
- **Manual:** <steps>
- **Evidence:** <screenshot / log / _TODO: 缺證據_>

### Risk

- **Blast radius:** <哪些 user / endpoint / dataset>
- **Detection signals:** <metric / log query>
- **Known unknowns:** <unknown 1>, <unknown 2>
- **Confidence:** **[H/M/L]**

---

## 9. Reviewer Checklist

<!-- ai-rule: 6-7 項 checkbox,作者預先勾選自評,reviewer 二次驗證 -->

- [ ] **Correctness** — 邏輯與 spec 一致
- [ ] **Error handling** — 例外捕捉、訊息有上下文
- [ ] **Tests added** — 新邏輯有測試
- [ ] **Observability** — log / metric / trace
- [ ] **Security** — auth / input validation / secret
- [ ] **Backward compatibility** — 無 breaking
- [ ] **Rollback strategy** — revert / feature flag / data migration down

---

## 12. Confidence & TODO

- **整份 PR 最低 confidence 欄位:** <列出所有 [L] 與 [M]>
- **Fabricated assumptions:** <推測但 input 未明說>
- **Highest-value next input:** <e.g. perf benchmark>

### TODO(缺資料)

- _TODO: 需要 perf benchmark 校準 risk_

---

> [!CAUTION]
> **輸出前 AI 自檢:**
> - [ ] 6 段 H2 章節齊全(編號 1, 2, 3, 5, 9, 12,刻意不連號)
> - [ ] One-liner ≤ 50 字 + type tag
> - [ ] Why 含 problem + link_to_issue(缺則 _TODO_)
> - [ ] Risk 含 blast radius + detection signals + confidence badge
> - [ ] Reviewer Checklist 6-7 項齊
> - [ ] 「沒有效能影響」若無 benchmark 標 [L]
> - [ ] 無 YAML / JSON schema 輸出(PR description 是給人讀的 markdown)

Practice · 換你試做

先用自己的話交代素材,不需要先學會工程術語

確定的就寫,不確定的留白。下一步要做的是請 Agent 找缺口,不是讓它替你猜一套合理答案。

可以先留白;複製提示詞後再到 Coding Agent 裡補充。

AI Practice · 手動三步

先問、再寫、最後審,不把整條流程鎖死

每一步都是獨立工作包。你可以停下補資料、修改限制或重做某一步,不需要服從固定的 Agent 接力流程。

STEP 01

只找阻擋文件成立的未知

先補會改變範圍、判斷或驗收結果的資訊,不急著寫文件。

我要製作「PR Template」。先不要產出文件。

請根據我的素材,找出會影響這份文件正確性或可執行性的未知事項,一次最多問 5 題。

每題請包含:
1. 問題
2. 為什麼現在必須知道
3. 它會影響哪個章節或決定

已經回答的事不要重問;可以延後的事標成「待決策」;不要替我猜答案。

本文件的核心章節:Summary、Why、Changes、Test Plan & Risk、Reviewer Checklist、Confidence & TODO

複製後,請在標示位置貼上自己的素材。

Review · 自己驗收

文件存在,不代表下一個角色真的能使用

逐條檢查 Agent 的輸出。人類負責需求、限制與驗收,也必須能說明重要結論從哪裡來。

CHECKED0 / 6
NEXT HANDOFF

帶著這份文件,繼續到「Code Review Checklist」

下一張卡會接住新的決策問題;不用一次把整條 SDLC 全做完。

前往下一張卡