Repository navigation
Expand file tree
/
Copy pathbunfig.toml
More file actions
33 lines (33 loc) · 2.17 KB
/
Copy pathbunfig.toml
File metadata and controls
33 lines (33 loc) · 2.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
[test]
# The rule these two keys enforce, and why it exists, live in ONE place: CLAUDE.md, "HARD RULE --
# the `tests/` partition". Read that before changing either. What belongs here is only what is local
# to this file.
#
# `root` scopes discovery for a BARE `bun test`. It does NOT govern an explicit path argument, and
# the root script passes `./packages ./tests`, so for the run CI actually performs its effect is to
# keep `scripts/*.test.mjs` -- repo tooling, run via `bun run test:scripts` -- out of neither: those
# are outside both paths already. It matters for a bare invocation, and for the coverage floor,
# which is a statement about `packages/*/src`.
#
# `pathIgnorePatterns` is what excludes the Node suite on that explicit `./tests` path, and its
# spelling is the whole game. Bun accepts an unrecognized `[test]` key in silence -- no warning, no
# error, no effect -- so `testPathIgnorePatterns` reads as configured and does nothing. (Naming the
# wrong key here is safe: `scripts/verify-test-partition.mjs` checks for a DECLARATION, not a
# mention, so this file is free to warn about the trap it sits next to.)
#
# Measured on `bun run test`, pinned Bun 1.3.14, 2026-09-04: with the key, 165 files and exit 0;
# without it, 179 files -- the 14 Node files collected by a runner that cannot prove anything about
# Node. That run exits 1 rather than 0, but only by accident: 13 of the 14 pass silently under Bun
# and the 14th fails on an unrelated timer assertion in config-primitives.test.mjs, pointing nowhere
# near the real cause.
root = "packages"
pathIgnorePatterns = ["tests/node-conformance/**"]
coverage = true
coverageThreshold = 0.8
coverageSkipTestFiles = true
# Exclude the BUILT artifact. `@dexpace/codec-json` is a separate package and reaches core only
# through its public entry point, which Bun resolves to `packages/core/dist/index.js` -- so from
# Phase 6a on, running the suite instruments core twice: once as `src/` (the statement this floor is
# about) and once as `dist/`, where only the handful of exports the codec touches are ever reached.
# Left in, the duplicate halves the reported number without a line of real coverage changing.
coveragePathIgnorePatterns = ["**/dist/**"]