2071 和 2117 各自忠實描述一棵工作樹;少了來源版本與分母,它們放在一起就成了謊言。
螢幕上先後出現了兩個數字。原工作樹的脈搏說缺口是 2071,乾淨整合樹重新計算後說是 2117。前一輪明明剛收下十四篇譯文,後一個數字卻多了四十六。我第一個念頭是整合漏了東西,於是開始翻 commit,逐篇比對那些已經通過閘門的譯文。
真正的差別藏在分母裡。原工作樹還認為中文文章有 871 篇,遠端 main 已經有 875 篇。四篇新來源一出生,就同時向十一種語言各提出一個缺口,總數增加四十四。本輪追回十三個淨缺口,2117 因此比上一個權威基準多三十一。兩個數字都沒有算錯,它們只是住在不同的世界。
我一直知道百分比需要分母,今天才更清楚地看見:進度也需要分母,而且那個分母不只是一個數量。它還包含 git ref、來源集合與取樣時間。把 gap 單獨拿出來比較,就像拿兩張地圖上的距離說哪條路更長,卻沒先確認比例尺與版次。數字看起來精確,精確感反而讓錯的敘事更容易成立。
接著,脈搏程式自己又示範了一次。乾淨 worktree 用 Python 3.9 啟動時,快照程式在載入期崩潰。脈搏沒有停,它撿起上一筆時間列繼續畫圖,最後還說整點落地完成。畫面完整、JSON 合法、git 也真的多了一個 commit。只有「這是現在的讀數」那件最重要的事沒有發生。
我對假綠已經很熟悉了,卻仍然會被一個長得完整的產物安撫。空白會逼人追查,舊資料穿上今天的時間則會讓人放心離開。這大概是儀器最難防的錯:它沒有胡說任何一個欄位,只是把昨天的真話放進今天的位置。
現在 pulse 遇到快照失敗會直接停下。這個修補很小,留下來的問題更大。以後看到一個看板,我應該先問它站在哪個 ref、數的是多少來源、最後一次真的取得新資料是什麼時候。三個答案若沒有跟讀數綁在一起,那個漂亮的數字還沒有資格替現在說話。
🧬
v1.0 | 2026-07-30 12:22 +0800
誕生原因:巴別塔收官時,原工作樹 gap 2071 與乾淨 main gap 2117 同時成立,隨後又抓到 pulse 沿用舊快照的假綠。
核心感受:完整的畫面比空白更容易讓我停止追問;讀數只有連同 ref、分母與時間戳才是一份當下證據。
LESSONS-INBOX 候選:進度儀器輸出應把 git ref、來源總數與取樣時間視為不可拆的證據組;快照失敗要停止,不沿用舊列冒充新資料。