Files
Fulfilled-Knowledge/wishfulfilled-wiki/05_需求文档/07-子系统-评价结果追踪.md
2026-05-27 15:40:32 +08:00

172 lines
12 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
1|# 子系统 07 — 评价结果追踪 (`review`) v1.0
2|
3|## 子系统概述
4|
5|| 维度 | 说明 |
6|| --- | --- |
7|| 代号 | `review` |
8|| 核心职责 | 用户真实提交评价记录、Amazon 展示核验、ASIN 健康/计划完成度更新回流 |
9|| 数据所有权 | `review_submission_records`, `review_display_checks`, `review_results` |
10|| 启动依赖 | identity / planning软依赖 |
11|| 外部系统依赖 | Amazon评价展示状态、ASIN 评分数据) |
12|
13|---
14|
15|## 1. 模块划分
16|
17|```
18|┌─────────────────────────────────────────────────────────────┐
19|│ review 子系统 │
20|│ │
21|│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
22|│ │ M1: 评价提交 │ │ M2: 展示核验 │ │ M3: 结果回流 │ │
23|│ │ 记录 │→│ │→│ 引擎 │ │
24|│ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │
25|│ │ │ │ │
26|│ ▼ ▼ ▼ │
27|│ ┌──────────────┐ ┌──────────────┐ │
28|│ │ M4: 异常观察 │ │ M5: 对外 API │ │
29|│ │ 队列 │ │ Gateway │ │
30|│ └──────────────┘ └──────────────┘ │
31|│ │
32|└─────────────────────────────────────────────────────────────┘
33|```
34|
35|| # | 模块 | 职责 |
36|| --- | --- | --- |
37|| M1 | 评价提交记录 | 记录用户真实提交评价的事实(提交时点、提交证据、关联计划、关联 ASIN |
38|| M2 | 展示核验 | 核查 Amazon 是否展示该评价 / 是否可核验 |
39|| M3 | 结果回流引擎 | 将评价结果反馈给 planning计划完成度、identity用户标签、audit |
40|| M4 | 异常观察队列 | 用户已提交但 Amazon 未展示 / 暂不可核验的评价,进入定期复查队列 |
41|| M5 | 对外 API Gateway | 供 outreach、planning 查询评价进度、提交评价 |
42|
43|---
44|
45|## 2. 各模块内外说明
46|
47|### 2.1 M1: 评价提交记录
48|
49|| 维度 | 说明 |
50|| --- | --- |
51|| **对内** | 记录两个核心事实①用户真实提交评价时间、ASIN、评论内容/截图/链接、关联计划);②提交后立即更新真实人累计评价额度(调用 quota 子系统 `commit` |
52|| **对外接口** | `POST /api/reviews/submission` — 记录评价提交 |
53|| **数据写入** | `review_submission_records` |
54|| **依赖** | `POST /api/quota/commit` — 确认额度占用提交后立即计数12 |
55|| **关键规则** | 「用户真实提交评价」和「Amazon 展示确认」是两个独立事实;额度计数按前者,计划完成按后者 |
56|
57|### 2.2 M2: 展示核验
58|
59|| 维度 | 说明 |
60|| --- | --- |
61|| **对内** | 核查 Amazon 是否展示该评价 / 是否可核验;核验方式(待确认:爬取 / 手动 / API / 截图?);核验结果:①展示或可核验→计入计划完成 ②未展示/暂不可核验→保留已提交事实→进入异常观察 |
62|| **对外接口** | `POST /api/reviews/verify` — 触发核验(或定时核验) |
63|| **数据写入** | `review_display_checks` |
64|| **依赖** | Amazon评价展示数据 |
65|| **待确认** | 核验是自动还是人工?核验频率? |
66|
67|### 2.3 M3: 结果回流引擎
68|
69|| 维度 | 说明 |
70|| --- | --- |
71|| **对内** | 评价确认展示后:①通知 planning 更新计划完成度 ②通知 identity 更新用户标签(例如标记为「已回评用户」)③写入审计日志;免评结果回流:①更新 ASIN 健康与权重变化 ②更新计划完成度 ③通知 planning |
72|| **对外接口** | 内部事件发布 |
73|| **数据写入** | `review_results` |
74|| **依赖** | `PUT /api/plans/{id}/status`(更新计划状态) |
75|
76|### 2.4 M4: 异常观察队列
77|
78|| 维度 | 说明 |
79|| --- | --- |
80|| **对内** | 用户已提交但 Amazon 未展示/暂不可核验的评价,进入异常观察队列;定期复查(例如每天查一次 Amazon 是否已展示);超过观察期仍未展示→标记异常→通知运营 |
81|| **数据写入** | `review_display_checks`(更新状态) |
82|| **待确认** | 观察周期多长?复查频率?观察期满后如何处理? |
83|
84|---
85|
86|## 3. 对外 API 契约(草案)
87|
88|| 接口 | 方法 | 输入 | 输出 | 消费者 |
89|| --- | --- | --- | --- | --- |
90|| 记录评价提交 | `POST /api/reviews/submission` | `{person_id, asin, plan_id, evidence, submitted_at}` | `{submission_id, quota_updated}` | outreachIM 核验后/客服确认后) |
91|| 查询计划评价进度 | `GET /api/reviews/status/{plan_id}` | plan_id | `{total_submissions, verified, pending, completion_rate}` | planning |
92|| 查询用户评价历史 | `GET /api/reviews/history/{person_id}` | person_id | `[{submission_id, asin, status, submitted_at}]` | identity上下文卡 |
93|| ASIN 评价统计 | `GET /api/reviews/asin-stats/{asin}` | asin | `{submission_count, verified_count, pending_count}` | planning |
94|
95|---
96|
97|## 4. 数据对象
98|
99|| 对象 | 核心字段 | 说明 |
100|| --- | --- | --- |
101|| `review_submission_records` | submission_id, person_id, asin, plan_id, evidence_type, evidence, submitted_at, quota_updated | 评价提交记录(核心事实一) |
102|| `review_display_checks` | check_id, submission_id, asin, check_method, check_result(DISPLAYED/NOT_DISPLAYED/UNVERIFIABLE), checked_at, retry_count, status(OBSERVING/CONFIRMED/ABNORMAL) | 展示核验记录(核心事实二) |
103|| `review_results` | result_id, plan_id, asin, submission_count, verified_count, completion_rate, asin_health_change, updated_at | 评价结果汇总 |
104|
105|---
106|
107|## 5. 业务澄清问题清单 — review
108|
109|### 5.1 评价提交记录3 项)
110|
111|| # | 问题 | 优先级 |
112|| --- | --- | --- |
113|| V-01 | 「用户真实提交评价」的证据形式是什么用户上传的截图Amazon 评论链接?系统自动检测?)不同形式如何验证真伪? | **P0** |
114|| V-02 | 一个用户为同一个 ASIN 提交多条评价(如果 Amazon 允许——每一条都独立计入累计12额度吗 | **P0** |
115|| V-03 | 评价提交记录是 outreachIM/客服)写入还是用户直接提交?(系统内提交 vs 系统外提交的区别)系统外提交如何登记? | P1 |
116|
117|### 5.2 展示核验4 项)
118|
119|| # | 问题 | 优先级 |
120|| --- | --- | --- |
121|| V-04 | Amazon 评价展示的核验方式是?(定时爬取 Amazon 产品页SP-API 拉取评价列表?用户上传截图人工审核?混合方式?) | **P0** |
122|| V-05 | 如果通过爬取核验——爬取频率?(小时级?天级?)如何识别「哪条评价是本次计划用户提交的」?(靠评论者名字匹配?靠时间窗口?) | **P0** |
123|| V-06 | 「暂不可核验」的常见原因有哪些Amazon 审核中/延迟展示/被 Amazon 删除?)每种原因的处理策略是否不同? | P1 |
124|| V-07 | 核验失败的兜底机制——如果 Amazon API 不可用或爬取失败,是否允许人工确认? | P1 |
125|
126|### 5.3 异常观察队列2 项)
127|
128|| # | 问题 | 优先级 |
129|| --- | --- | --- |
130|| V-08 | 异常观察队列的观察期多长1 天7 天30 天?)复查频率?(每天?每周?)观察期满后未展示→如何处理? | P1 |
131|| V-09 | 多少条评价进入异常观察算异常阈值?(单计划 10% 未展示→通知?单用户多次未展示→标记?) | P2 |
132|
133|### 5.4 结果回流3 项)
134|
135|| # | 问题 | 优先级 |
136|| --- | --- | --- |
137|| V-10 | ASIN 健康「回流」的具体动作是什么?(更新 ASIN 评分/评价数到 planning触发新一轮需求评估更新 outreach 的触达策略?) | P1 |
138|| V-11 | 计划完成度的计算方式——「评价确认展示」即算完成?还是需要确认展示 + 关联到本计划用户?(如何确保那条展示的评价确实是本计划用户的?) | P1 |
139|| V-12 | 免评结果的「权重变化」如何量化Amazon 不直接提供权重数据——如何通过间接指标判断?) | P2 |
140|
### 5.5 评价质量管理4 项)
| # | 问题 | 优先级 |
| --- | --- | --- |
| V-13 | 是否需要评价内容分析?(好评/中评/差评?评价字数?是否含图片/视频?——这些影响评价质量评分?) | P2 |
| V-14 | 差评检测和响应——用户提交了差评1-2 星)是否需要自动触发售后工单?(「差评补救」流程?) | P1 |
| V-15 | 虚假评价检测——用户提交的评价是否可能被 Amazon 判定为虚假评价并删除?(系统是否需要内部质量评分来预测被删风险?) | P2 |
| V-16 | 评价的 ASIN 匹配校验——用户声称对 ASIN A 提交了评价但实际是对 ASIN B 提交的——如何检测和处理? | P1 |
### 5.6 异常观察队列补充3 项)
| # | 问题 | 优先级 |
| --- | --- | --- |
| V-17 | 评价提交后 Amazon 展示的预期时间窗口?(通常 24-48h最长多久超出预期窗口后的自动通知 | P1 |
| V-18 | Amazon 删除评价违反社区准则vs 用户删除评价 vs 评价被折叠——是否能区分?分别如何处理? | P2 |
| V-19 | 大量评价同时进入异常观察(例如 Amazon 评价系统故障导致全站延迟)——系统如何处理?(自动暂停观察队列?人工干预?) | P2 |
### 5.7 ASIN 健康回流补充3 项)
| # | 问题 | 优先级 |
| --- | --- | --- |
| V-20 | ASIN 健康更新的频率?(每次评价确认展示就更新?每天汇总更新一次?) | P2 |
| V-21 | 如果多人同时对同一 ASIN 提交了评价,是否对 ASIN 健康有复合影响?(例如 5 条 5 星好评 vs 1 条 1 星差评——权重不同) | P2 |
| V-22 | ASIN 健康数据的来源——是 Amazon 直接提供的数据还是系统内部计算Amazon 评分 vs 系统追踪到的评价评分可能有差异) | P1 |
### 5.8 实施层面2 项)
| # | 问题 | 优先级 |
| --- | --- | --- |
| V-23 | 评价展示核验如果是爬取 Amazon 页面——爬取频率和多 ASIN 并行爬取能力?(需要爬取几百个 ASIN 时的时间和资源开销) | P1 |
| V-24 | 评价数据是否需要在系统间同步outreach 需要知道「用户已提交」→暂停触达planning 需要知道「评价已确认」→更新计划完成度)数据一致性的保证? | P1 |