第一百一十四章 预审稿
报告的主体写了四天。
技术部分由麦景行来做:调用链梳理、依赖图、git 日志记录。他做事仔细,每一个时间戳都双重核对,提交 SHA 附在注脚里,让对方自己去验证。
框架和语言是乔木来做的。「技术发现」「风险描述」「审计意见」三段,用词不夸张,不渲染,把看到的东西精确地放在那里。
陆衍自己写的是执行摘要,一页,给十一月监管合规检查准备的版本:把复杂的技术链条翻成普通语言,让不懂代码的人也看得懂那三个时间节点意味着什么。
完成的那天下午,他把报告从头到尾读了一遍,把每一个技术陈述对着原始 git 日志再确认了一遍。没有推断,没有定性,就是记录:函数在这个时间被怎样改动,注释在哪天消失,提交有没有审核记录。
然后把预审稿发给了方晓晨。
比原计划早了三天。信息差是现在唯一的优势,乔木说过,别让对方先摸清底牌。
消息发出去之后,他给乔木发了一条:「预审稿出了,早了三天。」
「收到,」乔木回,「两件事:一,不管她怎么反应,预审稿阶段只接受事实性错误的修订,这个原则不动摇。二,报告正文和所有附件在本地存一份备份,不要只留在共享系统里。」
「附件备份已经有了。」
「不只是附件,」乔木说,「整份报告,含格式,含页脚的版本号,另存一份,加时间戳。」
乔木是在留证据,证明他们发出去的是什么版本。
「好。」
方晓晨当天回复收到,说团队会在两天内审阅。

那两天他基本没有联系泉华那边。麦景行问过他一次,「她们如果提修订意见,你怎么处理?」
「事实性错误就改,」他说,「其他的不动。」
「如果她们坚持,说技术定性有问题呢?」
「每一行技术陈述,我们都有原始 git 证据。她们要说有问题,就拿出对应的反驳证据来。」
看了他一会儿,没有再问。
约定的时间过去了,没有收到任何修订意见。
第三天上午,乔木发来一条消息:「昨晚泉华内部开了一个会,我通过外部渠道听到一点动静。」
「什么会?」
「紧急会议,晚上九点,方晓晨、刘浩、G1/G2 相关负责人。会议开到凌晨一点,刘浩在会上拍了桌子,方晓晨要求技术组连夜复盘那三个提交。」
他看着这条消息,没有立刻回。
「怎么知道的?」
「不重要,」乔木说,「重要的是:他们在会上讨论的主题,是'审计报告的定性是否准确,是否存在超范围表述'。」
「报告里没有超范围表述,」他说,「每一行都对着 git 日志核对过。」
「我知道,」乔木回,「你知道,我知道,但他们不一定这么说。」

下午三点,收到一封邮件。
发件方:泉华科技有限公司·法务部,刘浩。
主题:关于云帆咨询预审稿的正式意见。
邮件正文较长,核心意思分两段:
第一段:「贵司预审稿中部分内容涉及对 G2 代码变更的技术定性,存在对'行为屏蔽'与'安全风险掩盖'的隐含指向,与实际代码审查情况存在偏差,属事实性错误。」
第二段:「依据双方合同第11.3条,审计方有义务在正式提交前确保技术陈述的客观准确性。鉴于上述问题,我司法务部正式要求暂停报告的后续提交流程,待双方就上述内容完成澄清会谈后,方可推进正式交付。」
他把这封邮件读了两遍。
措辞很谨慎。没有说报告写的是假的,说的是"隐含指向"和"偏差"。这是法律语言,不是技术语言。"报告有误"直接可以讲,"技术定性存在隐含指向"是在模糊地带打拉锯。
「技术定性」「事实性错误」「技术澄清会谈」。
放在一起,逻辑就清楚了:他们不打算反驳 git 里那几个提交是真实存在的,他们要反驳的是"这意味着什么"。
转发给乔木,没有加任何评论。
过了大约三分钟,乔木发来:「来了。」
「预期内吗?」

「比我预计的早。」
「11.3 条是什么条款?」
「让我看合同,」停了几分钟,「第11.3条:'审计报告正式交付前,双方可就报告中存在的实质性技术误差进行一次澄清会谈,时限不超过两天。'」
他把这个条款在脑子里转了一遍。
乔木很快回过来:「11.3本来是纠错条款,现在被他们当成刹车片了。目的只有一个,拖住正式提交。」
「澄清会谈必须开吗?」
「合同写了'可就',」乔木说,「是可以开,不是必须开。但如果我们拒绝,他们可能会以'拒绝履行合规澄清义务'为由,进一步扯皮。」
「开。」他说,「他们不是要澄清吗?那就一行一行澄清。谁改的,什么时候改的,为什么改的,当着法务的面说清楚。」
沉默了几秒。「你想清楚了,对方带的是法务。」
「我知道。」
「那你也带一个人,」乔木说,「带我。」
消息回完,把椅背靠住,看着窗外。
下午的光打进来,斜的。
报告里没有一个字是捏造的。`3月15日陈朗写了 WARNING`,这是 git 日志。`4月3日删除提交无审核记录`,这是 git 日志。`4月5日谭伟提交改动了返回值`,这是代码 diff。每一个细节都可以被独立验证,不需要他们相信,只需要他们看。

方晓晨的法务说「存在偏差」,说「属技术定性有误」。
他想看看他们打算怎么解释这几个时间节点。
给麦景行发了一条:「把那三个提交的完整原始 git log 输出,SHA、作者、时间、message、diff,整理成一个单独文件,命名为 evidence_commits.txt,我要在会上现场展示。」
「好,明天上午给你。」麦景行回了,停了一下,又发来:「陆哥,那个谭伟,他们会怎么解释那个 `STATUS_OK` 的改动?」
他想了一会儿。
「说不知道,说是别人让改的,说那段代码有其他考量,有很多种说法。」
「开这个会有什么用?」
「用处是,」他回,「每一种说法,都得当着合同方的人和法务的面说出来,落在记录里。」
沉默了几秒。「懂了。」
又加了一句:「陆哥,打完这个,应该就可以结了。」
他看着这句话,回了一个「嗯」。
窗外的光再往西移了一点。
明天,他们要坐在同一张桌子上,让对方当面解释那几个提交。