Cairo Panic

Explain Cairo unrecoverable errors, `panic`, `panic!`, `panic_with_felt252`, `nopanic`, and `panic_with`; use when a request involves panics or panic annotations in Cairo.

teddyjfpender 807e50f 2 files · 1.9 KB Updated

File contents

Cairo Panic

Overview

Explain how panics work in Cairo, how to trigger them, and how to constrain panic behavior.

Quick Use

  • Read references/panic.md before answering.
  • Choose the smallest panic API that fits the error message you need.
  • Mention nopanic requirements when a caller demands panic-free code.

Response Checklist

  • Use panic for array-based errors, panic_with_felt252 for a single felt, and panic! for strings.
  • Note that panic unwinds, drops variables, and squashes dictionaries.
  • Use #[panic_with(...)] for wrapper functions that panic on None or Err.

Example Requests

  • "How do I panic with a short error code?"
  • "What does nopanic mean?"
  • "How do I create a wrapper that panics on None?"

Cairo by Example

teddyjfpender/skill-issues/tree/main/skills/cairo-panic commit 807e50f7de

Frequently asked questions

npx skillmds@latest add teddyjfpender/cairo-panic