# Foxhunt HFT Trading System - Docker Build Context Exclusions
# Critical: Reduces build context from 57GB to <500MB

# ============================================================================
# Build Artifacts (Largest contributor to bloat)
# ============================================================================
target/
**/target/
coverage_report/
*.profraw
*.profdata
*.gcda
*.gcno
*.o
*.a
*.so
*.dylib
*.dll

# ============================================================================
# Git Repository (Should never be in build context)
# ============================================================================
.git/
.gitignore
.gitattributes
.github/

# ============================================================================
# Test Artifacts (Large test binaries and data)
# ============================================================================
tests/e2e/target/
tests/stress_tests/target/
tests/load_tests/target/
test_data/large/
test_data/*.parquet
*.profdata
*.profraw

# ============================================================================
# Documentation and Reports
# ============================================================================
docs/
*.md
WAVE_*.md
AGENT_*.md
TESTING_PLAN.md

# ============================================================================
# IDE and Editor Files
# ============================================================================
.vscode/
.idea/
*.swp
*.swo
*.swn
*.bak
*~
.DS_Store

# ============================================================================
# Logs and Temporary Files
# ============================================================================
*.log
*.tmp
*.temp
*.cache
*.pid
*.seed
*.lock

# ============================================================================
# Node.js (if any JS tooling)
# ============================================================================
node_modules/
npm-debug.log
yarn-error.log

# ============================================================================
# Python (if any Python scripts)
# ============================================================================
__pycache__/
*.py[cod]
*$py.class
.pytest_cache/
.venv/
venv/
*.egg-info/

# ============================================================================
# Database and Runtime Data (Should use volumes)
# ============================================================================
*.db
*.sqlite
*.db-journal
# data/ # KEEP: This is the data crate source code, not runtime data
data/data/  # Exclude test data subdirectory within data crate
test_data/  # Exclude test data at root
logs/

# ============================================================================
# CI/CD and Deployment
# ============================================================================
.gitlab-ci.yml
.travis.yml
.circleci/
Jenkinsfile
deployment/

# ============================================================================
# Coverage Reports
# ============================================================================
coverage/
htmlcov/
.coverage
*.lcov
*.info

# ============================================================================
# Environment Files (Should use secrets management)
# ============================================================================
.env
.env.*
!.env.example
*.key
*.pem
*.cert
*.crt

# ============================================================================
# Backup Files
# ============================================================================
*.backup
*.old
*.orig
*.dump
*.sql.gz

# ============================================================================
# Docker Compose (Not needed in image)
# ============================================================================
docker-compose.yml
docker-compose.*.yml
docker-compose.override.yml

# ============================================================================
# Kubernetes (Not needed in image)
# ============================================================================
k8s/
*.yaml
*.yml
!Cargo.toml
!Cargo.lock

# ============================================================================
# License and Legal (Include if needed, but usually not)
# ============================================================================
LICENSE*
NOTICE*
CONTRIBUTORS*

# ============================================================================
# Development Tools
# ============================================================================
.cargo/config.toml
rust-toolchain.toml
clippy.toml
rustfmt.toml

# ============================================================================
# Keep Essential Files (Explicit exceptions)
# ============================================================================
# These are INCLUDED in build context:
# - Cargo.toml (all packages)
# - Cargo.lock
# - src/ directories
# - migrations/
# - proto/ (if exists)
# - config/ (runtime config)
# - Dockerfile*
