第八十二章 Gateway
晚上九点二十分,麦景行发来一份文件。
他正在刷剧,手机放在沙发边上,震了一下。
文件名:`core_module_density_report.txt`。
他打开来,三行。
``` /core/billing 总行数: 8,312 注释行: 1,847 密度: 22.2% /core/order 总行数: 11,044 注释行: 2,563 密度: 23.2% /api/gateway 总行数: 12,198 注释行: 847 密度: 6.9% ```
屏幕看了两遍。
billing 和 order 都在 22%—23%,和主库平均水平一致,正常。
gateway 是 6.9%。
他沉默了大概五秒钟,把电视暂停掉了。
「麦景行,gateway 注释密度这么低,你有没有翻过那些代码,具体是什么情况?」
回复来得很快,麦景行可能一直在等他看完:「我粗扫了一遍。gateway 里大部分代码是函数签名后面直接就是实现,没有任何说明;另一部分有注释,都是调试留下来的,'TODO fix' 或者 'test only' 这类;剩下是大段 key-value 的配置映射,自描述,本来不需要注释。接口层都这样,偏配置化和声明式,和业务模块那种叙述型写法差很多。」
这段话看完,他在沙发上往后靠了靠。

麦景行说的每一类都正常,接口层本来就是这么写的。函数签名清楚,不需要额外解释;TODO 是过程状态,不算注释;配置映射自描述,写注释反而多余。每个判断单独来看都对。
麻烦在于:双语注释模型是从"有注释的代码"触发的。gateway 里大量代码本来就没有注释,模型连触发条件都找不到,触发率自然低。这是训练目标和实际场景之间的错位,根源在数据层,和模型能力无关。
但林博文不会关心这个区别。在他那里,解释站不住脚;他只会看到一个数字:6.9%。
但林博文不会关心这个区别。他只会看到一个数字。
他打开船坞。
「gateway 注释密度6.9%,主库平均23%。麦景行扫了一遍,那个层声明式,本来就不写注释,和规范没关系。但模型靠注释触发,gateway 触发率可能会跌很多。现在需要决定:要不要在跑测之前先跟项磊说?」
豆包那道暖橙的光很快亮起:
> 今晚就说,不要等测完。林博文明天可能问项磊进展,如果项磊不知道这个情况,就很被动。提前说,项磊有一晚上缓冲,明天面对林博文的时候有准备。
「我也觉得今晚说。」
Claude那道蓝紫光:
> 打电话给项磊,不要发文字。这个情况需要他听清楚来龙去脉,文字容易被断章取义。打电话告诉他:一,这是正常的接口层现象;二,报告里会单独标注和解释;三,验收等结果出来再定,现在说的是预估,不是定论。

「这三点我来说。」
Codex那道翠绿光:
> 补充一个数据支撑:接口层触发率偏低是行业常见现象,可以给项磊举一个参照:业务模块触发率通常在80%-90%,接口层触发率通常在40%-60%,两个层级用同一个基准来验收本来就不合适,这次林博文要求单独列项,其实给了分层解释的机会。
「这个逻辑项磊能理解,我一会儿说。」
窗口合上。
他给项磊打了电话,响了四声接了。
「不好意思这么晚,有个情况要提前跟你说。」
「说吧。」
「今天林博文追加的三个路径,麦景行做了注释密度预扫描,billing 和 order 都正常,和主库水平一致。但 gateway 这块,密度只有 6.9%,主库平均是 23%。」
那边沉默了几秒:「什么意思,这个数字跑出来结果会怎样?」
「接口层的代码风格就这样,gateway 里大部分是声明式配置,本来就没有注释。模型从注释触发,gateway 触发率会明显低于 billing 和 order。三个路径放一个基准里评,结果会被拖下来。」

「低多少?」
「现在估不准,要跑完才知道,可能是 40%—60% 的范围,也可能更低。」
「林博文要看单独的数字。」
「对,他会看到。」他顿了一下,「所以我今晚打给你,是想先跟你对齐说法:报告里 gateway 单独一行,备注写清楚接口层和业务层注释形态不同,触发率不适合用同一个标准衡量,这是行业里普遍存在的现象。明早我给你一版可以直接放进报告的备注模板,你去跟林博文说的时候,拿着材料说,不用现场自己解释。」
项磊停顿了一下:「你的意思是,这个数字可能很难看,但要提前说是因为有解释空间?」
「对,有解释空间,但要说得早。等数字出来再解释,就很被动了,林博文会觉得你们在找借口。今晚告诉你,你明天主动跟他提,说法就是:接口层数字单独评,这是我们双方在选择单独列项的时候就预见到的情况,不是意外。」
项磊沉默的时间比刚才长了一点:「你今晚打来,是因为明天可能会被质疑?」
「是因为你应该在被问之前就知道这件事。」他说,「结果还没跑,现在说的只是预估。但这个预估大概率是准的,我不想让你明天当场听到一个低数字,然后不知道该怎么说。」
电话里安静了几秒。
「好,」项磊说,「我记下来了。你们明天早上发我一个建议方案,具体怎么写备注,怎么在报告里呈现,我来决定怎么跟林博文说。」
「好,早上发你。」

挂电话,沙发靠背没有动,他在黑暗里待了一会儿。
电视还停在暂停的画面上,那个角色正在跑步,定格在半空中。
今天林博文来,确认了"方法通过了"。晚上,麦景行发来这份报告。同一天,前后几小时。有点讽刺。门刚开,下一个问题已经在等着了。
但这件事的处理方式是对的。提前说,分层解释,给项磊时间消化,让他明天面对林博文时心里有数,不被打措手不及。主动提出来的问题,和被对方问住了才说出来的问题,给人的感受是完全不一样的。
他想了想,给麦景行发了一条:「给项磊写一份建议方案,gateway 结果出来之前先发他。内容:三处路径分层说明,gateway 接口层建议单独基准,建议参照值 40%-60%,理由和处理思路各一段。最后加一个备注模板,格式要项磊可以直接粘进报告的。明天早上八点半前发完。」
回复来了:「好,今晚写。」
他把手机放下。
电视还在暂停,那个角色定格在跑步的半空中,跑不动,也落不下去。
明天下午是 gateway 实测。数字会出来。
结果落在 40%,还有话可说。跌到 20%,林博文想追问的就变了:数字合不合理是次要的,他会直接问谁该为这个结果负责。