rules: - id: ban-raw-primitive-types languages: [go] message: "Алярм! Использование встроенных типов запрещено. Используйте контрактные обертки из lev0/contract." severity: ERROR patterns: - pattern: func $F(..., $ARG $TYPE, ...) { ... } - metavariable-regex: metavariable: $TYPE regex: ^(bool|byte|uint8|int|float64|string)$ # Список запрещённых примитивов paths: include: ["cmd/**", "lev0/**", "lev1/**", "lev2/**", "lev3/**", "memory/**"] # Применяем только к бизнес-логике exclude: ["vendor/**", "doc/**"] # Исключаем сами обертки