# T770 — reply uses primary product snapshot > Status: `todo` > Milestone: `M7` · Phase D > Kind: `feat` · Est. change: `~180 lines` ## Goal 新回覆只使用商機當下 PrimaryProduct snapshot 與正確 Brand,並繼續遵守選用 ServiceProfile 禁語。 ## Depends on - T762(P0 live 已驗收) ## Inputs - `apps/backend/internal/module/radar/usecase/reply.go` - `../spec.md` §4.5、驗收 #14 ## Outputs | 路徑 | 動作 | 說明 | |------|------|------| | `apps/backend/internal/module/radar/usecase/reply.go` | edit | prompt 加 primary Brand/Product snapshot 與 evidence | | reply prompt/filter tests | edit/add | 多品牌不串牌、legacy generic、forbidden、changed primary | | frontend reply panel tests | edit | 顯示使用中的產品與已送出不可回寫 | ## Behavior - 無 primary 的 legacy 商機沿用 ServiceProfile 並標未指定產品。 - 改 primary 只影響後續生成;既有 ReplyVariant 不改。 - 不使用其他 ProductMatch 的承諾,不推測未公開資訊。 ## Out of scope - 自動送出/私訊 API - Product 編輯 ## Acceptance - [ ] spec #14 多品牌 fixture 不串牌,既有 forbidden tests 綠。 ```bash cd apps/backend && go test ./internal/module/radar/... -count=1 cd apps/web && npm run test -- RadarTodayPage ```