连思妍发来的消息是早上九点二十。
「我有个同事,在另一家所,想聊一下你们工具,她手里有一个食品行业的案子,文件比较多,她自己觉得用传统方式有点吃力。她叫彭晓,联二所的合伙人,不过是初级合伙人,比较新,说话比较直接,你知道就好。」
陆衍回:「好,我等她联系。」
连思妍:「她这会儿应该已经在看你的公开介绍了。」
二十分钟后,彭晓发来了一条消息,没有寒暄,第一句是:「你们工具跑食品行业的文件,现在能支持吗?」
「能,但要先看样本,」陆衍说,「食品行业字段结构和制造业不一样,要测过才能确认覆盖率。」
「好,我发给你,」彭晓说,「你先看概况,看完了我们电话。」
概况是一个PDF,四页。目标公司叫健泉食品,食品添加剂和防腐剂生产,主要客户是糕点和饮料类食品企业,设在苏北,年营收大概三点二亿。并购方是上海一家消费品集团,在收购一个地区性品牌的供应链。73份文件,包括生产许可证、食品安全认证、产品检验报告、供应商资质等。
陆衍把概况看了一遍,给卫越发消息:「有个食品行业的新案子,73份文件,今天我先看,你看一下食品安全许可证的字段结构我们现在能不能支持,有没有要补的别名。」
卫越:「SC食品经营许可证还是SC食品生产许可证?」
「生产,」陆衍说,「健泉食品是添加剂生产商。」

「我看一下,下午给你消息。」
下午两点,彭晓打来电话,没等陆衍先说,直接开口:「我先说一下我自己觉得最担心的地方,你看和你能查的东西有没有交集。」
「说,」陆衍说。
「目标公司做了很多年,早年拿的是QS认证,就是食品质量安全市场准入证,2015年之前都是这个体系,」彭晓说,「后来国家把QS换成了SC,2018年全面退出,之后QS就不再签发,旧的QS也理论上不再有效。问题是目标公司的文件包里有一张QS证书,还挂在那里,没有被撤掉,旁边放着一张SC,SC是有效的,但两张证书并排放着我看了就觉得不对。」
「这种情况见过,」陆衍说,「SC是新体系,覆盖原来QS的生产范围,两张并排说明他们做了换证,SC是现在的有效证,QS是历史遗留件。但你说的不对,是指?」
「是指他们如果换了证,QS应该是注销状态或者归档状态,但他们文件包里这张QS没有注销状态,」彭晓说,「就像还在用。而且SC的生产范围和QS的生产范围,我仔细看了,SC范围更窄,有两个品类在QS上有,在SC上没有。」
陆衍在本子上写下:QS-SC换证,范围收窄,QS未注销。
「这条我先记下来,工具能扫证书有效性状态字段,但QS和SC的交叉问题要单独处理,」他说,「你说的范围收窄,你有没有同时拿到客户的产品清单?」
「有,」彭晓说,「是另一份文件。」
「产品清单里有没有在SC范围之外、但在QS范围之内的产品?」
沉默了几秒,「……我没有交叉对比过,」彭晓说,语气稍微慢了一点,「这倒是要查。」

「这条我做不了,」陆衍说,「产品清单和证书范围的对比是语义级别的判断,工具做字段比对做不到这一层,但这条值得律所人工去查。」
「明白了,我记下来。」
「另外,」陆衍说,「你们发来的文件包里,SC证书的生产许可范围字段,有没有引用生产标准?」
「我看看,」彭晓说,「……有,GB2760-2014,写在许可范围后面。」
「什么时候签发的SC?」
「2023年8月。」
陆衍在本子上把这个写了下来,想了一下。
GB2760是食品安全国家标准里专门规定食品添加剂使用的那本,2014版是当时现行的版本,2023年签发的SC引用2014版,在签发当时是对的,2014版那时候还有效。但GB2760在2024年7月发布了新版本,2024版正式替代了2014版,过渡期到2026年2月底结束。
所以现在这张SC证书,是2023年签发、引用2014版GB2760的,在签发那一刻没有问题,但放在现在来看,引用的标准已经有了更新版本,过渡期快结束了。
这不是矛盾,是时效问题。
他把这个情况和彭晓说了,彭晓听完停了几秒,「你是说证书本身没有错,但它引用的标准快过期了,如果证书到期续证,新的SC就得引用2024版?」

「对,」陆衍说,「而且如果收购完成后需要续证,引用的标准就要切换,如果业务上有依赖2014版里某些规定的操作,要提前核实会不会受影响。这条工具能识别,但要加一个新的提示类型。」
「什么提示类型?」
「我们现在报告里有六类输出,」陆衍说,「你拿到的是五类,但化工行业前几天刚加了「分类层级说明」,现在是五类,食品这个情况又是一种新情况——证书内容在签发时是对的,但引用的标准有了更新版本,原引用版本即将失效,这不是矛盾也不是格式问题,是时效问题。」
「那怎么标?」
「我们这边叫「标准引用时效提示」,单独一类,」陆衍说,「不算高置信度,因为证书没错;也不是中置信度待核实,因为事实已经清楚;是一种提醒,说某份文件引用了某版标准,该版本已有更新,过渡期截止日期是某年某月,建议在续证或合规审查时关注。」
彭晓:「这个有用,就是提醒我这件事存在,让我自己判断影响多大。」
「对,」陆衍说,「工具没有能力判断影响多大,那取决于你看了业务细节之后的判断,我们能做的是把这件事从文件里找出来、标注清楚。」
挂完电话,陆衍给卫越发消息,把GB2760的情况说了一遍,然后问:「加「标准引用时效提示」这一类,技术上怎么实现?」
卫越回复得比平时稍慢一些,停了大概三分钟,「需要一张标准版本更新记录表,就是「哪个标准,哪个版本,什么时候被替代,过渡期到什么时候截止,新版是什么」,扫到文件里引用了某个标准的旧版本,就查这张表,如果旧版已经被替代且过渡期未结束,就出「标准引用时效提示」,如果过渡期已经过了,就出高置信度矛盾。」
「这张表要我们自己建,」陆衍说,「还是有现成的数据源?」
「暂时没有现成的可以直接用的,」卫越说,「国家标准化管理委员会网站有,但要爬,格式不统一,需要整理。我先手工建一个常见标准的,食品和化工行业常用的那些,覆盖大头,边缘的慢慢补。」

「你估计多少时间?」
「主要的标准,明天能出初版,大概覆盖七到八成常见引用,」卫越说,「但要上线测试,还要再花两天验证,确保匹配逻辑没有误报。」
「好,」陆衍说,「我先告诉彭晓,工具三天后能支持这个类型,她的案子先看其他文件,这条等工具更新。」
他给彭晓发消息说了时间,彭晓回:「行,反正案子本身还有一段时间,不急这三天。」
晚上,陆衍坐在桌边把这一天的进展整理了一下。
彭晓的案子给出了两件事:一件是QS和SC并列的问题,这条工具能扫有效性字段,但SC-QS交叉要单独处理;另一件是GB2760时效提示,这是今天新出来的情况,要加一个新输出类型。
他翻了一下本子,从头数了一下现在的输出类型:高置信度矛盾、中置信度待核实、分类层级说明、格式一致性提示、工具不覆盖说明,加上今天这个,是第六类。
六类。
他在本子上把这一行写下来:同一份文件,在不同时间点读,说的不是同一件事。
然后他把本子合上,去倒了杯水。