第1章 加载中

林墨盯着电脑屏幕上的报错信息,已经整整十七分钟了。

准确地说,她在等一个本该三秒就出现的弹窗。后台服务器的响应时间从500ms飙升到3000ms,再到现在的——无限加载。

她揉了揉眼睛。

不是因为累,是因为她好像看见了奇怪的东西。

就在屏幕正中央,那个转圈圈的加载图标旁边,凭空出现了一个半透明的圆环。和系统的加载动画不一样,那个环更大,更淡,像是投影仪出了故障,把别处的画面叠在了这里。

林墨伸手在眼前挥了挥。

圆环还在。

她偏过头,用余光去看——淡了,但没消失。

“熬夜熬出飞蚊症了?”她自言自语,声音在空旷的办公室里显得格外清晰。

凌晨两点十七分,互联网大厂的办公区亮如白昼,但人已经走得差不多了。林墨所在的楼层只剩她一个,咖啡机里的美式已经见底,她手里这杯是今天第八杯。

林墨决定再试一次。

她点击重新编译,然后死死盯着那个位置。

圆环动了。

它转了起来,和系统的加载动画完全同步,像是某种诡异的镜像。紧接着,林墨看到了更离谱的东西——一行小字浮现在圆环下方,字体是系统默认的宋体,颜色是错误提示的红色:

【加载超时:用户请求无法响应】

【是否重试?】【取消】

林墨愣住了。

她花了三秒钟确认自己没在写代码,没打开任何IDE,甚至没碰键盘。然后她又花了三秒钟确认自己神志清醒——她掐了大腿一把,很疼。

弹窗还在。

她下意识地伸出手,想去点那个【重试】。

手指触碰到空气的瞬间,她的意识里像是有什么东西被接通了。不是触觉,不是视觉,是一种难以形容的“知道”——她知道那个【重试】是亮的,是可点击的,是等待她确认的。

她点了。

下一秒,她面前的水杯浮了起来。

不是夸张的悬浮,只是短暂地、不易察觉地向上移动了大约一厘米,然后稳稳落回桌面。杯里的咖啡甚至没晃。

但林墨看见了。

她死死盯着那个杯子,大脑飞速运转。逻辑告诉她这是幻觉,是疲劳过度产生的错觉,是咖啡因中毒的前兆。但她的职业本能却在疯狂报警——

刚才那个过程,太像“重绘”了。

就像前端页面刷新时,DOM元素重新计算位置,会有极短暂的闪烁和位移。她杯子刚才的表现,就是那个闪烁。

林墨没有动。她维持着盯着杯子的姿势,呼吸放轻,开始一项一项排查可能性:

一,她没疯。

二,这不是梦。

三,如果排除所有不可能,剩下的无论多离奇,都只能是真相。

她深吸一口气,把注意力重新集中到那个圆环出现的位置。

它还在。

只是变小了,缩成指甲盖大小,安静地悬浮在她视野的右上角,像电脑桌面右下角的后台运行程序。

林墨盯着它,它在。

林墨移开视线,它还在。

林墨闭上眼睛——它消失了。但当她睁眼,它又原封不动地出现在原来的位置。

“有意思。”她听见自己说,声音冷静得不像个刚目睹灵异事件的人。

林墨放下咖啡杯,慢慢转着椅子,把整个办公室扫视了一遍。凌晨的办公区安静得像一座坟,电脑屏幕的待机光幽幽亮着,工位隔断投下深重的阴影。一切正常。

不,不是一切正常。

她把目光锁定在斜对面那个工位上。那是他们组一个男同事的位置,姓周,平时加班比她还狠。今晚没见到人,但电脑开着。

周姓同事的电脑屏幕上,正在运行一个她熟悉的测试程序。

林墨眯起眼睛。

她“看见”了。

不是看见屏幕内容,而是看见——数据。一行一行的代码,从那个方向飘过来,像是某种无形的丝线,连接着那台电脑和……和什么?

她顺着那些丝线的方向看去,发现它们最终汇入了天花板角落里的一个设备。交换机?路由器?公司的网络中枢?

林墨站起了起来。

她走近几步,丝线变粗了。不是视觉上的变粗,是她“感知”到它们承载了更多信息。她能分辨出哪些是HTTP请求,哪些是数据库查询,甚至能隐约读出其中的字段名——

“user_id”,“login_time”,“last_seen”……

她在读取网络流量。

用肉眼。

林墨站在空荡荡的办公区中央,周围是几百台沉睡的电脑,头顶是嗡嗡作响的空调,脚下是灰色的工业地毯。她举起自己的手,盯着掌心。

那里什么都没有,但她“知道”,只要她愿意,她可以看见自己身上的数据。

心跳。血压。血糖浓度。肾上腺素分泌量。甚至——细胞分裂次数,染色体端粒长度,理论上剩余寿命。

那些本来藏在体检报告里的数字,现在像后台日志一样,安静地等待被读取。

林墨没有去读。

她怕自己真的读到什么。

她退回自己的工位,坐下,双手放在键盘上,像溺水的人抓住浮木。这个动作她做过几万次,熟悉的肌肉记忆让她从那种诡异的感知中抽离了一点。

右上角的圆环还在。

林墨盯着它,突然开口说话:“你是什么?”

当然没有回答。

她想了想,换了个问法:“你是UI界面吗?”

圆环闪了一下。

不是视觉上的闪烁,是那种“正在处理”的脉冲感。

林墨的心跳漏了一拍。她试探着在意识里发出指令——不是用语言,是用意图,像想要移动手指那样自然——

打开。

圆环展开,变成一个半透明的面板,悬浮在她视野正中央。面板上的内容简洁得过分,只有几行字:

【当前用户:林墨】

【权限等级:0】

【已检测到异常:127处】

【系统状态:初始化中……】

林墨盯着那行“权限等级:0”,不知为何,心里涌起一股微妙的不满。

太低了。

她可是在互联网大厂摸爬滚打五年的高级算法工程师,主导过日活千万的项目,拿过公司年度优秀员工。0?

“怎么升级?”她对着面板问。

面板没有反应。

林墨皱起眉,开始用程序员思维思考这个问题。权限等级,通常和什么挂钩?身份认证、信用评级、历史记录、贡献值——

她想起刚才看见的周姓同事的电脑。

那些从电脑飘向交换机的数据丝线,如果是网络请求,那是不是意味着……

林墨站起来,走向那台还在运行的电脑。

屏幕上的测试程序已经跑完,显示着一行绿色的“All tests passed”。她没碰键盘,只是站在屏幕前,尝试把注意力集中到那些她刚才“看见”的数据丝线上。

它们还在。

更清晰了。像一条条发光的光纤,从电脑背面的网口延伸出去,穿过墙壁,消失在天花板里。

林墨伸出手,悬停在数据流上方。

她没有触碰任何实物,但当她手指划过那些丝线时,意识里涌入了海量的信息——IP地址、端口号、协议类型、数据包内容。她看见周姓同事刚刚提交了一份代码审查请求,看见他老婆半小时前发来的微信问他什么时候回家,看见他银行APP的登录记录,看见他今晚点的外卖订单——

【叮!您有新的实时通知】

面板突然弹出新消息。

林墨吓了一跳,迅速收回手。那些涌入的信息随之消失,只剩下正常的办公室景象。

她点开通知:

【检测到可提升权限的途径】

【途径一:发现并报告1处世界级bug,奖励权限等级+1】

【途径二:独立修复1处世界级bug,奖励权限等级+3】

【当前进度:0/1】

林墨沉默了三秒。

然后她笑了一下,是那种熬夜到凌晨、咖啡喝到第八杯、发现自己可能疯了的、疲倦又释然的笑。

“世界级bug,”她对着空荡荡的办公室说,“我眼前这个,算不算?”

没有人回答她。

但右上角的圆环,又转了起来。

林墨转身,走回自己的工位。她关掉电脑,收拾东西,准备回家。凌晨两点四十,她穿过空旷的办公区,走进电梯,按下1楼。

电梯门合上的瞬间,她突然想起一件事。

周姓同事的电脑屏幕上,测试程序跑完之后,显示的除了“All tests passed”,还有一行小字,她当时没在意,现在回想起来——

“最后一次成功运行时间:2024年3月15日 23:47:22”

今天,是3月16日。

那台电脑,从昨晚十一点四十七分到现在,将近三个小时,没有任何新的运行记录。

但它一直在运行。

林墨盯着电梯门上自己的倒影,轻声说:“有意思。”

电梯平稳下降,楼层数字一个一个跳变。她视野右上角的圆环,始终安静地、耐心地、像后台程序一样,默默运转。

加载中。

她的人生,从这一刻起,加载完成。