# motte
Defensive mount and root workspace helper for terminal environments.
## Purpose
`motte` (from Old English *mot*, a mound or defensive hillock) provides
workspace root detection, mount point resolution, path ancestry walking,
and defensive boundary enforcement for building secure terminal environments.
## Features
- **WorkspaceRoot** — find project roots by marker file search
- **MountPoint** — represent and query filesystem mount boundaries
- **PathAncestry** — walk path components from leaf to root
- **DefensiveBoundary** — safe path resolution with traversal prevention
- **Zero dependencies**
## Install
```bash
cargo add motte
```
## Usage
```rust
use motte::{WorkspaceRoot, MountPoint, DefensiveBoundary};
// Find workspace root by marker files
let root_finder = WorkspaceRoot::rust_defaults();
// Check mount points
let mp = MountPoint::new("/tmp");
assert!(mp.contains("/tmp/project/file.txt"));
// Defensive boundary for safe path resolution
let boundary = DefensiveBoundary::new("/tmp/project");
let safe_path = boundary.resolve_safe("src/main.rs").unwrap();
assert!(safe_path.starts_with("/tmp/project"));
```
## License
MIT OR Apache-2.0