# 鐵刻運動｜Release smoke checklist

> 本檔是部署前與部署後的驗收清單，不代表網站已部署。
>
> `https://example.com/project/e-commerce/` 是 placeholder，部署前必須替換成實際測試或正式網址。

## 本機產物

- [ ] 六頁皆能開啟：首頁、商品、購物車、結帳、訂單結果、聯絡我們。
- [ ] 所有 HTML 的 CSS、JavaScript、圖片與頁面相對路徑都回應成功，沒有遺失的本地 reference。
- [ ] 桌機與 390px viewport 都沒有水平捲軸，內容與控制項不被裁切。
- [ ] 只用 Tab／Shift+Tab／Enter／Space 可到達並操作主要導覽、商品、購物車與表單，focus 外框清楚。
- [ ] Console 沒有未處理錯誤；Network 沒有非預期 404。

## 資料流程

- [ ] localhost 未開啟 testMode 時明確顯示 local mock，商品、訂單、聯絡流程不送出 POST。
- [ ] 正式產物預設使用公開 GAS Web App；畫面明確提醒勿輸入真實個資或付款資料。
- [ ] 注入 GAS 測試 endpoint 後，Network 的 GET action 是 `listProducts`，POST 使用 form-urlencoded `action`＋JSON `payload`。
- [ ] loading、success、error、timeout 都可觀察；錯誤與 timeout 時輸入資料保留，可用相同 submissionId 重試。
- [ ] 訂單成功頁的商品總額、運費、訂單總額與狀態來自 server response，不採信前端估算。
- [ ] 相同 submissionId 重送時，測試 Sheet 沒有重複列。

## 發佈與回復

- [ ] 將六頁 canonical URL、Open Graph 的 og:url、robots.txt 與 sitemap.xml 中所有 example.com placeholder 全部替換成實際網域後再發佈。
- [ ] 記錄本次 artifact hash、部署時間、上一版 deployment ID 與 rollback 步驟。
- [ ] 發佈後用公開 URL 重跑六頁、390px、Tab、Console、404、mock/live Network 與 server totals。
- [ ] 若 smoke 失敗，切回上一版 artifact／deployment，保留失敗 Network 與 Console 證據後再修正。
