Sandboxes
Branch-based configuration sandboxes for safe experimentation. Create a sandbox, modify config freely, then merge back or discard.
SandboxInfo
| Field | Description |
|---|---|
| name | Branch name |
| is_active | Whether this branch is currently checked out |
| created_at | Branch creation timestamp |
| last_modified | Last commit timestamp on this branch |
Operations
| Method | Description |
|---|---|
| create(name) | Create branch from current HEAD |
| switch(name) | Checkout branch, update HEAD |
| delete(name) | Delete branch (protected branches rejected) |
| current() | Get currently active branch name |
| list() | List all sandboxes with creation/modification times |
Workflow
Rust
// 1. Create sandbox from current config
sandbox_manager.create("experiment_new_alerts")?;
// 2. Switch to it — all config changes isolated
sandbox_manager.switch("experiment_new_alerts")?;
// 3. Make changes, test, iterate...
// (auto-save commits to the sandbox branch)
// 4. Happy? Merge back to main
git_engine.send(GitOperation::Merge {
branch: "experiment_new_alerts".into()
})?;
// 5. Or discard
sandbox_manager.delete("experiment_new_alerts")?; Questions?
Reach out for help with integration, deployment, or custom domain codecs.