# Normalize line endings. Shell scripts and Python with CRLF break on
# checkout under Git Bash (bad interpreter) and trip py_compile diffs.
# source: RAPPORT_INSTALLATION_CORTEX_WINDOWS.md §7.2
* text=auto eol=lf

*.sh   text eol=lf
*.py   text eol=lf
*.toml text eol=lf
*.yml  text eol=lf
*.yaml text eol=lf
*.json text eol=lf
*.md   text eol=lf

# Binary assets — never normalize.
*.png  binary
*.jpg  binary
*.gif  binary
*.pdf  binary
*.onnx binary
*.so   binary
*.dylib binary
*.dll  binary
*.exe  binary

# Fuzz corpus inputs are opaque byte sequences, not text. Git's end-of-line
# normalisation would rewrite CRLF seeds to LF on checkout and silently
# change what the harness is fed — fuzz/corpus/fuzz_yaml_frontmatter/seed-crlf
# exists precisely to exercise CRLF handling, so normalising it deletes the
# case. -text disables that; -diff keeps binary junk out of diffs.
fuzz/corpus/** -text -diff
