先把结论说清楚:对象格式变化后,不要只改输入框里的写法,而要重做一次“对象定义—匹配规则—校验样本”三件事。旧规范默认对象是单一形态,新格式一旦允许目录、通配、批量行或结构化字段,输入规范必须从“一个字段填一个对象”升级为“先声明对象类型,再按类型套规则”。如果只改写法不改校验,后面拿到的报告会把不同对象混在一起,无法判断差异来自业务变化还是输入错误。
看到结果异常时,常见两种解释。第一种是对象本身变了,比如原来只提交首页,现在要提交整个目录,业务范围扩大,数据自然不同。第二种是工具接受的输入形态变了,比如过去只认单个域名,现在支持多行、支持路径、支持带协议的完整地址,但旧规范没有同步更新。两者的处理方向相反:前者要调整比较基准,后者要调整输入和校验规则。把这两者混在一起,最容易得出错误结论。
可以做一个最小对照。假设旧规范下提交的是 example.com,新格式下同一业务要提交 https://example.com/blog/ 和 https://example.com/docs/ 两个目录。如果只把这两行原样塞进旧输入框,可能只有第一行被识别,第二行被当作无效行丢弃。这时报告里对象数量变少,不能说明业务缩水,只能说明输入规范没跟上格式。
能区分的证据有三类:
这三类证据同时出现时,基本可以确定要改的是输入规范,而不是重新解释业务。
具体动作是:先列出新格式允许的对象类型,再为每种类型写一条输入规则和一条校验规则。例如:
这个动作的结果会直接决定下一步:如果三个数字一致,说明输入规范已经覆盖新格式,可以进入结果比较;如果提交行数与识别对象数不一致,先修正解析规则,不要急着解读报告。
旧规范仍可沿用的条件是:新格式只是增加字段,不改变对象边界,且旧写法仍能被正确识别。此时可以保留旧输入方式,只补充新字段说明。必须废弃的条件是:新格式改变了对象粒度,比如从“一个域名”变成“多个目录”,或从“单条查询”变成“批量清单”。这时继续沿用旧规范,会让不同粒度的对象进入同一份报告,后续任何比较都失去意义。
判断标准不是工具是否报错,而是对象边界是否改变。边界变了,输入规范就必须重写;边界没变,才谈得上兼容。
改完规范后,先用一组已知对象做校验样本:同一对象用新旧两种写法各提交一次,观察识别数量、错误提示和结果字段是否一致。若一致,说明新规范可以替换旧规范;若不一致,记录差异出现在哪一步,再决定是调整输入还是调整比较口径。这个步骤的目的不是证明工具正确,而是确认输入规范与对象格式已经对齐。只有对齐之后,报告里的变化才值得进一步分析。