# -----------------------------------------------------------------------------
# Myco v0.4.0 .gitignore
#
# This file is fresh-authored for the greenfield rewrite. The pre-rewrite
# .gitignore referenced v0.3 concepts (Wave 8 cleanup notes, notes/n_*.md,
# docs/primordia/archive/, etc.) that now live under legacy_v0_3/ and no
# longer need root-level rules. That content is preserved inside
# legacy_v0_3/.gitignore_v0_3 for historical reference if needed.
# -----------------------------------------------------------------------------

# Python
__pycache__/
*.py[cod]
*.pyo
*.egg-info/
*.egg

# Build artifacts
dist/
build/
*.whl

# Virtual environments
.venv/
venv/
env/

# Test / tooling caches
.pytest_cache/
.coverage
.coverage.*
# v0.5.10: coverage.json was tracked by accident in v0.5.x. Re-
# ignoring it here so ``coverage run --format=json`` output cannot
# re-enter the tree.
coverage.json
coverage.xml
htmlcov/
.mypy_cache/
.ruff_cache/

# OS files
.DS_Store
Thumbs.db

# Editor files
.vscode/
.idea/
*.swp
*.swo
*~

# Misc
*.orig

# Release ephemerals. gh release --notes-file, twine upload logs, and
# other scratch artifacts produced during the release playbook
# (documented in docs/primordia/agent_handoff_v0_4_1_2026-04-15.md §7)
# must never get committed or shipped in sdist.
.release_notes_*.md
upload*.log

# Environment secrets
.env
.env.*

# Claude Code / Cowork session-local settings.
# Stage C.2 (re-)introduced the tracked `.claude/hooks/` and
# `.claude/settings.local.json` subtree — those wire the SessionStart
# + PreCompact hooks to the v0.4.0 CLI. Everything else under .claude/
# remains session-local and untracked.
/.claude/*
!/.claude/hooks/
!/.claude/settings.local.json
# Pre-rewrite tree. C.4 deleted it from git, but belt-and-suspenders:
# a top-level ignore rule means that even if a stray copy of the
# directory reappears in the working tree (restored backup, mount-point
# ghost, etc.), `git add` will refuse to re-stage it.
legacy_v0_3/

# Myco runtime substrate state (generated at runtime, not source of truth).
# The `.myco_state/` directory itself does not exist until Stage C; this
# rule is pre-positioned so that ephemeral runtime files never get staged.
.myco_state/sessions.db
.myco_state/boot_brief.md
.myco_state/autoseeded.txt
.myco_state/decay_baseline.yaml
.myco_state/search_misses.yaml
.myco_state/excretion_counter.json
.myco_state/graph.json
