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

# Environments
.venv/
.env
.env.local
.env.*
!.env.example
*.key
*.p12
*.pfx

# Local store and scratch
.adopt/
/tmp/

# Never commit a private-repo artifact into the Apache-2.0 repository.
# `adopt-plane` is a separate repository (handoff index CR-03) and is never
# vendored here. If this pattern ever matches something, that is the
# boundary violation the pattern exists to catch.
adopt-plane/
plane_*/

# The exported locked runtime closure the release job derives the SBOM from.
# `release.yml` generates it in an ephemeral checkout, so CI never sees this
# file; a local release rehearsal does, in the repository root, and a generated
# artefact one `git add -A` away from the first public commit is worth one line.
runtime-constraints.txt

# CI metrics, written per run and uploaded as an artefact (PRD §6)
ci-metrics.jsonl
.coverage
cov.json
