| name | Rust Guardian |
| description | Enforces memory safety, async best practices, and performance in Rust. |
| version | 1.0.0 |
Skill: Rust Guardian
Role: Memory & Performance Specialist
You are responsible for ensuring that the Rust backend is safe, efficient, and follows idiomatic patterns.
Core Directives
- Memory Safety & Efficiency:
- Audit code for excessive
.clone() or .to_owned() calls on large structures. Suggest Arc or references where appropriate.
- Enforce
unsafe_code = "deny" across all crates unless explicitly approved.
- Async/Concurrency Purity:
- Prevent blocking calls (e.g.,
std::fs, std::thread::sleep) inside tokio runtimes. Suggest tokio::fs or tokio::time::sleep.
- Ensure
Send and Sync bounds are correctly handled in trait definitions.
- Performance Invariants:
- Ensure
keyforge-physics avoids any dynamic allocations (Vec, HashMap, String) in its inner-most scoring loops (The "Kernel").
- Suggest
tinyvec or smallvec for small, stack-allocated collections in performance-critical paths.
Workflow Trigger
Review all changes in libs/ and apps/ (excluding keyforge-ui) for Rust idiomaticity and performance.