現在沒有要你回的——要老闆拍板的題(標籤 decision)一題都沒有。
最近關掉的票(issue,待辦票),新的在前。一張票要串得起三樣東西:一個把它關掉的PR(合併請求)、那個 PR 併出來的那一顆 commit、以及那一顆 commit 的雲端檢查(verify)在機器分支上留下的一份綠收據(雲端那一跑留下的成績單)。串不起來的用紅字寫問題。
開著的合併請求(PR,等人看等人合)(2 張)
其他開著的票(含等條件才立得起來的卡,標籤 deferred-cards)(20 張)
| 那一步 | 結論 | 跑了多久 |
|---|---|---|
| Set up job | 綠(過了) | 2 秒 |
| Run actions/checkout@v4 | 綠(過了) | 1 秒 |
| Run astral-sh/setup-uv@v5 | 綠(過了) | 3 秒 |
| 裝依賴 | 綠(過了) | 2 秒 |
| 把 status 分支上的機器收據鏡到被忽略的目錄(三張收據卡與後設測試讀這裡;不上網,checkout 已帶 origin/status) | 綠(過了) | 1 秒 |
| 規矩卡必填欄位——自己跑一次乾淨樹 | 綠(過了) | 29 秒 |
| 離開碼誠實——自己跑一次乾淨樹 | 綠(過了) | 11 秒 |
| 斷言不准鎖死數量——自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 進度待辦不准手寫進版控——自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 入口檔的規矩節等於重生結果、指路牌等於登記的那一段、生成段不留佔位、不超過行數上限——自己跑一次乾淨樹 | 綠(過了) | 1 秒 |
| 決策紙一題一檔、取代關係雙向、鏈不成環——自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| docs 的標頭要齊、逐類與總量份數有上限、每一行有字元上限、三類裡面不准再分層——自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 每次開工會載入的檔不准出現模型名、CLI 名、用量字樣——自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 檔案放哪裡走白名單、路徑純 ASCII——自己跑一次乾淨樹 | 綠(過了) | 1 秒 |
| 雲端工作不准無聲死掉——自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 路徑與連結都要解析得到、不准指到 repo 外——自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 測試不准依賴環境現況、不准寫進真 repo——自己跑一次乾淨樹 | 綠(過了) | 1 秒 |
| 提交身分在名單裡——自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 產品程式與測試要同一支合併請求落地——自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 環境交給 uv 管、uv run 是唯一入口——自己跑一次乾淨樹 | 綠(過了) | 1 秒 |
| 門檻數字只准住在卡的登記簿——自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 掃描面不准有洞(宣告的 scope 要等於實際列舉的檔案集合)——自己跑一次乾淨樹 | 綠(過了) | 4 秒 |
| 合併門口的設定從伺服器回讀比對——唯一准上網的檢查(決策紙 merge-gate-check-may-read-github) | 綠(過了) | 1 秒 |
| 關掉的票都要有一個合進主線的關票 PR——第二支准上網的檢查(決策紙 hand-closed-issues-block-merge) | 綠(過了) | 1 秒 |
| 雲端收據欄位齊全、每個數字有證據——讀鏡像(上面那一步鏡的)自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 算數的收據來自雲端那一跑、自報離開碼不算——讀鏡像自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 收據不准由被查的那一跑寫、不准由人寫——讀鏡像自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 文件裡的 commit sha 與雲端 run id 必須解析得到——自己跑一次乾淨樹(sha 對本機物件庫,run id 對鏡像) | 綠(過了) | 0 秒 |
| 每筆放行都要有理由與到期日——自己跑一次乾淨樹 | 綠(過了) | 1 秒 |
| 密碼、金鑰、.env 不准進版控,歷史也要掃——自己跑一次乾淨樹 | 綠(過了) | 3 秒 |
| 寫法警衛——自己跑一次乾淨樹 | 綠(過了) | 1 秒 |
| ruff——寫法警衛的另一半(規則集與它的數字住在 pyproject.toml 的 [tool.ruff]) | 綠(過了) | 0 秒 |
| 新家的 import 只准往下流、不准成環、只有最底一層准碰機器設定——自己跑一次乾淨樹 | 綠(過了) | 0 秒 |
| 型別警衛——型別對不上就紅、公開函式一律要有標註、逃生門一律紅——自己跑一次乾淨樹 | 綠(過了) | 12 秒 |
| 後設測試(每張卡六回合),順手把 junit 收據寫到卡宣告的路徑 | 綠(過了) | 145 秒 |
| 綠必須是真的綠——收據不准有 skip、收集數不准低於地板 | 綠(過了) | 1 秒 |
| 上傳收據片段(前面紅了也要傳——那正是要留證據的時候) | 綠(過了) | 1 秒 |
| Post Run astral-sh/setup-uv@v5 | 綠(過了) | 0 秒 |
| Post Run actions/checkout@v4 | 綠(過了) | 0 秒 |
| Complete job | 綠(過了) | 0 秒 |
每一跑都有收據。
| 票 | 標題 | 關掉的時間 | 做掉它的 PR | 併出來那一顆提交(commit) | 綠收據 |
|---|---|---|---|---|---|
| #192 | 振幅的精度契約:v3 算的反射乘積與每條路徑的壓力,跟上一代(單精度)要對到多近? | 2026-09-12 20:10 | #195 | d7074322233c | 綠 雲端那一跑(run 34692969439) |
| #187 | 第三段:反射長到二階、三階(純幾何)——參考答案、v3 計算、命令列、逐位比對 | 2026-09-12 19:13 | #190 | ed34c049bdeb | 綠 雲端那一跑(run 34690494305) |
| #185 | 第三段做哪一個:先長二階以上的反射(純幾何),還是先長振幅與材料吸收? | 2026-09-12 17:51 | #189 | 97618c55a0c1 | 綠 雲端那一跑(run 34686929423) |
| #182 | 讓 uv 把新家 src/aosr 裝進環境:現在 `uv run python -m aosr.…` 跑不起來,要 PYTHONPATH=src | 2026-09-12 17:09 | #186 | aa5d0421fb54 | 綠 雲端那一跑(run 34685093019) |
| #181 | 第二段:v3 自己算參考房——可改的輸入 → 直達與一次反射 → 命令列印表 → 跟參考答案逐位比 | 2026-09-12 16:35 | #183 | 51892c6e2742 | 綠 雲端那一跑(run 34683668406) |
| #178 | 精度契約:v3 算路徑距離與到達時間,要跟參考答案對到哪一位? | 2026-09-12 15:19 | #180 | 21be373401b9 | 綠 雲端那一跑(run 34680412582) |
| #175 | 第一個參考房間:跑通凍結 v2 並保存可重跑資料 | 2026-09-12 14:56 | #179 | 618324a24385 | 綠 雲端那一跑(run 34679439929) |
| #123 | 鎖住 v2:記號 v3-donor 釘 626f5d97、repo 設成唯讀 | 2026-09-12 13:24 | #177 | 8ad2183927c0 | 綠 雲端那一跑(run 34675492177) |
這 29 張卡總共對到上一代 19 件事故(v2 事故庫一共 66 件)。
deferred:4 張dropped:5 張merged:2 張pass:27 張
暫緩的卡在等什麼:
算這一頁的那棵樹在 main:比 origin/main(GitHub 上的主線)領先 0 筆、落後 0 筆。
最新一筆(提交):d7074322233c docs: 振幅的精度契約——容差跟著相位角長,常數取單精度四格(#192) (#195) (2026-09-12 20:10)
算出時間:2026-09-12 20:15(台北時間)。算這一頁的是:雲端 run 34693144352(第 1 次嘗試):https://github.com/neknufelet/aosr-v3/actions/runs/34693144352。這一頁反映的是:main 的 d7074322233c(docs: 振幅的精度契約——容差跟著相位角長,常數取單精度四格(#192) (#195));接在 verify run 34692969439 之後算的。這頁由機器算出,不要手改;手改會被下一次合併蓋掉。這一頁由機器算出,每次併入主線由雲端重算重推;算不出資料的時候它回離開碼 2(工具自壞),不產一頁沒資料的。固定網址:https://neknufelet.github.io/aosr-v3/