1.3 KiB
1.3 KiB
T760 — live radar product repo mapping
Status:
done
Milestone:M6· Phase C
Kind:feat· Est. change:~200 lines
Goal
前端 live RadarRepo 完整映射產品型 API,並與 T710 mock 通過同一 contract。
Depends on
- T750–T755
Inputs
apps/web/src/data/live/radarRepos.tsapps/web/src/data/repos.ts、T703 fixtures../spec.md§5.2
Outputs
| 路徑 | 動作 | 說明 |
|---|---|---|
apps/web/src/data/live/radarRepos.ts |
edit | context/matches/filters/assign/primary/counters mapping |
apps/web/src/data/live/radarRepos.test.ts |
edit | request query/body、new/legacy response、errors |
apps/web/src/data/radarRepo.contract.test.ts |
edit | live mapper 與 mock 共用案例 |
Behavior
- optional legacy fields 正規化但不偽造 product。
- query 正確使用 page/pageSize 與 product filters。
- non-102000、not-ready、forbidden 保持 ApiError,不轉空資料。
Out of scope
- 頁面 loading/error UX(T761)
- backend 行為修補
Acceptance
- mock/live contract tests 全通過(23 files/139 tests)。
npm run build通過;npm run lint通過(僅既有 Fast Refresh warnings)。
cd apps/web && npm run test -- radarRepos radarRepo.contract && npm run build