This commit is contained in:
Your Name
2026-04-16 13:05:07 +08:00
commit 32efff1670
99 changed files with 9974 additions and 0 deletions

View File

@@ -0,0 +1,427 @@
# domainCheck 项目整改清单(外包沟通版)
本文档用于当前版本项目的整改确认与后续复测对齐。
依据为现有交付代码、运行联调结果及 [需求文档内容_utf8.txt](/d:/www/py/domainCheck/需求文档内容_utf8.txt:1)。
请外包方根据本清单逐项确认:
- 是否已完成
- 如未完成,预计整改方案与时间
- 如有与需求理解不一致之处,请逐项书面说明
## 当前联调状态
- `更新时间`2026-04-15
- `说明`:以下状态由当前代码联调结果同步,便于外包方按项书面回复。
- `状态口径`
- `已整改`:代码已落地,待外包方和甲方复测确认
- `整改中`:已有部分优化,但仍需继续补齐
- `暂缓`:按当前阶段安排,不纳入首轮阻塞项
## 最近复测结果
- `复测时间`2026-04-16
- `复测范围`导入测试数据、筛选查询、TXT/分页导出、批量更新
- `复测结论`
- 备案筛选、友链大于 10 筛选、检测时间展示、TXT 导出、分页导出底层链路均已通过脚本化复测
- 批量更新选中域名在实际代码链路下已验证可正常更新数据库
- 当前仍建议外包方配合做一轮 GUI 人工复测与检测端全流程复测,再关闭整改项
## 最新检测联调结果
- `联调时间`2026-04-16
- `联调范围`:导入建任务、聚查/桔子补查取数、单域名检测完成路径、单域名命中黑名单路径
- `联调结论`
- TXT 导入后可自动创建待检测任务
- 聚查、桔子补查逻辑已可按状态取数,且黑名单域名不会再次进入补查
- 单域名检测完成后,`detect_status / detect_time / review_status / expire_date` 联动已验证正常
- 单域名命中风险后,`detect_status / domain_blacklist / 时光机附加字段` 联动已验证正常
- 当前 Wayback 已按最新验收口径调整为“全快照倒序扫描标题、命中即停、标题去重、结果缓存”
- 当前保留风险主要为超大域名首次获取 CDX 时间戳列表时的耗时问题;已补充 Redis 时间戳缓存,建议外包方继续优化首次全量列表获取策略
---
## 一、整改结论
当前版本可以完成基础启动、基础界面展示、远程数据库连接与部分导入/采集功能,但**暂不具备整体验收通过条件**。
主要原因是核心检测闭环、状态定义一致性、部分导出与筛选逻辑、以及多项需求规则尚未完整落地。
为避免后续复测口径不一致,现将整改事项分为以下三类:
- `一类问题`:必须整改,整改完成后方可进入整体验收
- `二类问题`:建议整改,影响可用性、稳定性或需求完整度
- `三类问题`:可按阶段排期,属于增强项或扩展项
---
## 二、一类问题(必须整改)
### 1. 检测任务创建、执行、结果回写需形成完整闭环
- `当前状态``已整改`
- `问题说明`:当前版本中,域名入库后“创建待检测任务”、检测完成后“回写检测结果”的流程不稳定,部分数据库写入逻辑存在连接对象使用不一致的问题。
- `需求依据`:需求文档明确要求入库后创建待检测任务,并通过流水线方式持续检测与更新数据库状态。
- `整改要求`
- 保证入库后可稳定创建待检测任务
- 保证检测完成后可稳定写入检测结果
- 保证失败任务、重试任务、已完成任务状态可追踪
- `验收标准`
- 随机导入一批域名后,可在数据库中看到对应任务
- 执行检测后,数据库状态与检测结果表有完整回写
### 2. 状态码定义必须统一
- `当前状态``已整改`
- `问题说明`:当前项目中注册状态、检测状态等枚举值在数据库、检测器、工具函数、界面显示之间存在不一致。
- `需求依据`:需求文档已给出明确状态定义。
- `整改要求`
- 统一注册状态枚举
- 统一检测状态枚举
- 统一使用状态、人工复核状态枚举
- 确保数据库值、代码逻辑、界面显示、导出结果一致
- `验收标准`
- 任取一个域名,其数据库状态、界面显示、导出内容含义一致
### 3. 导出功能需补齐 TXT 格式
- `当前状态``已整改`
- `问题说明`:需求要求“导出 TXT一行一个域名”当前版本仅支持 Excel/CSV。
- `需求依据`:运营导出明确要求 TXT 格式。
- `整改要求`
- 增加 TXT 导出
- 每行一个域名
- 导出内容与当前筛选结果一致
- `验收标准`
- 在筛选结果页导出 TXT文件内容符合“一行一个域名”
### 4. 筛选条件必须真实生效,不能仅停留在界面层
- `当前状态``已整改`
- `问题说明`:当前部分筛选项虽已在界面存在,但未完整进入查询逻辑,导致界面与结果不一致。
- `重点项`
- 注册状态
- 检测状态
- 使用状态
- 备案年份
- 快照年份
- 是否有备案历史
- 友链数量是否大于 10
- 首页网址筛选
- `整改要求`
- 所有界面筛选条件必须真正作用于数据库查询
- 查询结果必须与筛选条件一致
- `验收标准`
- 通过构造测试数据,验证各筛选项结果准确
### 5. 敏感词配置必须全链路生效
- `当前状态``已整改`
- `问题说明`:当前虽然存在敏感词配置页面,但部分检测逻辑仍使用写死词表。
- `需求依据`:需求明确要求“敏感词、风险词必须可配置”。
- `整改要求`
- 检测流程统一从配置或数据库读取敏感词
- 不再保留独立的写死敏感词规则作为主判定来源
- `验收标准`
- 新增/删除敏感词后,检测结果可随配置变化
### 6. 停止规则需完整落实
- `当前状态``整改中`
- `问题说明`:需求文档中对停止检测、进入候选池、排除运营池等有明确规则,当前只实现了部分中止逻辑。
- `整改要求`
- 黑名单命中后停止后续检测
- 已使用/已卖出/已预定域名不进入运营候选池
- 非可注册且非一口价域名不进入“可注册域名池”
- `验收标准`
- 按规则构造测试样本,流程结果符合需求定义
### 7. 核心检测流程需与需求步骤一致
- `当前状态``整改中`
- `问题说明`:当前版本已有基础检测器,但与需求中的完整筛选链路仍有差距。
- `需求链路`
- 注册状态检测
- 黑名单缓存检查
- 时光机基础筛选
- 各平台深度检测
- 备案检测
- 更新数据库
- 运营筛选导出
- `整改要求`
- 明确各步骤执行顺序
- 明确每一步的中止条件
- 明确每一步的结果回写字段
- `验收标准`
- 随机抽取样本域名,能完整追踪检测执行链路
### ++ 8. 聚查、桔子需增加独立检测状态并支持增量补查
- `当前状态``已整改`
- `问题说明`:人工验收反馈中提出,聚查、桔子当前缺少独立检测状态,无法区分“未检测”和“已检测”,导致二次检测场景下无法按需补查。
- `业务要求`
- 第一次检测时,如未勾选聚查、桔子,则仅按当次检测选项执行
- 第二次检测时,如新增勾选聚查、桔子,则数据库中尚未检测过聚查、桔子的域名需补查一次
- 当本次选中的流程全部执行完且未命中黑名单时,总检测状态应更新为“检测完成”
- `整改要求`
- 为聚查、桔子增加独立检测状态字段或等效机制
- 支持按子项状态触发增量补查
- 明确总检测状态与子项检测状态的联动关系
- `验收标准`
- 构造“第一次未勾选、第二次勾选”的测试场景,验证聚查、桔子可正确补查
### ++ 9. 检测选项配置需与实际执行流程保持一致
- `当前状态``已整改`
- `问题说明`:人工验收反馈指出,系统设置中仅配置了少量检测项,但检测端运行耗时异常,无法明确系统实际执行了哪些检测流程。
- `人工反馈重点`
- 当前希望可配置的检测项包括:
- 检查注册
- 站长之家查询
- 爱站网查询
- 百度 site 查询
- 360 site 查询
- `整改要求`
- 系统设置中的检测选项必须与实际执行逻辑严格一致
- 未勾选的检测项不得执行
- 检测端应能清晰反映当前执行项
- `验收标准`
- 在仅勾选部分检测项时,日志与结果仅体现对应检测流程
### ++ 10. 域名筛选结果中需显示检测时间
- `当前状态``已整改`
- `问题说明`:人工验收反馈中,在“注册状态=可注册、使用状态=未使用、检测状态=检测完成”条件下查询后,结果列表未显示检测时间。
- `业务口径`:检测时间 = 检测完成时间。
- `整改要求`
- 检测完成后必须回写检测完成时间
- 筛选结果页需显示该时间
- `验收标准`
- 随机选取已检测完成域名,列表中可看到检测完成时间
### ++ 11. 域名筛选导出需支持“导出多页”或“导出全部”
- `当前状态``已整改`
- `问题说明`:当前导出范围仅限当前页,不满足实际运营导出需求。
- `整改要求`
- 在导出时增加导出范围选择
- 至少支持:
- 导出当前页
- 导出指定页数
- 导出全部结果
- `验收标准`
- 针对多页数据可完成跨页导出
### ++ 12. “是否有备案”筛选需修复
- `当前状态``已整改`
- `问题说明`:人工验收中,无论是否勾选备案条件,出现的域名结果均相同。
- `整改要求`
- 核查备案字段写入与筛选逻辑
- 保证“有备案 / 无备案 / 未检测”条件能真实区分结果集
- `验收标准`
- 构造不同备案状态数据后,筛选结果明显区分
### ++ 13. 批量更新选中域名功能需修复
- `当前状态``已整改`
- `问题说明`人工验收中已选中域名后执行批量更新系统提示“成功更新0个域名的信息”。
- `整改要求`
- 修复选中项识别、域名定位、更新提交逻辑
- 保证选中数据可真正更新到数据库
- `验收标准`
- 选择多条域名执行批量更新后,数据库与界面结果同步变化
### ++ 14. 检测选项配置中需补充时光机检测
- `当前状态``已整改`
- `问题说明`:人工验收中指出系统设置的检测选项中没有“时光机检测”,但需求流程中时光机属于基础检测步骤。
- `整改要求`
- 在检测选项配置中增加“时光机检测”开关
- 并确保该开关与实际流程联动
- `验收标准`
- 关闭时光机后流程不执行时光机检测
- 开启后流程正常执行并写入结果
---
## 三、二类问题(建议整改)
### 8. 时光机检测已按当前验收口径调整为“全快照倒序扫描标题,命中即停”
- `当前状态``已整改,待复测确认`
- `当前情况`:已使用 Wayback/CDX API 获取全量快照时间戳,并按倒序进行扫描。
- `当前实现`
- 仅抓取快照 `title`
-`title` 去重
- 先快速检查最新快照,命中后不再继续拉取全量快照列表
- 使用 CDX 返回的 `digest` 先做内容级去重,减少重复 title 请求
- 命中敏感词立即停止后续扫描
- 已增加标题缓存与时间戳列表缓存
- `保留说明`:当前不再按正文提取友链数量;如甲方仍要求自动产出友链数,需另行补充正文抓取或其他统计来源。
- `备注`:该实现已与当前人工审核口径一致,即必须检查全部快照,但命中后立即停止。
### 9. “友链数量是否大于 10”建议接入自动检测闭环
- `当前状态``已整改`
- `当前情况`:已有相关字段与部分处理逻辑。
- `存在差距`:与自动检测、筛选条件、落库逻辑的衔接还不完整。
- `整改建议`
- 自动检测时计算并回写友链结果
- 筛选页支持按该结果稳定筛选
### 10. 人工筛选规则脚本化建议进一步补齐
- `当前状态``整改中`
- `需求涉及平台`
- 站长之家
- 爱站
- 百度 site
- 360 site
- 聚查 WHOIS/备案/拦截
- 桔子 SEO 历史/外链
- `当前情况`:已有平台检测器,但规则覆盖不完整。
- `整改建议`
- 逐项补齐需求文档中已列明的业务判断规则
- 能自动拉黑的规则尽量自动化,不保留人为口径歧义
### 11. 检测端稳定性建议优化
- `当前状态``已完成一轮基础整改,待长时压测`
- `当前情况`:项目可运行,但数据库连接、线程模型、失败重试等仍有优化空间。
- `整改建议`
- 优化连接池与并发参数
- 梳理失败重试与日志
- 降低因资源配置导致的不稳定情况
### 12. 配置写入逻辑建议优化
- `当前状态``已整改`
- `当前情况`:系统设置页在初始化过程中存在重复写本地文件/Redis 的现象。
- `整改建议`
- 初始化加载与主动保存行为区分
- 减少无效写入与重复日志
### 13. 明文密码存储建议整改
- `当前状态``已整改`
- `当前情况`:本地存在明文账号密码保存。
- `整改建议`
- 明确是否允许本地持久化保存
- 若允许,应增加最基本的保护措施
- 若不允许,应移除明文存储
---
## 四、三类问题(可阶段处理)
### 14. 多来源采集扩展
- `当前状态``暂缓`
- `包含项`
- 搜索引擎采集
- 企业目录采集
- Zone File 采集
- 第三方 API / 数据包接入
- `说明`:该类功能对“全网增量建设”有价值,但可根据当前项目阶段单独排期。
### 15. Redis Bloom 模块支持
- `当前状态``暂缓`
- `当前情况`Redis 当前可正常使用,但未安装 Bloom 模块。
- `说明`:不影响当前基础运行,可后续视大数据量需求决定是否补充。
### 16. 亿级数据量专项优化
- `当前状态``暂缓`
- `说明`:需求文档中有“支持亿级数据量”的目标,当前项目尚不足以证明已达到该级别设计要求。
- `建议后续处理方向`
- 索引优化
- 批量导入策略
- 分区/分表设计
- 大规模调度与队列方案
### 17. 交互体验优化
- `当前状态``整改中`
- `包含项`
- 批量操作反馈
- 查询空结果提示
- 导出结果提示
- 状态说明更清晰
- `说明`:可在主流程稳定后再安排
---
## 五、建议整改优先级
建议外包方按以下顺序整改:
1. 检测任务闭环
2. 检测结果回写
3. 状态码统一
4. TXT 导出
5. 筛选条件真实生效
6. 敏感词配置全链路生效
7. 停止规则补齐
8. 时光机升级
9. 人工筛选规则补齐
10. 稳定性与安全性优化
---
## 六、复测建议
整改完成后,建议按以下顺序重新复测:
1. 环境连接与数据库初始化
2. 域名导入与去重
3. 自动创建检测任务
4. 注册状态检测
5. 时光机检测
6. 平台深度检测
7. 结果回写数据库
8. 筛选页面结果准确性
9. 批量更新使用状态/人工复核状态
10. TXT 导出正确性
---
## 七、外包方回复建议格式
请外包方按以下格式逐项回复:
- `问题编号`
- `是否认可`
- `是否已整改`
- `整改说明`
- `涉及文件`
- `预计完成时间`
---
## 八、当前阶段结论
当前版本不建议直接整体验收通过。
建议以本清单为基础,由外包方完成一类问题整改后,再进入下一轮正式复测。