From 48ae514363238c29651966555634566e25eb8893 Mon Sep 17 00:00:00 2001 From: awei Date: Mon, 27 Jul 2026 21:56:23 +0800 Subject: [PATCH] =?UTF-8?q?docs(app):=20=E5=9B=9E=E5=A1=AB=20admin=20?= =?UTF-8?q?=E8=A9=95=E5=88=86=E5=8F=AF=E8=A6=8B=E6=80=A7=EF=BC=8B=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E4=B8=89=E9=A0=85=E7=B6=AD=E8=AD=B7=E5=BE=85=E8=BE=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - TODO/README 記錄 B5 下游補完(dispatch #47 + admin #22):三端齊備—— 乘客評 → 司機看得到自己的平均分 → 營運看得出誰評價低。 - 「下次任務」新增三項**不需前置條件、隨時可做**的維護項(原本四項全被外部資源卡住): 5. 清開發殘留:三個 repo 累積十幾個已合併卻沒刪的 worktree 與舊分支。 6. 清 dev DB 測試殘留:2026-07-27 的 B5 實跑就因十幾個殘留的「線上」司機擋在 派單佇列前,白跑一輪逾時才輪到目標司機。會寫 DB,動手前要先問過。 7. 評分的營運動作:三端現在只「看得到」評分,沒有低分司機的處理流程。 等營運說得出要做什麼再開——做在前面只會做出沒人用的流程。 Co-Authored-By: Claude Opus 4.8 --- README.md | 7 ++++++- docs/TODO.md | 19 +++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 8ef9cf5..2d0ecc7 100644 --- a/README.md +++ b/README.md @@ -192,7 +192,10 @@ FCM data 的值一律是字串,App 端 `fleetEventFromPushData()` 會把座標 **付款仍屬 Phase C**(需真金流),完成卡在無車資時保留費用佔位。 **已模擬器實跑 E2E**(雙 flavor):完成卡評分 → DB 交叉驗證 → 歷史補評 → 司機端 「服務評價 4.5 / 5.0(2 則)」三處一致;實跑抓到並修掉一個後端文案 bug - (評分被拒時講的是遺失物協尋)。詳見 [`docs/TODO.md`](docs/TODO.md)「⭐ 乘客評分司機」。 + (評分被拒時講的是遺失物協尋)。 + **admin 端同批補完可見性**(2026-07-27):司機管理頁「評價」欄(可排序)、訂單詳情「乘客評分」卡—— + 至此三端齊備:**乘客評 → 司機看得到自己的平均分 → 營運看得出誰評價低**。 + 詳見 [`docs/TODO.md`](docs/TODO.md)「⭐ 乘客評分司機」。 **目前**:`flutter analyze` 無 issue、`flutter test` **216 passed**。 @@ -203,6 +206,8 @@ FCM data 的值一律是字串,App 端 `fleetEventFromPushData()` 會把座標 - 完成後付款(B5 的另一半,需真金流)。 - 依賴外部資源/實機的項目(A2 真裝置推播、A5 iOS 實機部署與 iOS 推播)——見 TODO。 +- 維護項(**不需前置條件,隨時可做**,見 TODO「下次任務」5–7):清開發殘留 worktree/舊分支、 + 清 dev DB 的測試殘留、評分的營運動作(待營運說得出要對低分司機做什麼)。 ## 相關文件 diff --git a/docs/TODO.md b/docs/TODO.md index c02f39a..ede4fd2 100644 --- a/docs/TODO.md +++ b/docs/TODO.md @@ -424,6 +424,13 @@ app `flutter test` 197 passed。 已改用專屬的 `ErrRideNotRatable`,並補上「訊息不得提到遺失物」的斷言。 - 收尾:模擬器、docker compose、位置心跳全數關閉。 +**✅ 下游補完:admin 評分可見性(2026-07-27)**——評分原本**只有司機自己看得到**, +admin 端 `grep -i rating` 零命中,營運方對爛司機完全無感。 +後端 dispatch PR #47(`GET /admin/drivers` 的 `rating_avg`/`rating_count`、 +`GET /admin/rides/:id` 的 `rating`)+ admin PR #22(司機管理頁「評價」欄可排序、 +訂單詳情「乘客評分」卡)。至此 B5 三端齊備:**乘客評 → 司機看得到自己的平均分 → +營運看得出誰評價低**。 + --- ## 🔐 登入頁 UI/UX 翻新+驗證(2026-07-23) @@ -490,6 +497,18 @@ app `flutter test` 197 passed。 > (階段 6 iOS 推播仍卡付費 Apple Developer Program。) > 3. **B5 的另一半:完成後付款**——需要真金流方案(後端 P4 #19),屬產品決策。 > 4. **車種供給為零時的選項處理**——等產品拍板要停用、隱藏、還是照選但提示。 +> +> **不需前置條件、隨時可做的維護項**(2026-07-27 盤點新增): +> 5. **清開發殘留**:三個 repo 累積了十幾個**已合併卻沒刪的 worktree 與舊分支** +> (`git worktree list` 看得到)。它們會讓 `git branch -a` 難讀, +> 也讓下次開 worktree 時撞名。**條件**:純維護,不動產品程式碼。 +> 6. **清 dev DB 測試殘留**:本機 docker compose 的 DB 堆了大量前幾次 session 的 +> 測試司機與訂單——2026-07-27 的 B5 實跑就因為十幾個殘留的「線上」司機擋在派單佇列前, +> 白跑了一輪派單逾時才輪到目標司機。**條件**:會寫 DB,動手前要先問過。 +> 7. **評分的營運動作**(B5 下游):三端現在都只「看得到」評分, +> **沒有低分司機的處理流程**(通知/停權/申訴)。 +> **條件**:等實際累積評分、營運說得出要對低分司機做什麼再開—— +> 做在前面只會做出沒人用的流程。 > **🎨 App icon(叫車系統圖示)✅ 已完成(2026-07-15,PR #15)**:品牌綠 LINE green #06C755 + 白色計程車, > 以 `flutter_launcher_icons` 產生 Android(含 adaptive icon)與 iOS 各尺寸,driver/customer 兩 flavor 共用。