# ── Secrets — never commit ────────────────────────────────────────────────────
# Live PyPI API token used by dev/publish-*.bat
**/dev/token.txt
**/token.txt
*.pem
*.key
.env
.env.*

# ── Virtual environments ──────────────────────────────────────────────────────
.venv/
venv/
env/
**/.venv/

# ── Python build / cache ──────────────────────────────────────────────────────
__pycache__/
*.py[cod]
*.egg-info/
build/
dist/
.pytest_cache/
.mypy_cache/
.ruff_cache/

# ── Atlas debug session logs ──────────────────────────────────────────────────
# Bug reports are per-session working files, not source. README.md is kept.
debug/atlas-*.jsonl
debug/atlas-*.md
debug/latest.md

# ── Large test / sample data — on disk, not in history ────────────────────────
# 364 MB of Bakken + Vaca Muerta shapefiles. Git is not a data store; keeping
# these out is what makes the repo clonable. They stay on disk untouched.
incubator/testing-data/
**/TestingData/
*.duckdb
*.zip

# Parked experiments (see CLAUDE.md) — ~58 MB, mostly binary assets.
# Untracked, not deleted. Remove this line if you want them versioned.
incubator/archive/

# Base-data build inputs and outputs — 2.5 GB: a 2.4 GB file geodatabase of PRISM land grids,
# a 119 MB counties shapefile and the 144 MB GeoPackage built from them. There is no source in
# this folder, only data; the scripts that build it live with the experiment. Same rule as
# testing-data above — git is not a data store, and this alone would make the repo unclonable.
incubator/env-base-data/

# Probe output from the flex-detect experiment. The BRIEF and README are the work; these are
# 3.3 MB of intermediate rasters and screenshots regenerated by running the probes.
incubator/flex-detect/probe_*.tif
incubator/flex-detect/probe_*.png

# Superseded bug-recorder sessions, and screenshots dropped in while reporting. Same class as the
# debug/atlas-* rule above: per-session working files, not source.
debug/old/
debug/*.png

# A folder of exported map PDFs: 15 MB of output with no source beside it. Same rule as
# env-base-data and testing-data above — the outputs of an experiment, not the experiment.
incubator/atlas-mapping-dump/

# NOT ignored, deliberately: incubator/aix-integration/aix-files/ — the three real ArcGIS Pro
# exports, 5.3 MB. Every claim about the format is checked against them and the planned conformance
# test diffs our output against them, so they are the ground truth rather than sample data. Losing
# them would mean losing the ability to verify anything.

# Output from the .aix inspector, regenerated by running it.
incubator/aix-integration/**/stream_*.bin

# ── Editor / OS ───────────────────────────────────────────────────────────────
.idea/
.vscode/
*.swp
Thumbs.db
desktop.ini
$RECYCLE.BIN/

# ── Claude Code working state ─────────────────────────────────────────────────
.claude/worktrees/
.claude/shell-snapshots/
.claude/statsig/
.claude/todos/

# ── Scratch output ────────────────────────────────────────────────────────────
*.atlas.json.bak
*.bak-*

# ── Virtual environments the skill creates ────────────────────────────────────
# preflight.py builds skill/venv on the user's machine; it is platform-specific and large.
skill/venv/

# ── Handoff artifacts ─────────────────────────────────────────────────────────
# The .skill is rebuilt by package_skill.py and already versioned in releases/.
handoff/*.skill

# ── Model binaries in the incubator ───────────────────────────────────────────
# Esri .dlpk study material: 1.8 GB for ~600 MB of content, because every model is present
# three times (extracted + .dlpk + .zip). Reference only — never part of a release.
incubator/DeepLearningModelsESRI/
*.dlpk
*.pth
*.pt

