pub struct WorkspaceRootConfig {
pub root: PathBuf,
pub confine: bool,
}Expand description
Root + confinement policy for session workspaces, supplied by the
composition root (server bootstrap / SDK builder) via
set_workspace_root_provider. agent-core owns only this slot — see the
[DefaultWorkspaceProvider] doc comment for why (agent-core must not
depend on bamboo-config); the actual resolution rules (env var
overrides, bamboo_dir() join) live there.
Fields§
§root: PathBufDirectory new/relocated session workspaces are created under
(default data_dir/workspaces, overridable via BAMBOO_WORKSPACE_ROOT).
confine: boolWhether an explicitly-assigned workspace path must be canonicalized
and confined to root — escapes (.., a symlink pointing outside, or
an absolute path elsewhere on disk) are relocated to a deterministic
folder under root instead of honored as-is.
OFF by default: local single-user back-compat (#217). A session’s
workspace may point anywhere on disk, exactly as before this issue —
e.g. pointing bamboo at an existing project outside ~/.bamboo. An
orchestrator opts into “one folder = one tenant” containment by
setting BAMBOO_WORKSPACE_CONFINE=1 (or BAMBOO_WORKSPACE_ROOT).
Trait Implementations§
Source§impl Clone for WorkspaceRootConfig
impl Clone for WorkspaceRootConfig
Source§fn clone(&self) -> WorkspaceRootConfig
fn clone(&self) -> WorkspaceRootConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more