__pycache__/
*.pyc
.venv/
dist/
.pytest_cache/
.mypy_cache/
.ruff_cache/
athyr.local.toml

# local agent tooling — never a package input; TB-E14-05 review round 1 found
# these built straight into the sdist (untracked files aren't excluded by
# the sdist's default git-based file selection, only by .gitignore/explicit
# include lists)
.claude/
.codegraph/

# subagent-driven-development. Task Briefs (specs/) are the PSE's mandated primary source
# (CLAUDE.md §2) and a durable governance record — they are TRACKED. Everything else under
# .superpowers/ is agent scratch (sdd/ workspaces, reports, review diffs) and stays ignored.
.superpowers/*
!.superpowers/specs/
.superpowers/specs/*
!.superpowers/specs/*.md
.DS_Store

# Work-ledger runtime artifact — DEC-015: rebuildable from contracts, NEVER committed.
# The canonical copy lives at the platform root; this guard stops a stray `git add -A`
# from committing a developer's local copy.
athyr-ledger.db
# NOTE: `*.db` is broad and it DOES reach the build — hatchling drops gitignored files from
# the wheel and the sdist. If a .db is ever needed as package data, add a negation, but mind
# two traps, both measured:
#  1. Hatchling resolves these paths relative to the PACKAGE BEING BUILT, not the repo root.
#     For a connector write `!src/<import_pkg>/that.db` or unanchored `!**/that.db` — that is
#     the UNDERSCORED import name (athyr_connector_csvfile), not the hyphenated distribution
#     name. The repo-root form `!connectors/<name>/src/<import_pkg>/that.db` is what git wants
#     and `git status` will
#     confirm it — while the build silently omits the file anyway.
#  2. For the ROOT package, `[tool.hatch.build.targets.sdist] include` is an allowlist, so a
#     path outside `/src/athyr` needs an entry there too. Connectors have no allowlist, so
#     .gitignore alone governs them — the two halves of this repo behave differently.
# Verify with `uv build` and inspect the artifact. Do not trust `git status` alone.
*.db
*.db-wal
*.db-shm

# Agent-tooling caches. None of these exist here today; mirrored from athyr-suite so a first
# run of tokensave/impeccable does not leave addable config beside the DBs `*.db` already catches.
.agents/
.impeccable/
.tokensave/
.ua/
