n8n/packages/@n8n/instance-ai/eslint.config.mjs
Bernhard Wittmann b445221c6a
feat: Computer-use evaluation harness (no-changelog) (#29797)
Co-authored-by: Elias Meire <elias@meire.dev>
2026-05-12 08:36:12 +00:00

41 lines
1.4 KiB
JavaScript

import { defineConfig } from 'eslint/config';
import { baseConfig } from '@n8n/eslint-config/base';
export default defineConfig(baseConfig, {
ignores: ['scripts/**/*.cjs'],
}, {
rules: {
// Mastra tool names are kebab-case identifiers (e.g. 'list-workflows')
// which require quotes in object literals — skip naming checks for those
'@typescript-eslint/naming-convention': [
'error',
{
selector: 'objectLiteralProperty',
modifiers: ['requiresQuotes'],
format: null,
},
],
},
}, {
files: ['src/tools/__tests__/**/*.test.ts'],
rules: {
// Tool execute() returns complex discriminated-union types that resolve
// differently across environments (error-typed in CI). Relax type-safety
// lint rules in test files where we assert on tool behavior, not types.
'@typescript-eslint/no-unsafe-assignment': 'off',
'@typescript-eslint/no-unsafe-member-access': 'off',
'@typescript-eslint/no-unsafe-argument': 'off',
},
}, {
files: ['evaluations/computer-use/report-html.ts'],
rules: {
// Large template literal + inline CSS: type-aware `no-unsafe-*` rules
// can false-positive (imports/fields show as `error` in some editors).
// `tsc -p` still typechecks this file (evaluations/** is in tsconfig).
'@typescript-eslint/no-unsafe-assignment': 'off',
'@typescript-eslint/no-unsafe-member-access': 'off',
'@typescript-eslint/no-unsafe-argument': 'off',
'@typescript-eslint/no-unsafe-call': 'off',
},
});