## 现状 host-agent 起来后所有实例 `status=stopped`,不主动拉起。`desired=running` 只表示允许唤醒。闲置如此合理;换镜像 Recreate 会让当时在跑的户看起来像服务被停掉。`init()` 还把 `lastActivity` 写成现在,页面出现同一秒「活跃」。 ## 目标 持久化最后一次租户流量时间。升级后按闲置策略推导谁该还开着,限流拉回。不新增影子进程态。 ## 方案要点 - `meta.json` 增加 `lastTrafficAt`,`touch()` 节流落盘 - `init()` 读盘,缺失则不返回 last_activity,禁止用现在填 - `shouldResume = desired==running && lastTrafficAt 存在 && (idle==0 || 仍在窗口内)` - 网关先听,再并发 2 拉起 - shutdown 只杀进程,不改 desired / lastTrafficAt ## 验收标准 - 无 lastTrafficAt 或用户停止:重启后不拉起 - 有近期流量(或 idle=0):重启后自动拉回 - 流量已过闲置窗口:保持休眠 - 重启后 last_activity 不是宿主苏醒时间 ## 不做什么 不落盘 status,不加 lastProcess/resume/keep_alive,不改 Recreate。
Activity
earayu commentedon Sep 5, 2026
生产
demo已kubectl set image到apecloud/apemind-computer:v0.2.14(#74)。宿主 Recreate 后 1/1 Ready。现网
meta.json还没有lastTrafficAt,这次重启按设计不会自动拉回实例。有人再打开一次之后,下一次换镜像才会按闲置策略拉回。