Feature: Resource type validation helper coverage
  Exercise uncovered lines in _resource_type_validation.py:
    - Lines 211-213: auto_discovery rule that is not a dict
    - Lines 217-218: auto_discovery rule.type that is not a non-empty string
    - Lines 224-226: auto_discovery rule.type that fails both name regexes
    - Lines 246-248: auto_discovery scan_depth that is not a positive integer

  Scenario: auto_discovery rule entry that is not a dict raises ValueError
    Given rtvcov a resource name "test-res"
    And rtvcov an auto_discovery config with a non-dict rule entry
    When rtvcov validate_auto_discovery is called
    Then rtvcov a ValueError is raised containing "must be a dict"

  Scenario: auto_discovery rule with empty type string raises ValueError
    Given rtvcov a resource name "test-res"
    And rtvcov an auto_discovery config with a rule whose type is empty
    When rtvcov validate_auto_discovery is called
    Then rtvcov a ValueError is raised containing "must be a non-empty string"

  Scenario: auto_discovery rule with non-string type raises ValueError
    Given rtvcov a resource name "test-res"
    And rtvcov an auto_discovery config with a rule whose type is an integer
    When rtvcov validate_auto_discovery is called
    Then rtvcov a ValueError is raised containing "must be a non-empty string"

  Scenario: auto_discovery rule type that is not a valid resource type name raises ValueError
    Given rtvcov a resource name "test-res"
    And rtvcov an auto_discovery config with a rule whose type is "!!!invalid"
    When rtvcov validate_auto_discovery is called
    Then rtvcov a ValueError is raised containing "is not a valid resource type name"

  Scenario: auto_discovery scan_depth that is zero raises ValueError
    Given rtvcov a resource name "test-res"
    And rtvcov an auto_discovery config with scan_depth set to 0
    When rtvcov validate_auto_discovery is called
    Then rtvcov a ValueError is raised containing "a positive integer"

  Scenario: auto_discovery scan_depth that is negative raises ValueError
    Given rtvcov a resource name "test-res"
    And rtvcov an auto_discovery config with scan_depth set to -3
    When rtvcov validate_auto_discovery is called
    Then rtvcov a ValueError is raised containing "a positive integer"

  Scenario: auto_discovery scan_depth that is a string raises ValueError
    Given rtvcov a resource name "test-res"
    And rtvcov an auto_discovery config with scan_depth set to a string
    When rtvcov validate_auto_discovery is called
    Then rtvcov a ValueError is raised containing "a positive integer"
