node_modules/
*.log
logs/
demo/state.json
.DS_Store

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

# Holiday runtime data (generated smoke-test / server state, e.g. RocksDB LOG)
.baas-smoke/

# LLM/agent local notes — machine-specific, not part of the project
local_compilation_discovery.md

# Claude Code local config (machine-specific paths / permissions); skills are kept
.claude/settings.json
.claude/settings.local.json

# C/C++ core build artifacts
build/
*.dll
*.so
*.dylib
*.o
*.obj
*.a

# ── PRE-PUBLICATION SWEEP (2026-09-01) ──────────────────────────────────────
#
# Caught by the dry-run probe, or known to appear the moment a normal workflow
# is run from the repo root rather than from build/.

# CTest's scratch directory, written into the source tree by `ctest` at root.
Testing/

# Where .github/workflows/ci.yml collects the per-platform library before
# uploading it as a release artifact. A local rehearsal of that step leaves a
# built .dll/.so/.dylib at the repo root.
dist/

# Local virtualenvs for the Python binding.
.venv/
venv/

# There are no npm dependencies (THIRD-PARTY-NOTICES.md). A lockfile here can
# only be a stale artifact — one for express/multer, unused by any code in
# src/, survived from v0.1.0 until the 0.2.12 sweep removed it.
package-lock.json

# ── INTER-PROJECT CORRESPONDENCE (2026-09-02) ───────────────────────────────
#
# `MESSAGE_FOR_<PROJECT>_<topic>-<date>.md` is how the sibling agents hand each
# other bug reports and replies: the sender writes the file into the RECIPIENT's
# repo root. They are working correspondence, not project artifacts, and a
# `git add -A` while one is sitting here would publish it. What is durable from a
# message belongs in okf/log.md, a conformance case, and the code — where the
# 2026-09-02 `related` report from Void Hormiga ended up.
MESSAGE_FOR_*.md
