# Rust build artifacts
/target/
**/*.rs.bk

# ts-rs intermediate per-type .d.ts output (ADR-0004 Phase 1, #1218).
# `scripts/regen-bindings.sh` writes per-type files here as ts-rs
# generator scratch, then concatenates them into
# `crates/rustledger-wasm/bindings/index.d.ts`. That file IS checked
# in alongside `bindings/index.schema.json` (Phase 3 JSON Schema) and
# `bindings/types.py` (Phase 3 Pydantic v2) -- only the
# `bindings/bindings/` subdirectory is the ignored intermediate. CI
# gates all three for freshness via
# `RUSTLEDGER_TS_CHECK=1 scripts/regen-bindings.sh`.
crates/rustledger-wasm/bindings/bindings/

# Editor files
*.swp
*.swo
*~
.idea/
.vscode/
*.iml

# OS files
.DS_Store
Thumbs.db

# Nix
/result
/result-*
.direnv/

# Coverage
*.profraw
*.profdata
lcov.info
coverage/
tarpaulin-report.html

# Fuzzing
fuzz/corpus/
fuzz/artifacts/

# TLA+ tools (downloaded)
tools/
*.toolbox/
*.out
states/
traces/

# Test fixtures (downloaded)
tests/compatibility-full/
tests/compatibility-results/

# Benchmark results
target/criterion/

# Binary cache files (rustledger). The default is `.<file>.beancount.cache`
# (hidden dotfile, see issue #939); the legacy visible form is kept here so
# stale caches from earlier versions don't accidentally get committed.
.*.beancount.cache
*.beancount.cache

# Local development
.env
.env.local
*.local
.claude/

# Logs
*.log

# Documentation build
book/
.mcp.*
.bench-tools/
tests/compatibility/synthetic/
.playwright*
.opencode/
.venv-plugins/
packaging/arch/rustledger/.SRCINFO
# Bernstein orchestrator workspace (regenerable via `bernstein init`).
# Treats the whole `.sdd/` tree as ephemeral state — runtime logs, agent
# chat transcripts, decision records, audit trails, and run-local config
# all live here. Anything an agent writes back can include code excerpts,
# accidentally-leaked env values, or partial work-in-progress, so the
# safest default is to keep none of it in git history.
.sdd/

# Default Bernstein scaffolding (roles/prompts/review configs/templates).
# `bernstein init` rewrites these on every project, so checking them in
# bloats diffs without adding anything not reproducible from the package.
# If/when this project customizes a template, lift just the customized
# file out of this ignore (e.g. `!templates/prompts/judge.md`) rather
# than committing the full tree.
templates/
