1.5 KiB
1.5 KiB
T761 — live product radar pages states
Status:
done
Milestone:M6· Phase C
Kind:feat· Est. change:~190 lines
Goal
Phase B 頁面切到 live repository 後保持相同操作,並完整呈現產品失效、無 eligible 與 API 錯誤。
Depends on
- T713、T721–T724、T760
Inputs
- Radar watches/today/opportunities pages
apps/web/src/lib/apiErrors.ts../spec.md§5.3、§5.4
Outputs
| 路徑 | 動作 | 說明 |
|---|---|---|
| Radar pages/components | edit | live loading/mutation/refresh/error states |
apps/web/src/pages/BrandsPage.tsx |
edit | delete impact/live failure refresh |
| page tests | edit | not-ready/forbidden/unavailable/no-eligible/legacy |
| i18n messages | edit | TC/EN 完整錯誤與下一步 |
Behavior
- URL filters refresh 後不丟失。
- delete 後 watch 顯示 pause reason,舊商機顯示 snapshot 名稱。
- 錯誤不變成 0 results;mutation 失敗不做 optimistic 成功。
Out of scope
- 後端 business changes
- CRM/outcome 深化(T771/T772)
Acceptance
- spec #9–#11 live-shaped tests 通過:刪除影響、legacy snapshot、no-eligible 與 API 錯誤皆保留可辨識狀態。
- URL filters 在 refresh 後保留,live error 不轉成空結果或假成功。
npm run test -- --run23 files/139 tests、npm run build、npm run lint、npm run check:tokens通過。
cd apps/web && npm run test && npm run build && npm run lint && npm run check:tokens