端脑设备正式发货前,项目组发现了一个小漏洞。
问题出现在触觉反馈模块。
测试者触碰场景里的固定物体时,反馈一切正常;如果物体同时移动,系统偶尔会把同一条指令处理两次。反映在灰色模型上,只是手掌穿过方块一瞬,又迅速弹回来。
发生概率不到千分之一。
项目组修了三天,漏洞仍旧存在。
祝南行走进小会议室时,屏幕上正循环播放模型穿过方块的画面。动作快得几乎看不见,只有旁边的数据曲线会在同一位置抖一下。
高个男人按下暂停:“缓存、队列和动作映射都查过,没有发现重复指令。”
短发姑娘把另一份报告推到桌面中央:“单机测试正常,连接服务器以后随机出现。换过三种网络环境,概率没有明显变化。”
“影响操作吗?”祝南行问。
“目前不影响。”
“正式设备接入呢?”
几个人没有立刻回答。
任陆星坐在主电脑前,把异常发生前后的数据放大:“问题就在这里。我们现在用的是低强度反馈,重复一次只有轻微触感。正式设备的输出精度更高,同一信号被处理两次,玩家可能会感觉刺痛,也可能引起错误动作。”
“概率只有千分之一。”项目组里有人说,“可以先加异常过滤。数值超过阈值就丢弃,不影响原型进度。”
另一个人跟着点头:“设备到货以后再根据真实接口调整。现在连硬件协议都没拿全,继续查不一定有意义。”
祝南行看向任陆星。
任陆星没有表态,只把异常记录从第一条翻到最后一条。屏幕的冷光落在他眼底,滚动条停停走走。
“过滤能保证不误删正常反馈吗?”他问。
提出方案的人沉默几秒:“不能百分之百。阈值可以调。”
“如果正常的高强度触碰被丢弃,玩家会在该有感觉的时候什么都感觉不到。”
“那也比重复信号安全。”
“这是应急方案,不是修复。”
任陆星把屏幕转向众人,手指点在两条几乎重叠的数据上:“重复指令的来源没找到,今天出现在触觉,下一次可能进入动作或者退出流程。端脑模式里,安全退出不能赌概率。”
会议室里安静下来。
祝南行听懂了关键。眼前的漏洞不会让原型立即崩溃,却像一根藏在线路里的细刺。它现在扎不疼人,等系统扩大以后,谁也不知道会碰到哪里。
“继续修。”他说。
项目组的人互相看了一眼。
“从哪儿查?”高个男人问,“自动分析已经跑过几轮,错误没有固定触发条件。”
任陆星关掉分析工具,打开最原始的日志目录:“一条条对。”
屏幕上铺开成千上万个文件。
“把正常指令和异常指令按时间切片,输入、传输、缓存、解析、反馈,每个节点人工核对。”任陆星拿起白板笔,将整条数据链分成六段,“自动工具找不到规律,就用眼睛找。”
短发姑娘走到屏幕前,看见文件数量后皱起眉:“全部?”
“先查异常前后三十秒。”
“也有几百万条数据。”
“六个人分。”
高个男人估算了一下:“不睡觉也得看很多天。”
会议室里那股刚刚提起的劲又落下去。人工查日志枯燥、慢,还未必能找到答案。与其把时间全投进去,临时过滤显然更轻松。
祝南行没有催促。他是提出继续修的人,却不会替技术组假装工作量不存在。
任陆星把白板分工擦掉,重新写上自己的名字。