__pycache__/
*.pyc
.DS_Store

# never commit live credentials or runtime state
config.json
config.live.json
copybot_state.live.json
config.json.bak
config.example.json
copytrade_state.json
copybot_state.json
copybot_fills.jsonl
*.log
*.tmp
# NOTE: live/copybot_live.json IS tracked — it's the public dashboard feed

# generated research data (regenerable via edge_research.py / table_77.py)
edge_metrics.jsonl
edge_profitable.json
copyable_77.csv
lp_markets.csv
follow_10.json
lp_paper_state.json

# cross-venue scanner output
xarb_hits.csv
hunt.log
recv.log
watcher_state.json
huntwide.csv
oos.log
hunt.log

# live/ + wide/ — large local data + regenerable artifacts
*.duckdb
*.duckdb.wal
live/candidates.json
live/scored.json
live/*_scored.json
live/watch_prejune*.json
live/history/
live/slug_cache.json
archive/local/
live/edge_verdict.txt
live/rtds.duckdb
research/forward.log
research/launchd.log
research/.nightly.lock.d
research/__pycache__/
live/parquet/
live/tape_sync.log
