55 lines
2.6 KiB
Markdown
55 lines
2.6 KiB
Markdown
# 阶段 6:风控与审核进度记录
|
||
|
||
## 当前状态
|
||
|
||
- 状态:进行中
|
||
- 开始时间:2026-07-01
|
||
|
||
## 计划步骤
|
||
|
||
1. 创建阶段 6 计划和验收标准。已完成,`npm run verify:phase6` 基线通过,BullMQ 端到端约 875.04 TPS。
|
||
2. 增加风控规则、短信发送预审任务、风控命中记录模型。已完成,`npm --prefix api run prisma:generate` 通过。
|
||
3. 实现风控评估服务与客户端预审接口。已完成,`npm --prefix api run build` 通过。
|
||
4. 实现管理端规则配置、命中记录、短信审核接口。已完成,`npm --prefix api run build` 通过。
|
||
5. 运行 Prisma generate、API build、阶段验证脚本和 API health smoke。已完成。
|
||
|
||
## 验收记录
|
||
|
||
- 风控规则模型:已建立 `RiskRule`,支持平台默认规则和租户覆盖规则。
|
||
- 短信发送预审任务:已建立 `SmsSendTask`,记录任务状态、审核原因、拒绝原因和基础风险指标。
|
||
- 风控命中记录:已建立 `RiskHitRecord`,记录规则编号、规则名称、阈值、实际值、处理动作和可读原因。
|
||
- 客户端接口:
|
||
- `POST /api/client/risk-review/tasks/evaluate`
|
||
- `GET /api/client/risk-review/tasks`
|
||
- 管理端接口:
|
||
- `GET /api/admin/risk-review/rules`
|
||
- `POST /api/admin/risk-review/rules`
|
||
- `GET /api/admin/risk-review/hits`
|
||
- `GET /api/admin/risk-review/tasks`
|
||
- `GET /api/admin/risk-review/tasks/pending`
|
||
- `POST /api/admin/risk-review/tasks/:id/approve`
|
||
- `POST /api/admin/risk-review/tasks/:id/reject`
|
||
- `npm run verify:phase6` 通过。
|
||
- 队列契约校验通过。
|
||
- Go Gateway `go test ./...` 通过。
|
||
- BullMQ Spike:15000 条消息、并发 500、端到端约 795.83 TPS,满足 500 条/秒指标。
|
||
- Prisma Client 生成通过。
|
||
- API build 通过。
|
||
- 前端 build 通过,仍存在 Vite chunk size warning。
|
||
- API health smoke 通过:`/api/health` 返回 `ok`。
|
||
|
||
## 阶段 6 验收状态
|
||
|
||
- 命中风控规则时记录规则编号、规则名称、阈值、实际值、处理动作:已完成。
|
||
- 进入审核的任务必须展示审核原因:已完成,`SmsSendTask.reviewReason` 与 `riskHits` 一起返回。
|
||
- 直接拒绝的任务必须向客户端返回可读原因:已完成,`evaluateTask` 返回 `reason`,并写入 `SmsSendTask.rejectReason`。
|
||
|
||
## 结论
|
||
|
||
阶段 6 已完成。下一阶段可进入阶段 7:发送链路。
|
||
|
||
## 风险与说明
|
||
|
||
- 当前阶段只实现发送前预审与审核闭环,不启动真实发送链路;真实入队和 Send Worker 放到阶段 7。
|
||
- 本地没有 PostgreSQL 服务时,仅运行 Prisma Client 生成和 TypeScript 构建,不执行数据库迁移。
|