# Runtime data + caches (large, gitignored per Step 1 of technical plan)
# Anchored to repo root — doesn't match dna_decode/data/ subpackage
# Ignore data/ contents per-entry (NOT the dir itself) so specific subdirs can be re-included
/data/*
# Exception: committed public reference alleles for the fungal-AMR real-data test (tiny GenBank CDS)
!/data/fungal_ref/
# Exception: committed Arabidopsis Path-B phenotype labels (small public AraPheno CSVs)
!/data/arabidopsis/
# ...but NOT the Zhang 2020 publisher article PDF: it is one API call from MPG PuRe (see that dir's
# README) so there is no reason to carry a 600 KB binary. The CC-BY 4.0 supplements ARE committed --
# they are browser-only, so committing them is what makes the scoring reproducible.
/data/arabidopsis/zhang2020/zhang_tpj14716_publisher.pdf
# Exception: committed public influenza N1 NA reference + real field alleles for the antiviral (4th-kingdom)
# real-data test (tiny GenBank CDS). Same class as fungal_ref.
!/data/antiviral_ref/
# Exception: committed public HIV-1 HXB2 RT CDS reference for the genome-mode caller self-check + planted-
# mutation test (tiny NCBI CDS, K03455.1:2550-4229). Same class as fungal_ref/antiviral_ref.
!/data/hiv_ref/
# Exception: committed public SARS-CoV-2 Mpro (nsp5) reference for the genome-mode caller integrity gate
# (tiny NCBI CDS, NC_045512.2:10055-10972). Same class as fungal_ref/antiviral_ref/hiv_ref.
!/data/sarscov2_ref/
# HCMV UL97/UL54/UL56 in-frame CDS references for the herpesvirus cell's genome-FASTA mode
# (Merlin NC_006273.2; integrity-gated). Same class as fungal_ref/antiviral_ref/hiv_ref/sarscov2_ref.
!/data/hcmv_ref/
# Exception: committed public horse coat-colour validation TSV (Sarcidano 2022 PMC9558981 Table 3;
# functional MC1R/ASIP genotype x visually-observed colour; tiny, non-circular). Same class as *_ref.
!/data/horse/
# Exception: committed frozen LD-imputation maps (tiny data-derived tag->target genotype tables for the
# fail-closed imputation pre-processor; the raw openSNP dump stays gitignored). Same class as *_ref.
!/data/imputation/
# Exception: committed curated ClinVar gene-panel catalog (P/LP+B/LB variants for a canonical Mendelian gene
# set; the full 192MB ClinVar VCF stays on D:/gitignored). The disease analogue of the AMR catalog.
!/data/clinvar/
# Exception: committed compact INDEXES of the polygenic summary-stat sources (PGS/Pan-UKBB/FinnGen row-indexes
# + GWAS single-SNP candidate shortlist; the TB-scale bulk stays on D:/gitignored). User-directed capture.
!/data/summary_stat_sources/
*.h5
*.parquet
*.pkl
*.pt
*.bin

# Python
__pycache__/
*.pyc
*.pyo
*.egg-info/
.pytest_cache/
.mypy_cache/
.ruff_cache/
.coverage
.coverage.*
htmlcov/

# Environments
.venv/
venv/
env/
.env
.env.local

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

# Build outputs
build/
dist/
*.egg

# Model checkpoints (large, fetched from HuggingFace)
*.safetensors
*.ckpt
checkpoints/

# Logs
*.log
logs/

# Claude execute-plan scaffolding — recreated by /execute-plan runs
.claude/execute-plan-state/

# Generated audit / analysis reports (re-runnable via scripts/audit_cohort.py etc.)
/reports/

# AMRFinder runs (generated artifacts; tens of MB per strain)
/data/amrfinder_runs/

# Project-state scratch/working copies (stale duplicates of the live ledger; not history)
/project_state/*-scratch.md

# genome-map per-genome output dirs (large, regenerable): the spike output + the single-genome CLI
# (scripts/genome_map.py writes wiki/genome_map_<sample>_<date>/ with .json/.md/_table.json/.html).
# The trailing slash matches DIRECTORIES only, so the tracked top-level genome_map_spike_verdict_*.{md,json}
# + genome_map_tool_surface_*.json files are unaffected.
wiki/genome_map_spike_*/
wiki/genome_map_*/
bash.exe.stackdump

# ClinVar plain panels are large + regenerable; ship the gzipped GRCh38 panel only
data/clinvar/*.tsv
data/processed/ecoli_mash_clades.json
data/processed/protein_effect_cache/
data/processed/gene_lookup_cache/
notebooks/*_filled.py
wiki/gemme_holdout_tables.json

# BASEL phage manifest (labels; small) is committed for the phage-receptor cell; the 68 whole-genome
# FASTAs (~7MB) are regenerable via scripts/fetch_basel_genomes.py, so they stay ignored.
!/data/phage_ref/
/data/phage_ref/basel/
# LBNL Phage Datasheets independent-test genomes (regenerable via scripts/lbnl_independent_validate.py
# + git clone github.com/mjohnson11/PhageDataSheets); the small manifest is committed.
/data/phage_ref/lbnl/
# phageReceptor cross-lab test genomes (regenerable via scripts/phagereceptor_crosslab_validate.py)
/data/phage_ref/phagereceptor_genomes/
