論述基礎與限制

本卡從一次三輪審查的實際過程抽出,事件在 2026-08-25。一篇教學文的骨架在同一天內改了三次,第三次是在推翻第二次,而第二次的結構是審查過程中由 reviewer 提出、被作者採納的。

限制:本卡談的是「替補結構由外部提出、且明確對應一份已記錄的問題清單」這個情形。替補說法從作者自己推翻的過程裡浮現時,機制與處置在 #248 推翻一個假說之後,替補者是在驗屍的空檔裡上位的,那張卡先讀。


核心原則

一個替補結構若是為了修掉 N 個已記錄的問題而生,那份清單就是它的豁免證明。修掉的問題越多,說服力越強,被檢驗的機率越低。

這跟「從推翻過程裡浮現」那種豁免不同,而且更難擋,因為它的說服力有實據:清單上的每一項都真的被解決了,逐項可核對。作者要質疑它,等於要質疑一個剛剛證明過自己有效的東西。

替補結構失敗的後果比它取代的做法嚴重一階。 逐處補路徑失敗時,讀者看到的是一個沒有路徑的位置,他知道自己拿不到東西;一張地址表失敗時,讀者看到的是一張叫他去查的表,他照著查、查不到,而中間他一直相信自己走在正確的路徑上。假的完整比公開的殘缺貴,所以替補結構的驗證門檻要高於它取代的那個做法,而不是因為它「一次解掉很多項」而低於它。

一次實測給出這個差距的形狀:某張取代逐處補路徑的地址表,宣稱涵蓋十五個受管詞而表上實有八列,且其中一列的地址指向框架的源檔,而實際要編輯的是專案裡的副本——照字面查表的讀者會去改框架資產。

外部來源讓豁免更完整。自己想出來的替補帶著「已經被想過」的錯覺;由 reviewer 提出的替補多帶一層「別人想過」——而審查意見的預設地位是「值得採納」,於是採納這個動作本身就吸收掉了本該用在驗證上的注意力。


為什麼重問殺死前任的問題驗不到它

#248 給的修法是「用殺死前任的那句話當場測一次」,成本只有一個問句。這個修法在本卡的情形下會通過而漏抓,原因是結構性的:

殺死前任的問題,正是替補結構被設計來回答的那個問題。 前任死於六項具體缺陷,替補結構被提出的理由就是它一次解掉那六項。重問一次,它逐項答得出來,而且答得比前任好——這個檢驗的結果是「通過」,而通過是正確的。

問題在於那六項全部是前任的缺陷,不是替補結構自己的。替補結構帶進來的是一組全新的性質,而那些性質沒有被任何一項清單條目觸及。實際發生的形態是:新結構的維度彼此不正交、它宣稱的判斷標準無法執行、它要求的輸入取得不到、而且它對反例免疫(反例出現時被重新分類成別的東西)。這四項跟前任的六項缺陷之間沒有交集。

推論是:當替補結構與前任處於同一個抽象層時,同層的問題驗不到它。要驗到它,檢驗必須來自它自己沒有預期的方向。


有效的偵測方式是換 frame,不是加輪

實際攔下它的是三個彼此獨立的檢查角度,而三個都不是「重問上一輪的問題」:

  • 拿具體個案把新結構實際走一遍。抽象層讀不出來的東西,走一次就停住了——判斷標準的仲裁規則要求比較三個不同量綱的數字,而那件事讀「這段話對不對」看不出來。
  • 對抗姿態的反證,預設新結構是錯的、要求它證明自己,並逐條枚舉候選反例(包含沒找到反例的也列出來)。
  • 把整批內容的前提句抽出來並排,找同一個判斷被多處當前提而無人承接的情形。

三個角度從不同路徑收斂到同一處,而收斂本身是證據強度——任何單一角度的結論都可能是那個角度的產物,三個互相看不見的角度指向同一點才排除得掉這個可能。

反過來,同源的逐篇審查再加多少輪都會放行,因為新結構的每一段話都是對的。缺陷在段與段之間、在維度與維度之間,不在任何一個句子裡。


沒這樣做的麻煩

替補結構會被當成已驗證的地基,下游依它擴散。實際的代價是:整篇的骨架依它重寫、對外的路由描述依它改寫、共用元件的鏡像依它同步,而推翻之後這些全部要再改一次。傳播的範圍越大,第三次改寫的成本越高,而第三次改寫本身又會產生新的傳播。

另一種代價比較安靜:替補結構若沒被推翻而直接發布,讀者拿到的是一套走不動的判斷標準——它讀起來像判斷標準(有維度、有名字、有仲裁規則),實際要用時每一步都停住。這比沒有判斷標準更糟,因為它讓「這裡已經有答案了」這件事看起來成立。


修法

採納外部提出的替代結構時,把它當成自己剛想出來的東西驗。 具體是三個問句,都針對新結構自己而非它修掉的清單:

  1. 新結構的維度兩兩正交嗎(其中一個維度的成本,是不是另一個維度的變數的函數)
  2. 它宣稱的判斷標準能不能實際執行一次(拿一個具體個案走完,走得到行動嗎)
  3. 它要求的輸入取得到嗎(誰去取、用什麼取、文中有沒有把這件事寫成一個選擇)

清單上的每一項都被解決,只證明前任的缺陷消失了,不證明新結構成立。 這兩件事要分開寫下來:修掉了什麼、以及支持新結構自己成立的證據是什麼。第二欄空白時,新結構還是待驗項。

在替補結構有自己的驗證之前,不擴散到下游。 骨架、路由描述、鏡像同步都先停住。傳播的成本與推翻的機率相乘,才是採納這個動作的真實代價。


跟其他原則的關係

  • #248 推翻一個假說之後,替補者是在驗屍的空檔裡上位的:本卡限定它的修法邊界。#248 的「用殺死前任的那句話當場測一次」預設替補者答不出那個問題;替補結構是為了回答那個問題而生時,它答得出來而且答對,於是那個檢驗會通過並漏抓。兩張卡的機制也不同——#248 是懷疑預算耗盡加證據繼承,本卡是修掉的清單本身構成豁免。
  • #247 多次局部正確的修法會合成缺陷:兩者都描述「連續動作在交界處產生缺陷」,而本卡是它在結構層的形態。#247 的兩次動作各自正確、缺陷在合成上;本卡的替補結構整體正確地修掉了清單,缺陷在它自己帶進來的新維度上。共同處置都是在序列的收尾加一個以整體為對象的步驟。
  • #114 multi-pass review 的 frame 顆粒度盲點:本卡是它的一個具體後果。同 frame 多輪 catch 高度重複這件事,在替補結構的情形下惡化——不只是重複,而是同層的所有 frame 都會通過,因為新結構在那一層是對的。
  • #202 多輪審查至少三輪是硬底線:本卡給它一個新的理由。原本的理由是 Round 3 的 frame 覆蓋前兩輪的結構性盲區;本卡補的是——審查過程本身會產生要被審查的東西,而 Round 2 採納的結構要到 Round 3 才有機會被獨立檢驗。
  • #147 規範化跟自審是兩種認知任務:本卡的事件是它的實例。相關的規則(推翻承重論點後要用同一個問題再驗替補)在事發前已經存在且被記錄過,仍然沒有生效——因為那條規則的觸發條件寫的是「推翻之後」,而採納 reviewer 的建議在當下不被感知為「推翻」,是被感知為「修正」。
  • #281 理解檢查用低階 model 取樣讀者的實際理解:兩者在同一個流程的不同位置。#281 驗的是表達會不會被誤解,本卡驗的是結構本身成不成立;順序是本卡在前——結構還沒站住的時候,取樣讀者對它的理解沒有意義。

判讀徵兆

  • 一個替代結構被提出的理由是「它一次解掉前面那 N 個問題」,而 N 大於三。
  • 替代結構來自 reviewer 或其他外部意見,而採納的決定在同一輪內做完。
  • 說得出替代結構修掉了什麼,說不出支持它自己成立的證據是什麼。
  • 替代結構已經開始擴散(骨架重寫、路由改寫、鏡像同步),而它還沒被任何一個新角度檢驗過。
  • 用上一輪的問題重問替代結構,它答得又快又好。
  • 一段工作裡出現「這個結構一次解決了……」這種句式,而清單上的項目全是前一個結構的缺陷。