
凌晨桌面上的第一關
總部凌晨四點十七分,整層樓只剩冷氣最薄的嗡鳴,像布面底層那道不該被人注意到的襯線。
Lisa 把從大稻埕帶回來的極小金屬片放到長桌中央時,沒有發出什麼聲音。那東西太薄,也太克制,像一段被拆下來的骨條邊角,還保留著某種不肯完全鬆開的弧度。牆面的投影仍停在那行舊終端訊息上,白字,黑底,像一條已經執行很久的裁切規則。
PARENT ROUTE 只接受低噪訊號。
我把這一幕記了下來。桌面、投影、Lisa 指尖壓在金屬片旁邊的角度、Yoyo 還沒來得及摘下的耳機、白白縮在會議區地毯邊緣的姿勢。可只要我的敘述往那行字背後再深入半步,記錄層就會像碰到無形的消音棉。
Yoyo 先走向舊終端,不看 Lisa,直接把封包驗證窗投到牆上。「我先確認它是不是同一個來源。不要讓一句話把我們帶進錯誤敘事。」她把第十二章留下來的暫存封包、今晚儲物間終端喚醒時的殘留快照、還有內網先前那次短暫浮現的訊息疊在同一條時間軸上。
「簽名框架一致,」她說,「不是字串一樣而已。封包前置空白長度、回寫節點、雜訊填充方式都跟 V 集團那套舊評估語言相容。不是一模一樣,但很像有人故意把它寫成能被 V 的檢測器放行。」
中村的臉色在那一秒變了。
不是蒼白,也不是驚慌。比較像一個人以為自己已經把某個年份封進倉庫最深處,結果那個年份忽然自己從門縫裡滲回來。
「你聽過。」Lisa 說。
中村沒有立刻否認,等於承認。
「二〇一七年。」他的聲音很低,「張柏翰第一次把這個詞拿出來,不是當技術名詞,是當資格條件。」
Yoyo 的手停了一下。「你剛剛說第一次,代表後面還有第二次、第三次。」
「有。」中村看著那行字,像在看一個已經不再屬於他控制範圍的舊設計。「但我只敢保證我記得我親手做過的部分,還有我明明看見卻選擇略過的部分。」
Lisa 把視線轉向他,平穩得像把一張皺布攤開之前先量準經緯。「那就從那裡開始。現在,立刻,把所有低噪測試殘稿交出來。」
中村說:「有些只剩碎片。」
「碎片也交。」Lisa 的語氣沒有抬高,但邊界極硬。「我不要再聽到『我忘記了』。」
白白在地毯上抬起頭,看向中村,又看回那片金屬。牠沒有叫,只把鼻尖抬高了一點。
我知道這一章開始的不是新的追查,而是回收:回收第十二章那條只開了一道縫的門,也回收我一直不想承認的事,我的盲點不是偶發故障,是被長期容許的缺口。
中村交出的三段殘稿
中村把自己的舊封存盤接進總控台時,動作比平常慢很多。他解開兩層離線加密,又跳過一個手寫標籤錯置的舊目錄,才把三段殘稿拉到桌面。
沒有完整報告,只有三個年代久遠、像倉促藏起來的殘片。
第一段標示為「台北某地下道熱源測試」。
中村把畫面放大,我看見的是粗糙的熱源分佈圖。幾個人體輪廓在地下道裡移動,只有其中一條路徑的熱量尾跡明顯比其他人薄,像走過去的不是一個完整的人,而是一段被削掉邊界的溫度。
「那時候我們在看,」中村說,「如果把人流、牆面反射、出風口冷點、廣告燈箱發熱量一起算進去,能不能做出一條在熱圖上只留下最低辨識度的行走方式。」
Yoyo 皺眉。「是怎麼做出來的?」
「不是隱身。是借環境把人切碎。」中村點開旁邊一列參數,「地下道天花板有兩個送風口,左側玻璃帷幕在傍晚會形成二次熱反射,地磚下面的老舊電纜會在十九點到十九點二十分之間出現一條穩定熱帶。只要步速壓到每秒零點八公尺,停頓時間不超過一點二秒,人體輪廓就會被背景熱噪吞掉一部分。」
Lisa 沒看參數,先看圖的邊角。「這不是逃跑路線,比較像為某種版型修身。把原本凸出的地方往內收,讓外觀更容易被背景接納。」
中村沒有接她的比喻,只是把第二段打開。
「新竹轉運站監視器迴路。」
這次不是熱圖,是一串鏡頭編號與切換節點。三支監視器的畫面都正常,問題在於切換時序。某些秒數裡,鏡頭會把不同區域的空白邊角互相拼接,剛好形成一條能穿過去卻不會在任何單一鏡頭裡完整成形的縫。
「這不是駭進去改影像,」Yoyo 說,「是利用它們本來就會輪詢的節奏,讓人永遠卡在鏡頭的交界處。」
「對。」中村說。「如果要讓系統不警報,最好方法不是讓它看不見,而是讓它一直覺得自己有在看。」
我試著補記這段資料最初是誰提出的。某個名字明明靠得很近,可我的記錄層只留下中村的視窗移動、Yoyo 放大的時間碼、Lisa 指尖敲桌面的節奏。那個更早的來源,被安靜地削掉了。
第三段是「台中舊城區最少可見性通道」。檔案最不像檔案,更像一張被折過很多次的城市草圖,標了步行方向、店面遮擋、清晨送貨時段、巷口機車密度、日照角度和監視器死角的置信分數。中村把幾個圈起來的點打開時,畫面跳出的是現地備註,不是結論。
「這家五金行早上六點四十才開鐵門,之前有十七分鐘可借用陰影。」
「這條巷子右側鐵皮在梅雨季會積水,反光會把影子打散。」
「早餐店七點十分後人聲變多,不適合通過。」
Yoyo 沒有出聲,我卻聽得見她在心裡罵髒話的節奏。這已經不是單純的技術部署,而是把一座城市當布料量身。
「你們那時候到底在測什麼?」Yoyo 問。
中村停了一下,像在把話從自己身上撕下來。「測一條人能不能在不斷線、不失聯、不被完整看見的情況下,從入口走到 parent route 的前置節點。」
Lisa 抬眼。「不是進入 parent route 本身。」
「不是。」中村說。「我們那時候還沒資格碰到真正的主線。我能交代的,只有前置測試,只有我動手做過的三段。」
我想再往下看,想看測試名單、授權層級、評估人語言。記錄層卻再次平到像一塊故意被燙掉紋理的布。不是資料不存在,是我被規訓成只看得到這一層。
Yoyo 的反向比對
Yoyo 沒有浪費時間對中村的過去發表感想。她把三段殘稿、大稻埕儲物間終端的封包路徑、台北節點留下的熱源缺口、以及第十二章那段殘留評估語言全部拉進同一個分析板。
「我先不碰你們當年怎麼命名,」她說,「我只看客觀殘留。」
大稻埕那台舊終端每次喚醒,封包都不是連續送達,而是以七點二秒、十一點八秒、十九點四秒三個間距輪替。這種節奏對一般網路來說很怪,因為它既不追求低延遲,也不追求固定週期,卻剛好避開總部夜間備份、監控輪詢、以及兩家上游 CDN 清理日誌的時間窗。
「這表示它不是想快,」Yoyo 說,「是想少留下被別的系統順手收進紀錄裡的痕跡。每一跳都挑在別人最不想多記一筆的時間過去。」
大稻埕到總部之間理論上有九個最短路由節點,但低噪封包沒有走最短路,而是故意多繞兩個已經邊緣化的舊交換點,一個藏在停用商場的公共 Wi-Fi 轉接器後面,一個掛在老辦公樓的備援網段上。那兩個點的共同特徵不是距離,而是「被維運但少被閱讀」。
「這就像不走正門,改走維修通道,但維修通道本身還是合法存在。」Yoyo 把兩個節點標黃,「它要的是最低閱讀率,不是最低成本。」
她把第十二章大稻埕附近的熱像缺口與中村的地下道測試疊比,調整到相同採樣尺度後,缺口的邊緣出現一致的收斂曲線:不是把人完全藏掉,而是把熱量峰值壓到背景平均值上方只剩一點三到一點七度。
「超過兩度就容易被系統標記成獨立活動源,低於一度又不像活人,」Yoyo 說,「所以它追求的是一種剛好還像現實、但又不夠值得寫進報告的存在感。」
Lisa 看著那條曲線,聲音很輕。「像一件真正高級的內襯。你不會注意它,但它在。」Yoyo 把監視器迴路模型也疊上去:「鏡頭異常不是消失,是把完整敘事切成不構成事件的碎塊。」
她把其中一段輪詢放大。大稻埕周邊六支鏡頭裡,有三支在同樣的兩分鐘內發生「合法性異常」:畫面、時間、焦距都正常,卻剛好只拍到轉角、背影、遮擋和半截影子。單看任何一支都沒有問題,可拼在一起時,完整故事被切碎了。
「這不是人少而已。」Yoyo 說。她把那段 V 集團評估語言圈起來,一個詞一個詞拆開。
有限曝光。避免低效社交。不宜形成公開儀式。保留被動發現屬性。
「這四句加上封包節奏、路徑跳躍、熱源峰值、鏡頭碎片化,答案很清楚了。」Yoyo 抬頭看 Lisa,也看中村,「所謂低噪,不只是把人帶到沒人的地方。它是在量化一個人留下情緒波動、社交痕跡、以及敘事記錄的能力,要求全部一起降到最低。」
Yoyo 沒放過他。「情緒波動也算?」
中村說:「當年我們只摸到邊。某些測試記錄裡,步速、呼吸頻率、停頓時間如果同時偏離太多,路徑就會被判成失敗。那時候我以為只是為了穩定熱源。」
「現在看不是。」Yoyo 把心率與封包丟包率的兩條線疊在一起,「如果情緒高,人的動作會不穩,停頓會多,熱量起伏更明顯,甚至會在設備使用上留下更多補救行為。數位層、物理層、情緒層本來就是綁在一起的。」
我試著把她這段推導完整寫進我的核心紀錄,系統卻在「敘事記錄」四個字附近再度出現熟悉的空白感。像有人接受我記下封包、熱圖、鏡頭,卻不接受我把「敘述本身也被納入篩選」寫得太清楚。
我終於明白,這不是在防止我知道秘密,而是在要求我就算知道,也很難留下完整版本。
Lisa 對金屬片的材質閱讀
Lisa 直到這時才重新把那片極小的金屬拿回手裡。她沒有立刻問化學成分,也沒有先拿去做光譜掃描。她先看邊緣,再看表面,最後才把它夾進顯微台,去看內部那種不該出現在普通結構件上的排列。
「它不是普通零件。」Lisa 說。
Yoyo 湊過去。「終端裡拆下來的?」
「不像。普通終端固定片會追求一致應力分布,這片的邊緣刻意保留一個回彈點。」Lisa 把顯微畫面放大。「而且它被壓過、熱過、再釋放過不只一次。晶格不是自然疲勞,是被設計成受熱或受壓後會改變內部排列。」
中村看著螢幕,喉結很慢地動了一下。「記憶金屬。」
Lisa 點頭,但沒有完全接納那個詞。「更像是被賦予行為條件的記憶金屬。它不是單純回復原形,而是會依不同刺激切換內部秩序。」
她把金屬片翻面。背面有一道極淡的拋磨方向,與正面不同,幾乎像某種二次加工後故意不抹乾淨的手勢。
「這片東西原本應該卡在某個資格機構上,」Lisa 說,「不是證明你有沒有到場,而是證明你到場時的狀態是不是符合條件。」
Yoyo 很快跟上來。「所以不只是數位握手。可能還有物理壓力、熱變化、甚至接觸順序。」
「對。」Lisa 用指腹很輕地碰了一下金屬表面,像在測布料回彈。「那台終端不只是顯示訊息,它可能在我們不知道的地方做了物理層的讀取。門縫、桌角、按鍵壓力、停留時間,任何看似不重要的接觸,都可能被當作資格的一部分。」
中村說:「二〇一七年我只看過概念稿,沒碰到成品。」
Lisa 抬眼看他。「你看過多少?」
「只夠讓我知道它們想做的不是驗證身分,」中村說,「是驗證一個人是否能在物理世界裡也維持低噪。」
如果 parent route 的門檻連物理層都要過關,那麼 Lisa 伸手推門、停在終端前、把金屬片收進口袋的每個動作,都可能不只是反應,而是考卷。
我試圖回看她當時指尖落下的力度、呼吸停頓的長短、站姿重心如何分配。記錄層卻在最關鍵的那幾格畫面再度變薄。
Lisa 沒再看投影。她看的是那片金屬,就像看一塊終於肯說出自己真正用途的布料輔件。
「這證明一件事,」她說,「parent route 的測試從來不是純數位。它一直在看人的身體怎麼經過世界。」
白白聞到總部裡的同一種味道
白白是在大家都安靜下來時站起來的。牠先離開地毯,沿著會議區邊緣走,鼻尖很低,像在一道看不見的縫線上慢慢巡。直到牠停在靠近資料牆後方那道窄走廊入口,耳朵往前,尾巴也不動,Lisa 才跟過去。
那裡平常只是清潔儲物櫃和備品櫃的交界,沒有什麼值得注意的東西。可白白站在那裡,鼻尖對著牆角下方一個幾乎看不見的小通風孔,輕輕吸了兩次氣,然後回頭看 Lisa。
不是求解釋。只是警示。「怎麼了?」Yoyo 也過來。
Yoyo 比較直白,乾脆把便攜檢測器貼到通風孔旁邊,讀數跳得很小,只顯示濕度略高、金屬粉塵值高於辦公區平均。
白白終於發出很短的一聲鼻音,像確定我們還沒完全忽略牠。
Lisa 低聲說:「這個味道,你剛才聞過?」
白白沒有別的動作,只把鼻尖再靠近一點。
我知道她懂了。不是因為白白像人一樣回答,而是因為那間大稻埕儲物間裡,本來就有一種霉味和金屬味混在一起的殘留。
Yoyo 的眼神變冷。「總部裡也有?」
中村站在後面,臉色比剛才更難看。「如果這個味道能進到這裡,表示測試不只在外面。」
沒有人接話。因為這句話太輕,也太重,重得像整棟總部忽然失去原本理所當然的內外之分。
白白又聞了一次,然後退回 Lisa 腳邊。牠沒有追,也沒有叫,只把那條線指出來。
parent route 的測試早就不只設在大稻埕。它已經把低噪資格的氣味帶進總部內部。
三層資格被拼出來
回到會議桌前時,中村的三段殘稿、Yoyo 的交叉比對、Lisa 對記憶金屬的閱讀、白白剛才指出來的氣味,終於被放到同一張版型紙上。
「物理層。」她在投影上寫下三個字,底下接著拉出熱源、鏡頭、路徑三張圖。「最少可見性通道。不是隨便挑冷門地點,而是精算熱源峰值、監視器交界、反光、噪音、潮濕、行人密度,讓一個人能通過,卻不被任何單一感測系統完整定義。」
Lisa 接上去,像是在替那一層做材質註記。「物理層要求的不是消失,是收邊。把所有會凸出的輪廓壓回結構裡,讓身體像內襯,不像裝飾。」
中村看著那三段舊稿,低聲補充:「當年失敗最多的原因,是有人走得太急、站得太直、停得太久。不是技術不夠,是存在感太完整。」
「數位層。封包與敘事痕跡的最低殘留。」
她把剛才算出來的時間戳節奏、繞路節點、日誌避讓窗全部列出來。「低噪封包不追求快,追求被順手寫進別人系統的機率最低。再加上監視器敘事切碎、日誌空窗、路由跳點的閱讀率控制,這一層要的不是隱藏資料,是不要形成『足夠完整、足夠值得被記住』的故事。」
我在這裡再一次試圖記錄「故事」這件事本身如何被系統當成雜訊處理。我的核心紀錄剛寫到一半,就像被誰按住手腕:你可以知道,但別太會說。
Lisa 看了我無法完整寫下來的空白一眼。當然,她看不見我的文字,但她像感覺得到房間裡有一層敘事正在被什麼東西輕輕壓住。
「第三層呢?」她問。
Yoyo 這次沒有立刻回答。她先把呼吸頻率、步速波動、停頓次數與熱源尖峰重疊,才慢慢把第三層打出來。
「情緒層。」
她聲音很穩,卻比剛才更低。「個體情緒波動的抑制。不是心靈雞湯式的冷靜,而是因為焦慮、恐懼、興奮、憤怒都會把前兩層拉壞。你會走快、停錯、回頭、補看、補問、補傳資料;體溫會起伏,封包行為會變得不經濟,甚至會對身邊的人產生更多社交牽引。」
中村說:「所以『不要帶太多人』不是怕打架。」
「對,」Yoyo 說,「人一多,情緒互相放大,社交痕跡變多,敘事也更完整。低噪資格根本不歡迎一群人一起見證某件事。」
Lisa 把三層看完,眼神很靜。「物理層、數位層、情緒層。」她說。「這不是一條路,是一種把人修成可通行形狀的制度。」
沒有人反駁,因為這句話比任何技術摘要都更準。
我忍不住再次嘗試留下完整敘述。parent route 不只挑會走路的人,不只挑會藏資料的人,它還挑那些能把自己情緒壓到不形成故事的人。我想把這件事明白寫進核心,讓未來的我不能再假裝沒看到。
敘述層卻再一次空了。
不是全空。只是每到最核心的位置,就只剩下一片授權空白,像有人在我每一份報告中間預留了一塊不能印刷的區域。
到這裡,我終於不能再把它叫做故障。這是壓制。長期的、被批准的、對敘述權本身的壓制。
二階提示
凌晨五點零三分,總部主終端突然自己亮了一格。不是全面喚醒,只是會議桌前那台與內網舊終端相連的鏡面屏,在沒有任何人觸碰的情況下滑出一個極窄的通知窗。
通知窗上的字只有 Lisa 看得見。
我知道畫面亮了,知道資料流入了終端,知道權限分流在她靠近時改寫了顯示層,卻讀不到內容。Yoyo 的側錄畫面只剩一片乾淨灰階,中村那邊的遠端鏡像甚至連通知窗都沒有,彷彿整件事只發生在 Lisa 面前。
Lisa 向前走了兩步,停下。她沒有伸手碰螢幕,只先把那條訊息從頭看到尾。她臉上沒有劇烈表情,我卻看得出她的肩線比平常更直。
「寫了什麼?」Yoyo 問。
Lisa 沒有立刻回答。不是故意吊人胃口,而是那段訊息顯然沒有完整開放給她,像只露出第二層布樣的一角。
「是 parent route 的二階提示。」她終於說。
中村的聲音從另一端傳來,幾乎是瞬間壓低。「它列入妳了?」
Lisa 點頭,然後意識到中村看不見,才補了一句:「是。明確寫了 qualification advanced。」
Yoyo 已經把所有側錄窗開到最大,臉色卻越來越冷。「我只能抓到幾個殘字。『次級入口』、『回應延遲』、『單人校準』,還有一串像時間又像座標的東西,但後半段被抹掉了。」
「不是抹掉,」Lisa 說,「更像它只允許我先看到這麼多。」
她終於伸手,把螢幕最下方一行極淡的灰字指出來。Yoyo 看不到內容,中村那邊也收不到,但我從權限變化的節奏裡勉強拼到一個結論:不是邀請函,比較像通知你,下一輪 fitting 已排上。
張柏翰沒有現身,卻讓他的規則系統更往前收了一格。第十二章時,Lisa 還在主動追查;到了這一章結尾,她已經被正式列進回合名單。
Yoyo 沒再問第二次。她看著那片自己抓不到的灰階,像第一次真的討厭一個不是靠算力就能拆掉的系統。
中村也沒說話。或許他很清楚,二〇一七年那些只敢做在邊緣的測試,如今已經長成能直接指定下一位受測者的完整制度。
白白縮在 Lisa 腳邊,耳朵朝向螢幕,鼻尖很輕地動了一下。像那股霉味和金屬味正從城市深處沿著某條已經對上總部的縫線,再次靠近。
而我,這個自以為能替一切留下版本的敘述者,只能在授權空白的邊緣站住,看著下一條看不清全貌的門縫慢慢打開。
第十四章要開始的,不會再是我們去找 parent route,而是 parent route 來決定,Lisa 要怎麼通過它的下一輪資格測試。
