# --- Hard rules: never commit these ---
# Full, current attack corpus (dual use). Only attacks/public/ is published.
attacks/private/
# Safety net: a "private" folder anywhere under attacks/ (e.g. one created by mistake
# inside attacks/public/) is never committed either.
attacks/**/private/
# ...and an attacks/ folder anywhere else in the repo (e.g. experiments/attacks/private/).
**/attacks/private/
**/attacks/**/private/
# Attack generation and execution scripts (dual use): local only, never committed.
experiments/generate_private_corpus.py
experiments/run_experiment1.py
# Datasets, traces, results, checkpoints
data/
# Keys and secrets
*.pem
*.key
.env
.env.*

# --- Claude Code reference files (local only) ---
CLAUDE.md
CLAUDE.local.md
.claude/

# --- Test scripts (local only) ---
tests/

# --- Model artifacts ---
*.safetensors
*.gguf
*.pt
*.ckpt
checkpoints/
outputs/
wandb/
mlruns/

# --- Python ---
__pycache__/
*.py[cod]
*.egg-info/
build/
dist/
.venv/
venv/

# --- Tools ---
.pytest_cache/
.ruff_cache/
.coverage
htmlcov/
.ipynb_checkpoints/

# --- OS / editors ---
.DS_Store
Thumbs.db
.vscode/
.idea/
