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

# Virtual environments
.venv/
venv/
.mamba/

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

# OS
.DS_Store
Thumbs.db

# Project-specific
resources/*
!resources/.gitkeep
results/*
!results/.gitkeep
logs/
log/*
!log/.gitkeep
*.log
progress.json
progress.jsonl
.abi/
abi_workspace/
workspace/
work/
.nextflow/
.nextflow.log*
nextflow_work/
nf_work/
job_store.json
jobs.json

# 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

# 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

# Plugin demo results
results/plasmid_demo/
results/rnaseq_demo/
results/wgs_bacteria_demo/
results/amplicon_16s_demo/
results/metatranscriptomics_demo/
results/rnaseq_expression_demo/

# 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

# 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 (derived from environments.yaml)
envs/*.yml
!envs/.gitkeep

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

# Agent platform local state (allow ABI project integration assets)
.claude/*
!.claude/skills/
!.claude/skills/abi/
!.claude/skills/abi/**
.codex/*
!.codex/config.toml
docs/_build/
.readthedocs-cache/
.opencode/*
!.opencode/skills/
!.opencode/skills/abi/
!.opencode/skills/abi/**

# Superpowers auto-generated plans
docs/superpowers/

# Paper, evaluation, and audit drafts (not for repo)
docs/*/paper_*.md
docs/*/*paper*.md
docs/*/comprehensive-testing-audit.md
docs/*/full-engineering-gap-audit.md
docs/*/tool-engineering-gap-audit.md
docs/*/plugin_report_figure_spec.md
paper-evaluation/
docs/diagrams

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

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

# Plugin benchmark run artifacts
bench/Bench_1/bench/results/
bench/results/

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

locks/

locks/
