凌晨三点十七分,鹏程科技大厦十七层,只剩三个工位还亮着灯。
周明瑞盯着屏幕右下角的时间,第三杯美式已经凉透,纸杯底结了一圈深褐色的渣。他揉了揉太阳穴,颈椎贴从后脖颈翘起一角,撕下来的时候连着几根汗毛,疼得他龇了一下牙。
七十二小时了。
周三上午十点进的大楼,现在是周六凌晨。中间回了两次工位下面的行军床,每次不到两小时。项目上线在即,后端接口还有十七个没跑通,前端那边的联调文档改了四版,测试提的bug单在JIRA看板上铺了一整屏的红色。
"明瑞,你要不要先回去?"隔壁工位的老张摘下耳机,眼皮浮肿得像挂了两枚铜钱。
"不了,还差几个接口。"周明瑞声音发哑,像砂纸蹭过铁皮。
老张摇摇头,没再劝。这个项目组里谁都是这样——上线前的冲刺周,没人敢先走。总监在群里发了三次"辛苦了兄弟们",每次都附一个加油的表情包,潜台词是今晚必须出结果。
周明瑞把视线拉回屏幕。他正在review一个微服务的代码——用户画像模块的推荐权重计算,曙光那边提供的基础模型,接过来之后要在自家业务上做fine-tune。代码本身没什么问题,标准的PyTorch训练管线,数据处理、模型定义、loss计算,一目了然。
但他的目光卡在了第419行。
那是一行注释。Python里用#号开头的那种。本该是英文,或者拼音,或者那种中式英语——他在这家大厂干了三年,什么风格的注释都见过。
但这一行是中文。
不是那种"此处注意"的中文。是完整的、通顺的、像是有人随手写下的句子:
**# 当序列闭合,旧日从数据的缝隙中窥视。扮演者必须成为那个不存在的人。**
周明瑞盯着这行字,脑子转了两拍。
他第一反应是git污染——有人把测试分支的代码merge进来了,或者某次cherry-pick带上了不该有的commit。这种事在大厂不稀罕,几千人协作的代码库,偶尔混进奇怪的东西。
他切到终端,敲了一行命令:
`git log -p -S "当序列闭合" --all`
回车。等待。公司的代码仓库太大,这个搜索要跑一阵。
他趁这个空当站起来,活动了一下僵硬的膝盖。窗外是城市的夜景,远处写字楼群里还有零星灯火。楼下的马路上偶尔驶过一辆出租车,尾灯拖出一道红线。他突然想不起来自己上一次看外面的夜空是什么时候了——不是看窗外,是抬头看天。那种仰起脖子看星星的动作,好像已经从他的生活里消失了很久。
终端响了。搜索结果出来了。
没有。
git log没有找到任何包含"当序列闭合"的commit。这意味着这行注释不存在于任何历史版本中。它不在任何分支上,不在任何人的提交里,但它现在就在他的工作目录中。
周明瑞慢慢坐回去,后背贴上那把坐了三年的工学椅。椅背的网布已经塌陷出一个他脊背的形状。
他重新看那行注释。这一次他注意到了更多的东西。
第419行下面,第420行,第421行——更多的注释冒了出来,像是什么东西在他眨眼的瞬间往文件里写入了内容:
**# 沉浸是唯一的消化方式。你扮演的角色将成为你的枷锁,也将成为你的翅膀。**
**# 灰雾之上,愚者等待。**
这些字句有一种奇怪的特点:它们用的中文措辞很标准,甚至带点文言味道,但每个句子又嵌着现代词汇——"数据""扮演""沉浸"。像是一个古代人试图理解现代概念,或者一个现代人在用古风写作。
更诡异的是:他的终端显示,文件的时间戳没有变化。这个.py的最后修改时间还是今天下午4:23,是同事李维提交的。但现在文件内容比那个时候多了至少三行。
周明瑞的手悬在键盘上方。他应该回滚,或者至少把这几行删掉,然后给运维发个工单排查git仓库的完整性。
但他没有动。
因为他在读那些字。
"序列闭合""旧日""扮演者""灰雾之上""愚者"——这些词像一把钥匙,插进了他脑子里某个他不知道存在的锁孔。不是理解,是共鸣。好像他的神经元在识别某种它本来就认识的模式,只是意识层面还没跟上。
这是荒谬的。他是个程序员,不是小说读者。他不看网文,不玩克苏鲁跑团,对神秘学毫无兴趣。他的课外阅读上限是偶尔翻两页《代码整洁之道》。
但他的手在抖。
周明瑞强迫自己把手放回键盘,敲下命令打开git diff——他想看看working directory和HEAD之间到底差了什么。
diff输出了。不只是那三行注释。整个文件从第380行到第421行,多了四十多行内容。注释和方法定义混杂在一起,那些方法名他从未见过:
```
def ritual_of_transference(nodes, target_dim):
# 转运仪式:将坐标从当前维度移至目标维度
# 需要至少三个非凡者作为节点
...
def divination_spirit_vision(question, intensity=1):
# 灵视占卜:在灰雾层中读取信息投影
# 注意:强度超过3会触发聚合效应
...
```
方法体都是省略号。像是有人写了个接口定义,但还没实现——或者,实现不需要在这个文件里。
周明瑞的头痛开始了。
不是加班的那种钝痛。是尖锐的、像针从太阳穴刺入颅腔的那种。他右手捂住头,左手还搭在键盘上,屏幕上那些中文注释在视野里微微扭曲——
不,不是扭曲。是在**排列**。
那些字在他眼前重新组合,从竖排变成横排,从横排变成环状,从环状变成一个他几乎要认出来的图案——
胸口一阵剧痛。
他的手从键盘上滑落,撞翻了那杯凉透的美式。深褐色的液体淌过桌面,滴在地上,但他已经感觉不到了。
最后映入视网膜的画面是:屏幕上那些中文字符不再散乱,它们排成了一行完整的句子——
**"克莱恩,灰雾之上见。"**
然后是黑暗。
彻底的、没有任何过渡的黑暗。
像服务器断电。
像进程被kill -9。
没有走马灯,没有白光隧道,没有濒死体验里那些温柔的幻觉。只有断崖式的终止——上一帧还在看代码,下一帧就不存在了。
工位上的显示器还亮着,屏幕保护程序在五分钟后自动启动,把那些代码和不该存在的注释一同吞入了黑色的休眠画面。
spilled的美式从桌沿滴落,在防静电地板上汇成一小摊。
早上七点二十,保洁阿姨推门进来,发现了工位下歪倒的周明瑞。120赶到时已无生命体征,死因初步判断:心源性猝死。
公司发了通报,措辞克制而标准:"深表惋惜,已联系家属,将全力配合善后。"
那条通报在同城热搜上挂了四个小时,就被一条明星离婚的瓜挤下去了。
没有人去看那台工位上的代码。
即使有人看了,也只会觉得是git出了点小问题,多了一些莫名其妙的注释和函数定义。清理掉就是了。
没有人会去想:一个程序员猝死前看到的最后画面,为什么是一行他从未写过的中文——
**"克莱恩,灰雾之上见。"**