# T870 — opportunity inbox accuracy dataset

> Status: `done`（2026-08-11）
> Milestone: `M7`
> Est. change: `~160 lines`

## Goal

完成後有可去識別、可重跑的商機品質資料集，涵蓋真正需求、口語同義、純名稱、同業、公告、stale、未知時間與重複。

## Depends on

- T863（P0 live approval）
- T853

## Inputs

- `apps/backend/internal/module/radar/usecase/testdata/opportunity_inbox_cases.json`
- `docs/product/brand-product-radar/requirements.md` §8
- Spec §11 驗收 #8–#12、#23

## Outputs

### 程式變更（預期路徑）

| 路徑 | 動作 | 說明 |
|------|------|------|
| `apps/backend/internal/module/radar/usecase/testdata/opportunity_inbox_accuracy.json` | add | 去識別文本、產品 context、人工標註 |
| `apps/backend/internal/module/radar/usecase/accuracy_fixture_test.go` | add | schema／label completeness |
| `docs/product/opportunity-inbox/ACCURACY.md` | add | 標註規則與資料來源說明 |

### 行為變更

- 標註只依公開文字 evidence，不含敏感屬性或未公開背景。

### API / 契約（若有）

- Fixture schema 與 T853、T871 共用。

## Out of scope

- 不用測試資料自動訓練或修改 Product。

## Acceptance

- [x] 每筆有 expected demand、product evidence、exclude／stale label。
- [x] 不保存 token、私密帳號或不可公開識別資料。
- [ ] 指令：

```bash
cd apps/backend && go test ./internal/module/radar/usecase -run 'AccuracyFixture' -count=1
```

## Notes

與 brand-product-radar T773 共用可合法保存的案例，避免兩套真相。
