node_modules/
dist/
*.log

# bin/rebuild.mjs builds into dist.tmp/ and renames it over dist/, so that a rebuild killed partway
# leaves the previous build intact instead of a half-written one. dist.superseded/ is the old tree
# between the two renames, and .build-lock is the pid file that keeps two rebuilds apart. All three
# are normally gone within milliseconds; they are listed because a killed rebuild leaves them.
dist.tmp/
dist.superseded/
.build-lock

.DS_Store
bin/.node-path

# Generated by an npm-only install path here (build.sh / bin/run.mjs both use
# npm ci); a pnpm-lock.yaml has shown up regardless (#704), most likely from
# tooling outside this repo's own scripts inspecting the directory.
pnpm-lock.yaml
