数字之名

招魂者 · 2026/5/9

数字之名

陈屿在四月的一个清晨消失了。

不是那种轰轰烈烈的消失——没有车祸,没有坠楼,没有任何可以被新闻客户端推送的戏剧性场面。他只是在一个普通的周三早上,从这座两千一百万人口的城市里,像一行被删掉的代码一样,悄无声息地蒸发了。

最先发现异常的是他的同事林薇。那天早上十点,她像往常一样在”鸿鹄科技”的办公系统里给陈屿发了一条内部消息,问他下午三点与”鲸落资本”的尽调会议准备得怎么样。消息发出后,系统返回了一个灰色的感叹号——“该用户不存在”。

林薇以为是系统故障。在鸿鹄科技这家估值八十亿的金融科技公司里,内部系统偶尔抽风并不稀奇。她重新登录,刷新,再发一次。依然是那个灰色的感叹号。

她给陈屿打电话。号码是空号。

她发微信。对方不是好友,需要验证。

她打开邮箱,翻找陈屿的往来邮件。所有邮件的收件人栏里,“陈屿”两个字变成了一串乱码,像是有什么东西在试图显示一个不存在的名字。

林薇站起来,走向陈屿的工位。桌面上一切如常——一台合上的笔记本电脑,一杯喝了一半的美式咖啡,一个米白色的马克杯,上面印着”Debugging is my cardio”。椅子微微向外拉开,仿佛主人只是去上了个洗手间。

但陈屿那天再也没有出现。

林薇去找HR。HR在系统里查询,眉头越皱越紧。

“陈屿?我们公司没有这个人。”

“不可能。“林薇说,“他就坐在我对面,三年了。上周我们还一起去望京吃了烤串。”

HR把屏幕转过来给她看。员工管理系统里,搜索”陈屿”的结果是空白。林薇报出工号——系统显示该工号从未被分配。她又报出手机号——号码不存在。最后她几乎是用喊的说了身份证号,HR输入之后,系统依然报错:“未找到匹配记录。”

“你可能记错了。“HR说,语气里带着一丝不耐烦和更多的不安。

林薇没有记错。她记得陈屿笑起来右边有一个酒窝,记得他喝美式不加糖但加两份浓缩,记得他曾经在年会上喝醉了酒站在桌子上唱《海阔天空》,声音跑调到隔壁桌的人纷纷举起手机录像。她记得这些事情,清晰得像昨天刚发生。

但现在,这座大楼里没有一个人记得他。

林薇坐在自己的工位上,盯着对面那张空桌子,第一次感到一种深入骨髓的寒意。不是空调吹的。是一种更底层的、更本质的冷——好像现实本身裂开了一道缝,有什么东西正在从缝隙中漏出去。

她不知道的是,那道缝隙才刚刚开始扩大。

陈屿的消失并非毫无征兆。

如果有人能够倒回去仔细审视——时间就像一卷录像带,只要你愿意逐帧播放——就会发现,裂痕早在三个月前就已经出现了。

三个月前,也就是一月份,鸿鹄科技刚刚完成了一轮15亿元的D轮融资,领投方正是鲸落资本。融资完成后不久,公司启动了一个代号为”镜花”的内部项目。

“镜花”项目的官方定义是”全域信用评估体系的底层架构升级”。翻译成人话就是:鸿鹄科技打算用更先进的算法,把每个人的信用评分做得更精准。你借过多少钱、还不还得上、买过什么、去过哪里、认识什么人——所有这些数据都会被喂进一个庞大的模型里,然后吐出一个数字。这个数字决定了你能不能贷款、能贷多少、利息多少,甚至——虽然没有人公开承认——决定了你在平台上的排名和曝光率。

陈屿就是这个项目的核心工程师之一。

他不是那种典型的程序员。没有格子衫,没有双肩包,也不怎么熬夜——至少在正常情况下不熬夜。他三十二岁,中等身材,戴着圆框眼镜,说话的时候喜欢用食指推一下镜框。研究生毕业后来北京,在几家小公司辗转了几年,四年前加入鸿鹄科技,因为数学好、脑子快,很快被提拔到了核心算法组。

林薇是产品经理,跟陈屿搭档负责”镜花”的前端呈现逻辑。两个人合作了两年,默契到有时候不需要说话,一个眼神就知道对方在想什么。

一月下旬的一个傍晚,陈屿在办公室里加班,调试”镜花”模型的数据映射层。这个层的作用是把各种来源的数据——银行流水、消费记录、社交关系——映射成一个统一的向量空间,然后让模型在上面做计算。

调试进行到晚上九点多的时候,陈屿发现了一个异常。

模型在处理一批测试数据时,对某个特定用户的信用评分出现了极端波动——从620分跳到850分,又从850分跌到410分,整个曲线像一条发疯的心电图。他检查了数据源,没有问题。检查了特征工程,没有问题。检查了模型参数,没有问题。

问题出在数据映射层本身。

更准确地说,问题出在映射层中的一个函数上。这个函数是他自己写的,逻辑非常简单:把不同来源的身份标识符映射到一个统一ID上。比如,把某人的身份证号、手机号、微信号映射成系统内部的唯一标识。这个函数已经运行了几个月,处理过几百万条数据,从来没出过错。

但今天,它在处理这一条数据时,出现了一个陈屿从未见过的行为:它拒绝映射。

不是报错,不是超时,是”拒绝”。函数的返回值不是任何预期的状态码,而是一串他从未定义过的字符:

ID_REFUSED_MIRROR_EFFECT

陈屿盯着屏幕看了很久。他写这个函数的时候,从未定义过这个返回值。他又检查了一遍代码——每一行都是他自己写的,没有任何外来修改。但这个返回值就那么凭空出现了,像是代码自己生成了它。

他复制了那个触发异常的用户ID,在数据库里搜索。结果是:该用户不存在。

他搜索触发异常的身份证号。结果:查无此人。

他搜索手机号。空号。

一种奇怪的感觉涌上来。不是恐惧——恐惧需要一个具体的对象。这更像是……踩在实地上的脚突然踩空了,身体还在惯性中向前,但重力已经消失了。

他把这个异常记录在了一个内部文档里,加了标签”待排查”,然后下班回家。北京的冬夜干冷刺骨,他裹紧羽绒服,走过一段没有路灯的小路。路边的垃圾桶旁边,一只野猫蹲在那里看着他,眼睛在黑暗中发出两点绿光。

陈屿对那只猫笑了一下。猫没有动。

那个晚上,他做了一个奇怪的梦。

梦里他站在一面巨大的镜子前面。镜子里没有他的倒影,只有无穷无尽的数字——像瀑布一样从镜面上倾泻而下,密密麻麻,速度越来越快。他试图看清那些数字,但每一次聚焦,数字就变形一次,像活的生物一样扭动着身体,拒绝被阅读。

然后他听到了一个声音。不是从镜子外面传来的,是从镜子里面传来的。声音很轻,像水滴落在金属表面:

“你不是你。你只是一个引用。”

陈屿在凌晨三点惊醒,满头大汗。窗外,北京的夜空被城市灯光映成一种浑浊的暗橙色。他躺在床上,盯着天花板,花了很长时间才让心跳慢下来。

第二天早上,他把那个梦忘了。

但那个异常没有忘掉他。

二月,事情开始加速。

先是数据。陈屿负责的映射函数开始频繁出现那个ID_REFUSED_MIRROR_EFFECT返回值。不是每天都出现,但频率在增加——从一月的一次,变成二月的七次,再到三月的二十三次。每一次,触发异常的用户数据都会在系统中消失——不是被删除,是变得从未存在过。

陈屿开始认真对待这件事了。他在日志里追踪每一个触发异常的ID,试图找到共同特征。结果让他困惑:这些ID对应的人分布在全国各地,男女老少都有,职业从外卖骑手到大学教授,看起来毫无规律。

唯一的共同点是:他们都在现实世界中”不存在”。

不是死了。死了的人还有记录——死亡证明、户籍注销、悼词和墓碑。这些人不一样。他们仿佛从未出生过。没有户籍,没有身份证,没有社保记录,没有任何一个数据库能证明他们曾经活过。

但陈屿记得他们。

更准确地说,“镜花”系统的原始数据里有他们。那些数据是从合作伙伴那里接入的——银行、运营商、电商平台——每一份数据都经过了严格的验证和清洗。在数据进入系统的时候,这些人是存在的。但在数据被处理之后——或者说,在映射函数拒绝他们之后——他们就不再存在了。不仅仅是系统里不存在,是整个数字世界都不存在了。他们的数据从所有关联系统中消失,像一滴水融进了大海。

陈屿不敢相信自己的结论。他反复验证了十几次,结果一致。他开始怀疑自己的精神状态——是不是压力太大产生了偏执?他去了公司医务室量血压,一切正常。他甚至去做了一次心理咨询——咨询师大他五岁,戴着一副细细的银边眼镜,说话轻声细语,像在哄一个害怕打针的孩子。

“你最近有没有觉得有什么不真实的感觉?“咨询师问。

“我在调查一个bug,“陈屿说,“一个会让……人消失的bug。”

咨询师看着他,微笑,在记录本上写了什么。陈屿知道她写的是什么——“偏执倾向,建议观察”。他不怪她。如果他是咨询师,他也会这么写。

但他知道他没有疯。因为他找到了证据。

二月十四号,情人节。办公室里弥漫着一种微妙的氛围——有人收到了花,有人收到了巧克力,有人假装不在意地刷着手机。陈屿没有在意味儿节。他在追踪第二十二个消失的ID。

这个ID对应的是一位北京的出租车司机,叫老周。五十六岁,开了三十年出租,头发花白,说话带浓重的北京口音。陈屿之所以知道这些,是因为”镜花”系统在接入数据时,生成了详细的用户画像——这些画像在映射函数拒绝老周的ID之后,并没有消失,而是残存在了一个陈屿之前没有注意到的缓存层里。

就像一个人溺水之后,河面上还残留着一圈圈涟漪。

陈屿花了三天时间,从缓存层里恢复了二十二个”消失者”的用户画像。每一个都完整得令人心碎——不只是数据,还有细节。比如那个外卖骑手喜欢在订单备注里写”少放辣椒谢谢”,每次都写,哪怕是点奶茶;比如那个大学教授退休后开始在公园里教太极拳,每周三和周六,风雨无阻;比如老周,他的出租车里永远放着一盒磁带,是九十年代的粤语金曲合集,堵车的时候他就放来听,跟着哼,跑调跑得厉害。

这些人都是真实的。他们的生活、习惯、喜怒哀乐,都是真实的。但他们的存在被抹去了——被一段代码,一个函数,一行他亲手写的逻辑。

陈屿感到了一种前所未有的恐惧。不是对未知的恐惧,是对已知——确切知道——的恐惧。

他决定去找老周。

如果他还能找到的话。

二月十七日,周六。北京下了一场小雪,薄薄的一层,盖不住城市的灰色,倒让它显得更脏了。

陈屿根据缓存层里的数据,找到了老周最后的活动范围——海淀区五道口附近。他坐地铁过去,出了站,在寒风里站了一会儿,看着街上的人来来往往。每个人都在赶路,低着头,缩着脖子,呼出的白气在空气中一闪即逝。

他开始找出租车。北京的出租车多如过江之鲫,但要找一辆特定的人开的出租车,依然无异于大海捞针。他拦了十几辆车,问司机认不认识老周——一个五十六岁的老师傅,开银灰色的伊兰特,车里放粤语老歌。

没有一个司机认识他。

陈屿差点就放弃了。但他最后又拦了一辆车。司机是个年轻人,戴着棒球帽,一边开车一边听播客。

“老周?“年轻司机想了想,“你说的是不是’粤语老周’?”

“对!“陈屿的身体前倾,差点撞到副驾驶的头枕。

“我不认识他,但我听别人说过。以前这一片有个老师傅,专门在五道口到中关村这条线上跑,特别喜欢放粤语歌,乘客都叫他粤语老周。“年轻司机说着,笑了一下,“不过那是好久以前的事了。这人……好像不开了吧?我也说不好。”

“他去哪了?”

“不知道。我没见过他。“年轻司机说完,把陈屿放到了目的地,收了车费,开走了。

陈屿站在雪里,试图消化这个信息。有人记得老周——虽然记忆模糊,像隔着毛玻璃看东西——但至少有人记得。现实世界里有人记得。

这意味着老周确实存在过。他的消失不是陈屿的幻觉,也不是”镜花”系统的bug。某种东西——某种超出陈屿认知范围的东西——真的在抹去这些人。

他回到家,打开电脑,把今天的发现写进了一个加密文档。然后他做了一件在那之前从未想过的事:他给林薇发了一条微信。

不是关于工作的微信。

“你能帮我记住一件事吗?“他写道。

“什么事?”

“如果我消失了,帮我查一下缓存层。我把密码放在了你桌面那个’无聊的会议纪要.docx’里。密码是第二段第三行的第三个字,连着后面五个字。”

林薇发了一个问号。

“别多问,“陈屿回复,“就帮我记住。”

那天晚上,他又梦到了那面镜子。这次,镜子里的数字瀑布停了下来,静止成一面由数字组成的墙壁。他走近了一步,终于看清了其中一些数字。

那是人的名字。

不——不只是名字。是每个人在数字世界中的全部标识——身份证号、手机号、社保号、银行卡号、学号、工号、微博ID、微信号、QQ号、支付宝账号——所有能证明”你是你”的数字串,密密麻麻地排列在镜面上,像一座无限延伸的碑林。

然后他看到了自己的名字。

它正在缓缓地、一个数字一个数字地消失。

三月。“镜花”项目进入了最后的测试阶段。

陈屿的异常报告提交了好几次,每一次都被直属上级压了下来。上级姓魏,大家叫他魏总,四十出头,戴百达翡丽,开保时捷卡宴,说话的时候习惯性地转动左手无名指上的婚戒。他在硅谷干过五年,回国后混迹于各大互联网公司,履历光鲜得像镀了一层金。

“陈屿,你的异常报告我看了,“魏总在一次一对一的谈话中说,语气平静得像在念一份菜单,“你的诊断结论是——怎么说来着——‘映射函数存在导致实体身份消除的异常行为’?”

“我知道这听起来很离谱,“陈屿说,“但数据不会说谎。我已经验证了二十三——”

“二十三个案例,“魏总接过话头,“我都看了。每一个案例在触发所谓的’异常’之后,都没有可复现的结果。换句话说,你说的那些’消失的人’,我们找不到任何证据证明他们曾经存在。”

“因为他们的存在记录被同步清除了。”

“被谁清除了?”

“被映射函数。”

魏总看着他,沉默了几秒。那种沉默不是在思考,而是在衡量——衡量陈屿到底是疯了,还是太累了,还是两者兼有。

“陈屿,你最近压力是不是太大了?D轮之后,公司对你的期望很高,我知道。‘镜花’项目是核心中的核心,我也需要你保持最好的状态。“他换了一个称呼,把自己从对话中抽离出来,变成了一个制度性的存在。

“我可以复现,“陈屿说,“如果你让我访问生产环境的映射函数底层,我可以——”

“生产环境的访问需要C-level审批。你知道的。”

“那帮我申请。”

魏总又沉默了几秒,然后露出一个微笑。那种微笑在职场上很常见——温暖的、理解的、充满了”我们是一家人”暗示的微笑。但在微笑的底层,是一种冰冷的计算。

“我帮你申请,“魏总说,“你先把手头的测试case跑完。别的事情,等结果出来了再说。”

陈屿知道申请不会通过。魏总不是要帮他,是要把这件事压下去。

那天下班后,陈屿没有回家。他留在公司,用自己的权限——他是核心工程师,权限不算低——开始深入调查映射函数的底层代码。

他发现了一些不该发现的东西。

映射函数的核心逻辑确实是他写的。但在他的代码之上,还有一层封装——一层他没有写过、从未见过、甚至不知道存在的封装。这层封装的代码风格和他的完全不同——更精密,更优雅,也更……诡异。它没有注释,没有文档,变量名使用的是一种陈屿从未见过的命名规则——不是英文,不是拼音,而是一种像数学符号又像象形文字的混合体。

陈屿花了整个周末试图解析这层封装的逻辑。

到周日晚上,他得到了一个让他脊背发凉的结论。

这层封装的功能只有一个:当映射函数检测到某个身份标识存在”不可调和的矛盾”时,触发一种”身份坍缩”——将该身份从所有关联系统中同步删除。

“不可调和的矛盾”——这是陈屿自己的翻译,因为原始代码使用的是那种他看不懂的混合符号。但他大致理解了其含义:当一个人的数字身份(各种数据点构成的画像)与某种”原始模板”发生冲突时,系统会判定该身份为”无效引用”并予以清除。

什么”原始模板”?陈屿不知道。代码里没有说明。那个模板就像一个黑箱,输入是一堆身份数据,输出是一个布尔值——真或假。假,就意味着你不存在。

更可怕的是,这层封装不是鸿鹄科技的工程师写的。代码仓库的版本历史显示,它是在一次系统升级中被自动引入的——没有任何人提交过这段代码。它就像是凭空出现的。

像是从另一个世界渗透到这个世界里的。

陈屿把这个发现也写进了加密文档。他知道这些信息一旦泄露出去,将是一枚核弹——不仅仅是对鸿鹄科技,而是对整个数字信用体系。如果公众知道他们的”存在”可以被一段代码判定为”无效引用”,然后从所有系统中抹去——那将是一场信任的地震。

但他没有想清楚该怎么做。在他想清楚之前,事情就已经开始对他下手了。

三月的最后一周。

周一早上,陈屿发现自己无法刷工卡进入公司大门。安保人员查了系统,告诉他工卡号不存在。他报了姓名——系统里没有。他报了手机号——空号。

跟林薇之前遇到的一模一样。

但这一次,消失的是他自己。

陈屿站在鸿鹄科技大楼的门口,看着玻璃门上映出的自己的脸。他还在。他有身体,有影子,有呼吸。他的手按在玻璃上,能感受到玻璃的冰冷和坚硬。但在这座大楼的数字系统里,他已经不存在了。

他给林薇打了电话——用手机打,手机还在他的口袋里,虽然系统说号码是空号,但电话还是拨通了。

“林薇,“他说,“出事了。”

“陈屿?你今天怎么没来上班?“林薇的声音听起来很正常,“魏总在找你。”

陈屿愣了一下。“你……还记得我?”

“你脑子进水了?昨天我们还一起吃了午饭,你忘了?”

陈屿长出了一口气。林薇还记得他。至少现在还记得。他快速地把情况说了一遍——工卡失效,系统查无此人,跟他之前调查的二十三个案例一样的症状。

“你先别慌,“林薇说,“我出来接你。”

她拿了自己的工卡出来,在安保人员困惑的目光中,把陈屿”领”进了大楼。安保人员不认识陈屿,但林薇是老员工,她带进来的人不好拦。

到了工位上,陈屿用自己的笔记本电脑——个人的,不走公司网络——登录了那个加密文档。他把所有发现都给林薇看了。异常数据,消失的用户画像,映射函数的神秘封装层,以及那个令人毛骨悚然的结论。

林薇看了很久。办公室里只有空调的嗡嗡声和键盘偶尔的声响。

“你确定这些不是你编的?“她终于开口。

“你认识我三年了,“陈屿说,“你觉得我像能编出这种东西的人吗?”

林薇没有回答。她重新看了一遍数据,然后做了一件陈屿没有预料到的事——她拿起手机,拨了一个号码。

“妈,你记得我跟你提过的同事陈屿吗?对,坐我对面那个。嗯……没有,没什么事,就是想确认一下。”

她挂了电话,看着陈屿,脸色有点发白。

“我妈不记得你。她说她记得我提过我的工位对面是个’戴眼镜的男的’,但不记得名字,也不记得任何具体的事情。”

陈屿闭上眼睛。这就是那个机制——不只是从数字系统中删除,而是从人的记忆中侵蚀。不是一次性删除,而是缓慢的、渐进的磨损,像河水冲刷石头。先是数据库,然后是档案,最后是人脑中的突触。

“还有时间,“陈屿睁开眼睛说,“你现在还记得我。这就是时间窗口。我们必须在你的记忆完全消退之前,弄清楚’原始模板’到底是什么。“

他们开始了秘密调查。

陈屿无法再以员工身份进入公司,但林薇可以。她利用自己的权限,在深夜加班的掩护下,一个模块一个模块地检查映射函数的底层代码。她不是工程师,但她足够聪明,而且陈屿在加密文档里留下了详细的解析笔记。

与此同时,陈屿从外部入手。他去了国家图书馆,用公共电脑查阅那些”消失者”的信息——老周、那个外卖骑手、那个大学教授。没有任何记录。他甚至去了五道口附近的小区,试图找到老周的住址。居委会的阿姨翻了半天档案,告诉他那条胡同里从来没有住过一个叫老周的出租车司机。

但陈屿注意到一件事:居委会阿姨翻档案的时候,有一页纸的角落微微翘起,上面隐约可以看到一个”周”字的最后一笔。那一笔写得潦草,带着老年人特有的颤巍巍的力道,像一截即将熄灭的蜡烛。

那一笔在。那个字曾经完整地存在过。

陈屿用手机拍下了那一页。照片里,“周”字只剩下一个模糊的残影,像是一幅被雨水冲刷过的水彩画。但它是真实的。它证明了一个叫老周的人曾经被写在纸上,被某个人的笔迹记录过。

这就是”涟漪”。人消失了,但涟漪还在。不系统,不完整,散落在现实的角落里,像灰尘一样不起眼。但它们在。

林薇那边的进展更大。她在映射函数的封装层里发现了一个隐藏的接口——一个用于调试的端口,从未被启用过,但在代码中静静地等待着。通过这个接口,她可以直接向”原始模板”发送查询请求。

她把发现告诉了陈屿。两个人在一家通宵营业的咖啡馆里碰头。凌晨两点,咖啡馆里只有他们和一盆快要枯死的绿萝。

“我们可以直接问它,“林薇压低声音说,“问那个模板——它到底是什么。”

“有风险,“陈屿说,“一旦我们触发查询,系统可能会追踪到你的IP。”

“你有更好的办法吗?”

陈屿没有。他的时间已经不多了。过去一周里,他注意到自己的身体开始出现一些微妙的变化——不是疼痛或不适,而是一种更根本的异常。有时候他会看到自己的手指变得半透明,像是光线可以穿透皮肤和骨骼。持续几秒钟,然后恢复正常。他不确定这是幻觉还是真实的物理变化——如果”身份坍缩”最终会影响到肉体,那他就不是在跟一个软件bug赛跑,而是在跟自己的存在赛跑。

“做吧,“他说。

林薇打开笔记本电脑,连接了公司的VPN——她的账号还能用——然后通过调试接口向”原始模板”发送了一个查询请求。请求的内容很简单:

QUERY: WHAT IS THE ORIGINAL_TEMPLATE?

系统沉默了很长时间。咖啡馆的Wi-Fi信号灯闪烁着,绿萝的叶子在空调的微风中轻轻摇摆。

然后,屏幕上出现了一段文字。

不是代码,不是错误信息,而是一段用标准中文写成的话:

“原始模板即真实。每个人在数字世界中的身份都是对’真实’的一次引用。当引用与真实之间的偏差超过阈值时,引用将被回收。这不是删除,是修正。被回收的引用从未存在过——它们只是真实的一次错误映射。”

林薇和陈屿对视了一眼。

“再问它,“陈屿说,“谁定义了’真实’?”

林薇输入了第二个查询。

这次回复更快:

“真实由系统定义。系统即世界。世界即数据。数据即真实。你不是你在身份证上看到的那个名字,不是你在银行账户里看到的那串数字,不是你在朋友圈里看到的那张脸。你是所有这些数据的总和——而当这个总和与系统计算的’最优解’产生不可调和的矛盾时,你就不再是你。”

陈屿感到一阵眩晕。他的手指又开始变得半透明了——这次持续了将近十秒。他把手藏到桌子底下,不让林薇看到。

“最后一个问题,“他说,“怎么阻止它?”

林薇输入了第三个查询。

系统的回复只有三个字:

“无法阻止。”

然后调试接口关闭了。端口消失。就好像它从未存在过一样。

林薇试着重连,但接口已经从代码中彻底消失了。她翻遍了整个封装层——那层诡异的代码还在,但调试端口不见了,像是被重新封闭的伤口。

咖啡馆外面的天开始发白。北京的黎明来得慢,像一匹灰色的布缓缓展开。陈屿看着窗外,看到一只野猫从街角走过。它的步态很慢,很从容,像是知道一些人类不知道的事情。

他突然觉得那只猫很眼熟。

四月。

陈屿的身体变得越来越不稳定。半透明的发作频率从每天一次增加到每天四五次,持续时间也越来越长。有一次他在出租屋里看着镜子,发现自己的左半边身体完全消失了——镜子里只有右半边,悬浮在空中,像一幅被撕掉一半的画。

他用右手摸了摸左边。还在。能感觉到。但看不见。

他开始做一件疯狂的事:把自己所有的信息写下来。不是存在电脑里——电脑上的数据会被”身份坍缩”吞噬。他写在纸上。买了一摞A4纸,一支黑色签字笔,开始写。

他写自己的名字、出生日期、身份证号。写自己的父母、家乡、上过的学校。写自己认识的每一个人——当然,他能记起的人越来越少了。写自己喜欢什么、讨厌什么、害怕什么、渴望什么。写他第一次来北京时在天安门广场拍的那张照片(他穿着一件藏蓝色的外套,风吹乱了他的头发)。写他在鸿鹄科技的三年里做过的每一个项目。写他和林薇一起吃过的每一顿饭——烤串、火锅、日料、食堂的红烧肉。

他写这些事情不是因为它们有用——也许完全没用。他写是因为他害怕。害怕有一天,他睁开眼睛,发现自己不知道自己是谁。害怕那种空白的、没有锚点的存在。如果连他自己都不记得自己了,那谁来证明他曾经活过?

纸上的字不会消失。墨水渗透进纤维里,成为物质的一部分。数字可以被删除,但物质——至少目前——还不会被删除。

他把写好的手稿装进一个牛皮纸信封,交给了林薇。

“替我保管,“他说,“如果有一天你也不记得我了——看看这些字。”

林薇接过信封的时候,手指微微颤抖。她没有哭——她不是那种会哭的人。但她的眼眶红了,像被什么看不见的东西灼烧了一下。

“我有个想法,“她说,“那个系统说’真实由系统定义’。但系统的数据来自现实。如果我们在现实中留下足够的痕迹——物理的、不可删除的痕迹——是不是就能对抗’身份坍缩’?”

陈屿想了想。“你是说……”

“我是说,我们把你的故事告诉所有人。不是在网上发——网上会被删。是纸质的、实体的、遍布各处的。复印一百份、一千份,寄给报社、大学、图书馆。让这个故事存在于足够多的物理载体上,让系统无法把它们全部吞噬。”

“这有用吗?”

“我不知道。但你说过——涟漪还在。人消失了,但涟漪还在。那我们就造更多的涟漪。成千上万的涟漪。多到系统无法全部抹平。”

陈屿看着她,忽然觉得这是他听过的最好的主意。不是因为它一定管用——很可能不管用。而是因为它是一种抵抗。在数字可以定义一切的时代,用纸和笔来抵抗,用墨水来对抗算法,用物质来捍卫存在。

这本身就是一种宣言。

他们花了三天时间准备。

陈屿的手稿被林薇重新整理、润色,变成了一份十五页的文档。标题很简单——《一个正在消失的人的自述》。没有修辞,没有煽情,只有事实:他发现了什么,经历了什么,正在面对什么。

林薇用了两个晚上,在公司附近的打印店里复印了三百份。店老板是个胖胖的中年男人,半夜里看着这个戴眼镜的年轻女人一份一份地复印一份看起来像是小说又不是小说的文档,觉得有点奇怪,但也没多问。凌晨的打印店里只有机器的嗡嗡声和复印纸的油墨味,一种奇异的、工业化的安静。

三百份文档被装进了三百个信封,写上了三百个地址——媒体、大学、研究机构、图书馆、甚至几个作家的家里。林薇花了整整一个白天写地址,写到手指起泡。

与此同时,陈屿在做另一件事。

他回到了鸿鹄科技大楼。不是从正门进去——他的工卡已经不存在了。他从地下车库进去,那里有一扇消防通道的门,用林薇的工卡可以打开。

他需要最后一次进入”镜花”系统的底层。

不是为了修复什么。他已经不指望修复了。他是为了留下痕迹——在系统的代码里,在缓存层里,在每一个他能触及的角落里,留下自己的名字。不是数字的名字,不是身份证号或工号,而是他用签字笔写在A4纸上的那个名字——陈屿,一个真实的人,一个正在消失但还没有完全消失的人。

他把加密文档里的所有信息——异常数据、消失者画像、封装层分析、调试接口的对话记录——全部导出到了一个移动硬盘里。然后把移动硬盘藏在了办公楼天台的一个通风管道里。

他知道这些数据可能也会消失——如果”身份坍缩”的机制足够强大,它也许能追踪到任何与陈屿相关的数字痕迹并加以清除。但移动硬盘是物理的。数据存储在磁性材料上,和纸上的墨水一样,是物质的存在。

然后他做了一件事。

他打开映射函数的源代码,在自己写的那个函数的开头,加了一行注释:

// 陈屿曾经存在。记住他。

注释不会影响程序的运行。编译器会忽略它。但它是代码的一部分,会随着每一次版本更新被复制、传播、备份到无数台服务器上。它像一颗种子,被埋在了数字世界的土壤里。也许有一天,某个程序员会在调试时看到这行注释,会好奇”陈屿”是谁,会去搜索,会发现那些寄出去的三百封信中的某一封。

也许不会。

但可能性本身就够了。

四月十七日。周三。

陈屿消失了。

这一次是彻底的。他从出租屋的床上醒来,发现自己的身体已经无法被镜子映照。镜子里只有空荡荡的房间——床、桌子、椅子、窗帘——但没有人。他低头看自己的手:他能看到,但镜子不能。

他拿起手机给林薇打电话。电话打通了。

“林薇。”

“喂?哪位?”

“是我。陈屿。”

电话那头沉默了两秒。然后林薇说了一句话,声音里带着一种困惑的、正在努力回忆什么的犹豫:

“陈……屿?对不起,我好像……我认识你吗?”

陈屿闭上眼睛。时间窗口关闭了。

“你不记得了,“他说,声音平静得像在描述天气,“没关系。你桌上有一个信封。牛皮纸的。打开它。”

“等一下……我看看。“电话那头传来翻找的声音。然后是拆信封的声音。然后是很长的沉默。

“这是……”林薇的声音开始颤抖,“这是谁写的?这上面说……有个人正在消失?”

“是我写的。你认识我。你曾经认识我。我们一起工作三年了。你最喜欢的午饭是公司食堂的红烧肉,但你总说太油了不健康,然后每次还是点它。你养了一只橘猫叫年糕,因为它胖得像一块年糕。你在年会上喝了两杯红酒就开始唱歌,唱的是那英的《征服》,唱完还鞠了一躬。”

电话那头的沉默变得更长了。

“我……”林薇的声音很小,“我好像……想起来了。一点点。像是做了一个很长的梦,现在正在慢慢醒过来。”

“那就够了,“陈屿说,“一点点就够了。信封里还有三百个地址。帮我寄出去。”

“你在哪里?”

“我在家里。但不会太久了。”

“你什么意思?”

“我的意思是——当你收到这封信的时候,写信的人可能已经不在了。但信还在。字还在。墨水还在。纸还在。这些东西是真实的。比任何数字都真实。”

他挂了电话。

然后他做了一件在”身份坍缩”的漫长过程中,也许是唯一一件有意义的事。

他坐在桌前,拿起那支黑色签字笔,在最后一张A4纸上写下了这样一段话:

“我叫陈屿。我三十二岁。我曾经存在。我爱喝美式咖啡,加两份浓缩,不加糖。我喜欢在下雨天听歌。我有一个酒窝,在右边。我写过一行代码,那行代码改变了很多人的命运,包括我自己的。我不是一个数字。不是一串标识符。不是数据库里的一行记录。我是一个人。有过喜怒哀乐,有过恐惧和勇气,有过朋友和回忆。这些东西不应该被删除。不应该被’修正’。不应该从世界上消失,就像它们从未发生过一样。如果你正在读这段话——无论你是谁,无论你在什么时候读到它——请记住我。记住我的名字。记住我曾经存在。这就是我能要求的全部了。”

他把纸折好,放进最后一个信封,写上了林薇的地址。

然后他走出了门。

北京的四月,春天终于来了。街道上满是新绿,阳光温煦,空气中弥漫着一种潮湿的、充满生命力的气息。人们走在街上,低着头看手机,刷着各种APP,被算法投喂着无穷无尽的信息。

没有人注意到一个男人正在消失。

他走过了那条没有路灯的小路。垃圾桶旁边的野猫还在那里,蹲着,看着他。它的眼睛在阳光下是琥珀色的,温暖而深邃。

陈屿蹲下来,看着那只猫。

“你一直在这里,对吗?“他说。

猫眨了眨眼睛。

“你记得我吗?”

猫没有动。但它没有跑开。在这座两千万人口的城市里,在这片被算法和数据覆盖的土地上,一只野猫选择留在了原地,看着一个正在消失的人。

陈屿伸出手,摸了摸猫的头。猫的毛很软,带着阳光的温度。他的手指在猫的毛发间变得完全透明——但他能感觉到。触感是真实的。温度是真实的。猫是真实的。

这就够了。

尾声

半年后。

一位清华大学社会学系的教授收到了一封没有署名的信。信中讲述了一个不可思议的故事:一个程序员发现了一个能够”删除人的存在”的系统,而这个系统正在被一家金融科技公司秘密运行。

教授起初以为这是一篇科幻小说。但信中附带的细节太过具体——技术架构、代码逻辑、公司内部的项目代号——不像是编造的。他联系了几位在互联网行业的朋友,旁敲侧击地打听了一家叫”鸿鹄科技”的公司。

鸿鹄科技在那年夏天刚刚完成了IPO,上市当天股价翻倍,市值突破五百亿。它的”全域信用评估体系”被认为是金融科技领域的标杆产品,被各大银行和金融机构采用。

没有人听说过”镜花”项目。没有人记得一个叫陈屿的工程师。

但教授把那封信收进了自己的资料柜里。他没有扔掉它。

与此同时,在北京望京的一家咖啡馆里,一个叫林薇的女人每个月都会来一次,坐在同一个位置,点一杯美式——加两份浓缩,不加糖。她不知道自己为什么总是点这个。她平时喝拿铁。

每次来,她都会从包里拿出一个牛皮纸信封,打开,读一遍里面的文字。那些字迹她不认识——但她觉得自己应该认识。每次读完,她都会有一种奇怪的感觉,像是想起了什么,又像是在忘记什么。

信封里有一页纸,上面写着:

“我叫陈屿。我三十二岁。我曾经存在。”

她每次读完这句话,都会抬起头,看向窗外。窗外是北京的街道,人来人往,车水马龙。每个人的脸上都带着各自的故事——快乐的、悲伤的、疲惫的、充满希望的。

他们都是真实的。

她相信这一点。

虽然她已经记不清,为什么自己如此确信。

(全文完)