develop
master
新加的長度閘門用 warn 報「距離上限不到 100」,而 schedule.sh 只定義 note。殼回一句 warn: not found 到 stderr,那句提醒一次都沒印出來——而 entry_len= 照樣印得漂亮。
warn
schedule.sh
note
warn: not found
entry_len=
一道說不出話的檢核,跟沒有那道檢核是同一件事。
修掉之後它第一次開口就說出一件要處理的事:這台機器的條目有 973 個位元組,距上限只剩 27。 長度大半來自 wiki 存取庫那 15 支變數的快照,一支約 40 個位元組。再多一支頁型變數就裝不起來,而那一次的錯誤訊息只會說 command too long。
command too long
重啟之後實測:提醒 hook 真的在工作階段開頭跑了,但吐的是八行一模一樣的東西——八筆全是委派清單種入的內建項,動作是只提醒、還沒有執行入口,所以每一輪都到期。
那不是提醒,是噪音。分法改成照該有的處置切:
overdue
remind
builtin
種類在寫佇列這一邊判(spec_key 只有這裡讀得到),讀的那一端維持「只印不判」。實測 8 行降到 2 行。
spec_key
0.3.5 → 0.3.7。讀的那一端是 plugins/hooks 0.5.0,兩邊一起部署。
plugins/hooks
條目太長本身沒有修。 那要改環境快照的落地方式,而「條目裡不 source 任何設定檔」是刻意的決定——很多機器的 .bashrc 開頭就是非互動即 return,在 cron 底下會安靜失效。換做法要連那一段一起重新想。
.bashrc
新加的長度閘門用了 warn 來報「距離上限不到 100」,而這一支只定義 note。 殼回一句「warn: not found」到 stderr,那句提醒一次都沒印出來。 一道說不出話的檢核,跟沒有那道檢核是同一件事——而且它連自己壞了都只在 stderr 留一行,正常輸出上看不出任何異常。 修掉之後它第一次開口就說出一件要處理的事:這台機器的條目有 973 個位元組, 距上限只剩 27。長度大半來自 wiki 存取庫那一系列變數的快照,一支約 40 個 位元組——再多一支頁型變數就裝不起來,而那一次只會回 command too long。 所以訊息裡把這個來源講出來,人才知道要縮哪裡。 這一支之前就踩過同一個坑(另一段檢核也寫了 warn),所以註解裡寫明它只有 note,沒有 warn。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Reviewed-on: #45
實測踩到:這台機器的佇列八筆全是委派清單種入的內建項,動作是只提醒、 還沒有執行入口,所以每一輪都到期。於是每一個工作階段開頭固定吐八行 一模一樣的東西。 那不是提醒,是噪音——而讀佇列那一支自己的註解裡就寫著「對著一個刻意的 決定每個工作階段催一次,那是噪音不是提醒」。這一批就犯了那一條,只是 換成另一種來源。 分法照該有的處置切:使用者自己登錄的那一筆,人看到就做得了;內建項那 幾筆等的是接線,不是人。所以佇列的第一欄多一種值 builtin,讀的那一端 把前兩種逐筆點名、第三種收成一行總數。 種類在這一邊判,不在讀的那一邊:spec_key 只有這裡讀得到,而讀的那一端 的規則是只印不判。收尾多印一個 reminders_builtin=。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Reviewed-on: #47
No dependencies set.
The note is not visible to the blocked user.
這一批釋出兩件事,都是上一版做出來的問題
一、條目長度那道警告本來說不出話
新加的長度閘門用
warn報「距離上限不到 100」,而schedule.sh只定義note。殼回一句warn: not found到 stderr,那句提醒一次都沒印出來——而entry_len=照樣印得漂亮。一道說不出話的檢核,跟沒有那道檢核是同一件事。
修掉之後它第一次開口就說出一件要處理的事:這台機器的條目有 973 個位元組,距上限只剩 27。 長度大半來自 wiki 存取庫那 15 支變數的快照,一支約 40 個位元組。再多一支頁型變數就裝不起來,而那一次的錯誤訊息只會說
command too long。二、提醒佇列把內建項標成另一種列
重啟之後實測:提醒 hook 真的在工作階段開頭跑了,但吐的是八行一模一樣的東西——八筆全是委派清單種入的內建項,動作是只提醒、還沒有執行入口,所以每一輪都到期。
那不是提醒,是噪音。分法改成照該有的處置切:
overdueremind(使用者登錄的)builtin(委派清單種入的)種類在寫佇列這一邊判(
spec_key只有這裡讀得到),讀的那一端維持「只印不判」。實測 8 行降到 2 行。版本
0.3.5 → 0.3.7。讀的那一端是
plugins/hooks0.5.0,兩邊一起部署。不在這一批的事
條目太長本身沒有修。 那要改環境快照的落地方式,而「條目裡不 source 任何設定檔」是刻意的決定——很多機器的
.bashrc開頭就是非互動即 return,在 cron 底下會安靜失效。換做法要連那一段一起重新想。釋出:條目長度那道警告本來說不出話to 釋出:長度警告說得出話,提醒佇列分出內建項