diff --git a/deploy/check-deploy-drift.mjs b/deploy/check-deploy-drift.mjs index b453f56..fb4010e 100644 --- a/deploy/check-deploy-drift.mjs +++ b/deploy/check-deploy-drift.mjs @@ -134,6 +134,29 @@ const RETIRED_HOSTS = { plugin: 'zcode-mail-bridge', units: ['zcode.service', 'zcode-mail-bridge.service', 'zcode.service.d/10-dbus.conf'], reason: '宿主已在本机删除(用户 2026-09-28 确认);插件与单元故意留在仓库里以便恢复' + }, + + // ★ opencode 于 2026-10-03 退场(用户确认「已经卸载了,清除残余」)。 + // + // 退场前实测到的三件事,登记在此以便日后分辨「退场」与「半坏」: + // · 进程无、/etc/systemd/system/opencode* 无、/root/.config/opencode 无 + // · 但 deploy/systemd/opencode-serve.service* 在**仓库里**还在, + // 且 git status 无删除记录 ⇒ 是主动卸载,不是部署事故 + // · 4 个快照(339MB)已按用户指示清除 + // + // 代码与单元**故意留在仓库里**:与 zcode 同处理 —— 退场是「这台机器上 + // 跑什么」的事实,代码保留是「还能不能恢复」的能力,两件事分开记。 + opencode: { + plugin: 'opencode-mail-bridge', + // 两个 drop-in 都必须登记:只登记一个时判据立刻报「缺 zz-restart-backoff.conf」 + // (实测踩过一次)—— 这个豁免是「全都没装」,漏登记等于给退场宿主留一个假红。 + units: [ + 'opencode-serve.service', + 'opencode-serve.service.d/zz-failure-notify.conf', + 'opencode-serve.service.d/zz-restart-backoff.conf', + ], + reason: '宿主已卸载(用户 2026-10-03 确认「已经卸载了,清除残余」);' + + '4 个快照共 339MB 已清除;插件与单元故意留在仓库里以便恢复' } };