# ================================================================
# Python
# ================================================================
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
dist/
*.egg-info/
.eggs/
wheels/
develop-eggs/
downloads/
parts/
sdist/
var/
.venv/
venv/
env/
ENV/

# ================================================================
# IDE / Editor
# ================================================================
.vscode/
.idea/
*.swp
*.swo
*~

# ================================================================
# Env / Secrets（.env.example 保留作为模板）
# ================================================================
.env
.env.*
.env.local
.env.*.local
!.env.example
*.key
*.pem
config/setting.local.json
config/user_settings.json

# ================================================================
# Logs & Debug Output
# ================================================================
*.log
logs/
output/
vllm_test*.log
.codex-*.pid

# ================================================================
# Databases（本地数据库文件）
# ================================================================
*.db
*.sqlite
*.sqlite3
chromaDB/
chroma_db/
milvus_data/
neo4j_data/

# ================================================================
# OS
# ================================================================
.DS_Store
Thumbs.db
desktop.ini

# ================================================================
# Temp / Cache / Test
# ================================================================
.cache
.cache/
*.tmp
*.temp
.pytest_cache/
.coverage
htmlcov/
.ipynb_checkpoints

# ================================================================
# Data & Artifacts（运行时生成的数据，不上传）
# ================================================================
# 运行时下载的音频/歌词/封面
data/download/
data/raw_audio/
data/online_audio/
data/embeddings/
data/kaggle/
data/mtg/

# JSON 数据文件（保留 music_database.json 作为种子数据）
data/**/*.json
!data/music_database.json

# Pipeline 运行时产物
data/pipeline/ingest_progress.json
data/pipeline/gemini_prompts/gemini_result.json
data/pipeline/mtg_metadata/*.tsv

# SFT 训练数据（大文件，通过其他渠道分发）
data/sft/*.jsonl
data/sft/*.json
data/sft/planner_sft_training/

# ================================================================
# Media（音频/模型权重）
# ================================================================
*.mp3
*.wav
*.flac
*.m4a
*.ogg
*.aac
*.pt
*.pth
*.ckpt
*.safetensors
*.bin

# ================================================================
# Web (Next.js)
# ================================================================
web/node_modules/
web/.next/
web/out/
web/build/
web/*.tsbuildinfo
web/next-env.d.ts
web/package-lock.json
web/dark_mode_home.png

# ================================================================
# NeteaseCloudMusicApi（本地反向代理，不上传）
# ================================================================
NeteaseCloudMusicApi/

# ================================================================
# GraphZep Service
# ================================================================
# Node modules
graphzep_service/**/node_modules/

# TypeScript 编译产物（保留 .ts 源码即可）
graphzep_service/src/**/*.d.ts
graphzep_service/src/**/*.js
graphzep_service/src/**/*.js.map

# ================================================================
# Root-level stale files
# ================================================================
package-lock.json
diff_changes.txt

# ================================================================
# 大型安装包 / 二进制文件（防止误上传，已有教训 ⚠️）
# ================================================================
*.deb
*.run
*.rpm
*.msi
*.exe
*.iso
*.img

# 压缩包（通常几百MB级别）
*.zip
*.tar
*.tar.gz
*.tgz
*.tar.bz2
*.tar.xz
*.7z
*.gz
*.bz2

# 模型文件（AI/ML 大文件）
*.gguf
*.ggml
*.onnx
*.npy
*.npz
*.pkl
*.pickle
*.h5
*.hdf5
*.parquet

# ================================================================
# 私有文档（本地保留，不上传 GitHub）
# ================================================================
Technical_Report.md

# ================================================================
# 临时调试脚本（本地测试用，不上传）
# ================================================================
_*.py
_*.txt

# ================================================================
# 集成测试（依赖外部服务，不上传到 CI）
# ================================================================
tests/test_profile_synthesizer.py
tests/test_event_consistency.py

# 评测结果文件（运行时生成）
tests/eval/results/

diff.txt
