# Python
__pycache__/
*.py[cod]
*$py.class
.pytest_cache/
.hypothesis/
.mypy_cache/
.ruff_cache/
.tox/
.nox/
.coverage
.coverage.*
coverage.json
coverage.xml
htmlcov/
*.egg-info/
.eggs/
dist/
build/
wheelhouse/
*.egg

# JavaScript tooling
node_modules/

# Virtual environments
.venv/
venv/
.direnv/
.mamba/

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

# OS
.DS_Store
Thumbs.db

# Runtime state and execution outputs
/resources/*
!/resources/.gitkeep
/results/*
!/results/.gitkeep
/logs/
*.log
progress.json
progress.jsonl
/.abi/
/abi_workspace/
/workspace/
/work/
/.nextflow/
/.nextflow.log*
/nextflow_work/
/nf_work/
/.snakemake/
/job_store.json
/jobs.json
/analysis/
/downloads/

# Ignore user data by default, but keep curated small examples + benchmarks.
/data/*
!/data/examples/
!/data/examples/**
!/data/benchmarks/
!/data/benchmarks/**

# Large sequencing or archive inputs should not be committed by default.
*.bam
*.bai
*.sam
*.cram
*.fastq
*.fq
*.fastq.gz
*.fq.gz
*.fasta.gz
*.fa.gz
*.tar
*.tar.gz
*.tgz
*.zip
*.7z

# Keep intentionally tiny test fixtures.
!examples/fixtures/**
!tests/fixtures/**

# CMake (if used)
CMakeCache.txt
CMakeFiles/
cmake_install.cmake
Makefile
CTestTestfile.cmake
Testing/

# Demo execution artifacts
/data/e_coli_demo/
/results/e_coli_demo/
/smoke_test/

# Benchmark results (generated)
/bench/results/
/bench/Bench_1/bench/results/

# Historical planning docs (auto-generated, not for repo)
Rebuild.md
Development_Status.md
Engineering_Roadmap.md
demo_plan.md
autoplasm_DAG.md
meta_plas_analy_pipeline_impro.md

# Internal development, publication, paper, and optimization planning drafts.
# Keep canonical docs under docs/en/, docs/zh/, and bench/paper_tasks/ tracked.
/*development*plan*.md
/*Development*Plan*.md
/*publication*plan*.md
/*Publication*Plan*.md
/*paper*plan*.md
/*Paper*Plan*.md
/*optimization*plan*.md
/*Optimization*Plan*.md
/*optimisation*plan*.md
/*Optimisation*Plan*.md
/Next Development and Publication Implementation Plan.md
/ABI_REFACTOR_RESULTS.md

# Figure output (generated by pipeline, not source)
/figures/*.png
/figures/*.svg
/figures/*.html
/figures/*.pdf
!/figures/abi_logo.png

# Report artifacts (generated)
/report/report.md
/report/report.html
/report/report_summary.json
/report/methods.md
/report/limitations.md
/report/citations.md

# Resource manifest caches (generated per-run)
resource_manifest.json
resource_manifest_cache.json

# Benchmark datasets (large, not for repo)
/data/benchmark/
/data/validation/

# Plugin development artifacts (auto-generated during dev)
plugins/*/figures/*
plugins/*/report/*

# Jupyter notebook checkpoints
.ipynb_checkpoints/

# Cloud/download scratch outputs
/merged.tab
*.part
*.aria2
*.pid

# Temporary analysis outputs
/tmp/
/temp/
/scratch/

# SciPlot generated figures / test artifacts
src/abi/sciplot/tests/_output/
src/abi/sciplot/tests/_render_check/

# Generated env YAMLs are intentionally tracked. They are release inputs and
# must stay synchronized with environments.yaml.

# Container / environment
*.sif
*.img
Singularity.lock
environment.lock.yml
conda.lock

# Local secrets and machine-specific credentials
/.key
/.env
/.env.*
!/.env.example
!/.env.template
/.secrets/

# Agent platform local state (allow ABI project integration assets)
/.claude/*
!/.claude/skills/
!/.claude/skills/abi/
!/.claude/skills/abi/**
/.codex/*
!/.codex/config.toml
/.kimi-code/*
!/.kimi-code/mcp.json
/.opencode/*
!/.opencode/skills/
!/.opencode/skills/abi/
!/.opencode/skills/abi/**

# Documentation build/cache outputs
/docs/_build/
/.readthedocs-cache/

# Local generated planning sessions. The benchmark implementation plan is a
# curated historical record and remains tracked.
/docs/superpowers/plans/*.md
!/docs/superpowers/plans/2026-06-19-benchmark-v06-implementation.md

# Paper, evaluation, and audit drafts (not for repo)
/docs/*/paper_*.md
/docs/*/*paper*.md
!/docs/en/paper_outline.md
!/docs/zh/paper_outline.md
!/docs/en/paper_evaluation.md
!/docs/zh/paper_evaluation.md
/docs/*/plugin_report_figure_spec.md
/paper-evaluation/
/docs/diagrams/
/abi paper writing/
/docs/research

# Work report archives (generated, tracked via git)
# (work_report_*.md files are intentional docs — NOT ignored)

# Deepwork state
/.slim/deepwork/

# Demo execution databases (large, external)
/abi-databases/

/sample_sheet_illumina_test.tsv
/config_illumina_full.yaml
/docs/en/abi_hpc_validation_guide.md

/locks/

# Canonical real-data evidence is frozen locally and published through an
# external archival deposit; individual tables can exceed Git hosting limits.
/analysis_outputs/canonical_runs_20260819/
