醫院隔離會議室的門重新合上時,審批平台的回執先亮出一條衝突記錄。
第三份附件還在。
它沒有出現在陸氏律師提交的壓縮包里,原始封裝清單卻保留著第三個對象編號、七頁頁數和完整哈希。平台責任人把兩份清單投到隔離屏上,左邊是三個月前的原始封裝,右邊是今天導出的可見版本。左邊三行,右邊兩行,封面編號相同。
「同一個審批包,不該有兩套附件數。」林晏川說。
陸氏律師合上自己的電腦:「我提交的是陸氏系統目前能夠導出的全部材料。平台上曾經存在什麼,不在我的控制範圍。」
「那就先別談控制範圍。」林知夏把警方調取通知推到平台責任人面前,「原始封裝、版本回執、對象狀態,分別導出。附件內容先不解密。」
平台責任人重新核對通知里的權利人、時間段和數據範圍。醫院、柏安和陸氏各派一名系統責任人見證,警方記錄導出路徑。平台先按對象編號定位密封庫,只讀核驗存儲層,不解密文件。第三對象仍可尋址,字節長度為四百一十八KB,密文哈希與原始封裝清單一致,保留鎖還有九個月才到期。
原始封裝另掛著一枚第三方時間戳。三份摘要重新驗簽後,屏幕依次亮起綠色結果,封面審批號也與陸氏律師手裡的停用計劃一致。
「現在能確認兩件事。」平台責任人說,「封裝時有第三對象,今天密封庫里也有摘要一致的對象。正文寫了什麼、內容是否真實,這次都沒審。」
林知夏讓他原樣寫進說明。對象存在、正文可讀、內容可信,三層結論不能揉在一起。
文件題名是《B1冷備份介質外部交接附表》。
共七頁。對象編號末尾是 `3A7C`,創建時間落在三個月前舊項目停用審批當天。平台只顯示封裝摘要和版本動作。
技術員看向B1黑箱的封存記錄:「要不要只核裡面設備的序列號?」
「不用開箱。」林知夏說,「題名只證明審批時掛過一份附表。箱裡裝什麼,等箱子的授權。」
她讓記錄員把附件題名、對象編號、頁數、哈希和密封狀態寫入一欄,又把昨晚任務號、箱體外觀和封條另列。兩組材料之間目前只有 `BA-B1` 前綴、規則號和模板版本相連,附件正文沒有打開,箱內設備也沒有讀取。
平台責任人繼續展開版本樹。原始封裝完成後四十七秒,第三份附件執行過一次「分離歸檔」。這個動作沒有銷毀對象,只把對象從當前審批包的可見目錄移入外部交接隊列。自那以後,普通導出只剩封面和停用計劃;原始封裝回執仍然固定三份附件。
技術員用陸氏今天提交材料時的普通查看權限覆核了一遍。目錄里確實只有兩份,頁眉仍寫「附件三份」,點擊第三項會返回「對象已外部化」。陸氏律師的導出日誌沒有少選文件,也沒有手工刪除動作;陸氏舊項目管理員三個月前卻收到過一次「分離完成」通知。
這讓當前提交責任和三個月前的目錄變化分開了。律師今天交少了一份是客觀結果,誰在三個月前讓第三份離開可見目錄,仍要沿舊規則查。
「誰點的分離?」林晏川問。
操作人欄是一串空值。調用來源寫著 `LEGACY-CLEAR-02`,模板版本為 `3.4`,與今天十四秒卡片和昨晚B1任務使用的規則相同。
陸氏律師盯著空值:「自動動作沒有實名操作人,也可能是平台歷史遷移。」
「是不是遷移,看動作和配置。」林知夏說,「把模板當時每一步寫什麼調出來。」
平台責任人沒有直接運行舊模板。他從已保全的歷史版本庫讀取配置快照,警方向平台補了一項限定調取,明確只看欄位映射和狀態變化,不觸發任務,不補發確認。
模板3.4一共有四個交接節點。
第一步,附件分離,生成外部任務號。
第二步,寫入載體編號,任務狀態預填為「已交接」。
第三步,接收確認,身份憑證待補。
第四步,生成外部交接登記和媒體索引。
任務狀態被放在第二步。真正的接收確認排在後面。
警方補充限定範圍後,平台責任人在源系統內對同月兩條已完成任務做欄位級脫敏,原數據不出域,只導出流程對照。兩條正常記錄在「已交接」後都有接收身份憑證、出櫃時間、簽收回執號和媒體索引。
問題任務的流程條只亮了兩格。後兩格是灰色,滑鼠移上去,提示分別為「等待二次確認」和「索引未生成」。
技術員把三個月前最早一條 `BA-B1` 任務調到屏幕中央。創建後不到一秒,狀態從「待處理」跳成「已交接」。載體編號存在,接收人為空,身份核驗為空,出口時間為空,媒體索引也為空。
「這就是你們說的已交接?」林晏川用筆點了點那四個空欄。
平台責任人沒有替任何一方解釋:「從任務層看,狀態值確實是已交接。從完整流程看,接收確認和身份憑證都沒有完成。」
「實物有沒有離開?」
「平台回執證明不了。」
房間裡安靜了幾秒。陸氏律師剛才放在桌邊的兩頁停用計劃,被空調風掀起一角。他伸手壓住:「歷史模板設計有缺陷,不代表有人借它偽造交接。」
林知夏把原始封裝清單轉向他:「當前目錄只有兩份,密封庫里還有第三對象。系統寫的『已交接』,能證明接收身份、標準出櫃,還是實物離場?」
律師沒有接那份確認單:「我只能確認陸氏今天導出的文件狀態。」
「記下。陸氏見證人確認當前可見版本,不確認三個月前發生過真實交接。」
平台責任人簽了一份狀態說明:原始封裝含三對象,當前普通目錄只顯示兩對象;「已交接」在接收確認前預填,不能單獨證明接收身份、標準出櫃或實物離場。警方把說明收入見證筆錄。醫院和柏安分別確認本方缺失欄位,陸氏律師只簽收副本,並保留對歷史原因的異議。
三個月前那行「已交接」,終於從一個結論退回成了系統里的兩個字。
技術員又把今天的失敗任務並排放上去。十四秒卡片出現後,B1處理器完成埠恢復、模板調用和票據創建。十點五十四分零三秒,`**27` 收到二次確認,沒有回傳。外層任務狀態寫著「觸發成功,確認失敗」,外部交接登記和媒體索引停在第三步之前;藏在下面的回執草稿里,交接狀態已經預填成「已交接」。
草稿下方還有自動重試記錄。第一次沒有生成外部登記;第二次發生在 webhook 禁用、B1設備證書和維護憑據吊銷之後,請求被執行控制攔下,沒有發出新的確認推送。
林知夏要求平台責任人關閉自動重試,只凍結隊列,不清空草稿。生效回執顯示「保全鎖定」。
「兩次都先寫結果。」林晏川說。
「兩次都缺接收證明。」林知夏說,「有沒有真實搬運,查門、車、人和實物。任務狀態單獨封存。」
這張回執要走完,醫院得開放埠,柏安舊節點要轉發調用,陸氏接口再落票,三家各握一截。平台導出的接口證書沒有個人姓名,只登記到「外部合規橋接」;其指紋與 `LU-COMPLY-914-02` 處於同一證書鏈。白名單在柏安,埠憑據由醫院發放,任何一家的單份日誌都不能直接落到操作者。
林知夏在白板上列出證書籤發、節點調用、埠放行和接收確認四欄,沒有把它們畫成一個人。
「接口在你們證書鏈上。」林晏川說。
律師抬眼:「共享接口可以被舊項目節點調用。請把系統責任和個人責任分開。」
「一直分著。」林知夏把證書指紋壓進陸氏接口一欄,「所以你也別拿空白接收人替任何人完成交接。」
她要求陸氏保全這張證書的簽發、續期、吊銷和設備綁定記錄,柏安提交舊供應商節點的調用白名單,醫院則補交三個月前舊項目停用時的外部載體盤點。三份通知各有範圍,沒有誰能用另一家的空白補自己的缺口。
平台責任人翻到原始封裝回執末頁時,停住了滑鼠。
「分離歸檔還生成過紙質回執聯。」他說。
電子回執下方保留一個列印批次號和封袋號。按照舊項目制度,紙質回執聯不隨附件對象走,要送到第三方外部保全櫃。櫃位、封袋號和回執封袋入櫃時間都在,保管期限還有九個月。
保全櫃的移交單由平台當日批量生成,櫃門每次開啟都有雙人記錄。三個月前那批一共十二個封袋,十一隻已經按期退回,只有這個封袋仍標著「爭議任務,等待接收確認」。它沒有跟著審批包消失,也沒有因目錄少一行而到期銷毀。
「附件正文也在那裡?」陸氏律師問。
「回執聯和封裝索引在那裡。正文對象仍在平台密封庫。」
林知夏讓警方聯繫保全櫃責任人,先凍結對應封袋。調取單上寫得很窄:只取回執聯和封裝索引,不調取、不解密第三份附件正文。
電話接通後,對方核過封袋號,回答封袋仍在櫃內,外觀完整,今天沒有出櫃記錄。
林知夏簽下調取範圍,把筆扣回筆帽。
「去取回執。」
她看著屏幕上那三個空欄。
「我要看這套模板,接收人到底從哪裡取值。」