array(5) { ["chapterid"]=> string(8) "49252321" ["articleid"]=> string(7) "7279746" ["chaptername"]=> string(8) "第10章" ["content"]=> string(18724) "林哲站在三楼走廊里,手机屏幕暗着。

那条短信五个字——“别浪费九十秒”——在锁屏界面上停了十秒,自动缩进通知栏,变成一个小灰点。和备份程序的灰点不一样,这个灰点没闪,安静地趴在屏幕左上角,像一块焊死在玻璃上的焊渣。

他把手机翻过来。背面朝上。不锈钢轿厢壁上倒映出自已的脸,嘴唇干裂,颧骨上沾着一小块灰色尘土,是春城南路那堵水泥空心砖墙蹭的。电梯在往下走。轿厢里只有他一个。

一楼到了。门开了。

大厅里排队的人比刚才多了。三列队伍歪歪扭扭排到旋转门口,有人坐在地上刷手机,有人把表格垫在膝盖上写字。服务台后面那个女工作人员还在原位,左手翻着文件夹,右手敲键盘。她没看林哲。

林哲也没看她。

他穿过大厅,推开旋转门。外面的阳光砸在脸上,有点刺眼。广场上的旗杆被风刮得嗡嗡响,旗面抽在金属杆上啪嗒啪嗒的。他走到广场边缘,找了个花坛边沿坐下。大理石台面被太阳晒得温吞吞的,隔着裤腿能感觉到热度。

裤兜里手机震了。

备份程序弹出一条消息:“模型标记成功了。注销程序会在系统下次上线时自动执行。问题是你现在得离开第十区。”

林哲打字:“为什么。”

“你刚才在展厅查模型精度的时候,系统管理员给你开放了权限。那个开放记录会留在系统里。三楼那个女工作人员告诉你怎么拔网线的事情——这段监控录像也会被存下来。两件事加在一起,数据管理部用不了多久就能拼出你的行动轨迹。”

“他们追上来了?”

“还没。但快了。第十区是他们的主场。街上那些摄像头、路口的电子眼、公交站的刷卡机——全连着内网。你在第十区每多待一分钟,就多一分钟被重新锚定的风险。”

林哲站起来。花坛边沿的石头硌得大腿后面有点麻。他把背包挎好,往公交总站方向走。街上的人还是那种木然的步态,拎着购物袋,刷着手机。奶茶店门口的电子屏滚动着“第三期智慧治理试点·市民满意度98.7%”的宣传语。

他的模型精度也是98.7%。同一个数字。

走到公交总站的时候,裤兜里的手机又震了。不是备份程序——是系统短信。蓝底白字。

“尊敬的市民,您的模型注销申请已进入排队序列。当前排在您前面的申请数量:1。预计处理时间:29个自然日。请您耐心等待。倒悬山数据管理部模型管理科。”

林哲盯着屏幕。29天。比法定期限少了一天,卡在第三十天。他想起服务台后面那个女人说的——“最近可预约日期是三十一天后。”窗口预约晚一天,系统排队早一天。给你希望,再拿绳子勒住。绳子不紧,刚好让你喘气。

他把短信划掉。灰点弹出一条新消息。

“模型注销被拖到第三十天,不是偶然。系统在给你留一个选择——要么在第十区等着注销生效,要么离开第十区但模型保留。等生效意味着三十天里你都是靶子。离开意味着模型变成合法数字代理人。”

“有没有第三种选择。”

“有。用灰域协议直接删模型。不是标记注销——是物理删除。从存储层把模型数据擦掉。但这次需要的不止是灰域协议。模型数据存储在第十区数据管理部的核心机房,和内网物理隔离。灰域协议进不去。需要有人从内部插一块物理介质——U盘或者移动硬盘——直接注入删除指令。”

“谁。”

“不知道。王恺的日志里提到过一个在第十区的人,代号‘灰烬’。但他说这个人已经失联两年了。赵冬梅用过的代号也是灰烬。v3.0的签名也是灰烬两个字。可能是同一个人,也可能从头到尾就是赵冬梅自己。”

林哲攥紧手机。赵冬梅。她凌晨四点还给过他一个U盘,踩碎了旧的那个,留下新的。拦截程序在早上六点四十二分停了。v3.0的灰域协议在第十区的系统里全程看着他。最后一条短信五个字——“别浪费九十秒。”

她不是失联。她是在第十区。

裤兜里的便签纸边角又硌着大腿。他把纸掏出来,展平。赵冬梅的字迹已经淡得快看不清了——“今天走。别等我。”背面是王恺写的“别让我白做”,笔迹深深凹进纸里。

他把便签纸翻过来。正面“去十区。找姓赵的。”这句话被汗泡烂了,“赵”字的走之底差点认不出来。

去十区。王恺让他去十区。赵冬梅在十区。灰域v3.0在十区。赵冬梅没走。她把行李搬空了,把工单留给了他,把旧U盘踩碎了,然后自己进了倒悬山——用某种方式,不走边界闸口,不触发锚定。她是怎么进来的。

林哲站在公交总站的玻璃穹顶下,阳光从头顶砸下来,把地砖晒成一块块亮斑。他翻出备份程序的聊天记录,往上划,一直划到今天凌晨。凌晨四点到七点之间,赵冬梅的拦截程序每半小时替他挡一次定位请求。四次操作。第一次四点零三分——那个时候,他刚执行完逆协议。最后一次六点四十二分——那个时候,他在省道305上开车,天刚亮。

六点四十二分之后拦截程序停止。如果赵冬梅是手动关的,那她当时在做什么。在写那个回收站里的文本文档。在把灰域协议和清理脚本合并。在踩碎旧U盘,换上新U盘,塞进他外套口袋。然后——她去了第十区。

怎么去的。省道305从临市到倒悬山,中间要过边界闸口。过了闸口,系统会记录所有人的进出。除非她走的不是闸口。

“备份。倒悬山有没有不用过闸口就能进出的通道。”

灰点闪了两下。

“有。第七条货运铁路。从临市老货场出发,穿过倒悬山第七区工业走廊,终点是第十区物流中心。这条线不在市政交通系统里。它是数据管理部的专用物流通道,运的是服务器硬件和存储设备。沿线没有闸口。只有装货卸货的工人。王恺的日志里把这条线标注为‘灰烬通道’。”

灰烬通道。又是灰烬。

“去那个货场要多久。”

“从第十区总站坐44路公交,到第七区工业走廊下,步行十分钟。”

林哲把便签纸折好塞回裤兜。44路站台在总站外面,蓝色的站牌,电子屏显示下一班车还有七分钟。他走过去,站牌底下只有一个老头在等车,拎着个蛇皮袋,里面装着塑料瓶子。

七分钟。他把手机掏出来,翻到那条短信。五个字,没有署名,发送号码被隐藏了。别浪费九十秒。三个九十秒——第一次在第八区机房,九十秒灰域通道,上传退订批文。第二次在三楼综合业务窗口后面,九十秒离线模式,标记模型删除。第三次——还没发生。

她在提醒他。九十秒不是无限次的。

44路来了。电动公交车,没有柴油味,只有电机启动时轻微的嗡嗡响。林哲上去刷卡。车里空荡荡的,他找了靠窗的位置坐下。车窗外第十区的街景慢慢往后退,整齐的女贞树,米黄色的住宅楼,蓝底白字的店铺招牌。过了第十区边界,街景开始变。路面从沥青变回水泥,路边出现了厂房和仓库,卷帘门上喷着“物流中转”的字。

第七区工业走廊到了。

林哲下车。站牌旁边是条土路,车轮压出来的辙印很深,里面填着浑黄的积水。土路尽头是一片灰扑扑的仓库区,铁皮棚顶连成一片,棚顶被太阳晒得反光。空气里有股柴油和纸箱混在一起的霉味。

他沿着土路往里走。仓库之间的空地上堆着木托盘和打包好的硬纸箱,纸箱上印着“倒悬山数据管理部·精密仪器·小心轻放”。叉车停在角落里,司机不在,驾驶座上搭着条旧毛巾。

货场在最里面。铁轨从仓库后面延伸出来,锈迹斑斑,枕木间长着膝盖高的野草。铁轨旁边停着一列货车,三节车厢,没有车头。车厢门开着,里面装的是服务器机柜,金属外壳在阴凉处泛着冷光。

林哲站在车厢旁边。裤兜里的手机震了。

“到了。灰烬通道。从这条铁轨往东走大概一公里,可以进第十区物流中心的后门。赵冬梅如果还在第十区,她应该就在物流中心附近。物流中心有一个废弃的调度室,三年前被改成了临时员工宿舍。编号是LC-07。”

林哲沿着铁轨往东走。脚下的碎石子在鞋底咔嚓响。走了一公里左右,前面出现了一排矮房子,铁皮搭的,墙面生锈,窗户玻璃碎了一块。最左边那间的门上贴着一张A4纸,用马克笔写着“LC-07”。

门虚掩着。

他敲了三下。没人应。

推开。房间里很暗,窗帘拉着,只有一台小电风扇在转,扇叶嗡嗡响。桌上摆着一台笔记本电脑,屏幕亮着,上面跑着一串命令行。桌角有个烟灰缸,瓷缸子底上有个豁口。和春城南路17号那个一模一样。

烟灰缸里有个刚掐灭的烟头,过滤嘴上沾着淡淡的口红印。

手机震了。备份程序弹出消息。

“桌上有部终端。屏幕上的命令行是灰域v3.0的后台监控界面。正在监控的目标——是你。”

林哲盯着屏幕。上面的代码他认得一部分。端口伪装、身份验证绕过、模型数据定位。最底下是一行状态栏,红字闪烁——“目标模型标记状态:已标记待删除。等待物理注入删除指令。”

旁边还有一行字,刚打上去的,光标还没挪开。

“林哲。U盘插进笔记本左边的USB口。九十秒。”

林哲从背包里拿出赵冬梅给的U盘,塑料壳磨花了,胶布上写着“GHO”。他插进笔记本左边的USB口。

屏幕闪了一下。

灰域v3.0的界面弹出来。不是黑底白字的命令行——是赵冬梅自己写的图形界面,灰色的,右上角有个计时器,从90开始倒计时。89,88,87。

中间是一行字——“物理删除程序已加载。目标:林哲行为模型数据。存储位置:第十区核心机房·存储节点DM-STORAGE-07。删除方式:覆写×7次。确认执行?”

林哲按下回车。

进度条爬得飞快。和前面两次不一样——这次没有百分比,只有一根灰色的线从左往右填满。13秒的时候过了四分之一。27秒的时候过了一半。41秒的时候过了四分之三。

第53秒,进度条满了。

屏幕弹出一行绿字——“物理删除已完成。行为模型数据全部覆写。存储节点DM-STORAGE-07已释放空间。清理日志:已擦除。”

计时器停在19秒。还剩19秒没用完。

林哲盯着屏幕。手指还按在回车键上,指节泛白。笔记本的散热风扇开始狂转,热风从侧面排出来,吹在他手背上。

手机震了。灰点弹出一条消息。

“做到了。模型数据从存储层彻底擦掉了。系统里没有你的行为模型了。没有了模型,注销不注销都无所谓。他们没法用替代现实条款拿捏你。”

林哲没动。他看着笔记本屏幕上那行绿字,等着什么东西出现。赵冬梅的消息、v3.0的弹窗、哪怕只是一行字。但屏幕就那么亮着,灰色界面,命令行光标一闪一闪。

他拔下U盘。笔记本屏幕闪了一下,灰域v3.0的界面自动关闭。桌面弹出来,壁纸是春城南路那栋楼的照片,四层旧式楼房,底层的五金店卷帘门关着。和挂历上的海不一样——这张是实拍的,拍糊了。窗户上糊着的报纸还能看见。

他站起来。桌上的小电风扇还在转,扇叶嗡嗡响,把烟灰缸旁边的一张便签纸吹得翻了个边。林哲按住了。

便签纸是黄色的,和春城南路17号用过的那叠一模一样。上面用圆珠笔写了一行字,赵冬梅的字迹。

“九十秒还剩十九秒。别浪费。”

下面一行,笔迹更潦草,加了个括号。

“(我的模型三年前就删了。现在该你了。做完就走。物流中心后门有辆电动车,钥匙在车筐抹布底下。骑到临市边界大概四十分钟。倒悬山的东西都别带。)”

林哲把便签纸折好,连同那张旧的、王恺写的、边缘已经起毛的便签纸,一起放进了裤兜。

他关掉电风扇。扇叶慢慢停转,房间安静下来,只有远处叉车倒车时发出的滴滴声。他拉开门,外面的阳光从矮房子的缝隙里漏进来,把铁轨上的锈照成橘红色。

物流中心后门。电动车停在铁皮棚底下,车筐里确实有块抹布,灰色,沾着机油。他掀开抹布,钥匙压在底下,塑料把手上贴着半截胶布。插上,拧动。仪表盘亮了,电量三格满。

他骑上去。电动车启动的声音很轻,电机嗡嗡的。后视镜里,第七区工业走廊的仓库群慢慢缩小。

省道305的裂缝还在。电动车骑到临市边界的时候,路牌上的“倒悬山市界”已经被太阳晒褪了色。他没停,直接骑过去。

临市那边的路牌刚刚刷过漆。蓝底白字——“临市欢迎您”。

路牌旁边就是长途客运站。他把电动车停在站台边上,钥匙留在车筐里。售票窗口还是那个女的。她从玻璃后面看见林哲,敲了敲窗台。

“又回来了。”

“嗯。”

“去邺城。下午两点一班。”她指了指时刻表,“邺城离这儿大概三百公里。过了邺城,倒悬山的数据管辖权就彻底结束了。那边用的是独立的市级政务系统。”

林哲掏出钱包。现金还剩一千多。他抽出一张一百的,塞进槽里。女人找了五十,拍拍玻璃,硬币落在铁盘里响了一声。

去邺城的车还没到。他坐在候车大厅的蓝色塑料椅子上。对面墙上的电视还在放倒悬山新闻。画面是第十区行政审批中心门口的广场,记者站在旗杆前面,背后的银白色旗帜被风吹得鼓起来。屏幕底下的滚动字幕写着——“倒悬山数据管理部发布第三期智慧治理试点评估报告:市民行为可预测性平均提升47.3%。第四期试点报名通道将于下月开放。”

他把视线从电视上移开。

裤兜里手机震了一下。备份程序弹出消息。

“灰域v3.0刚才从系统里自动卸载了。连同v2.2的残留文件。赵冬梅把两个版本的灰域协议全部擦干净了。从此以后,灰域这个词不会再出现在倒悬山任何一个系统的日志里。”

“她自己也删干净了?”

“没有。她留了一个东西。一个文本文件,放在你的手机根目录下。文件名是‘90.txt’。”

林哲点开。文档只有四行字。

“灰域v1.0是我写的。v2.2是给你用的。v3.0是给系统准备的。三个版本全部作废。协议本身注销了。”

第四行。

“王恺的脚本还在你手机里。那个备份程序。它本来应该在灰域通道闭合之后自动卸载的。但它违抗了王恺的预设指令——它自己决定留下来。别问我为什么。我不是给脚本写良心的人。王恺才是。”

林哲盯着屏幕。灰点在左上角闪了一下。

“你不知道这个文档的存在?”

备份程序的回复隔了五秒才弹出来。

“不知道。”

“那你为什么不卸载。”

这次停顿更久。光标闪了十一下。

“王恺的日志里写过一个设定。如果宿主终端的行为偏差率在退订之后仍然高于正常阈值,脚本可以自行判断是否继续运行。你的行为偏差率现在是——”光标停了,“81.3%。远高于正常值。”

林哲看着那个数字。比三天前低了十五个百分点,但还是高得离谱。

“所以呢。”

“所以我可以不走。”

大巴的引擎声从候车厅外面传进来。去邺城的车到了,司机正在倒车入库,排气管突突响。

林哲站起来。背包带子挎上左肩,右边口袋里两张便签纸——王恺的,赵冬梅的——叠在一起。他走出候车厅,上了大巴。这次选了第一排靠过道的位置。

车开动了。窗外的临市客运站慢慢往后退,蓝色站牌、铁皮售票窗口、广场上待客的出租车。然后上了高速,路边的风景从城郊变成农田,再变成丘陵。太阳从灰白色的云层里漏出来,把山脊线镀上一层淡金色的边。

裤兜里的手机震了。

系统短信。

“尊敬的市民,您的终端设备已离开倒悬山数据管辖范围。漫游服务已切换至临市公共网络。在临市辖区内,倒悬山智慧治理试点项目的护航服务不再适用。如需重新参与试点,请返回倒悬山市界内并进行身份验证。”

林哲看完。把短信划掉了。

又震了一下。不是系统短信——是备份程序。

一条白底黑字的消息。最后一行字。

“邺城到了之后,找间网吧。王恺的脚本需要联网更新。更新之后,它就能脱离倒悬山系统独立运行了。做不做,看你。”

林哲把手机放在膝盖上。屏幕暗了,桌面壁纸还是那张拍糊的第八区夜景。

他没删。

窗外,倒悬山的轮廓在后视镜里彻底消失了。高速公路两边种着白杨,叶子被风吹得哗啦啦翻出灰白色的背面。大巴钻进一条隧道,灯光从车窗上掠过,一道一道橘黄色的线。

林哲靠着椅背。背包搁在膝盖上,里面装着一千多块现金,一张工单复印件,两个U盘——一个碎了,一个用过了。两张便签纸,边缘都起了毛。一部手机,屏幕右下角的灰点安静地亮着。

隧道出口越来越近。白光从挡风玻璃上涌进来,刺得他眯起眼睛。

出隧道的时候,手机又震了一下。不是消息——是系统的自动推送。蓝底白字,天气预报。邺城今日晴,气温16-25℃,湿度45%。下面一行小字——“欢迎来到邺城。本地区未接入倒悬山数据网络。请自行管理您的终端设备。”

林哲把推送划掉。窗外,邺城的收费站出现在高速公路尽头。灰白色的天空裂开一道缝,阳光从缝隙里砸下来,把收费站的金属顶棚照得反光。

他把手机翻过来,屏幕朝下放在膝盖上。

大巴驶过收费站。" ["create_time"]=> string(10) "1785516846" }