# Rust build artifacts
/target/
/target-*/
/target-test/
/target-tmp/
**/*.rs.bk
# Note: Cargo.lock is committed for reproducible builds (this is an application, not a library)

# Local target directory
/target-local
target-local/

# Docs build output
docs/build/
docs/target/
!dashboard/src/app/docs/
!dashboard/src/app/docs/**


# IDE and editor files
.idea/
.vscode/
*.swp
*.swo
*~
.DS_Store

# Environment and configuration
.env
.env.*
!.env.example
config.toml
*.local.toml

# Neural network model files
*.onnx
*.pt
*.pth
*.safetensors
models/
*.checkpoint.json

# Runtime / training data & customer data — NEVER commit (see data/README.md).
# Only a small allowlist of fixtures referenced by code/tests is tracked.
data/*
!data/README.md
!data/eval/
!data/rules/
data/rules/*
!data/rules/rules_gss_seed.json
!data/rules/rules_gss_seed_v3.json
!data/rules/surface_forms_curated.json
!data/rules/probes_gss_v3.json
!data/rules/probes_gss_v3_expanded.json
!data/rules/gss_v3_calibration.json
!data/rules/prohibited_content_subsymbols_2_5f.json
!data/rules/gss_v3_calibration_expanded.json
!data/yse_beauty/
data/yse_beauty/*
!data/yse_beauty/policy_pack_2026-03-16.json
!data/knowledge.json

# Logs
*.log
logs/

# Coverage and profiling
*.profraw
*.profdata
coverage/
lcov.info
tarpaulin-report.html
.pytest_cache/
.mypy_cache/
**/.mypy_cache/

# Benchmarks output
criterion/

# OS files
Thumbs.db

# Python virtual environments
.venv/
venv/
__pycache__/
*.pyc

# Node.js native binaries (build artifacts)
*.node

# Node.js dependencies / build outputs
node_modules/
**/node_modules/
.next/
**/.next/
playwright-report/
**/playwright-report/
test-results/
**/test-results/
*.tsbuildinfo
# Brain infra — keep iteration specs + handoff doc; exclude credentials + runtime state.
.brain/creds*
.brain/local/
.brain/log/
.brain/signup.json
.brain/prod_demo_signup.json

# Local agent tooling
.codex/

# Scratch / sandbox-probe artifacts (never commit)
tmp_*
trace_rmeta.txt
/targets/

# Nested cargo target dirs (SDK/bindings builds) — never commit build trees.
# The root /target*/ rules above are anchored and missed sdks/rust/target-sdk/
# (474MB of debug artifacts landed in commit 74d0366). Un-anchored rules
# close that hole for good.
target-sdk/
**/target/

# Office-format binaries and demo scratch output — keep on disk, never track
*.docx
/nsr_demo.txt

# Example screenshots (kept on disk, not tracked)
example-ui/

# Legacy duplicate SDK dir (canonical SDKs live in sdks/)
/sdk/
target-py/

# Local demo API key — never commit
demo-key.txt

# Local test auth key file (server writes/reads at cwd root)
auth_keys.json
.local-kb.json

# Local runtime tenant data (real telemetry/PII — never commit)
/tenants.json
/flywheel.json
