例外情况不能只写“特殊情况特殊处理”,而要写成可判定的条件、明确的默认动作和需要人工接手的边界。否则脚本执行者只能猜,旧内容该保留、改写还是退出就会变成随机结果。下面以“旧内容退出、保留仍有价值部分”为场景,说明怎样把人工经验转成可执行的例外描述。
人工经验里的例外,通常混着三种东西:数据缺失、规则冲突、价值判断。前两类可以写成脚本条件,第三类只能写成“标记后交人处理”。如果把价值判断硬写成规则,脚本会替人做它不该做的决定。
判断方法很简单:问一句“两个人拿到同样输入,会不会得出同样结论”。会,就是可脚本化条件;不会,就是人工判断项。这个区分决定了后续是保留、改写还是退出。
不要写“表现差的退出、表现好的保留”,要写清楚每个分支成立的前提。假设一个旧栏目要收缩,可以这样描述:
三个分支的默认动作要写死,比如“无法判定时默认保留并标记”,避免脚本在信息不足时直接删除。
“内容质量差”不是条件,“正文非空白字符少于某个阈值且无外部引用”才是。条件必须能被脚本读取,且不依赖主观打分。常见可观察项包括:页面是否有独立标题、是否有可识别的主题、是否被其他页面引用、是否有持续访问。
假设设定:某旧页连续一段时间访问接近零,且站内没有其他页面链接到它。这只能作为退出的候选信号,不能单独作为删除依据。因为访问归零还可能来自采集口径变化、入口被临时调整、季节性需求回落。脚本应把它标为“待确认”,而不是直接执行退出。
实际动作可以是:脚本先输出一份候选清单,人工确认后再执行下一步。这个动作的结果会直接影响后续是批量处理还是逐条复核。
假设一个旧系统要下线,但部分内容仍有价值。脚本需求可以这样写:
这样写的好处是:例外不再是一句“看情况”,而是变成了流程里的一个明确出口。人工只需处理被标记的部分,其余按分支执行。
执行保留、改写或退出后,如果要比较指数变化,必须考虑季节、搜索需求整体变化和数据采集差异。一次改动前后对比,不能直接当成因果。更稳妥的做法是同时观察多个相关页面,看变化是否只出现在被改动的页面上。如果只有个别页面变化,其他页面同样波动,就不能把结果单独归给这次操作。
把例外写成可判定条件、明确默认动作和人工出口,脚本才能稳定执行,旧内容该保留、改写还是退出也才有可复核的依据。