晨昏线 · 第一章 窗口少了四十五分钟
古董级程序员,大厂出来后一直在创业公司,现在仍活跃在一线做 AI 相关的开发。写代码之余也写小说——《晨昏线》是一部硬科幻长篇,讲潮汐锁定行星上一群靠精准时刻表活命的人。更完整的更新写在微信公众号「字与码」,欢迎关注。
第一章 窗口少了四十五分钟
警报响起来的时候,迦勒·默瑟正在喝总署食堂那杯据说能提神的、味道像洗机水的合成咖啡。他没吐,只是看了一眼腕上的表——不是地球那种十二小时转一圈的玩意儿,是佩里迪翁本地用的’烬历表’,上面同时跑着公转日和纺锤月的小针。表很准,准到让他有点烦。
“副主任,发布处那边又在催”。实习生从门口探进半个脑袋,脸色比咖啡还苦,“线脊东段说车队已经堵在十七号闸口四十分钟了,再不开窗,他们要冲门”。
默瑟把杯子放下。咖啡没喝完,洗机水的使命完成了:他的脑子已经醒了。
“告诉他们,闸口不开,不是我抠门,是窗还没到”。他说,‘窗’这个字在总署里有特指——不是窗户,是晨昏线压过来时,那一段允许大规模上路的时间缝。缝窄得可笑,像给整颗星球穿针,针眼还老晃。
他走进预报大厅。满墙都是屏,有的画云,有的画风,有的画一条歪歪扭扭、像心电图似的亮线——那是模型算出来的”宜居带外沿”在未来七十二小时里会怎么蹭过子午城北郊。线一蹭,北郊那三座固定城就得动;不动,热阱和冻阱不会跟你讲道理。
发布处的霍恩已经在等他。霍恩永远像在等,等一个更好看的数字。
“迦勒,“霍恩把两份文件拍在桌上,压低了声音,“商团刚递话。北郊’磐石城’希望把最早撤离时间往后挪四十五分钟——他们的物流车还没装完”。
默瑟没立刻回答。他去看屏幕右下角那行红字:最早安全窗口起点:烬历四十七年,第三公转日,14:22(本地时)。
“四十五分钟”。他重复了一遍,像在嚼一块咬不动的肉。
“就四十五分钟”。霍恩笑了一下,那笑很职业,“对外还是同一个窗口,我们内部把车队放行顺序调一调——你知道的,大家面子上都好看”。
默瑟的手指在键盘上悬停。他脑子里转的不是面子,是另一条曲线:偏心率造成的”线在呼吸”。模型里,那四十五分钟里,外沿会往北多蹭三公里半——三公里半,对堵在线脊上的车队来说,够死多少人,他不用算也知道。
“调不了”。他说。
霍恩的笑僵了半秒:“什么?”
“不是我不给面子”。默瑟把屏幕转过去,“你看这条。十四点二十二分到十五点零七分之间,外沿变化率超过阈值。车队如果在十四点五十分才动,有一部分路段会从’可通行’变成’不建议停留’——我不是说一定出事,我是说模型不允许我把’建议’写成’可以’”。
霍恩盯着那条线,像盯着一条咬人的蛇。他不懂蛇,但他懂商团明天就会打电话骂总署。
“那至少……”霍恩舔了舔嘴唇,“至少别把’不建议’写进公开通报。写委婉点”。
默瑟看了他一眼。这一眼里没有火,只有一种累:累在每天都要把’委婉’翻译成’将来法庭上谁负责’。
“公开通报里,我会写区间”。他说,“最早十四点二十二,最晚十五点零七前通过十七号闸。多一个字我不加,少一个字我也不减”。
霍恩走了。实习生凑过来,小声问:“老师,他们会不会又去议会告你?”
“会”。默瑟说,“让他们告。告的时候记得提醒他们——线不会等人,但表可以骗人。我只管表不骗人”。
他说完这句话,自己都觉得像标语。标语不好听,可在这颗没有日夜交替的星球上,标语有时候比诗管用。
中午,实习生给他端来第二杯咖啡。这次没洗机水味,是速溶——实习生自己的口粮。
“老师,你猜霍恩先生出去给谁打电话?“实习生问。
“猜中了能加工资吗?”
“不能”。
“那我猜”。默瑟接过杯子,“先是磐石城商会,再是议会联络处,最后可能还有我们总署自己的——发布处顶头上司。顺序不一定错”。
实习生瞪眼:“你怎么知道?”
“因为骂我的人,向来按这个顺序排队”。默瑟喝了一口,甜得发腻,“这糖放了几勺?”
“两勺。你说苦日子要配甜”。
默瑟差点没笑出来。他其实没说过,但实习生记得他某次熬夜时随口扯淡。
下午两点,十七号闸口终于按窗口开放。车龙蠕动起来,像一条终于肯挪窝的伤蛇。默瑟站在高处瞭望台上往下看——线脊公路在晨昏主带里蜿蜒,路的一侧是渐渐热起来的浅昼,另一侧是还留着凉意的阴影。人们总说佩里迪翁美,美个鬼,他想。美的是你没被挤下线。
他看见一辆超载的货车在闸口前被拦下,司机探出头,和穿橙色制服的执法员吵架。吵什么听不清,只看手势——赶时间。赶时间在这颗星球上,和赶命是同义词。
“副主任!“广播里有人在喊,“北郊监测站回传云图,傍晚可能有尘卷风,要不要把窗口备注里加一条?”
默瑟对着对讲机说:“加。写清楚:不影响已开放闸口,但提醒车队关紧侧窗”。他顿了顿,“别用’可能’两个字糊弄,写’概率’,给数字”。
他转身回大厅,想再核对一遍晚间的尘暴概率。走到自己工位时,他停住了。
主屏上,那条代表”外沿变化率”的曲线,在十四点三十分左右,缺了一小段。
不是平滑,是断了一截,像有人拿橡皮擦擦过,又拙劣地补了一笔。
默瑟眨了眨眼。实习生不在,大厅里只剩风扇嗡嗡作响。他伸手去调原始数据层——数据还在,传感器编号都在,唯独那一小段拼接处,时间戳晚了十一分钟。
十一分钟。
他想起霍恩临走时那句”至少委婉点”,又想起商团那份”装车没装完”。
然后,他想起更糟的一种可能:不是谁想委婉,是有人动过探头。
可探头在环测盟手里,原始数据要进三道校验才会进总署的主模型。谁能在三道校验里动手脚?谁值得为四十五分钟、为几车货、为一张好看的脸,去动?
三个月前,系统升级时有人提过一句”风窗优化”——说能让主屏更干净、少误报。他当时只当是工程口的好心;现在回想,好心有时比恶意更难从日志里揪出来。
默瑟把光标移到那段异常区间上,点开溯源日志。日志显示:数据包按时到达,校验通过,签名完整。
完整得像一份从来没被碰过的遗嘱。
窗外,纺锤月亮升起来,像一只被吊在空中的梭子,慢吞吞转着。子午城的灯一盏盏亮,像有人在地上撒了碎玻璃。默瑟盯着那截断掉的曲线,第一次觉得,自己的表虽然准,却可能准在一场别人写好的戏里。
他伸手去抓电话,想打给环测盟的值班主任。手指碰到听筒的刹那,他又停住了。
如果电话接通,他问什么?
问”你们为什么晚了十一分钟”吗?对方会答:“没有晚,是你看错了”。
然后明天,他就会变成**“那个看错了的副主任”**。
听筒在掌心下微微发凉。默瑟慢慢把手收回来,像收回一把没开刃的刀。
**先别打。**他对自己说。先把这段断掉的线,藏进你自己的备份里。
屏幕的光映在他脸上,蓝得发冷。窗外,车队仍在蠕动,像一条不知终点在哪里的河。