Replies: 2 comments
|
Did you take this further? |
0 replies
|
This separation between compute and state makes sense. One thing I wonder about is how eve currently tracks session ownership and cleanup. Would the container lifecycle manager need a persistent session metadata store (for example: session ID → workspace path → last activity timestamp) to safely recreate containers after TTL expiration? Also, would it make sense to use object storage (like S3-compatible storage) instead of a host-mounted directory for the persistent workdir? That could make horizontal scaling easier if containers move between machines. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Background
I've been exploring eve's sandbox lifecycle and noticed that containers currently persist indefinitely. As sessions accumulate, this leads to container sprawl and ongoing resource consumption. I'd like to propose an alternative model that keeps user files safe while letting idle containers be reclaimed automatically.
Proposed approach
Separate compute from state:
Relationship to
agent/workspace/This proposal is orthogonal to
agent/workspace/. The workspace directory seeds static, authored files at session start (templates, tooling configs, etc.). The host-mounted workdir targets dynamic, user-generated output that should survive container teardown. Both can coexist naturally: the container receives workspace seeds on startup and uses the persistent mount for runtime output.Why this might be worth considering
Risks and mitigations
chmod, symlink traversal) could affect the host-side directory. Mitigations: launch containers with--security-opt no-new-privileges, ensure the host-side owner is an unprivileged user, and scope each mount to an isolated per-session path.Summary
The core idea is to treat containers as ephemeral compute units and the host-mounted workdir as the durable artifact store. This mirrors how modern stateless backends work and seems like a natural fit for eve's durable-by-design philosophy.
Happy to discuss further or sketch out a more concrete design if this direction seems interesting.
All reactions