哈哈小说
第 6 卷 · AI 的前夜 · 第 115 章 · 61 段 · 2802 字

澄清会谈

第一百一十五章 澄清会谈

会议室在泉华科技三楼。

到的时候是上午九点五十分,提前十分钟。接待把他们引进去,会议室已经布置好了,U 形桌,对面三把椅子,白板是空的,茶水已经备了两排。

进门之前,乔木说了一句:「都拍下来,备用。」

他把手机拿出来,把会议室的布置,对面的座位安排,拍了几张。

十点整,方晓晨带人进来。

左边是刘浩,昨天邮件里签名的那个法务总监,今天换了深色西装。右边是谭伟,G2 技术负责人,陈朗说那个「代码整洁」指令是他发的,比想象中年轻,三十来岁,戴眼镜,来的时候一直没有跟他对视。

「陆总,」方晓晨握了手,「感谢你们今天过来。」

「应该的,」他说,「我们看一下具体哪里需要澄清。」


先开口的是刘浩,把那封邮件的核心意思重复了一遍:报告中对`recovery_handler.c`的变更作出了「安全可见性屏蔽」的技术定性,这个定性存在偏差,不符合实际情况。语气很平稳,用的是律师腔,把每个说法都说得有缓冲余地。

乔木接了:「报告里写的是,`recovery_handler.c` 在特定时间点经历了一次提交,提交内容将 recovery 失败路径的返回值从错误码改为 `STATUS_OK`。这是 git 记录,可以验证。报告没有写'这是故意的',没有写'这是为了屏蔽',写的是事实:函数在这个时间点被这样改了。」

「问题就在这里,」刘浩说,「'改为 `STATUS_OK`'这个事实没有问题,但报告给这个改动附上的是'并发安全问题可见性被屏蔽'的上下文,这个定性超出了代码本身能说明的范围。」

「能不能请谭工解释一下,」乔木问,「那次提交的目的是什么?」

谭伟才开口,声音平稳:「那段 recovery 失败路径原来的错误码设计有问题,会触发上层系统的误报警,对生产环境影响很大。改成 `STATUS_OK` 是为了解决报警问题,和 G1 旁路没有任何关系。」

插图

陆衍把 evidence_commits.txt 打开,投到共享屏幕上。

他说:「时间线过一遍,麻烦谭工确认几个节点。」

屏幕上,第一条记录浮出来:SHA `4d91bc2e`,作者陈朗,4月3日23:14,commit message:`style: remove verbose comments`。

「这个提交删除了`recovery_handler.c`里的一段注释,提交信息写的是代码风格整理。」

看着屏幕,点了点头。「我让他做的,代码里有些太长的注释,叫他清理一下。」

「有 reviewer 吗?」

「整理操作不需要 review,常规维护。」

「看下一行。」

第二条切出来——SHA `7c4f1e9a`,作者谭伟,4月5日09:12,commit message:`refactor: simplify error path in recovery_fail branch`。

「4月5日上午九点,谭工你自己的提交,改了 recovery 失败路径的返回值。」他停了一下,「reviewer 也没有?」

「简单的重构,不需要 review。」

「再看最后一行。」

插图

屏幕上,那段已经从 git 历史恢复的注释原文出来了:

```c / WARNING (2026-03-15): G1 bypass + G2 recovery_fail concurrent invocation of set_system_fault. G1 holds memory lock; G2 does not. Race condition confirmed in integration env — exit code non-deterministic (0x02/0x07/0x0E observed). MUST REVIEW isolation contract before production deployment. Ref: common/err_handle.h L.47 / ```

「最后是陈朗3月15日写的注释,4月3日那次提交里被删除了。」他把那段话念了一遍:「`Race condition confirmed`,`Exit code non-deterministic`,`MUST REVIEW isolation contract before production deployment`。」

他停了一下,让这句话在会议室里停了几秒。

「谭工,你在让陈朗删这段注释之前,有没有读过它的内容?」


沉默了大约三秒。

「……当时我看到的是一段很长的注释,他自己写的,涉及他对 G1 的推断。我们 G2 的代码里夹了一段 G1 的分析,会让代码边界不清晰,所以让他清理了。」

他没有接谭伟那段话,直接翻到 evidence_commits.txt 的第一条记录。屏幕切回去,是4月2日那条:「G1/G2 集成复盘会,谭工你在参与名单里。那次会议的议题里,有 G1 与 G2 并发调用 `set_system_fault` 的隔离问题。」

他让这条记录在屏幕上停了几秒。

「4月3日,你让陈朗清理注释。」

谭伟没有接话。

「但这段注释里写的是 G2 测试环境验证过的竞争条件,」他说,「不是推断,`Race condition confirmed`。」

插图

刘浩开口了:「这里我们需要区分一点——注释里的技术判断属于陈朗个人的分析,不代表泉华的官方技术立场。删除一段工程师个人的技术分析,不等同于'主动屏蔽'。」

「这段注释里有测试环境的具体退出码,」乔木说,「0x02/0x07/0x0E,这是实测数据,不是分析。」

她停了一下,看向对面:「翻译一下,这段注释记录的是:上线前已发现两个系统在同一个时间点抢同一段内存,结果不确定。这个东西进了生产,不是普通 bug,是每次调用都可能触发的隐患。」

对面没有立刻回。

方晓晨那边自始至终没有开口,只是看着屏幕。


刘浩开口:「先暂停五分钟,我们内部商议一下。」

「好,」他说。

他和乔木走出会议室,在走廊上站着。

「进度怎么样?」乔木低声问。

「谭伟的解释对不上时间线,」他回,「我们只需要让他们看到这个事实,不需要我们给他们定性。」

「刘浩很聪明,」乔木说,「他在往'个人判断'这个方向引,想把整件事的性质从'主动屏蔽已知风险'降级成'工程师意见分歧'。」

「我知道,」他说,「报告里不需要写'主动屏蔽',只需要写'已验证并发风险的警告在时间节点A被删除,相关函数返回路径在时间节点B被修改'。事实列在那里,阅读报告的监管方会自己判断。」

插图

乔木点了一下头。「他们的目的是让你改措辞,不是让你改事实。」

「改不了。」

走廊里安静,空调的声音在顶部嗡嗡的。

脚步声,方晓晨一个人从会议室出来,绕过乔木,走到他旁边。

「陆总,」她说,声音很轻,「有没有可能,这份报告不对外?」

他看着她。

她没有回避,直接说:「内部整改,可以,但如果进了监管的合规检查材料,对泉华会有很大影响。我们只是希望有一个解决问题的机会,不是要回避问题本身。」

他停了几秒。

「方总,报告是按合同交付给委托方的,不是我决定对不对外。」

她看了他一眼。转身走回会议室。

身旁的人没有说话。

他看着她的背影,脚步声消失在会议室门口。