__pycache__/
*.egg-info/
.pytest_cache/
dist/
build*/
# `unisky build` puts its per-layer scratch in a mkdtemp beside the output and
# removes it in a finally; a HARD kill (the disk filling mid-build, an OOM)
# leaves one behind, and a leaked one is a whole tile pyramid — the last was
# 18 GB in the repo root. Never committable, whatever killed the build.
unisky-build-*/
unisky-add-*/
node_modules/
frontend/.vite/
.e2e-build/
.DS_Store
.venv/
tests/fixtures/testfield_mini/
frontend/test-results/
frontend/playwright-report/
# page snapshots the Playwright MCP server drops beside the cwd
.playwright-mcp/
.history

# wrangler caches the Cloudflare account it authenticated as; never publishable
.wrangler/
# agent worktrees: a whole second copy of the tree, never publishable
.claude/worktrees/

# the folded single-file copies of www/ (build_artifact.py); www/ is the source
dist-site/
# latex build products; paper/unisky.pdf IS committed, the rest is not
paper/*.aux
paper/*.log
paper/*.out
paper/*.bbl
paper/*.blg
paper/*.fls
paper/*.fdb_latexmk
paper/*.synctex.gz
# a copy of paper/unisky.pdf, regenerated by `just paper`; not committed twice
www/paper.pdf

# Local example data: the JWST/NIRCam mosaics, the UNCOVER catalog download and
# the cropped lens maps that examples/abell2744_jwst.yaml reads. ~1 GB, and all
# of it is either public and re-downloadable or reproducible by the two scripts
# in scripts/. examples/abell2744.yaml is the example that needs none of it.
example_data/
