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',
    },
  },
];
