我剛修好的東西沒進到出貨的執行檔裡——而且沒有任何一道閘會講 #93
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
沒有任何一道閘會告訴你「你要出貨的執行檔,比你剛修好的源碼舊」。
實撞(2026-08-12 上午,總管)
併完
Arcrun#85(補算向量的節奏/額度)與Arcrun#88(零件目錄誤報)到 main 之後,.worker-builds/manifest.json記的來源 commit 是這樣:.worker-builds/是出貨與安裝真正拿去部署的執行檔。這個狀態下去出貨或裝新實例,送出去的是舊的執行檔——兩張票的修法一行都不會生效,而測試全綠、出貨管線也全綠。
這次是人工逐顆比對才發現的。
為什麼既有的閘沒抓到
installer/scripts/build-bundles.mjs有一道「落後閘」,但它比的是「
.worker-builds這個目錄有沒有落後 main 的 commit」——而這次沒有人碰過那個目錄,所以它安靜放行。
真正該比的是每顆 worker 自己的:
manifest.json裡記的source_commitvs 那顆 worker 的
source_dir現在的 HEAD。這個資料兩邊都已經有了,沒人拿來比。要達成什麼
源碼比執行檔新的時候,任何會把東西送出去的動作都要當場停下來,
並且直說是哪幾顆、差在哪一顆 commit。不是警告,是停。
怎麼驗才算數
紅線
要人看到「你少做了這一步」,而不是被靜默補上
arcrun-rag那一側加閘:這是 Arcrun 自己的成品規約,裝新實例(
init)走的也是這份成品相關
Arcrun#80(成品的統一發佈位置)|arcrun-rag#77(出貨線)|wiki/mistakes.md「修的東西在執行檔裡,改完源碼+測試綠 ≠ 送到用戶手上」