use crate::project_context::{
WorkspaceBindingStatus, WorkspaceSource, WORKSPACE_BINDING_STATUS_METADATA_KEY,
WORKSPACE_SOURCE_METADATA_KEY,
};
use bamboo_agent_core::Session;
pub(super) fn apply_workspace_path_to_session(
session: &mut Session,
workspace_path: &str,
binding_status: WorkspaceBindingStatus,
) {
let workspace_path = workspace_path.trim();
if workspace_path.is_empty() {
return;
}
session.set_workspace_path_meta(workspace_path);
session.metadata.insert(
WORKSPACE_SOURCE_METADATA_KEY.to_string(),
WorkspaceSource::Explicit.as_str().to_string(),
);
session.metadata.insert(
WORKSPACE_BINDING_STATUS_METADATA_KEY.to_string(),
binding_status.as_str().to_string(),
);
crate::runtime::runner::refresh_prompt_snapshot(session);
}