| Pattern | Don't Just Say | Ask Instead |
| unwrap panics | "Use ?" | Is None/Err actually possible here? | | Type mismatch on ? | "Use anyhow" | Are error types designed correctly? | | Lost error context | "Add .context()" | What does the caller need to know? | | Too many error variants | "Use Box " | Is error granularity right? |
| Too many unwraps | m09-domain | Is the data model right? | | Error context design | m13-domain-error | What recovery is needed? | | Library vs app errors | m11-ecosystem | Who are the consumers? |
CRITICAL: используется для обработки ошибок. Триггеры: Результат, Опция, Ошибка, ?, разворачивание, ожидание, паника, все равно, эта ошибка, когда паниковать или возврат Результат, пользовательская ошибка, распространение ошибки, 错误处理, Результат 用法, 什么时候用 паника Источник: goooice/rust-skills.