!demo/test-arbiter-keys/*.pem
# (unfunded testnet keypairs, single-purpose, see demo/test-arbiter-keys/README.md)
# Exception: intentionally-committed throwaway test-only arbiter demo keys
*$py.class
*.bak
*.egg-info/
*.env.local
*.pem
*.py[cod]
*.secret
*.swo
*.swp
*.wasm
*~
.DS_Store
.coverage
.eggs/
.env
.idea/
.mypy_cache/
.pytest_cache/
.ruff_cache/
.venv/
.vscode/
Cargo.lock
# cargo-fuzz output (C12): corpus and crash artifacts must never be committed;
# corpus is transient (regenerated per run) and artifacts are the exact
# byte sequences a real bug triggered — keep them in local investigation
# only, not in git history.
contracts/fuzz/target/
contracts/fuzz/corpus/
contracts/fuzz/artifacts/
Thumbs.db
__pycache__/
*.pyc
.pytest_cache/
.coverage
.venv/
venv/
node_modules/
dist/
build/
*.egg-info/
.mypy_cache/
.ruff_cache/
target/

# local test virtualenv (not part of repo)
.venv-ae/
.venv-ae2/
.venv-lint/

# judge demo runtime artifact (see server/judge_scenario_demo.py)
judge_demo_output.json
# C12/C16: cargo-fuzz output — never commit corpus or artifacts.
contracts/fuzz/target/
contracts/fuzz/corpus/
contracts/fuzz/artifacts/
.env.*

# cargo-cyclonedx output (checked-in copies live under sbom/rust-contracts/)
contracts/*/*.cdx.json
