Commit Graph

2 Commits

Author SHA1 Message Date
claude-code 53328bfbe9 修三支閘的戳記釋放在 Linux 永遠失效:stat -c %Y 要排在 stat -f %m 前面
三支閘的 stamp_ok/退回機制都用 `stat -f %m … || stat -c %Y …` 取 mtime。
GNU (Linux) 的 `stat -f` 是 --file-system,%m 被當成檔名 ⇒ 把整張檔案系統表印到
stdout(被 $() 收進去)且 exit 1 ⇒ MT 變非數字 ⇒ case *[!0-9]* 命中 ⇒ 釋放章永遠失效。
dev 在 macOS(BSD `-f %m` 正常)所以本機測不出來,一到雲端 Linux 就咬。

實際後果(2026-08-23 雲端 cloud-worker 實撞):
- prod-write-guard:總管 touch /tmp/.prod-write-ok 也放行不了 ⇒ routine 的心跳打不出去
- main-and-prod-push-guard:arm 章在 Linux 形同虛設
- stage-before-prod-guard:stage 已驗的退回機制失效

改法:GNU 先、BSD 後(stat -c %Y … || stat -f %m …),兩平台都正確。

驗證(Linux):抽出 patched stamp_ok 實跑——
  新戳記→rc=0(釋放、單次消耗)/無戳記→rc=1(擋)/逾時>900s→rc=1(過期)。
反證:舊順序帶新戳記→rc=2(確認舊版在 Linux 是壞的)。
2026-08-23 20:55:59 +00:00
Leo c2638668e3 ISEP 0.1.0:環境設定收成一個 plugin,本機與雲端共用一份
leo 2026-08-20:「同一個 plugin 你用,薄殼也用,保證兩邊同步」
              「我要你幫雲端做薄殼,永遠都有問題,你要做的就是這組設定
                你自己可以 dogfooding」

搬進來:41 支 hook(51 條註冊)/7 支 command/2 支 skill/23 支腳本。
不搬 .env、wiki、docs——那些是知識不是環境。

51 條 hook 路徑全部從 $CLAUDE_PROJECT_DIR/.claude/hooks/ 改成 ${CLAUDE_PLUGIN_ROOT}/hooks/,
零漏網。那正是薄殼一直壞掉的根:雲端 cwd 不是真身,寫死路徑就斷。

尚未驗證:Claude Code 能不能從私有 Gitea repo 裝 marketplace(要憑證)。
下一步就是在本機實際裝一次,通了才動雲端 bootstrap.sh。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-20 11:41:46 +08:00