diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 000000000..5f6d12068 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,11 @@ +- Read CONTRIBUTING.md for guidelines on how to run tools +- ALWAYS attempt to add a test case for changed behavior +- PREFER integration tests, e.g., at `it/...` over unit tests +- When making changes for Windows from Unix, use `cargo xwin clippy` to check compilation +- NEVER perform builds with the release profile, unless asked or reproducing performance issues +- PREFER running specific tests over running the entire test suite +- AVOID using `panic!`, `unreachable!`, `.unwrap()`, unsafe code, and clippy rule ignores +- PREFER patterns like `if let` to handle fallibility +- ALWAYS write `SAFETY` comments following our usual style when writing `unsafe` code +- PREFER `#[expect()]` over `[allow()]` if clippy must be disabled +- PREFER let chains (`if let` combined with `&&`) over nested `if let` statements