# Rust build artifacts
target/
*.hdf5
*.wal
datasets/

# IDE files
.vscode/
.idea/
*.swp
*.swo
*~

# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

# Environment files. Only .env.example is shared. `.env` alone is an exact-name
# match, so `.env.production` was never actually ignored — a placeholder file that
# someone later fills in would have been committed without a word.
.env
.env.*
!.env.example

# Logs
*.log
logs/

# VectorDB specific files
/cache/
/data/
/storage/
*.db
*.sqlite
*.sqlite3

# Test artifacts
/test-results/
/coverage/
*.profraw
# `coverage.py`'s database. `/coverage/` above is a directory and does not match it, so
# `clients/langchain-dxmt/.coverage` was tracked -- 52 KB of binary holding absolute paths
# from whichever machine last ran the suite, which then travelled through the move to
# `clients/` as the one file in the tree still naming the old layout.
.coverage
.coverage.*
# The queries `examples/generative_benchmark.py` generates. Cached so a rerun is free, and
# local because they are about whatever corpus that machine pointed it at.
examples/.generative_benchmark.json

# Documentation builds
/book/
/docs/site/

# Temporary files
*.tmp
*.temp
/tmp/

# Configuration files (keep templates)
config.toml
config.yaml
config.json
!config.example.*

# Binary releases
/dist/
/release/
*.tar.gz
*.zip
# Except the storage-compatibility fixtures, which are data every build has to open. Without this
# line the archive stays behind and CI tests an expected.json against nothing.
!tests/compat/fixtures/*/data.tar.gz

# Benchmarking results
/benches/results/
criterion/

# Memory dumps
*.dmp
core.*

# Performance profiling
flamegraph.svg
perf.data*

# `.dockerignore` used to be ignored here, under the heading "Docker build context", as though
# it were something a build produces. It is source: it decides what leaves the machine when
# anyone runs `docker build`, so it has to ship with the repository the way `.gitignore` does.
# Ignoring it meant the protection existed only on the machine that wrote it.

# Node.js (for documentation tools)
node_modules/
npm-debug.log*

# Python (for scripts)
__pycache__/
*.py[cod]
*$py.class
.pytest_cache/

# Backup files
*.bak
*.backup
venv/
archive/
logs/
dev-cache/
wal/
*.egg-info/

# Local agent/editor settings
.claude/settings.local.json

# Demo corpora — third-party documents, supply your own (see examples/pdf_rag_demo.py)
pdf/

# Never commit credentials or exported customer data
*credentials*.json
*service-account*.json
*.pem
*.key
gcp_bucket.config

# Demo corpora the examples download at run time. They are other people's writing -- the
# LlamaIndex example fetches Paul Graham's essay from run-llama/llama_index -- and are not
# covered by this project's licence. A vendored copy was removed before the first public
# release; this keeps the next `git add` from putting it back.
clients/llama-index-vector-stores-dxmt/examples/data/
