Skip to main content

no-vitest-coverage-skip-full-false-in-strict

Disallow test.coverage.skipFull: false in strict-profile shared Vitest config.

Rule catalog ID: R049

Targeted pattern scopeโ€‹

  • vitest.config.*
  • vitest.workspace.*
  • vite.config.* when Vitest coverage options are configured
  • test.coverage.skipFull

What this rule reportsโ€‹

This rule reports explicit test.coverage.skipFull: false assignments in supported config files.

Why this rule existsโ€‹

For stricter shared configs, including fully covered files can create noisy reports that obscure useful deltas. This rule helps keep coverage output focused on actionable gaps.

โŒ Incorrectโ€‹

import { defineConfig } from "vitest/config";

export default defineConfig({
test: {
coverage: {
skipFull: false,
},
},
});

โœ… Correctโ€‹

import { defineConfig } from "vitest/config";

export default defineConfig({
test: {
coverage: {
skipFull: true,
},
},
});

Behavior and migration notesโ€‹

  • this rule checks static boolean assignments only
  • it targets committed config files, not arbitrary source modules

ESLint flat config exampleโ€‹

import vite from "@typpi/eslint-plugin-vite";

export default [vite.configs.strict, vite.configs.vitest];

When not to use itโ€‹

Disable this rule only if full-file coverage verbosity is intentionally required in your reporting workflow.

Package documentationโ€‹

Further readingโ€‹