import { defineConfig } from 'vitest/config'; export default defineConfig({ test: { globals: false, environment: 'node', include: ['tests/**/*.test.ts'], coverage: { provider: 'v8', reporter: ['text', 'lcov', 'html'], include: ['src/**/*.ts'], exclude: ['src/**/*.test.ts', 'src/index.ts'], thresholds: { // Threshold strict applique sur src/domain. Adapters couverts via tests integration (bloc 6). 'src/domain/**': { lines: 80, functions: 80, branches: 80, statements: 80, }, 'src/adapters/**': { lines: 70, functions: 70, branches: 70, statements: 70, }, 'src/webhooks/**': { lines: 80, functions: 80, branches: 80, statements: 80, }, // Bloc 4 : auth middleware OIDC-ready. Seuil >= 85% lines+branches. 'src/middleware/auth.ts': { lines: 85, functions: 85, branches: 85, statements: 85, }, // R2.3b : verifier JWT HMAC DocAdenice. 'src/middleware/docmost-jwt-verifier.ts': { lines: 85, functions: 85, branches: 85, statements: 85, }, // Bloc 5 : rate limit middleware + cache helper. 'src/middleware/rate-limit.ts': { lines: 85, functions: 85, branches: 85, statements: 85, }, 'src/lib/cache.ts': { lines: 85, functions: 85, branches: 85, statements: 85, }, }, }, passWithNoTests: true, }, });