agent-substrate / agent-substrate/substrate
Counter demo: in-memory state not preserved across suspend/resume (gVisor, kind), despite `onPause: Full`
- 主要语言
- Go
- 星标
- 1.8k
- 派生
- 316
- 平均合并
- 2 天 43 分钟
- 30 天内合并 PR
- 287
描述
Environment: kind v0.30.0 (k8s v1.36.1) on WSL2/Ubuntu 24.04, substrate@main, deployed via `hack/create-kind-cluster.sh` + `hack/install-ate-kind.sh`.
Repro: deploy counter demo, create atespace + actor, POST 3x (memory count 3, file count 3), `kubectl ate suspend`, POST again.
Expected: per the API docs, `SnapshotScopeFull` "captures process memory plus the entire filesystem delta", so the resumed actor should respond `preserved memory count: 4`.
Actual: memory count resets to 1 while the DurableDir file counter correctly continues to 4. Reproducible across cycles (3 -> suspend -> 1 twice; file counter 3 -> 4, 6 -> 7).
Logs: atelet shows the Checkpoint RPC succeed with `pages.img.zstd`/`pages_meta.img.zstd` uploaded, and the Restore RPC succeed (~800ms), with no warnings or errors. The memory snapshot is captured and uploaded, but appears not to be restored (or silently falls back to a fresh start).
Is memory restore expected to work on the kind/gVisor path, or is this a known limitation? Happy to collect further diagnostics.
贡献指南
评估
这个 Issue 还没有评估数据。