import { configWithoutCloudSupport } from '@n8n/node-cli/eslint'; export default [ ...configWithoutCloudSupport, { files: ['package.json'], rules: { // This is a private, unlicensed Platform extension, not a community package. '@n8n/community-nodes/valid-author': 'off', '@n8n/community-nodes/require-mit-license': 'off', // Keep the tested n8n 2.x runtime boundary instead of the community // marketplace's mandatory wildcard peer range. '@n8n/community-nodes/valid-peer-dependencies': 'off', 'n8n-nodes-base/community-package-json-author-missing': 'off', 'n8n-nodes-base/community-package-json-license-not-default': 'off', }, }, { files: ['./credentials/**/*.ts'], rules: { // Internal capability checks need operator-owned URLs unavailable to a // static credential test. The nodes test them through scoped catalogs. '@n8n/community-nodes/credential-test-required': 'off', '@n8n/community-nodes/credential-documentation-url': 'off', 'n8n-nodes-base/cred-class-field-documentation-url-not-http-url': 'off', }, }, { files: ['./nodes/**/*.ts'], rules: { // Writes are deliberately fail-closed. continueOnFail would disguise a // rejected publish/binding as a successful control-plane operation. '@n8n/community-nodes/require-continue-on-fail': 'off', // The Engine schema contract exposes exactly three package-qualified // workflow nodes. Marking them as tools makes n8n 2.3.2 synthesize three // extra *Tool runtime types and breaks that exact catalog boundary. '@n8n/community-nodes/node-usable-as-tool': 'off', // The stock dynamic-options copy links to vendor documentation in the // product UI. NDC nodes keep that technical runtime brand out of every // user-visible label and description. 'n8n-nodes-base/node-param-description-missing-from-dynamic-options': 'off', 'n8n-nodes-base/node-param-description-wrong-for-dynamic-options': 'off', }, }, ];