.venv/
uv.lock
__pycache__/
*.pyc
*.egg-info/
.pytest_cache/
.ruff_cache/
results/
build/
dist/

# Skill checkpoint state (scratch, per-run)
.threat-model-state/
.triage-state/
.patch-state/
.dnr-hunt-state/
.dnr-respond-state/
VULN-FINDINGS.md
VULN-FINDINGS.json
TRIAGE.md
TRIAGE.json
PATCHES/
PATCHES.md
PATCHES.json
INCIDENTS.json
INCIDENT_REPORT.md
RESPONSE.md
RESPONSE-*.md

# ...but DO track the checked-in example outputs (captured skill runs that
# ship with the repo). Negation must follow the patterns above.
!targets/*/example_skill_runs/**

# dnrcanary (dnr target) generated artifacts
targets/dnrcanary/logs/
targets/dnrcanary/app/dnrcanary.db
