# T533 — sweeps-list-and-manual-trigger-api > Status: `done` > Milestone: `M2` > Kind: `feat` > Est. change: `~150 lines` ## Goal 完成後系統應:`GET /api/v1/radar/sweeps` 可查巡的執行紀錄,`POST /api/v1/radar/watches/:id/sweep` 可手動觸發並回 Job。 ## Depends on - T526、T527 ## Inputs - Spec:`../spec.md` §4.2.7、§5.2、§7(可觀測性) ## Outputs ### 程式變更(預期路徑) | 路徑 | 動作 | 說明 | |------|------|------| | `apps/backend/generate/api/radar.api` | edit | sweeps 列表與手動觸發 type 定稿 | | `apps/backend/internal/logic/radar/listSweepsLogic.go` | edit | 分頁列表,可依 `watch_id`/日期 filter | | `apps/backend/internal/logic/radar/triggerWatchSweepLogic.go` | edit | 建 `radar_sweep` Job(同一執行路徑)並回 `job_id` | ### 行為變更 - 手動觸發受**同一個每日商機額度池**約束(不另給額度)。 - watch 為 `paused`/`archived` 時手動觸發回明確錯誤。 - 列表回 `pagination` + `list`,欄位含 `path`、各計數、`failed_reason`、`credits_used`。 ## Out of scope - 前端觀測畫面(本輪不做獨立頁,資訊併入雷達頁提示) - 排程本身(T527) ## Acceptance - [x] 手動觸發回 `job_id`,執行後 Sweep 可在列表查到 - [x] paused watch 手動觸發被拒且訊息明確 - [x] 指令: ```bash cd apps/backend && make gen-api && go test ./internal/logic/radar/... -count=1 && make build ```