skills/ozerohax/assistagents/coder-rust-error-handling

coder-rust-error-handling

SKILL.md

<skill_overview> Design predictable and ergonomic error handling in Rust Designing error types Propagating errors with Result Mapping errors at API boundaries Choosing between panic and Result The Rust Book - Error Handling </skill_overview> <panic_vs_result> <use_panic_when> Unrecoverable, invariant-breaking failures Bug in the program (logic error) </use_panic_when> <use_result_when> Expected errors (not found, validation) I/O or external dependency failures </use_result_when> </panic_vs_result> <error_types> Define a dedicated error enum for a module or service Implement Display and Error for custom errors Use From to convert lower-level errors enum ServiceError { NotFound, InvalidInput, Io(std::io::Error) } </error_types> Use ? to propagate errors Add context with map_err or custom variants Preserve original error for debugging <boundary_mapping> Map internal errors to public error codes/messages Do not leak sensitive details to clients </boundary_mapping> <anti_patterns> Avoid unwrap/expect for normal flow Avoid plain String errors without structure Do not panic on validation failures </anti_patterns>

Weekly Installs
3
GitHub Stars
25
First Seen
Feb 4, 2026
Installed on
gemini-cli3
opencode3
trae2
qwen-code2
replit2
claude-code2