# ============================================================================
# rust_pyfunc — .gitignore
# ----------------------------------------------------------------------------
# 组织顺序：Rust 构建 → Python → 数据/计算产物 → 日志/临时 → 编辑器/工具
# 原则：只忽略「可再生 / 体积大 / 本地私有」的内容，源码一律入库。
# 注意：本文件不影响已跟踪文件——新增规则只对未跟踪文件生效。
# ============================================================================

# ============================================================================
# 1. Rust 构建产物
# ============================================================================
# 任意层级的 Cargo target/（含 sandbox/xxx/target、sandbox_xxx/xxx/target 等嵌套沙箱）
target/
**/*.rs.bk

# 原生扩展 / 调试符号（PyO3、maturin 产物）
*.so
*.pyd
*.dylib
*.dll
*.lib
*.o
*.exp
*.pdb
*.dSYM/

# Cargo.lock 对本项目需要保留（可复现构建），因此不忽略

# ============================================================================
# 2. Python
# ============================================================================
__pycache__/
*.py[cod]
*$py.class
.Python

# 打包 / 分发产物
build/
dist/
dist_versions/*
develop-eggs/
eggs/
.eggs/
sdist/
wheels/
*.egg-info/
*.egg
.installed.cfg

# 虚拟环境与本地配置
.venv/
venv/
env/
ENV/
.env

# 测试 / 覆盖率 / 类型检查缓存
.pytest_cache/
.hypothesis/
.tox/
.nox/
.coverage
.coverage.*
coverage.xml
htmlcov/
*.cover
*.py,cover
nosetests.xml
.mypy_cache/
.dmypy.json
dmypy.json
.pyre/
.pytype/
.ruff_cache/

# Jupyter
.ipynb_checkpoints/

# Cython 调试符号
cython_debug/

# ============================================================================
# 3. 数据与计算产物（体积大、可再生，勿上传）
# ============================================================================
# 数值 / 二进制数据
*.npy
*.npz
*.parquet
*.bin
*.dat

# 沙箱内只入库代码（src/、Cargo.toml、build.sh、*.py），数据产物一律忽略
sandbox*/**/*.json
sandbox*/**/*.csv
sandbox*/**/*.txt
sandbox*/**/*.npy
sandbox*/**/*.npz
sandbox*/**/*.parquet

# 回测 / 因子筛选输出（根目录 *_tail_v*_selected.json，如 ab_*、nbs_*、perfprof_*）
/*_selected.json

# 因子研究目录（内容私密，整体不上传）
research_ext_ideas/

# 生成的可视化 html（用 html-host 展示台分享即可，不入库）
viz/
/factor_idea_sampling_corr.html
/orderbook_imbalance_indicators.html

# 文档构建产物
/doc/
/docs/_build/
/site/

# 基准测试
criterion/

# 误操作产生的垃圾目录（cp 目标路径写错，如 ":/home/..."）
/:

# ============================================================================
# 4. 日志、临时与备份文件
# ============================================================================
*.log
logs/
*.tmp
temp/
tmp/
*.bak
*.backup
*.orig
.checkpoints/

# 性能剖析数据
*.prof
*.profraw
*.profdata
perf.data*

# 测试产物
test_output/
test_results/
*.test

# ============================================================================
# 5. 编辑器 / IDE
# ============================================================================
.idea/
.vscode/
*.swp
*.swo
*~
.DS_Store
._*
.Spotlight-V100
.Trashes
Thumbs.db
ehthumbs.db

# ============================================================================
# 6. AI 助手 / 本地工具（含会话、上下文、日志等私有数据，整体不入库）
# ============================================================================
.cursor/
.windsurf/
.crush/
.factory/
.local/
.mindfs/
.vtcode/
vtcode.toml
.maturin_zig/
CLAUDE.md
AGENTS.md

# ============================================================================
# 7. 测试目录策略
# ============================================================================
# tests/ 内一次性调试/性能脚本数量庞大，整体忽略；
# 需要版本化的正式测试用 `git add -f tests/xxx` 强制加入（与现有已跟踪测试一致）
tests/

# ============================================================================
# 8. 历史遗留的零星未跟踪文件（保持原状）
# ============================================================================
2026-03-26-212555-personalizedmeetingfeatures.txt
docs/theme_feature_expansion_explanation.md
python/rust_pyfunc/rust_pyfunc_worker
