content: [tool.pylint.messages_control]
  max-line-length = 120
  disable = [
      "C0111",  # missing-docstring
      "C0103",  # invalid-name
      "R0903",  # too-few-public-methods
      "R0801",  # duplicate-code
      "W0511",  # fixme
      "E1101",  # no-member
      "E1102",  # not-callable (for func.count() false positives)
  ]
  
  [tool.pylint.format]
  max-line-length = 120
  
  [tool.pylint.basic]
  good-names = ["i", "j", "k", "ex", "Run", "_", "id", "db", "T"]
  
  [tool.pylint.design]
  max-args = 10
  max-attributes = 20
  min-public-methods = 0
  
  [tool.pylint.typecheck]
  ignored-modules = ["sqlalchemy.orm", "sqlmodel"]
  ignored-classes = ["SQLAlchemy", "scoped_session"]
  
  [tool.isort]
  profile = "black"
  line_length = 120
  multi_line_output = 3
  include_trailing_comma = true
  force_grid_wrap = 0
  use_parentheses = true
  ensure_newline_before_comments = true
  import_heading_stdlib = "Standard library imports"
  import_heading_thirdparty = "Third-party imports"
  import_heading_firstparty = "Local application imports"
  known_first_party = ["app", "connectors", "gen_model", "graphs"]
  sections = ["STDLIB", "THIRDPARTY", "FIRSTPARTY", "LOCALFOLDER"]
  force_sort_within_sections = true
  
  [tool.black]
  line-length = 120
  target-version = ['py311']
  include = '\.pyi?$'
  extend-exclude = '''
  /(
    # directories
    \.eggs
    | \.git
    | \.hg
    | \.mypy_cache
    | \.tox
    | \.venv
    | build
    | dist
    | alembic
  )/
  '''