.venv/
__pycache__/
*.pyc
*.egg-info/
build/
dist/
.pytest_cache/
.ruff_cache/
.tickets-tracker/
bridge_state/
# The standing per-criterion effectiveness ledger (epic 6982) is a local, growing artifact
# regenerated by `criterion_effectiveness.py --record --backfill` over the live sidecar store —
# it is ~8 MB over the current corpus, far over the 500 KB check-added-large-files cap, so it is
# NOT committed (analogous to .tickets-tracker/). The committed CI-visible baseline is the small
# computed metrics artifact runs/criterion_effectiveness.json.
docs/experiments/plan-review-gate/runs/criterion_firings.jsonl
# Ignore local .rebar state (session-log pointer, HLC cache, …) but TRACK the out-of-band
# trusted-environment pin (story 76d2): trusted_environments.yaml lives on the code branch
# (Gerrit-gated + CODEOWNERS-protected), NEVER the auto-pushed tickets branch.
.rebar/*
!.rebar/metrics-snapshots.ndjson
!.rebar/backfill-close-class.ndjson
!.rebar/trusted_environments.yaml
# Project plan-review criteria overlay (epic jira-reb-1003): these live on the code
# branch (Gerrit-gated), like trusted_environments.yaml — NOT the auto-pushed tickets
# branch. Un-ignore each committed overlay file surgically; sibling local overrides stay
# ignored.
!.rebar/criteria_routing.json
!.rebar/plan_review_moves.json
!.rebar/prompts/
.rebar/prompts/*
!.rebar/prompts/plan-review-project-portability.md
!.rebar/evals/
.rebar/evals/*
!.rebar/evals/plan-review-project-portability.eval.yaml
.claude/
session-logs/
CLAUDE.local.md

# local test/build scratch (never commit)
.pytest-tmp/

# lint / type-check / coverage artifacts
.mypy_cache/
.coverage
.coverage.*
coverage.xml
htmlcov/
# pytest --store-durations / pytest-split timings (perf logging, task 9ad9) — never committed
.test_durations

# Serena MCP (local code-navigation tooling; per-developer)
.serena/

# tokensave MCP (local code-graph cache; per-developer)
.tokensave/

# mutmut mutation-testing working copy + result DB (docs/mutation-testing.md)
mutants/
.mutmut-cache
html/

# Hybrid Logical Clock per-clone cache (P2.1) — disposable, rebuilt from the log
.rebar/hlc.state
.rebar/hlc.lock

# Ephemeral container secrets — regenerated each boot from SSM by
# infra/scripts/fetch-secrets.sh (ADR-0008); 0600, NEVER committed.
infra/compose/.env

# Build-baked gate-code commit SHA, generated by hatch_build.py at wheel/sdist build
# (epic jira-reb-596). Generated, never committed; force-included in the wheel.
src/rebar/_build_info.py

# d01e live-validation run artifacts (CI artifacts, not source)
/reports/
/leaked-artifacts.log

# terraform plan artifacts (generated)
infra/terraform/tf.plan
infra/terraform/tf.plan.json
infra/terraform/.terraform/
.tools/
