diff --git a/core b/core index 82ceaeb..64d3915 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit 82ceaebbe6ee422e559046af4ccf87fc58318f2b +Subproject commit 64d3915593c9600911cf332b9f0d42bc8a4e2d5d diff --git a/doc/ARCHITECTURE.md b/doc/ARCHITECTURE.md index 7374383..aae52fc 100644 --- a/doc/ARCHITECTURE.md +++ b/doc/ARCHITECTURE.md @@ -141,7 +141,7 @@ core := agent.NewAgentCore(agent.AgentCoreConfig{ ## Session Lifecycle -`NewAgentCore` creates `/tmp/ollie/{sessionID}` when a session starts. `Core.Close()` removes it recursively. Callers (e.g. olliesrv's `killSession`) must call `Close()` when tearing down a session. `SetSessionID` renames the tmpdir atomically alongside the persisted session files. +`NewAgentCore` creates `/tmp/ollie/{sessionID}` when a session starts. `Core.Close()` removes it recursively. olliesrv calls `Close()` from `killSession` (individual session removal) and `Shutdown` (server stop — iterates all sessions). `SetSessionID` renames the tmpdir atomically alongside the persisted session files. `!` shell commands run in the session's current working directory (`Core.CWD()`), not the process working directory.