先给结论:原服务退出后,盘点依赖它的工作流程,第一步不是删代码,而是把每个角色口中的“还在用”翻译成可核对的对象——账号、投放计划、数据导出脚本、报表口径、审批节点。然后把它们分成两类:一类是只影响历史归档,另一类是仍在向对外渠道持续供给数据或预算。两类处理方式不同,混在一起就会反复返工。
判断依据不是“谁提过它”,而是“断掉之后,哪一步会停下来”。
两种条件下选择不同:只读历史依赖优先做“冻结与标注”,保留原始导出文件并注明来源和时间范围;持续供给依赖优先做“替换或降级”,要么接入新的数据来源,要么明确改为人工维护并设定复核责任。把只读依赖当成持续供给去改造,会浪费大量工时;把持续供给依赖当成只读去归档,则会在下一次投放周期暴露缺数。
多个角色对同一事实理解不同时,不要开会争论“到底还用不用”,而是各自提交一份可核对清单。可操作的动作是:让每个角色列出自己经手的三类对象——账号与权限、数据文件与字段、审批与交接节点——并注明最近一次实际使用的时间点,而不是印象中的“经常用”。
这份清单的作用是暴露三类常见分歧:有人说“早就没用”,但文件里仍有定时任务引用;有人说“还在跑”,但实际取数早已失败只留下空文件;有人说“只是备份”,但备份被下游报表直接读取。核对时以“最近一次成功产出”为准,而不是以“是否登录过”为准。产出为空、报错或长期未更新,都说明该节点可能已经名存实亡,但仍需确认下游是否在兜底。
假设某团队过去用这条链路每天导出一份关键词花费表,供一份周报使用。现在服务退出,团队里的运营认为“周报早就改成手工填了”,技术认为“脚本还在跑”。核对动作是打开脚本的最近输出文件,看最后一条成功记录的时间,并检查周报当前的数据来源字段。若输出文件停在数月前、周报字段也已换成别处,则该依赖可归为只读历史,冻结归档即可;若输出文件仍在更新、周报仍引用其字段,则必须先替换数据来源再停脚本。这个例子的数字只用于说明比较方法,不代表任何真实项目的现状。
建议按这个顺序推进:
每一步的结果都会改变下一步:冻结清单越完整,标注就越不容易漏项;标注越明确,替换时越容易判断哪些字段必须保留、哪些可以放弃;复查发现的缺口,则决定是继续修补还是重新设计整条流程。若复查阶段发现请求量或抓取量归零,不要直接认定处理正确,因为这也可能是采集端被限制、任务被暂停或口径变更造成的,需要结合产出文件和下游引用一起判断。
并非所有依赖都需要立刻清理。若某条链路涉及合同义务、审计留存或对外披露口径,即使已无新数据产生,也应保留原样并单独登记,而不是按普通历史文件处理。反之,若某节点只是个人临时脚本、无下游引用、无留存要求,则可在记录清楚后直接停用。适用条件是:先确认对象边界和下游引用关系,再决定冻结、替换还是停用;在边界未清之前,不要做批量删除。