招標文件是周三下午三點四十七分掛上代理平台的。林默記得這麼准,並非刻意為之——那一瞬顯示器右下角恰好彈出系統提醒,窗外又正好有一架飛機低低切過雲層,在玻璃上拖出一道灰色長影。兩件事撞在同一秒里,時間就被釘住了。加密附件是他順手幫忙下載的。投標客戶端把文件轉成 PDF,兩千多頁,進度條爬得不快。轉換間隙他從陳志遠桌上抽過那份列印稿掂了掂——商務分冊從頭到尾寫滿紅圈藍勾,工期節點那頁翻出了毛邊;技術分冊卻乾淨得反常,別說折角,連一道鉛筆印都沒有。
陳志遠看標從來如此:只認數字和日期。技術合規這些「字繞「的部分,不出意外都會滑到林默手裡。全公司能把政務雲等保體系從架構講到罰則的,眼下也就這一個。他並不覺得冤。恰恰相反——攤過來的活兒,往往正是別人懶得啃、卻又最能看清全貌的骨頭。嚼得越碎,刀從哪條縫裡遞進來,就越看得真切。
他在桌面新建批註文檔,光標落進全文檢索框,依次敲下三個詞:資質、等保、相匹配。前兩個跳出幾十處黃色高亮,從總則第五十一條一路亮到第二百一十六頁。第三個只命中一處——第七條附件三,合規性要求第二款,頁腳還蓋著代理機構的騎縫章。
「投標方須具備與所運維系統等保級別相匹配的安全服務資質,且近三年同類項目中無資質瑕疵記錄。「
單看這一行,挑不出半點毛病。主謂賓齊全,政策依據充分,擱在任何一份招標文書里都不會引人多看一眼。
問題是林默在這攤水裡蹚得太久,見過太多這種「平整「。真正傷人的條款從不長獠牙,它們西裝領帶、句式工整、出處合法。焊死門檻的寫法是「須具備×××資質「;這份文件卻用了「相匹配「三個字——前者是根硬槓,誰都得繞著走,後者是一團軟面,往哪邊捏、捏多窄,解釋權都在執刀人手裡。
他又調出志遠數科那張等保三級安全服務資質的照片核了一遍。證書取下來三年多,有效期到後年三月。目光在左下角「業務範圍「一欄停住:信息系統安全運維,括號里綴著一行小字——「不含跨部門數據交換類平台的建設及運行維護「。一期政務雲基礎運維,圈得嚴絲合縫。二期要接的跨部門數據中台,五個字,不在上面。
評標那天只要有人肯較一句真,「證書載明項未覆蓋中台業務,屬資質瑕疵「,志遠數科就會被從名單上整塊抹掉——進不了技術評分,見不著任何評委,程序合法,申訴無門。淘汰不算本事,人家的目的是讓你根本沒資格上場。
後槽牙輕輕磕了一下。那股涼意順著鼻腔慢慢放出去,臉上什麼都沒留。
【老套路了。】天樞的聲息貼著顱腔內側鋪開,拖著剛睡醒似的懶腔,【可下手不見外。】
「陰在哪兒?「
【陰在'匹配'二字上。】視野右緣一幅稀疏的關係圖緩緩展開,幾個節點之間用虛線牽著,【評標小組三個人。組長姓於——前年銳科中標的那個區級數據平台,他就是評審組長。另外兩位是外聘專家庫隨機抽取。流程上挑不出毛病:迴避制度管的是利益關聯,不管觀點傾向。】
「也就是說,吵不起來。結果在開會之前就打好草稿了。「
【悟性不錯。】
林默沒接這個奉承。他轉頭做了件看似不相干的事:調出信創目錄里針對中間件的幾條硬性要求,又打開銳科官網那套方案白皮書,兩相對照,沒用上一分鐘。結論浮得很快。銳科核心模塊一直壓著進口資料庫和中間件跑,信創適配真要拉上檯面量化測評,紅燈幾乎必然亮起——他們自己清楚。
所以要搶先動手,用一條挑不出把柄的軟條款,把唯一能在台上跟他們掰手腕、還可能當眾捅破這層紙的公司先請出場。名單上剩下的都是陪跑,評測環節自有辦法往後拖。一刀下去,除掉對手,也遮住自家短板。
他沒聲張,只把附件三連同上下文截了圖,又把信創目錄的相關條目一併存檔,統一命名,推進加密分區里那個專收「對手痕跡「的文件夾。順手,他還把二期徵求意見稿里「近三年源碼備案「那條也截了一份,塞進同一個夾子——前後兩道口子並排放著,像一副手套的兩個指套。留痕這個習慣養成還不滿一個月,卻已經長進了手上。
周五下午兩點,標前答疑會,定在政務服務中心三樓那間朝北的小會議室。林默提前一刻鐘到場。走廊盡頭貼著一張 A4紙——「標前答疑會(雲州政務雲二期運維項目·第一場次)「,宋體加粗,四個膠點都沒抹平。室內長條桌擦得發亮,映得出天花板的燈管。牆角空調嘶嘶吐著冷氣,邊上摞著一箱未拆封的一次性紙杯,封膜落了層薄灰。長桌正中立著一支錄音筆,紅色指示燈常亮,不閃,只是安安靜靜點亮在那兒。
現場除了志遠、銳科兩家正主,還有三家本地公司陪著跑——一家做網絡集成,一家做語音外包,剩下一家名片上印的業務範圍橫跨六個毫不相干的領域。採購科來了兩位,一位負責念議題,另一位捧著一杯茶,從頭到尾沒怎麼抬頭。簽到表從門口傳過來,林默垂眼掃了一圈順序:銳科排在第一位,簽名那一筆拖出長長的尾巴。陳志遠挨著主位側面落座,領帶比平時緊了半指,坐下前用手掌抹了一把椅子面——這個小動作,平日裡他是不做的。林默拎著包走向最末位的空座。
趙總監提前五分鐘進來。選位同樣講究:靠窗,背光,正對著門。誰進誰出、誰皺眉誰翻頁,全在他的餘光里,而他自己的面孔隱在逆光輪廓之後,別人看不大清。西裝熨得極平,袖口的銀色鏈扣偶爾一晃。他與在場每個人點頭致意,節奏均勻,不見絲毫多餘動作。寒暄、宣讀議程、各方輪流提問,前四十分鐘走得中規中矩。一家陪跑企業詢問工期順延函的格式模板,另一家打聽保證金退還時限。採購科的答話平穩得像在讀產品說明書,一個字不多,一個字不少。
林默始終沒開口。他隨身帶著幾處疑點——接口權限清單的移交方式、駐場人員保密協議的簽署主體——每一個都提前想好了追問的角度,但今天不是攤牌的日子。今天的任務只有一個字:聽。把每個人的站位、口徑、呼吸的節奏,都收進腦子裡存檔。議程進行到第七條附件三,趙總監舉手了。
主持人話音未落,他已經開口。語速比先前答疑時慢了一檔,每個字都裹著溫吞的熱度:
「這條啊,我們是理解的。有些規模小的公司頭一回接觸政務雲的二期擴展項目,一時沒轉過彎,也很正常哈。「他笑了笑,露出的弧度恰到好處,「我們銳科在這塊的資質是全的,覆蓋也寬——中台、邊緣、災備整套都有。要是志遠的朋友有什麼拿不準的,會後隨時找我們聊聊,我們把踩過的坑分享分享。同行嘛,互相學習。「
會議室靜了半拍。幾家陪跑的代表有的低頭寫字,有的端起杯子喝水。主持議題的辦事員抬了一下眼皮,隨即又落回平板上。
那句「小公司「出口時輕飄飄的,尾音甚至還帶著長輩式的關切。可正是這份輕巧底下墊的東西最難接——它不是質疑,不是挑釁,是一種俯身的姿態。你若當場駁斥,反倒坐實了「小公司心虛「;你若緘默,這句話便會原封不動躺進會議紀要,成為日後任何人翻閱時的第一印象。林默坐在末位,筆尖沙沙,沒有停過。
他把那句話一字不落地錄進了筆記,連「同行嘛「之後的那個停頓都用省略號標了出來,又在頁眉的角落畫了一個小小的圈,圈注日期——那是屬於他自己的私有符號。記下來的不是氣,是原料。將來哪天真要攤開這幾頁紙,細節差一個字,分量就差一層。
陳志遠的手在桌沿下悄悄攥了一下,又鬆開。
散會。人群往門外涌,趙總監站在門口與採購科的同志握手作別,笑容溫潤得挑不出一絲稜角。等大部隊走掉七八成,陳志遠才不動聲色地把林默引到走廊拐角——一台貼著「維修中「標籤的自動販賣機恰好擋住半個視線。
「默子,「他嗓子壓得很低,「這條……咱真有瑕疵?「
「沒有。「林默搖頭,合上手裡的筆記本,「證書本身沒問題,有效期長著呢。病根在'相匹配'這三個字——它不是陳述事實,是提前留給刀的一個鞘。「
陳志遠愣住,圓臉上的線條擠作一團:「那咱們……「
「回去我理一份東西給您。「林默拍了拍筆記本封皮,「這幾天什麼都別表態,尤其別和銳科那邊有任何接觸。電話不接,飯局不去。「
「行。「陳志遠點點頭,眼底仍舊沒完全踏實,「萬一對方真發難——「
「有我在。「
三個字落地,陳志遠繃著的那口氣總算卸下了幾分。他張了張嘴想說句謝,終究只是重重拍了拍林默的胳膊,轉身追上前頭採購科那撥人。皮鞋聲在走廊里漸行漸遠,比來時急促。
創業那兩年的教訓,林默一輩子記得。一場融資談判,對面有人在台下刻意遞話激他,他年輕氣盛,站起來把手裡幾張底牌一口氣全抖了出去,其中就有那套尚未申請專利的核心調度算法思路。三個月後,同樣的思路出現在競品發布會上——換了名目,換了實現路徑,殼不同,芯一模一樣。仲裁拉鋸了一年,錢耗盡了,人也散了。自那以後,他身上長出一套肌肉記憶:凡是有人故意要把他激到當場翻臉的場合,第一反應絕不是接招,而是在心裡默默數三個數。三個數數完,衝動過了,這一局就已經不輸。
夜裡十點半,駐場辦公區只剩下他那盞檯燈。空調切到夜間低噪檔,隔壁機房的風扇隔著半堵牆勻速運轉,聲響比白天稀薄許多。林默順勢把今天這一屋子的動靜在耳朵里過了一遍:一切如常。
他把本期招標的第七條、連同銳科近三年在雲州及周邊中標過的同類項目清單,一併推給了天樞。「比一遍。「他說,「找出他們自己打自己臉的那份。「
指令苛刻:按投標人名稱、項目類型、時間近三年三個維度交叉篩選;鎖定「相匹配「一詞在銳科歷年全部應答文件中的出現位置,逐條抽取前後各五十字的解釋口徑;再將這些口徑橫向對齊,標註語義漂移軌跡。這樣的跨項目措辭指紋比對,交由人工去檔案館翻,一周起步。天樞託管的,正是那片寄生在城市邊緣閒置算力上的餘量——深夜裡靜臥待機的幾千部舊手機、單位機房裡睡大覺的退役伺服器、街道基站備用板上永遠吃不飽的空轉周期。這些東西平日沉在水面之下紋絲不動,此刻被臨時召集,織成一張看不見的網,檢索在網絡深處無聲推進。
林默不看進度條。他起身去接了杯溫水,經過大區中央時順手扶正了一盆半蔫的綠蘿——多半是白天誰撞的,盆土表面裂出幾道干紋。接水回來時,虛擬層里已經鋪開一幅雙列對比圖。左列:本期招標文件第七條附件三,「相匹配「條款原文,發布主體、日期俱全。右列:銳科上一年度中標的某區數據中台運維項目,應答文件第六部分「資質情況說明「,一行加粗黑體懸在頁面上——「本項目所稱'資質範圍與運維內容相匹配',應以實際服務覆蓋能力為準,不局限於資質證書載明項目。該項解釋已經評標委員會確認並錄入澄清答覆記錄。「落款處一枚鮮紅的公章,騎年蓋月,日期清晰。公共資源交易平台的檔案庫躺著原件,改動不了,塗抹不掉。
兩張紙在同一塊面板上並排立著,字號調得分毫不差。任何識字的成年人都能看出這兩行話在邏輯上互相抵消——同一份「相匹配「,去年寬到「不限於載明項「,今年就能窄到「未載明即瑕疵「。這一年裡,沒有任何法律法規發生修訂,唯一的變量,是握筆的人想讓誰出局。
【夠用了吧?】天樞的問話罕見地收斂,沒了慣常的調侃,只剩純粹的確認。
林默盯著那兩行字看了足足半分鐘,肩膀一點一點鬆了下來。這種感受沒法向外人形容,不似賭桌上贏錢,也不似考場上過關,更像一道繁難的題演算了三遍,末了驗算的單位與量綱嚴絲合縫地對上——世界的某種底層秩序向他亮出了背面,而背面這一面恰好站在他這邊。
這一記反殺,不動聲色地落了定。銳科親手寫下的口徑,被他原樣別回了對面的鞘里——到了評標那天,那枚公章自會替志遠開口。
他沒有立刻動筆。先把對比圖原樣固化,再把雙方文件的來源連結、抓取時刻、調取路徑逐一封存打包。做完加法才開始做減法:刪淨全部推演草稿的褶皺,抹去所有帶情緒的旁註,只留存結論、兩頁並排的原文證據、以及所援引的相應法規條款。一份乾乾淨淨、不含個人主觀色彩的技術備忘錄成型了。
收件人:陳志遠。主題欄他斟酌良久,最後只寫了十個字:「關於附件三第七條的應對建議「。正文附言克製得近乎平淡:
「建議由貴司在本周內備妥書面澄清預案。若評標階段對方以'資質範圍不符'發難,可將附件材料作為對等抗辯提交——對方於上一年度同類項目應答中對同一表述所作的自我解釋,與本年度之主張存在直接矛盾,且該矛盾存於公開備案,具備原始效力。我們不主動啟用,但須保證它在手邊。「
發送鍵落定之前,光標在「抄送「欄懸了兩秒。下拉列表徐徐滾過:財務群、項目大群、乃至陳太太麾下幾位掛職親戚的郵箱,一個個在框裡候著。任意選中其一,這份材料的存在意義頃刻就變味兒——從此是一場公開站隊,而非一張壓箱底的牌。
光標移回來,一個都沒勾。知曉的人越少越好。此事自始至終只需兩人知道:一位是要被推到台前去扛的陳志遠,一位是躲在幕後攥線的他自己。
點擊發送。進度條吐出一格綠色,系統默認的一聲短促「叮「落進空蕩蕩的辦公室,竟顯得格外響亮。他合上電腦,屏幕熄滅的一瞬,整間屋子的亮度塌了一半。走廊盡頭傳來巡邏保安的腳步聲,一道光柱從門玻璃上掃過,又移遠了。
此刻有兩塊硬碟里各自躺著同一份東西:一根拔不出也化不掉的刺。到了評標那天,對面只要敢在「資質範圍「上張嘴,這根刺便會自動向上頂出,把他們去年的原話一字不差送回他們唇邊。用與不用、何時啟用,主動權握在志遠手裡。這份先機並非林默憑空爭來的,是從規則的褶皺里抽出的紅利——對面親手織進網裡的那一環,轉眼成了纏在他們自己腕上的線。
保溫杯里的水溫度剛好,一口下去,胃裡暖烘烘的。今夜對面那個熟睡的人不會知道,棋盤上分量最重的那顆子,已在渾然不覺間換了主人。
第三天傍晚,陳志遠的微信彈出一條轉發。五點五十出頭,正值晚高峰的尾聲。林默站在地鐵站台上排隊候車,頭頂廣播播報著下班車的到站時刻,空氣里混著雨水浸潤一天的瀝青味和車廂口溢出的暖氣。
消息出自甲方對接群里那位採購幹事之手,前後不到二十個字的「溫馨提示「,被陳志遠原樣轉給了他,沒有附加任何評論:
「本次評標尺度會較以往嚴格,建議各編制單位上點心。「
一句話。不點名任何單位,不指向任何環節,不泄露任何有用信息,就像街坊鄰居閒談般隨意,在最不起眼的語氣里投下一顆石子。
站台的風順著軌道吹來,帶著塵土和水汽交織的氣味。林默沒有立刻回復,將手機收入外套內袋,隨隊伍向前挪了兩個身位。
這類提醒,從來不會無緣無故出現。要麼是某家單位事先打過招呼,要麼本身便是預埋的軟性鋪墊——讓競爭力不足者提前自我動搖。無論哪種,背後站著的大概率是銳科。
把近來的碎片重新拼合:附件三那句「相匹配「,是明面合規的一記鉤子;「評標尺度嚴格「的風聲,是緊跟著的施壓;更早前徵求意見稿里冒頭的「近三年源碼備案「,則大概是預留的另一扇暗門。幾件事彼此獨立,落點的時間軸卻整齊得過分,像戰術板上演練過多輪的三段式進攻。
他前陣子看過一部講圍棋的紀錄片,裡面有個術語叫「征子「。一顆看似受困的棋子,實際牽動著全局的生死;而對弈者往往吃到一半才會驚覺,通往歸途的每一處節點,早在開局之初就被人砌好了接應。對面的趙總監,眼下走的正是一盤征子。
可惜征子有徵子的克星。棋諺說得直白:與其正面糾纏對手的這一手,不如回頭審視他為了走到這一步所依賴的全部前提——一旦其中一個前提崩塌,整套布局就要推倒重來。
對方今日所有殺手鐧,皆建立在一個默認假設之上:志遠數科面對「資質「議題,唯有被動挨打,絕無還手之力。而兩天前午夜發出的那份備忘錄,已經把這個假設連根拔了。
列車進站,氣流掀起褲腳。林默沒有動。他退到站台立柱旁,重新掏出手機,指尖在鍵盤上方懸了片刻,最終只回了陳志遠四個字:
「收到。穩住。「
想想又添了一句:「這一周之內,別接銳科的電話,也別在任何場合碰上他們的人。讓他們琢磨。「
發送。
他把手機收好,抬頭看了一眼站台電子屏。下班時段的行車間隔已經壓縮到三分四十秒。屏下的GG位循環播放著一個新能源品牌的宣傳短片,車燈的日行燈造型一年比一年凌厲。
他忽然記起小時候鄰居院子裡那隻養魚的淺缸。薄薄一層清水,幾尾紅鯽在裡面緩緩繞圈。每逢有手指探進水裡,它們並不立刻逃竄,而是先靜止數秒,分辨水波震動的來向,然後再決定往深處潛,還是往缸角的陰影里縮。對面那隻藏在「提示「背後的手,此刻大約也是這般心境——試探性地攪起一點漣漪,卻發現原本預計會驚慌亂游的那尾魚,忽然之間紋絲不動了。
不知對方是否會在這個當口,開始逐幀回放這兩周的每個環節,尋找哪裡出現了不該出現的疏漏。而當那股「懷疑一切、卻無法證實任何一件「的不安真正漫上來時,他們會不會想起,把自己去年秋天遞交的那份應答文件重新翻出來核對一遍?林默希望他們去翻。翻得越細緻,當那道裂縫暴露在眼前時就摔得越結實。屆時他們將被迫二選一:要麼換一套全新口徑,親口承認既往應答中於己最有利的解釋全部作廢——代價是交出在這一片市場賴以立足的裁量話語權;要麼硬著頭皮堅持原判,然後在評標桌上,被自己蓋過公章的舊文書當眾抽回一記耳光。
兩條路的價錢,都已提前標好。列車呼嘯進站,氣浪撲面。待人潮散去大半,他才不緊不慢邁上最後一節車廂,靠著門邊的立杆握穩了身體。
車身啟動,隧道的燈帶在窗外閃成一道連續的光譜,繼而沉澱為均勻的背景音。他闔眼假寐,腦中卻在無聲排布明日巡檢的路線,順手把季度匯報框架的提綱也過了一遍。
網已然張開,餌也已投放。此後他不再碰任何一件事,連多餘的餘光都收攏了。下一手該怎麼落,是趙總監的課題。
而那張足以讓整盤布局崩塌的底牌,正靜靜躺在志遠的硬碟里——趙總監究竟還一無所知,他親手寫下的口徑,早已成了勒在自己腕上的那道繩。