沈確把「系統有問題」五個字從曜石的測試申請里劃掉了。
他沒有在旁邊寫「錯誤」,只把紙推回顧沉舟面前:「這是結論,不是項目。你們明天重複不了五個字。」
紀律部的會談室沒有隊徽,也沒有聯盟宣傳屏。桌面中央擺著一台只讀終端,兩側各有一支正在錄音的麥克風。顧沉舟進門後先看時間,九點五十七分,比通知要求早三分鐘。
他帶來的原始設備沒有放上桌。舊鍵盤和隔離適配器分別裝在透明證物箱裡,由兩名記錄員留在玻璃牆外。箱封編號、運輸溫度和開箱權限都顯示在終端側欄,任何人點開一次,都會生成新的訪問記錄。
沈確先確認這件事。
「設備管理違規,你們仍然承認?」
「承認。」顧沉舟說。
「霧港參與異常?」
「沒有證據。」
「那場對局誰本應獲勝?」
「不屬於這次申請能回答的問題。」
沈確在三項後面分別標了確認,沒有故意用顧沉舟哥哥的舊案開場,也沒有問他是不是因為首勝被取消才臨時尋找系統責任。
「我們今天只談記錄順序和因果。」他說,「我不預設你們無辜,也不從顧臨川的處分倒推你有罪。」
韓岑坐在俱樂部代表位,沒有替顧沉舟答話。林知微負責技術目錄,唐梨只作為截圖持有人參加前半程。每個人的權限寫在姓名下方,連誰可以看哪一頁都先被固定。
沈確調出第一項。
判罰附件顯示,完整性服務在二十時三十一分十四秒,將非標準材質索引綁定到本場會話、五號席埠和顧沉舟的註冊配置。涉檢適配器直到二十時四十二分十九秒才接入正式終端。
十一分零五秒。
「這條來自聯盟簽章附件。」沈確說,「它能證明兩個欄位的記錄時間存在先後矛盾,也能證明原決定沒有解釋綁定如何早於接入。它不能直接證明綁定在伺服器端提前發生。」
「導出欄位可能錯置。」顧沉舟說。
「也可能是任務預建、訓練告警遷移,或者展示層把兩種時間寫在同一列。」
「原判把這一列當成異常發生時間。」
「所以值得查。」
沈確說得沒有讓步的語氣,像在確認一項已經進入程序的事實。
他給這條記錄分出四個待核欄位:任務創建、綁定寫入、會話繼承、報表導出。每個欄位只調取本場比賽、本次檢測和五號席關聯時段,不向前搜索所有訓練記錄,也不向外擴到其他選手。
第二項是唐梨的截圖。
完整性覆核任務的顯示時間比北牆材質第一次變化早十四秒。截圖保存了本場種子尾號、資源交接回執和公開倒計時,內容沒有發現歸檔後修改;本地時鐘與賽務時鐘的完整校準仍待核驗。
沈確把「伺服器提前創建任務」改成「支援記錄終端提前顯示任務」。
唐梨問:「如果握手包能對上呢?」
「再改成能被新材料支持的句子。」
「如果對不上?」
「這張圖的時間證明力下降,第一項聯盟附件仍然單獨成立。兩條鏈不互相拖走。」
唐梨在持有人確認欄簽字,沒有要求他先相信截圖。她要的本來就是錯誤出現時只由錯誤承擔後果。
顧沉舟將一份擴大調取申請放到桌面。申請範圍包括同版本弧核近三個月的完整性任務、地圖參數調用和所有註冊設備關聯記錄,先做匿名化,再尋找與十一分鐘、十四秒相似的時間倒置。
沈確只看了第一頁就按下退回。
「範圍過寬。」
「如果不是單場故障,窄查可能看不見規律。」韓岑說。
「如果先把所有數據拉出來,總能找到看起來像規律的東西。」沈確說,「你們要查的是一種機制,還是從全量記錄里挑一批適合當前解釋的異常?」
顧沉舟沒有回答「機制」。他們現在連缺失環節屬於任務、地圖還是展示層都不知道,寫出一個機制名稱只是把未知換成更像答案的詞。
林知微問:「匿名化以後,隱私風險仍然不能接受?」
「匿名化不是不存在身份。」沈確把數據目錄展開,「位置習慣、鍵位組合、語音節奏、身體反應、臨場選擇,足以重新識別職業選手。裡面還有健康部限制數據、未成年青訓樣本和其他未結案件。你們沒有獲得那些人的授權,他們也沒有因為曜石上訴就失去隱私。」
他又點開訪問鏈示意。
全量導出不只是多看一些文件。紀律部需要先解封多個部門的保全副本,再由人員篩選與本案相關欄位。每一次解封、轉換和人工過濾都會增加證據接觸者。將來若真找到一條關鍵記錄,任何被調查方都可以追問:它在全量篩選中經過誰的手,篩選標準何時形成,未被選中的反例是否被刪除。
「不是數據越多,證據就越強。」沈確說,「目標不清的調取會同時傷害別人和你們自己的證據效力。」
「那怎樣擴大?」顧沉舟問。
「先給我可區分的條件。比如某類任務在設備接入前是否允許預建,或者同一輸入順序能否穩定生成同一材質索引。條件出現以後,我按欄位、時段和對象申請。不是永遠不調,是不能因為你們懷疑弧核,就把所有與弧核有關的人都放進一個可搜索文件夾。」
沈確沒有否認弧核可能涉及問題。他已經對本場任務隊列、地圖材質調用和設備遷移日誌發出保全令,在上訴結束前禁止自動覆蓋。範圍比曜石申請的小,卻恰好覆蓋十一分零五秒可能經過的四個環節。
顧沉舟把全量申請收回,沒有把退回解釋成包庇。
他沒有同時收回顧臨川的舊案索引。
「兩個場館、兩個客戶端版本、兩張地圖,都出現過R17-04。」顧沉舟說,「能不能併案調取?」
沈確沒有先看字符截圖。他先看三年前材料的來源:轉播緩存、缺失附件的申訴目錄,以及周硯後來恢復出的半段語音。三項都能證明一些事,沒有一項保存了完整伺服器分片。
「相同字符可以支持關聯申請,不能代替關聯欄位。」沈確說,「它可能是材質索引、測試標記,也可能是兩個版本共同繼承的資源名。現在併案,會讓本場每一處空白都自動帶上顧臨川處分的含義,也會讓舊案每一個缺口都借本場補齊。」
「所以不查?」
「所以分開保全。」
沈確將舊決賽仍在聯盟歸檔期內的轉播緩存目錄和任務隊列索引加入凍結申請,不調取正文,不向曜石開放。他給出的理由不是照顧顧臨川,而是這些目錄一旦按周期覆蓋,即使以後找到關聯欄位,也失去核對入口。
「本場若復現出明確調用路徑,你們可以拿路徑申請比對舊案。」他說,「如果只復現出同一串字符,就只比對字符生成目錄。一步得到什麼權限,下一步就查什麼。不能因為舊案可能有關,先把所有舊選手的記錄打開。」
顧沉舟確認保全編號被寫進會談紀要。沈確拒絕替哥哥翻案,也沒有要求他們等到一切消失以後再來證明。
「受控復現可以提供條件。」他說。
「如果能重複。」
「如果不能,也至少能排除這套測試配置。」
沈確抬頭看了他一眼:「把後半句寫進方案。」
林知微已經在改測試表。她把目標拆成四組可觀察結果:北側脈衝激活時刻,公開計時與實際門體狀態,北牆碰撞與R17-04材質,以及覆核任務的創建和首次顯示。設備記錄作為旁路觀察,不以任何一個畫面替代伺服器原始日誌。
操作條件按顧沉舟職業首秀保存的陣容、模塊、鍵位和路線重建。五名首發全部參加,口令順序沿用隊內語音;顧沉舟在相同公開節點放置標記、輕擊北牆並執行同一段控域操作。
「對手呢?」沈確問。
「用審計機器人重複霧港公開行動。」林知微說,「只重建能夠從母流確認的部分,不推測他們視野外的鍵入。」
「機器人反應會改變地圖輸入。」
「所以對手行為標記為不可等同條件。」
「場館負載?」
「無法復原,只記錄測試時負載。」
「觀眾與轉播請求?」
「只能用紀律部的標準壓力流,不能聲稱等同原場。」
沈確連續問了十二項。林知微沒有用「基本一致」越過差異,顧沉舟也沒有為了提高通過率刪掉不利條件。寫到最後,測試方案比申請時短了一半,限制頁卻多了兩頁。
記錄方式也被單獨固定。紀律部保留伺服器原始鏡像,曜石只能獲得公開層和與申請欄位直接相關的摘要;雙方在測試開始前交換空白日誌模板的哈希,結束後各自生成校驗值。若日誌里出現申請範圍外的其他選手數據,由獨立記錄員遮蔽,遮蔽位置必須保留編號,不能直接刪成一塊看不見的空白。
顧沉舟要求增加一項:無論目標異常是否出現,完整錄像、負載與輸入時間線都進入上訴材料,不能只提交命中的片段。
沈確同意,又在後面加上同等義務。曜石若自行公開測試,也必須同時公開未命中結果和條件差異,不得只截取北牆某一幀。
「這條限制你們,不只限制紀律部。」他說。
「應該限制兩邊。」顧沉舟說。
韓岑問:「如果沒有復現,原判會把它寫成系統正常嗎?」
「我會寫本次配置未出現目標異常。」沈確說,「它會降低『這組公開操作足以觸發異常』的可信度,不會自動證明原事件不存在。反過來,復現一次也只能證明條件能夠產生結果,不能自動證明有人故意設置。」
顧沉舟在結果使用條款旁簽字。
這不是一場只允許他們贏的實驗。測試失敗會削弱最直觀的上訴敘事,也會給支持原判的人一段很好傳播的正常錄像。可如果失敗結果不能保留,他們要求聯盟保留不利日誌就只是一種姿態。
原設備最後沒有開箱。沈確要求先完成兩份法證鏡像,再由設備鑑定員決定是否進行第二輪接入。第一輪只使用同型號標準外設和經過哈希確認的鍵位配置,避免用一次測試改寫仍在爭議中的原件。
「這樣可能漏掉硬體條件。」顧沉舟說。
「會。」沈確說,「所以結論只限於第一輪。保護原件也是條件,不是障礙。」
協議通過時,終端自動給出第二天下午的測試時段。地圖欄仍然空白。
林知微準備填入職業首秀使用的斷潮港種子,沈確鎖住了輸入框。
「公開基礎種子由紀律部在現場候選池中抽取。」他說,「抽取過程雙方錄屏,生成後才允許配置模塊。」
顧沉舟問:「不能選最接近三年前決賽的地圖?」
「不能。你們若先挑最像答案的一張,重複的是選擇,不是結果。」
終端最後一欄隨即亮起。
測試獲准。基礎種子,現場抽取。