compiled/
*.dep
*.zo
.DS_Store
.claude/
.direnv/
.beagle/
doc/
runtime/.cpcache/
runtime/target/
runtime/src/beagle/target.clj
runtime/src/beagle/run_*.clj
runtime/src/test/
runtime/src/test.clj
runtime/src/heist/
runtime/src/trading/
pipeline/
result
runtime/src/kea/
runtime/src/promotions.clj

# Rust build artifacts for tools/
tools/*/target/
tools/*/Cargo.lock

# Python bytecode (bin/beagle_repair_apply.py + tests)
__pycache__/
*.pyc
.odin-root/

# Scratch + default emit output (regenerated; never source).
# beagle-build / beagle-build-all default here when no output is named, so
# throwaway emit can't pollute the tracked tree (override root with BEAGLE_OUT).
.scratch/
.beagle-out/

# Internal agent notes / status / scratch / handoffs — NOT user-facing docs.
# Keep out of git. Put private notes under docs/private/.
docs/private/

# selfhost lab scratch (oracle mints, parity diffs) — derived, re-mintable
.lab/

# selfhost native-image build artifacts — derived (self-host/native/build.sh)
self-host/native/classes/
self-host/native/.cpcache/
self-host/native/beagle-selfhost

# Git worktrees parked inside the checkout (agent workflows) — never tracked.
.worktrees/
fuzz/nightly-out/
