# T550 — reply-send-outbox-health-gate > Status: `done` > Milestone: `M3` > Kind: `feat` > Est. change: `~180 lines` ## Goal 完成後系統應:公開留言版經**既有海巡外展/Outbox** 送出且**必過 AccountHealth 送出閘**;私訊版只提供複製並標記完成。 ## Depends on - T549 ## Inputs - Spec:`../spec.md` §4.5.6、§4.5.7、§9.3(RP-04、RP-05)、§6(不新增繞過護欄路徑) - 既有:`apps/backend/internal/logic/outbox/**`、`internal/module/growth/**`(AccountHealth 送出閘)、scout 外展送出 ## Outputs ### 程式變更(預期路徑) | 路徑 | 動作 | 說明 | |------|------|------| | `apps/backend/internal/module/radar/usecase/reply_send.go` | add | 公開留言 → 既有 Outbox/外展入口;送前呼叫既有健康閘 | | `apps/backend/generate/api/radar.api` | edit | 送出/標記已使用 request(`channel=outbox|manual_copy`) | | `apps/backend/internal/logic/radar/sendOpportunityReplyLogic.go` | edit | 接線+錯誤映射;`MarkUsed` 記錄管道 | ### 行為變更 - `AccountHealth=warn`:可送但回應帶警示;`throttle`:**拒絕自動送出**,只回手動路徑提示(沿用既有錯誤語意)。 - 私訊版(`dm`):不提供自動送出端點,只能 `channel=manual_copy` 標記;回應與文案不得宣稱已自動送出。 - Outbox 行為不變:僅平台成功後才 `published`(RG-02)。 ## Out of scope - 前端複製與送出按鈕(T552) - FollowUp 建立(T585) ## Acceptance - [x] RP-04:`throttle` 帳號自動送出被拒,手動路徑可用 - [x] RP-05:`dm` 無自動送出路徑 - [x] RG-02:Outbox 發布語意回歸測試通過 - [x] 指令: ```bash cd apps/backend && go test ./internal/module/radar/... ./internal/logic/outbox/... -count=1 ```