What problem does it solve? Rust developers often struggle to choose between Result, Option, and panic, pick the right error crate, and build resilient recovery logic. This Skill provides decision frameworks and idiomatic patterns for error handling in Rust libraries and applications. ## Core Features & Use Cases - Error Type Decisions: Guides the choice between Result, Option, and panic based on whether failures are recoverable domain errors or defects. - Crate Selection & Design: Explains when to use thiserror for typed library errors versus anyhow for application-level context, including #[from], #[source], and error layering. - Resilience Patterns: Covers retry with exponential backoff and jitter, timeouts, fallback, and circuit breakers, with failure classification (transient vs permanent). - Use Case: When building a Rust web service, use this Skill to design a typed StorageError enum with thiserror, propagate it with ?, add context with anyhow at the app boundary, and map errors to HTTP responses. ## Quick Start Ask the AI to design error handling for a Rust function that reads and parses a config file, choosing between thiserror and anyhow.