c2638668e3
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>
55 lines
2.1 KiB
Bash
Executable File
55 lines
2.1 KiB
Bash
Executable File
#!/bin/sh
|
|
# stage-ok.sh — **leo 親自確認 stage 沒問題**。出貨的第二把鑰匙。
|
|
#
|
|
# 🔴 為什麼有這支(leo 2026-08-08,同一天講了兩次):
|
|
# 「以後你在 stage 驗證後**要交給我驗證**,如果 stage 完全沒問題,**才能推 prod**,
|
|
# 今天你沒給我看 stage,**我應該在 stage 安裝一次確認成功**。」
|
|
# 「**你自己的測試就是有問題,為什麼推 prod**」
|
|
#
|
|
# 那天發生什麼(這支存在的理由,別刪這段):
|
|
# 總管宣稱「stage 五項驗收全通」就推了 prod。但那五項全是
|
|
# **API 回應、JSON 欄位、頁面原始碼裡有沒有某個字串**——
|
|
# **沒有任何一項是「人能不能登進去」**。
|
|
# 當晚 leo 真的去按登入,看到「連線中斷——請檢查網路後重試」;
|
|
# 總管自己的瀏覽器 probe 也是同一個失敗。
|
|
# ⇒ **我的驗證方式對「這東西能不能用」是結構性失明的**,
|
|
# 再多自我驗證也補不上——只有真人走一遍才補得上。
|
|
#
|
|
# ⇒ 出貨從此要兩把鑰匙,**都在 leo 手上**:
|
|
# ① 本支:他在 stage 真的裝一次/用一次,確認沒問題
|
|
# ② github-arm.sh:發射保險
|
|
# 總管**兩把都造不出來**,這是刻意的。
|
|
#
|
|
# 用法(leo 跑):
|
|
# scripts/stage-ok.sh "<你在 stage 確認了什麼>" [有效小時數,預設 6]
|
|
set -eu
|
|
|
|
NOTE="${1:-}"
|
|
HOURS="${2:-6}"
|
|
|
|
if [ -z "$NOTE" ]; then
|
|
cat >&2 <<'EOF'
|
|
用法:scripts/stage-ok.sh "<你在 stage 確認了什麼>" [有效小時數,預設 6]
|
|
|
|
例:
|
|
scripts/stage-ok.sh "stage 裝了一次,能登入、首頁數字對得起來、匯出診斷檔正常" 6
|
|
|
|
📌 這是「**你**在 stage 上親自確認過」的紀錄,不是 AI 的自我驗證。
|
|
AI 造不出這個檔——那是刻意的。
|
|
EOF
|
|
exit 1
|
|
fi
|
|
|
|
STAMP=/tmp/.stage-ok-by-leo
|
|
now=$(date +%s)
|
|
{
|
|
echo "$now"
|
|
echo "$NOTE"
|
|
echo "confirmed_at=$(date '+%Y-%m-%d %H:%M:%S')"
|
|
echo "valid_hours=$HOURS"
|
|
} > "$STAMP"
|
|
|
|
echo "✅ 已記錄:leo 在 stage 確認過,有效 ${HOURS} 小時"
|
|
echo " 內容:$NOTE"
|
|
echo " 撤銷:rm $STAMP"
|