# IDE
*.code-workspace
.vscode/
.idea/
*.swp
*.swo

# macOS
.DS_Store
.AppleDouble
.LSOverride

# DB (main + journals + backups + dumps; keep migrations/*.sql if added later)
# traces_routing_audit.db = local Claude Code session backfill (private usage
# data — covered by *.db below, listed explicitly because it must never ship).
# The task-tag review CSV carries redacted prompt summaries — never commit.
traces_routing_audit.db
routing_audit_task_tags*.csv
routing_audit_candidates*.csv
routing_audit_blind*.csv
routing_deviations*.csv
routing_audit_alias_map.json
# Generated report skeletons carry real aggregate figures — local only.
report_zh.md
report_en.md
# Scheduled-ingest run logs (project names, costs, warnings — private metadata).
routing_audit_ingest.log
routing_audit_launchd.*.log
*.db
*.db-journal
*.db-wal
*.db-shm
*.db.bak
traces_dump.sql

# FUSE filesystem temp files
.fuse_hidden*

# Python / uv
__pycache__/
*.pyc
*.pyo
.venv/
.pytest_cache/
.ruff_cache/

# Build artifacts
*.egg-info/
dist/
build/

# Real business data — never commit actual pipeline outputs / production traces.
# Synthetic example data is fine; keep it under examples/ or configs/examples/.
real_traces_export.json
market_intel_export.json
*_export.json
fixtures/case-*/
# Ignore case-studies CONTENTS (not the dir itself), so the specific exceptions
# below can re-include individual files — git cannot re-include a file whose
# parent DIRECTORY is excluded, so this must be `/*`, not `docs/case-studies/`.
docs/case-studies/*
# Exception: the FMP look-ahead case study is cleared for publication (numbers
# reconciled 2026-06-16, contains no raw vendor data — see the file's editor's
# note). Everything else under case-studies/ stays local — notably the
# market-intel retrospective, which is internal pipeline-health material, not a
# public TraceGuard study.
!docs/case-studies/fmp-revision.md
!docs/case-studies/fmp-revision.zh.md

# Local working material (not project source): launch/marketing notes and the
# personal positioning/dev-prompt doc. Kept out of every commit.
launch/
/traceguard_定位与CC开发Prompt.md

# iCloud/file-sync duplicates: "<name> 2.<ext>" — never commit (mirrors the
# pyproject build `exclude = ["* 2.py"]` and conftest collect_ignore_glob).
* 2.py
* 2.md
* 2.yaml
* 2.sh
* 2.plist
