uncle6me-web
|
49248b18c5
|
docs(teardown): 記下兩層咬合的已知限制(跨 worker 依賴鏈,2026-08-14 實撞)
今天實跑撞到、也解掉的真事:kbdb-graph-plugin(不屬於這台實例,正確被排除不動)
身上有 service binding 指著 arcrun-kbdb(要刪的)→ CF 拒絕刪除,本工具只回報那次
DELETE 失敗,不會主動點出「有外部依賴卡住」。若選擇半殘留(清資源留殼),下一步
acr init/update 的 resource-rule fail-closed 保護會正確拒絕重裝——這是它該有的行為,
但代表本工具留下的半殘留會讓下一步卡住,不是「拆一半也沒關係」。
本工具目前無法自動偵測跨 worker 依賴鏈,寫進「已知限制」而不是假裝判準完備。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
2026-08-14 14:20:56 +08:00 |
|
uncle6me-web
|
05e879faa7
|
fix(teardown): 拿掉 wrangler kv key delete 的 --force(這版 wrangler 沒這個 flag)
實跑撞到:這台裝的 wrangler 4.100.0 的 `kv key delete` 沒有 --force,帶了就直接
「Unknown argument: force」失敗。central-apply 兩個通道各撞一次才發現。
拿掉 --force 後在真實 youlin 帳號實測:central-apply 兩個通道(prod INSTALLER_KV
+ staging PEER_INSTALLER_KV)的 deployed:<accountId>: 紀錄都刪除成功,central-plan
複驗兩邊皆印「沒有殘留紀錄」。這是 Arcrun#120 死結修復鏈路的必要一步。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
2026-08-14 14:13:39 +08:00 |
|
uncle6me-web
|
7498911856
|
WIP: 內部 uninstaller 工具(拆帳號側 + 中心 KV),尚未跑過 apply(Arcrun#119/#120/#122)
leo 交辦:先做出「拆乾淨→重裝」的內部工具,在 youlin 帳號上自己能用即可,
不是產品(對外版另計)。D82 三步驗收(全新安裝→更新→解除安裝)需要拆的能力才測得到,
沒有它就永遠測不到 #119/#120 這類「只有全新用戶才撞得到」的坑。
目前做到:
- scripts/teardown-instance.mjs:
- plan/apply 兩階段(預設唯讀只印清單,真要刪要 apply --yes)
- 帳號白名單(只認 youlin,明確擋 leo21c)
- 歸屬判準:worker 名字要出現在本 repo wrangler*.toml 或官方 bundle manifest.core[]
才算「已知」,不認得的一律列出不動(例如 kbdb-graph-plugin,不屬於這台實例)
- 共用資源保護:同一顆 KV/D1/Vectorize 若也被「保留中的 worker」綁著,排除不刪
- central-plan/central-apply:清中心 INSTALLER_KV/PEER_INSTALLER_KV 的
deployed:<accountId>: 紀錄(#120 死結的另一半,帳號側清了但這裡沒清會卡死重裝)
- 已用 `plan` 在 youlin 帳號實跑過(唯讀),清單看起來合理,貼在 issue/回報裡
還沒做:
- apply(真的刪)、central-apply、以及刪完後的重裝驗證,全部還沒跑
- 已知限制列在檔頭註解:判準是「repo 認不認得」不是「屬於哪一台實例」,
同帳號多台同名慣例實例分不出來(今天 youlin 上短暫同時有正式實例與
ship-stage-119 的 freshtest 測試實例,此時就是靠人工 --keep 排除)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
2026-08-14 13:25:39 +08:00 |
|