import { defineConfig } from "oxlint"; // Oxlint here runs only the vendored anti-slop plugin; ESLint remains the // general-purpose linter for this repository. export default defineConfig({ categories: { correctness: "off", }, ignorePatterns: [ "**/node_modules/**", "**/dist/**", "**/build/**", "**/out/**", "**/.next/**", "**/ios/**", "**/android/**", ".agents/**", ".claude/**", ".conductor/**", ".opencode/**", ".openchamber/**", ".tmp/**", "patches/**", "bun-patches/**", "tools/oxlint/anti-slop/**", ], jsPlugins: [ { name: "anti-slop", specifier: "./tools/oxlint/anti-slop/index.ts" }, ], rules: { "anti-slop/no-chained-type-assertions": "error", "anti-slop/no-conditional-empty-object-spread": "error", "anti-slop/no-known-value-widening": "error", "anti-slop/no-module-mocking": "error", "anti-slop/no-object-parameters": "error", "anti-slop/no-reflect-apply": "error", "anti-slop/no-reflect-get": "error", "anti-slop/no-runtime-typeof": "error", "anti-slop/no-shape-in-symbol-names": "error", "anti-slop/no-unknown-parameters": "error", "anti-slop/no-unknown-returns": "error", "anti-slop/no-unknown-type-aliases": "error", "anti-slop/no-unsafe-dictionary-type": "error", "anti-slop/no-widen-then-assert": "error", "anti-slop/require-safety-comment-for-type-assertion": "error", }, });