{
  "ml": {
    "v": "4",
    "fs": [
      {
        "id": 0,
        "prob": 0.9495723843574524,
        "class": 0
      }
    ],
    "prob": 0.9495724,
    "class": 0,
    "version": "v16.16",
    "thresholds": [
      0.9815004,
      0.99404883
    ],
    "analyzed_at": "2026-04-30T08:16:44Z"
  },
  "path": "test_private_reader.rb",
  "raw": {
    "v": "4",
    "fs": [
      {
        "f": "H(F)Md(Pa)",
        "x": 1,
        "id": 0,
        "is": [
          "require",
          "expand_path",
          "require",
          "include",
          "private_reader",
          "new",
          "assert_private",
          "reader",
          "assert_private",
          "assert_equal",
          "get_reader",
          "assert_raises",
          "assert_match",
          "message",
          "File.expand_path('../helper', __FILE__)",
          "rake/private_reader"
        ],
        "ms": {
          "text": {
            "space_count": 120.0,
            "total_lines": 42.0,
            "char_entropy": 4.41,
            "unique_chars": 51.0,
            "import_density": 38.1,
            "string_density": 0.21,
            "avg_line_length": 15.67,
            "max_line_length": 50.0,
            "empty_line_ratio": 0.29,
            "last_line_length": 3.0,
            "most_common_char": "e",
            "whitespace_ratio": 0.23,
            "most_common_ratio": 0.14,
            "identifier_density": 0.62,
            "line_length_stddev": 15.93,
            "dynamic_import_ratio": 0.13,
            "normalized_import_count": 2.47,
            "normalized_string_count": 1.39,
            "max_inline_whitespace_run": 1.0,
            "normalized_function_count": 0.93,
            "imports_to_functions_ratio": 2.67,
            "strings_to_functions_ratio": 1.5,
            "suspicious_identifier_ratio": 0.05,
            "normalized_unique_identifiers": 3.71,
            "identifiers_to_functions_ratio": 3.33
          },
          "imports": {
            "total": 16.0,
            "unique_modules": 14.0,
            "dynamic_imports": 2.0,
            "third_party_count": 16.0,
            "third_party_ratio": 1.0
          },
          "strings": {
            "total": 9.0,
            "avg_length": 9.56,
            "max_length": 19.0,
            "path_count": 2.0,
            "avg_entropy": 2.6,
            "total_bytes": 86.0,
            "entropy_stddev": 0.62
          },
          "comments": {},
          "functions": {
            "total": 6.0,
            "length_stddev": 0.5,
            "avg_name_length": 16.83,
            "no_params_count": 6.0,
            "avg_length_lines": 3.5,
            "max_length_lines": 4.0,
            "min_length_lines": 3.0,
            "density_per_100_lines": 14.29,
            "code_in_functions_ratio": 0.5
          },
          "identifiers": {
            "total": 26.0,
            "avg_length": 10.55,
            "max_length": 32.0,
            "min_length": 1.0,
            "avg_entropy": 2.43,
            "reuse_ratio": 0.77,
            "unique_count": 20.0,
            "length_stddev": 7.76,
            "sequential_names": 1.0,
            "single_char_count": 1.0,
            "single_char_ratio": 0.05,
            "all_lowercase_ratio": 0.95,
            "all_uppercase_ratio": 0.05,
            "double_underscore_count": 1.0,
            "underscore_prefix_count": 1.0
          }
        },
        "ss": [
          [
            25,
            "../helper"
          ],
          [
            26,
            "../helper"
          ],
          [
            56,
            "rake/private_reader"
          ],
          [
            57,
            "rake/private_reader"
          ],
          [
            187,
            "reader"
          ],
          [
            196,
            "a"
          ],
          [
            235,
            "RVALUE"
          ],
          [
            531,
            "RVALUE"
          ],
          [
            667,
            "private"
          ]
        ],
        "sz": 700,
        "ts": [
          {
            "a": "T1059",
            "c": 0.800000011920929,
            "d": "Self-reference via __FILE__",
            "e": [
              "__FILE__"
            ],
            "i": "micro-behaviors/fs/read/self::self-file-reference",
            "l": 3
          },
          {
            "c": 0.8999999761581421,
            "d": "File has 30 or more lines",
            "e": [
              "text.total_lines = 42.00"
            ],
            "i": "metadata/package/metrics::file-has-30-plus-lines",
            "l": 1
          },
          {
            "c": 0.949999988079071,
            "d": "imports File.expand_path('../helper', __FILE__)",
            "e": [
              "File.expand_path('../helper', __FILE__)"
            ],
            "i": "metadata/import/ruby::file/expand_path-helper-__file__",
            "l": 2
          },
          {
            "c": 0.949999988079071,
            "d": "imports rake/private_reader",
            "e": [
              "rake/private_reader"
            ],
            "i": "metadata/import/ruby::rake/private_reader",
            "l": 2
          }
        ],
        "sha": "9792fbb15d8bf3d2ed82ab16ed4c97c352eb58f3e1d601220dd2cb467ae59f03",
        "path": "test_private_reader.rb",
        "type": "ruby"
      }
    ],
    "tv": "f6eaa"
  }
}