diff --git a/gdlintrc b/gdlintrc index c41f26b4..c4394d61 100644 --- a/gdlintrc +++ b/gdlintrc @@ -37,7 +37,13 @@ sub-class-name: _?([A-Z][a-z0-9]*)+ # Limits (aligned with Lilith ecosystem standards) max-line-length: 100 max-file-lines: 500 -max-public-methods: 20 +# Project-specific carveout: GDExtension wrapper classes and autoload singletons +# legitimately expose wide APIs and cannot be meaningfully split. +# DataLoader — game data bus, 99 typed accessors (all intentional) +# city.gd — GdCity GDExtension bridge, ~48 bridge methods +# game_state / ecology_db / data_loader_ecology — wide singletons by design +# Game-logic classes are expected to stay well under 30. +max-public-methods: 100 max-returns: 6 function-arguments-number: 10 @@ -47,15 +53,18 @@ tab-characters: 1 # Enabled checks # trailing-whitespace, unnecessary-pass, mixed-tabs-and-spaces are active (not null) -# Disabled checks +# Disabled checks (set per-rule to null = no custom pattern, rule still active) comparison-with-itself: null duplicated-load: null expression-not-assigned: null no-elif-return: null -no-else-return: null -unused-argument: null # Exclusions -disable: [] +# Project-specific: no-else-return fights explicit early-return readability in +# physics code, and unused-argument fires on GDExtension wrapper methods that +# intentionally accept args for parity with the Rust side. +disable: + - no-else-return + - unused-argument excluded_directories: !!set .git: null