rust-panic-safety
Installation
SKILL.md
Rust panic safety
Start here: find the boundaries
# Every function that foreign code can call.
rg -n 'extern "(C|system|C-unwind|system-unwind)"|#\[jni_mangle|native_method!' --type rust
# Every symbol that leaves the crate unmangled.
rg -n '#\[unsafe\(no_mangle\)\]|#\[no_mangle\]|#\[export_name|#\[unsafe\(export_name' --type rust
# Every guard that already exists.
rg -n 'catch_unwind|AssertUnwindSafe|with_env' --type rust
# Every panic strategy declared in the tree: manifests, config files, and rustflags.
rg -n --hidden 'panic\s*=\s*"?(abort|unwind)' \
-g '**/Cargo.toml' -g '**/.cargo/config.toml' -g '**/.cargo/config'