第一部 · 零公斤
第四章门从里面打不开

视频被放慢到四分之一速度以后,门看起来像是自己作出了决定。
二十点四十二分四十六秒,K-0检修台上的黄色边框消失。画面分辨率不足以读清屏幕文字,只能看见整个界面短暂地白了一下,原本停在“维护检查”的流程切换成绿色。门体电动助力器随即开始回收,右门先动,左门随后。八秒后,门位确认闭合。
罗定川没有出现在门口。
“维护检查到时间会怎么处理?”邵临问。
曹牧站在K-0门边,手里拿着一只扭矩扳手。“先鸣笛,门保持开启。检查员要在内外两侧各确认一次,才允许关闭。”
“录像里没鸣笛。”
“因为模式换了。”
“换成什么?”
“空箱认证。”
两套流程使用同一张主界面。维护检查的标题栏是黄色,空箱认证是绿色;活动灯光打在防眩屏上,颜色差别很浅。对箱内的人而言,没有区别。内部没有显示器,只有照明、急停和一只机械释放把手。
外部钢封也不应当成为第二道困人的锁。K-0的封识穿过右门锁座上一只可断式耳片;内部释放正常动作时,会先退开门框棘爪,再剪断耳片底部两枚软金属销。钢封会连同断下的耳片留在外侧并触发破封报警,人仍能把门推开。封识证明门是否开过,设计上不能凌驾于逃生机构。
曹牧把左侧锁杆拆下来,又卸掉内衬板。箱门内部的结构露出来:释放把手通过一根钢索拉动转向臂,转向臂再推动门锁棘爪。真正承担力的地方只有一枚直径八毫米的销钉。
他让邵临站到箱内。
“拉。”
邵临戴着手套握住红色把手。把手先有一小段空行程,随后产生阻力。门框上方的绿色指示灯同时亮起。
门没有开。
“再用力。”曹牧说。
邵临把身体向后压。钢索绷直,转向臂也抬了起来。绿灯比刚才更亮,棘爪仍旧不动。
曹牧从销孔里抽出那枚轻了十一点四克的销钉。它不是完整的圆柱,而是一层很薄的不锈钢外壳。转向臂受力时,外壳会略微变形,让把手产生正常阻力,也让位置开关接通;力量却无法穿过空心部分传到另一侧棘爪。
“灯测的是把手有没有拉到位。”他说,“不测锁有没有真的打开。”
“谁会做这种销?”
“厂家有信号测试件。检修时不希望反复释放整套门锁,就用空心销隔开机械传动,只测把手、钢索和指示灯。”
“测试完应该换回来。”
“应该。”
“你没换。”
曹牧看着手里的销钉。“工单把作业拆成了两段。前一天十六点二十分,先换测试销,做灯光和信号检查。第二段是恢复实心销,原定当天十八点,后来变更到启用仪式结束以后。”
“哪有人把安全装置保持在测试状态去做公开演示?”
“工单备注说门体在活动期间由外部机械臂控制,人员不得入舱。只要没有人进去,内释放就用不上。”
“罗定川进去了。”
曹牧没有接话。
“你觉得这张工单正常吗?”邵临问。
“不正常。”
“为什么还做?”
“启动前四天,一共积了七十三张工单。每个人都在问能不能先让演示跑完。我退过两次,第二次被系统标成阻断级延误。项目负责人在群里说,安全信号已经通过,机械恢复可以顺延。”
“哪个项目负责人?”
“共享账号。”
曹牧把测试销装进证物袋。他写标签时,笔尖在“发现位置”一栏停了很久,最后写下:K-0左门内释放转向臂。
乔澄站在箱内,看着绿色指示灯。它仍然保持点亮,仿佛门已经完成了该完成的动作。
“罗定川拉过吗?”她问。
“机械表面会留下痕迹。”曹牧说。
勘查员在把手上提取到罗定川的掌纹。钢索导轮有一次超过日常测试力度的瞬时拉伸,空心销外壳也出现新鲜压痕。法医在罗定川右手掌根发现一道与把手防滑纹相符的充血痕。
他拉过。
绿灯亮了。
门没有开。
下午四点,控制日志恢复出第二处异常。
K-0内部的红色急停按钮在二十一点零二分三十一秒被按下。按钮没有失效,信号也完整送达本地控制器。但在它进入上位系统以前,被一条临时维护规则改写成:
测试误触。记录并静音。
规则的生效时间是前一天十六点十九分,比空心销工单早一分钟。失效时间原定为启用仪式结束后的二十二点三十分。
“为什么要静音?”邵临问。
曹牧说:“做信号测试时要连续按十几次。如果每次都向总控发红色报警,演示系统会锁死。”
“静音规则也应该在测试后撤销。”
“恢复销和撤销静音是同一张第二段工单。”
“也就是都被安排到一个人死了以后。”
曹牧的嘴唇动了一下,没有发出声音。
他们把K-0从公共大厅拖回隔离试验区,用一只未接气源的同型箱重做流程。乔澄要求所有人先站到黄色线外。测试员刷临时维护证,界面出现三分钟倒计时。另一个终端用演示共享账户提交模式变更。
倒计时只剩九秒时,黄色标题栏短暂刷新。
绿色界面接管。
助力器不再等待内外确认,直接闭合箱门。外部传感器读取门位,机械臂接收封识任务。内部测试员拉动把手,绿灯亮起,门锁保持闭合。他按下急停。总控台上没有声音,只有维护日志最下方多出一行灰字。
全过程没有任何程序报错。
“每个动作都成功了。”邵临说。
“动作成功,不等于条件成立。”乔澄说。
技术员调出昨晚的完整时序。
二十点四十一分,罗定川进入K-0。
二十点四十二分,维护检查被切换为空箱认证;门体随即自动闭合。
二十点四十四分,内部拉柄位置开关先后两次闭合,锁舌没有动作。二十点四十五分,机械臂加装钢封。
二十点四十六分,K-0本地四角载荷合计为四千二百八十六点四零公斤。固定设备清单没有报告缺失,净载荷因此被计算为零。
二十点五十八分,第一轮本地空箱条件通过。之后的吊装、地磅和动态复核继续进行。
二十一点零二分,预定的低氧干燥程序到达启动窗口。它只检查三个条件:门体封闭、净载荷为零、内部应急释放信号正常。
前两个显示绿色。
第三个也显示绿色。
空心销不会改变释放把手的位置开关,维护静音也不会让系统把急停判为故障。对控制器而言,内部安全装置全部正常。
二十一点零二分十七秒,进气阀打开。
大厅昨晚的录音里能听见一声很轻的金属撞击。那时韩叙宁正在台上解释铁路动态称重,记者们的快门和短驳车倒车提示音把它盖了过去。现在技术员把其他声道逐一衰减,那一声才从背景里露出来。
先是阀芯动作。
随后,氮气以规定流量从箱载储罐进入舱室;等量舱内空气被压进箱载回收罐。供气、回收气体与压缩组件都属于K-0固定设备,整个过程没有质量越过箱体的称重边界。
没有人多按一个按钮,也没有人把气体浓度改到超出标准。程序按照设计值把潮湿空气从舱室压入回收罐。箱内氧浓度从二十点六开始下降。
罗定川在十四秒后按下急停。
总控没有报警。
他又按了一次。
日志里多出第二行灰字。
测试员把两行记录投到墙上。它们的字号很小,颜色比正常运行数据浅,夹在上百条温度、阀位和电流值之间。如果不是已经知道有人死在里面,没有人会把它们从维护噪声中单独挑出来。
“会不会仍然是事故?”活动方的安全负责人问,“有人错误保留了测试销,有人忘了撤销静音,罗主任又擅自进入。多个违规刚好叠加。”
邵临没有回答,转头看乔澄。
乔澄把时间线重新排了一次。
有人先查到罗定川当晚精确到二十克的体重。
有人据此生成十二块钨板的对称组合,让K-0在少掉固定设备以后仍保持重心不变。
有人制造一个不存在的角位故障,正好使用罗定川会亲自检查的术语。
有人在他进入以后,把维护检查切换为空箱认证。
空心销和急停静音则早在前一天被合法工单装进流程。
其中任何一项都可以解释成疏忽。只有把它们按时间放在一起,才会出现一个完整目的:让罗定川在封门前进去,让他在封门后出不来,让箱子把他的重量认作固定设备,再让一项只对空箱开放的程序正常开始。
“事故会叠加错误。”乔澄说,“不会提前凑好死者的体重。”
邵临把现场性质变更单翻到最后一页。
原来的勾选项是“重大工业安全事故”。他划掉那一栏,在下面重新选择。
故意杀人案件。
签字时间,十七点四十三分。
签完以后,他走进K-0,亲手拉了一次内部把手。
绿色指示灯亮起。
他站在那扇从里面打不开的门后,看见外面的人,也看见所有人都能看见那盏代表正常的灯。
然后他松开手。
灯灭了。
门仍然关着。
内部应急装置状态记录(节录) 16:19:04(前一日) 急停信号测试规则启用 16:20:11(前一日) 机械释放测试销安装 20:42:54 门位:闭合 20:44:09 内释放位置开关:触发;锁舌:闭合 20:44:16 内释放位置开关:再次触发;锁舌:闭合 21:02:17 惰性气体进气阀:开启 21:02:31 内部急停:触发 21:02:31 事件分类:维护误触(静音) 21:02:46 内部急停:再次触发 21:02:46 事件分类:维护误触(静音)