第102回 斷線七十二小時
2014年8月,蘭芳已經把前兩年談來的橋前預檢變成固定跨境節點;車等得愈少,它的柔佛—新加坡分工就愈值錢,但也愈依賴那套由中央資料決定『能不能放行』的網路。上午十點十二分,橋前預檢貨場的螢幕同時黑掉。這次斷線讓馮國經看到的,不只是備援問題,而是另一種控制權:如果驗證能力能被搬到本地,蘭芳的跨境網就不必每次等中央恢復才動。
不是停電。
是道路工程車把光纖挖斷了。
三十七輛貨車已經完成紙本查驗。
封條還在。
重量還在。
司機也還在。
馬來西亞關員卻把第一輛車鑰匙退給拉赫曼・伊斯坎達爾。
「不能放。」
拉赫曼把封條紙拍到桌上。
「哪裡不對?」
「系統看不到。」
「我問貨。」
「貨的中央資料看不到。」
「所以線斷了,貨就變假的?」
關員沒有回。
新加坡那邊也一樣。
本地終端其實還留著最後一次同步下來的預約摘要與封條資料,卻只能顯示同步時間;驗證程式平常仍要回中央查憑證狀態、資料版本與序號是否已使用。網路一斷,資料不是消失,而是本地端失去判斷「這份現在還能不能信」的能力。
預約頁整片變灰。
封條資料仍躺在本地磁碟裡,畫面卻只回一行:無法確認權威版本。
誰也不願在螢幕黑掉時,拿自己的名字放一車過境。
馮國經第一個電話打給電信商。
「第二條線多久?」
「最快幾週。」
「臨時無線?」
「容量不足。」
「衛星?」
「可以做備援,成本高。」
「先報。」
旁邊有人說:「雲端做雙區,身份服務也做備援。」
法麗達・奧斯曼(Faridah Osman)站在斷線櫃前聽了半天。
「你們又在加線。」
馮國經轉頭。
「不然呢?」
「如果第二條跟第一條走同一條施工路呢?」
「分路。」
「最後一公里呢?」
「也分。」
「電呢?」
「雙電。」
「雲呢?」
「雙區。」
「兩區如果都要問同一套身份、憑證撤銷和封條狀態服務呢?」
馮國經停住。
「那全部都正常才敢放車?」
馮國經沒有立刻回答。
法麗達指著窗外。
「三十七輛車現在不是缺第二條光纖。」
「那缺什麼?」
「缺一個人在沒有中央螢幕時,還知道自己憑什麼說『可以』。」
這句話送到李顯龍那裡時,他先問法麗達一件事。
「妳要回紙本?」
「不要。」
「那是什麼?」
「紙、實體封條、本地記錄,加上兩邊最後一次同步時已簽名的資料快照一起用。快照要帶版本、有效期限、簽章金鑰編號和已用序號清單;斷線端自己就能驗,不再回中央問一次才算數。」
「如果紙本、封條和簽名快照不一致?」
「不放。若只是斷線後新增的資料,就另加一筆,不能改掉舊版。」
「誰簽?」
「兩個不同的人。」
「為什麼兩個?」
「因為現在最大的風險不是沒有資料,是一個人怕擔責就什麼都不做。」
李顯龍看著她。
「兩個人也可能一起怕。」
「所以先十二輛。」
「為什麼十二?」
「夠少,錯了能追;夠多,不是一臺表演。」
馮國經問:「如果十二都過?」
法麗達說:「剩下再做。」
「如果第一臺就出事?」
「那至少早點知道。」
馬來西亞關員先反對。
「事故發生後才臨時造離線規則,誰負責?」
法麗達說:「具名的人。」
「公司呢?」
「系統資料錯,蘭芳負;貨主申報錯,貨主負;關員核錯,關員也要有名字。」
「那我為什麼要冒險?」
拉赫曼從後面說:「你現在不放,我也在冒。」
關員轉頭。
「你冒什麼?」
「今天工資、柴油、交期。」
「那不是執法責任。」
「對。」
拉赫曼把等待單放到桌上。
「所以以前都沒有人簽。」
「什麼意思?」
「車停三天叫『系統故障』,好像是天氣。沒有人在紙上寫:我決定讓三十七個司機等。」
關員的臉不好看。
「你要我為整個系統負責?」
「我沒說。」
「那你說什麼?」
「你要放就寫為什麼。不要放也寫為什麼。」
十二輛被挑出來。
不是最貴。
不是蘭芳最急。
按原順序,取前十二輛資料最完整者。
第一輛。
封條號一致。
車牌一致。
重量差在容許內。
馬來西亞出口紙本原件一致。
新加坡最後一次下載的進口摘要一致。
兩名關員簽名。
放。
第二輛。
放。
第三、第四、第五。
都放。
馮國經開始鬆一口氣。
法麗達看了他一眼。
「還沒。」
第七輛來了。
紙本品名:塑膠外殼。
本地掃描摘要:電子組件。
司機立刻說:「報關代理改過。」
貨主打電話進來。
「箱號對?」
「對。」
「重量對?」
「對。」
「封條對?」
「對。」
「那先放。」
法麗達說:「不放。」
貨主問:「現在就是因為沒有網路,文字版本才不同。」
「所以開箱。」
「開箱要幾個小時。」
「那就幾個小時。」
「妳剛才不是要證明離線也能走?」
「我要證明離線也能查。」
「只是品名。」
「那開完最好真的只是品名。」
貨主罵了幾句。
車被拉到旁側。
封條剪開。
最外面確實是塑膠殼。
第二層也是。
第三層下面出現電子板。
報關代理站在旁邊,臉色變了。
關員問:「為什麼沒寫?」
他說:「混裝,數量很少。」
「為什麼改成塑膠外殼?」
「客戶文件——」
「哪個客戶?」
「我只是照貨主要求。」
貨主在電話那端立刻說:「我沒有叫你少報。」
報關代理抬頭。
「你們每次都要我想辦法快。」
「快不是叫你改品名。」
「那你以為快從哪裡來?」
屋裡一下安靜。
法麗達沒有趁機宣布離線制度成功。
她只對關員說:「這輛留。」
拉赫曼站在後面。
「很好。」
馮國經看他。
「你今天第二次說很好。」
「至少這次真的抓到一臺。」
「你不怕以後每臺都拆?」
「怕。」
「那還好?」
「比線一斷大家假裝紙本都是真的好。」
剩下十一輛完成交叉核驗。
全部放。
每一張紙上都留兩個名字。
誰看過封條。
誰對過重量。
誰用哪一份本地紀錄。
誰因什麼理由放。
斷線期間的修改只能寫成新的序號與差異紀錄,舊值保留。每名關員用自己的離線簽章確認那一筆。
同一個一次性封條若已在本地標成使用,就不能拿較舊的快照再放第二次。
第一批過後,剩下二十五輛陸續進來。
有兩輛文件差異被拉旁側。
其他當天走完。
三十七輛沒有再因一條光纖停三日。
等待費照試辦時的約定付。
有人提出「光纖故障屬不可抗力,不應算超時」。
拉赫曼直接把收據推回去。
「系統是你們選的,不是颱風。」
「道路工程不是貨主控制。」
「我也沒控制。」
「那誰付?」
馮國經說:「這一批蘭芳先付。」
拉赫曼看他。
「又先?」
「之後追工程、電信、貨主。」
「追不到呢?」
「蘭芳吃。」
「寫。」
「寫。」
光纖恢復後,麻煩沒有結束。
離線放過的每一車都要重新對中央資料。
第七輛少報車被標成違規。
另一輛在離線紙本裡多了一個手寫修正,中央沒有。
關員問:「誰改的?」
兩個簽名人都在。
其中一個說:「我補的。」
「為什麼?」
「現場貨主提供新發票。」
「有沒有保留舊版?」
「有。」
「那就加紀錄,不覆蓋。」
法麗達站在旁邊,一直盯著這一段。
馮國經問:「妳怕什麼?」
「怕線一恢復,大家為了讓資料漂亮,把離線那幾筆修成跟中央一樣。」
「不一致不好看。」
「真實就常不好看。」
後來那套「七十二小時離線包」真的被裝進兩邊關口的機櫃。每次同步都留一份有版本號、到期時間與簽章的快照;本地端可以驗既有封條與資格,但不能在斷線時憑空發新的永久資格。
法麗達要求封面只寫三件最容易被人偷懶跳過的事:用過的封條序號不能因舊快照重新活一次;斷線期間的修正只能往後加,不能把舊值改漂亮;兩名關員各簽自己看過的東西。七十二小時一到,整包失效。網路恢復後若線上、離線版本衝突,兩份都留著,交具名的人處理。
電信商不高興。
「這會讓客戶覺得第二條線不重要。」
法麗達說:「還是重要。」
「那為什麼要花錢做離線?」
「因為第二條線也會斷。」
報關代理更不高興。
紙本與離線資料一旦固定欄位,他們以前靠熟悉格式賺的「協助費」少了一部分。
小車隊也沒有全部受益。
沒有預約、沒有預存資料的車,在斷線時反而更慢。
有些字跡、印章和公司名稱不容易被本地驗證工具辨識,更容易被叫到旁側。
拉赫曼一個月後又來找法麗達。
「你們現在不用網路,也可以知道我哪臺常被抽。」
「對。」
「所以離線不是少資料。」
「不是。」
「所以不是只是資料放近一點。」
法麗達說:「不是。是把短時間內驗證資料真假的能力也放到斷線那一側,但不把永久發證權一起搬過去。」
「對。」
「那你們還是可以標我高風險。」
「可以。」
「妳不會講好聽一點?」
法麗達笑了。
「你不是最討厭我們講好聽?」
「也是。」
李顯龍在一次檢討會裡問馮國經:「所以你失去控制了?」
「一點。」
「拿回什麼?」
「更完整的離線資料。」
「那不算退出。」
「本來就不是。」
法麗達把第七輛少報車的違規單放到桌上。
「至少證明一件事。」
「什麼?」
「離線不是放棄查驗。」
兩年後,南海一條區域海底電纜真的故障。
七十二小時離線包開始倒數。
這一次不是貨櫃封條。
是海纜本身斷在海裡。
修纜船設備都已上船。
船卻停在港內。
船長問法麗達:「線可以離線七十二小時,那船呢?」
她看著作業座標。
「船缺的不是網路。」
「那缺什麼?」
「有人敢讓它下錨四十八小時。」