# bunfig.toml — Bun's config. One section so far, and one reason for it. # # A checkout that once ran Bazel carries its convenience symlinks at the workspace root, and # one of them pointed at the execroot, which links every source file back here. `bun test` # follows them, so a test file is discovered twice and — worse than a doubled count — loaded # under two paths, which breaks child-process spawning for the whole run. # # Anchored `bazel-*/*`, not `**/bazel-*/*`: the symlinks live only at the workspace root, and # .gitignore anchors its own `/bazel-*` for the same reason. # # This deliberately does NOT list which directories hold tests. The one rootward `bun test` # is the point (Sjel#116): a test file added anywhere is gated by existing, and the moment # this file starts naming directories, a new test's coverage depends on someone remembering # to come here. # # Third-party pi package tests use their own runners. Keep them outside Bun's discovery. # Optional upstream packages are installed by Pi and are not tested in this checkout. # ---- the [install] hold is deliberately NOT here --------------------------------------------- # # Bun reads configuration only from the directory where it runs. Install holds and security # scanners therefore live beside each package's lockfile; tools/check-bun-install-policy.sh # derives the checked set from those lockfiles. [test] pathIgnorePatterns = ["bazel-*/*", "Packs/*/pi-packages/**", "crates/comms/clipper/**"] # Builds sjel-cli once before collection; tools/lib/sjel-cli-preload.ts says why. preload = ["./tools/lib/sjel-cli-preload.ts"]