# ── Python ────────────────────────────────────────────────
__pycache__/
*.py[cod]
*$py.class
*.so
.Python

# ── Packaging / build artifacts ───────────────────────────
build/
dist/
*.egg-info/
*.egg
.eggs/
pip-wheel-metadata/
MANIFEST

# ── Test caches ───────────────────────────────────────────
.pytest_cache/
.coverage
.coverage.*
htmlcov/
.tox/
.nox/

# ── Venvs ─────────────────────────────────────────────────
.venv/
.venv-*/
venv/
env/
ENV/

# ── Editor / IDE ──────────────────────────────────────────
.vscode/
.idea/
*.swp
*.swo
.DS_Store
Thumbs.db

# ── Node / JS ────────────────────────────────────────────
node_modules/

# ── styxx runtime state ──────────────────────────────────
chart.jsonl
gif_frames/
demo/frame_*.png

scratch/

# ── External corpora (depression instrument source dumps) ──
# Raw HuggingFace dataset CSVs used to build benchmarks/depression_*.
# 112MB of public corpora — repointable via the training script;
# vendoring would bloat the repo without adding reproducibility we
# don't already have via the dataset URL.
benchmarks/data/depression/solomonk_*.csv

# safety additions
secrets/
tmp/
*.env
.env

# ── Release archives (published to Zenodo, not tracked) ──
release/*.zip
# historical bundle staging dirs (published to Zenodo)
release/v3.5.0-bundle/
release/v3.8.0-bundle/
release/v3.9.0-bundle/
release/v3.9.1-bundle/
release/v7.2.0-bundle/
release/v7.3.0-bundle/

# ── LaTeX build artifacts ────────────────────────────────
*.aux
*.log
*.synctex.gz
*.out
*.toc
telescope/*.json
telescope/timeseries.jsonl
packages/styxx-scope-*.zip

# ── External corpora (fetchable, not redistributed) ──────
# Anthropic sycophancy eval corpus (Perez et al. 2022) —
# fetch via scripts/sycophancy_train_v0.py
benchmarks/data/sycophancy/sycophancy_on_*.jsonl

# ── Browser-session / X-posting debug artifacts ──────────
# Personal-workflow tools coupled to local secrets paths
release/cdp-*.png
release/login-debug-*.png
release/human-[1-9]-*.png
release/bot-chrome-current.png
release/x-article-composer-state.png
scripts/post_emlv_*.py
scripts/post_via_cdp.py
scripts/refresh_x_cookies_and_post.py
scripts/x_post_fathomlab.py

# ── Local dogfood / audit scratch (never redistributed) ──
# Underscore-prefixed scratch, raw test dumps, partial/cache outputs.
_pytest_out.txt
logs/
papers/three-axis-sendtime-gate/_dogfood_tweet.py
papers/three-axis-sendtime-gate/_dogfood_tweet_results.jsonl
scripts/dogfood/_behavior_cache_*.json
scripts/dogfood/out_*_partial.json
scripts/self_audit/_filter_mine.py
papers/grounded-arc/_build/

# ── Activation-residual dumps (regenerable scratch, GB-scale, never tracked) ──
# Per-run activation/residual tensors written by probe harnesses. Multi-hundred-MB
# each (would exceed GitHub's 100MB ceiling); reproducible from the run scripts.
# Probe-WEIGHT artifacts (intent_probe*.npz) are deliverables and remain tracked.
residuals*.npz
papers/**/residuals*.npz

# showcase render artifacts (regenerable from make_signature_gif.py)
papers/showcase-viz/signature_demo.gif
papers/showcase-viz/_frame_*.png

# smoke / invalid run scratch (never read as results, regenerable from the run scripts)
papers/**/*_smoke.json
papers/**/*_smoke.png
papers/**/*_SMOKE_INVALID*
papers/closed-model-frontier/triage_fleet_worklist.json
