Found while implementing objectui#3240 (PR #7523). Recording the boundary that change deliberately did not cross, so it is visible rather than inferred.
Vitest loads the config it finds in the directory it was launched from, and its fallback does not stop at vitest.config.* — with none present it uses that directory's vite.config.*. PR #7523 makes every packages/PKG/vite.config.ts call assertCanonicalVitestInvocation (gated on process.env.VITEST, so vite build is never refused), and a pin in scripts/__tests__/vitest-invocation-guard.test.ts keeps it that way.
Two directories are excluded on purpose:
examples/byo-backend-console/vite.config.ts
examples/console-starter/vite.config.ts
They are templates a user copies out of the repo. A ../../scripts/vitest-invocation-guard.mjs import would resolve here and break there — in the one place the example is supposed to work.
What that leaves. Neither has a test script or a vitest devDependency, so pnpm --filter ... test and turbo run test cannot reach them. The only route is a hand-typed cd examples/console-starter && pnpm exec vitest run, which would collect examples/console-starter/test/vite-alias-closure.test.ts (1 file, real, and also collected by the root unit project) under a build config with no alias table and no setup, unrefused.
⚠️ This is pre-existing and unchanged by PR #7523 — both directories were on this route before it and after. It is filed because that PR makes the rest of the population uniform, which turns these two from "part of a large gap" into "the whole of a small one", and a small named gap is the kind that stops being noticed.
Not obviously worth fixing; the options all have a cost:
⛔ No action taken. Filed for triage, not as a defect claim.
Generated by Claude Code
Found while implementing objectui#3240 (PR #7523). Recording the boundary that change deliberately did not cross, so it is visible rather than inferred.
Vitest loads the config it finds in the directory it was launched from, and its fallback does not stop at
vitest.config.*— with none present it uses that directory'svite.config.*. PR #7523 makes everypackages/PKG/vite.config.tscallassertCanonicalVitestInvocation(gated onprocess.env.VITEST, sovite buildis never refused), and a pin inscripts/__tests__/vitest-invocation-guard.test.tskeeps it that way.Two directories are excluded on purpose:
examples/byo-backend-console/vite.config.tsexamples/console-starter/vite.config.tsThey are templates a user copies out of the repo. A
../../scripts/vitest-invocation-guard.mjsimport would resolve here and break there — in the one place the example is supposed to work.What that leaves. Neither has a
testscript or avitestdevDependency, sopnpm --filter ... testandturbo run testcannot reach them. The only route is a hand-typedcd examples/console-starter && pnpm exec vitest run, which would collectexamples/console-starter/test/vite-alias-closure.test.ts(1 file, real, and also collected by the rootunitproject) under a build config with no alias table and no setup, unrefused.Not obviously worth fixing; the options all have a cost:
⛔ No action taken. Filed for triage, not as a defect claim.
Generated by Claude Code