AllCops:
  # Default formatter will be used if no `-f/--format` option is given.
  DefaultFormatter: progress

  # Enables the result cache if `true`. Can be overridden by the `--cache` command
  # line option.
  UseCache: true

  TargetRubyVersion: 3.3

  NewCops: enable

  SuggestExtensions: false

  Exclude:
    - db/schema.rb
    - db/migrate/**/*
    - vendor/bundle/**/*
    - bin/**/*
    - Rakefile
    - config.ru
    - config/environments/**/*
    - spec/support/**/*
    - config/initializers/**/*
    - config/application.rb

Layout/MultilineOperationIndentation:
  EnforcedStyle: indented

Layout/ParameterAlignment:
  Enabled: false

Metrics/ClassLength:
  Enabled: false

Metrics/ModuleLength:
  Enabled: false

Style/Documentation:
  Enabled: false

Layout/LineLength:
  Max: 150

Metrics/MethodLength:
  Enabled: false

Metrics/BlockLength:
  Enabled: false

Metrics/AbcSize:
  Enabled: false

Style/StringLiterals:
  Enabled: false

Layout/DotPosition:
  EnforcedStyle: trailing
  Enabled: true

Layout/SpaceInsidePercentLiteralDelimiters:
  Enabled: false

Style/FrozenStringLiteralComment:
  Enabled: false

Style/RegexpLiteral:
  Enabled: false

Style/WordArray:
  Enabled: false

Style/SymbolArray:
  Enabled: false

Style/GuardClause:
  Enabled: false

Style/TrailingCommaInArrayLiteral:
  Enabled: false

Style/TrailingCommaInHashLiteral:
  Enabled: false

Style/BarePercentLiterals:
  Enabled: false

Style/MutableConstant:
  Enabled: false

Style/PercentLiteralDelimiters:
  Enabled: false

Naming/VariableNumber:
  Enabled: false

Style/RedundantPercentQ:
  Enabled: false

Lint/ParenthesesAsGroupedExpression:
  Enabled: false

Metrics/PerceivedComplexity:
  Max: 20

Metrics/CyclomaticComplexity:
  Max: 20

Style/ClassAndModuleChildren:
  Enabled: false

Style/AndOr:
  Exclude:
    - '**/*controller.rb'

Bundler/OrderedGems:
  Enabled: false

Lint/MissingSuper:
  Enabled: false

Lint/UnusedMethodArgument:
  Exclude:
    - 'app/services/**/*'