# --- Python ---
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
dist/
develop-eggs/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# Virtual envs
.venv/
venv/
env/
ENV/
.python-version

# Test / coverage / mypy / pyright
.coverage
.coverage.*
.cache
.pytest_cache/
.mypy_cache/
.dmypy.json
.pyre/
.pyright/
htmlcov/
nosetests.xml
coverage.xml
*.cover
.hypothesis/
.tox/

# --- Node / web tooling (kept out of core repo; here for safety) ---
node_modules/
.pnp.*
.yarn/cache/
.yarn/unplugged/
.yarn/build-state.yml
.yarn/install-state.gz
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# --- C++ / Rust build artifacts (in case reference runtimes land here in early Phase 1) ---
target/
*.o
*.obj
*.a
*.lib
*.dll
*.dylib
*.exe
*.pdb
cmake-build-*/
CMakeCache.txt
CMakeFiles/
CMakeScripts/
Testing/
cmake_install.cmake
install_manifest.txt
compile_commands.json

# --- ROS 2 build dirs ---
build/
install/
log/

# --- Editor and OS junk ---
.vscode/
.idea/
*.swp
*.swo
*~
.DS_Store
Thumbs.db
desktop.ini

# --- Local-only artifacts ---
.env
.env.*
*.log
*.tmp
.local/
.scratch/

# --- Outreach campaign artifacts (operational, not part of the open standard) ---
# Target lists, message drafts, tracking data, and the launch-approval record
# stay local. They are private to the maintainer; committing them would
# telegraph the campaign before launch and could embarrass listed projects.
outreach/
