{
  "ml": {
    "v": "7",
    "eng": "2.9.1",
    "lvl": -1,
    "conf": 0,
    "mods": [
      {
        "cls": 0,
        "raw": 0.000015507141,
        "rte": "az",
        "prob": 0.000015507141
      },
      {
        "cls": 0,
        "raw": 0.00053103763,
        "rte": "az/npm",
        "prob": 0.00053103763
      }
    ],
    "prob": 0.000015507141,
    "files": [
      {
        "id": 0,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000015507141142734326,
        "type": "npm"
      },
      {
        "id": 2,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010132789611816406,
        "type": "package.json"
      },
      {
        "id": 4,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009427468285139184,
        "type": "javascript"
      },
      {
        "id": 8,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000008761882781982422,
        "type": "javascript"
      },
      {
        "id": 9,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010540087714616675,
        "type": "javascript"
      },
      {
        "id": 10,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009655952453613281,
        "type": "javascript"
      },
      {
        "id": 20,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010132789611816406,
        "type": "registry"
      }
    ],
    "version": "v18.18",
    "analyzed_at": "2026-09-13T05:18:29Z"
  },
  "path": "pi-subscription-meter-0.6.0.tgz",
  "raw": {
    "files": [
      {
        "id": 0,
        "mol": "K(Am)",
        "sha": "e9bc5bd6e4f3f1dd411b43cc77a8787599bbb6211b9b5783f159a1e2ca41da2a",
        "path": "pi-subscription-meter-0.6.0.tgz",
        "refs": [
          {
            "to": "pkg:github/championswimmer/pi-subscription-meter",
            "off": 0,
            "kind": "repository"
          }
        ],
        "risk": 2,
        "size": 39376,
        "type": "npm",
        "facts": {
          "metrics": {
            "file": {
              "size": 39376,
              "entropy": 7.99
            },
            "parse": {
              "error_count": 1
            },
            "binary": {
              "peak_region_bytes": 39376,
              "peak_region_entropy": 7.84
            },
            "consistency": {
              "name_repo_mismatch": 0
            }
          }
        },
        "ident": {
          "name": {
            "value": "pi-subscription-meter",
            "source": "npm.name",
            "verified": false
          },
          "urls": [
            {
              "url": "git+https://github.com/championswimmer/pi-subscription-meter.git",
              "kind": "repository",
              "source": "npm.repository.url"
            },
            {
              "url": "https://github.com/championswimmer/pi-subscription-meter#readme",
              "kind": "homepage",
              "source": "npm.homepage"
            }
          ],
          "trust": "unsigned",
          "version": {
            "value": "0.6.0",
            "source": "npm.version",
            "verified": false
          },
          "identifier": {
            "value": "pi-subscription-meter",
            "source": "npm.name",
            "verified": false
          }
        },
        "traits": [
          {
            "id": "well-known/app/development/kilocode::kilo-code-js-bundle",
            "conf": 0.98,
            "crit": 2,
            "desc": "Kilo Code JavaScript bundle marker",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "supply-chain/missing-author",
            "conf": 0.5,
            "crit": 3,
            "desc": "Package has empty or missing author field"
          },
          {
            "id": "well-known/app/development/kilocode::kilo-code-identity",
            "conf": 0.98,
            "crit": 3,
            "desc": "Kilo Code package or integration marker",
            "from": [
              {
                "file": 8
              },
              {
                "file": 9
              },
              {
                "file": 10
              }
            ],
            "uses": [
              0
            ]
          }
        ]
      },
      {
        "ctx": [
          {
            "b": "DKp(rb5Q?awG\u003ceTb5?lFB9g@kv@=p5BzkVheP26vwPw$C3lQDnC4CYnx(v(kiV]R2e\u0026Csoa$K6zar\u003eucB7ol8Acb/jzx.a:b2z$@wQ5rdzGxJgzxK1gvp\u003ca\u0026y?dl$xcp/8AV/Bpz*b]kxcqnrvSM41x(Ffdz/cXazE:(fB-hwgaA.:lxjSh]v@=HeA@",
            "ln": 0,
            "col": 1,
            "line": 1
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "^0.80.10",
              "@earendil-works/pi-coding-agent"
            ],
            [
              "^0.80.10",
              "@earendil-works/pi-tui"
            ],
            [
              "^0.80.10",
              "@earendil-works/pi-ai"
            ],
            [
              "^26.1.1",
              "@types/node"
            ],
            [
              "^7.0.2",
              "typescript"
            ],
            [
              "*",
              "@earendil-works/pi-tui"
            ],
            [
              "*",
              "@earendil-works/pi-coding-agent"
            ],
            [
              "*",
              "@earendil-works/pi-ai"
            ]
          ],
          "metrics": {
            "file": {
              "size": 1335,
              "entropy": 4.72
            },
            "binary": {
              "peak_region_bytes": 1335,
              "peak_region_entropy": 4.64
            },
            "consistency": {
              "name_repo_mismatch": 0
            }
          }
        },
        "id": 2,
        "path": "pi-subscription-meter-0.6.0.tgz!!package/package.json",
        "pid": 0,
        "refs": [
          {
            "to": "pkg:github/championswimmer/pi-subscription-meter",
            "off": 275,
            "kind": "repository"
          }
        ],
        "risk": 1,
        "sha": "aa8872e2420c90af35194b8b2ea6e3a52ffc87c10e7bf2be8d70b5f184cf61d0",
        "size": 1335,
        "traits": [
          {
            "id": "supply-chain/missing-author",
            "conf": 0.5,
            "crit": 3,
            "desc": "Package has empty or missing author field",
            "spans": [
              [
                0,
                21
              ]
            ]
          }
        ],
        "type": "package.json"
      },
      {
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "Number.isFinite"
            ],
            [
              "",
              "Number"
            ],
            [
              "",
              "Number.isFinite"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "Math.min"
            ],
            [
              "",
              "Number.isFinite"
            ],
            [
              "",
              "Number.isFinite"
            ],
            [
              "",
              "clampPercent"
            ],
            [
              "",
              "Math.round"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "Number.isNaN"
            ],
            [
              "",
              "date.getTime"
            ],
            [
              "",
              "Number.isNaN"
            ],
            [
              "",
              "date.getTime"
            ],
            [
              "",
              "Date.UTC"
            ],
            [
              "",
              "now.getUTCFullYear"
            ],
            [
              "",
              "now.getUTCMonth"
            ],
            [
              "",
              "Date.UTC"
            ],
            [
              "",
              "now.getUTCFullYear"
            ],
            [
              "",
              "now.getUTCMonth"
            ],
            [
              "",
              "clampPercent"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "parseDateish"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "Math.round"
            ],
            [
              "",
              "resetAt.getTime"
            ],
            [
              "",
              "Date.now"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "clampPercent"
            ],
            [
              "",
              "formatPercent"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "clampPercent"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "safePercent"
            ],
            [
              "",
              "nextUtcMonthStart"
            ],
            [
              "",
              "currentUtcMonthStart"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "Math.round"
            ],
            [
              "",
              "resetAt.getTime"
            ],
            [
              "",
              "startAt.getTime"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "Math.round"
            ],
            [
              "",
              "resetAt.getTime"
            ],
            [
              "",
              "Date.now"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "clampPercent"
            ],
            [
              "",
              "formatCurrency"
            ],
            [
              "",
              "formatCurrency"
            ],
            [
              "",
              "formatPercent"
            ],
            [
              "",
              "fetch"
            ],
            [
              "",
              "AbortSignal.timeout"
            ],
            [
              "",
              "response.text.catch"
            ],
            [
              "",
              "response.text"
            ],
            [
              "",
              "response.json"
            ],
            [
              "",
              "createAnthropicPercentWindow"
            ],
            [
              "",
              "createAnthropicPercentWindow"
            ],
            [
              "",
              "createAnthropicPercentWindow"
            ],
            [
              "",
              "createAnthropicPercentWindow"
            ],
            [
              "",
              "createAnthropicPercentWindow"
            ],
            [
              "",
              "windows.push"
            ],
            [
              "",
              "createAnthropicExtraWindow"
            ],
            [
              "",
              "windows.push"
            ],
            [
              "",
              "windows.find"
            ],
            [
              "",
              "formatPercent"
            ],
            [
              "",
              "shortWindows.join"
            ],
            [
              "",
              "windows.find"
            ],
            [
              "",
              "window.label.startsWith"
            ],
            [
              "",
              "formatPercent"
            ],
            [
              "",
              "createSubscriptionAuthStorage"
            ],
            [
              "",
              "authStorage.getAuthStatus"
            ],
            [
              "",
              "authStorage.getApiKey"
            ],
            [
              "",
              "fetchAnthropicUsage"
            ],
            [
              "",
              "parseAnthropicWindows"
            ],
            [
              "",
              "usageWindows.some"
            ],
            [
              "",
              "window.label.startsWith"
            ],
            [
              "",
              "notes.push"
            ],
            [
              "",
              "usageWindows.some"
            ],
            [
              "",
              "window.label.startsWith"
            ],
            [
              "",
              "notes.push"
            ],
            [
              "",
              "buildStatusLine"
            ],
            [
              "",
              "authSourceLabel"
            ],
            [
              "",
              "authSourceLabel"
            ],
            [
              "",
              "String"
            ],
            [
              "",
              "message.includes"
            ],
            [
              "",
              "../auth.ts"
            ],
            [
              "",
              "./types.ts"
            ]
          ],
          "mbr": [
            "AbortSignal.timeout",
            "Date.UTC",
            "Date.now",
            "Intl.NumberFormat",
            "Intl.NumberFormat().format",
            "Math.max",
            "Math.min",
            "Math.round",
            "Number.isFinite",
            "Number.isNaN",
            "authStatus.label",
            "authStatus.source",
            "authStorage.getApiKey",
            "authStorage.getAuthStatus",
            "date.getTime",
            "entry.resets_at",
            "entry.utilization",
            "error.message",
            "extra.currency",
            "extra.currency.length",
            "extra.is_enabled",
            "extra.label",
            "extra.monthly_limit",
            "extra.usedPercent",
            "extra.used_credits",
            "extra.utilization",
            "message.includes",
            "notes.push",
            "now.getUTCFullYear",
            "now.getUTCMonth",
            "resetAt.getTime",
            "response.extra_usage",
            "response.five_hour",
            "response.json",
            "response.ok",
            "response.seven_day",
            "response.seven_day_omelette",
            "response.seven_day_opus",
            "response.seven_day_sonnet",
            "response.status",
            "response.statusText",
            "response.text",
            "response.text().catch",
            "shortWindows.join",
            "shortWindows.length",
            "startAt.getTime",
            "usageWindows.length",
            "usageWindows.some",
            "window.label",
            "window.label.startsWith",
            "window.usedPercent",
            "windows.find",
            "windows.push"
          ],
          "tgt": [
            "AbortSignal.timeout",
            "Date",
            "Date.UTC",
            "Date.now",
            "Error",
            "Intl.NumberFormat",
            "Intl.NumberFormat().format",
            "Math.max",
            "Math.min",
            "Math.round",
            "Number",
            "Number.isFinite",
            "Number.isNaN",
            "String",
            "authSourceLabel",
            "authStorage.getApiKey",
            "authStorage.getAuthStatus",
            "buildStatusLine",
            "clampPercent",
            "createAnthropicExtraWindow",
            "createAnthropicPercentWindow",
            "createSubscriptionAuthStorage",
            "currentUtcMonthStart",
            "date.getTime",
            "fetch",
            "fetchAnthropicUsage",
            "formatCurrency",
            "formatPercent",
            "message.includes",
            "nextUtcMonthStart",
            "notes.push",
            "now.getUTCFullYear",
            "now.getUTCMonth",
            "parseAnthropicWindows",
            "parseDateish",
            "parseNumber",
            "resetAt.getTime",
            "response.json",
            "response.text",
            "response.text().catch",
            "safePercent",
            "shortWindows.join",
            "startAt.getTime",
            "usageWindows.some",
            "window.label.startsWith",
            "windows.find",
            "windows.push"
          ],
          "funcs": [
            [
              "parseNumber",
              978
            ],
            [
              "clampPercent",
              1275
            ],
            [
              "safePercent",
              1369
            ],
            [
              "formatPercent",
              1569
            ],
            [
              "formatCurrency",
              1675
            ],
            [
              "authSourceLabel",
              1905
            ],
            [
              "parseDateish",
              2329
            ],
            [
              "nextUtcMonthStart",
              2769
            ],
            [
              "currentUtcMonthStart",
              2921
            ],
            [
              "createAnthropicPercentWindow",
              3072
            ],
            [
              "createAnthropicExtraWindow",
              3976
            ],
            [
              "fetchAnthropicUsage",
              5395
            ],
            [
              "anonymous",
              5815
            ],
            [
              "parseAnthropicWindows",
              5974
            ],
            [
              "anonymous",
              6615
            ],
            [
              "buildStatusLine",
              6867
            ],
            [
              "anonymous",
              6993
            ],
            [
              "anonymous",
              7017
            ],
            [
              "anonymous",
              7066
            ],
            [
              "anonymous",
              7142
            ],
            [
              "anonymous",
              7323
            ],
            [
              "loadAnthropicRuntimeState",
              7519
            ],
            [
              "anonymous",
              9098
            ],
            [
              "anonymous",
              9265
            ]
          ],
          "metrics": {
            "ast": {
              "op.eq": 14,
              "op.gt": 2,
              "op.le": 2,
              "op.lt": 1,
              "op.ne": 2,
              "op.add": 1,
              "op.div": 8,
              "op.lor": 6,
              "op.mul": 9,
              "op.sub": 5,
              "op.land": 4,
              "op.lnot": 10,
              "max_depth": 17,
              "call_count": 101,
              "node_count": 3213,
              "op.coalesce": 5,
              "member_count": 53,
              "max_array_len": 5,
              "op_density.eq": 0,
              "op_density.gt": 0,
              "op_density.le": 0,
              "op_density.lt": 0,
              "op_density.ne": 0,
              "op_density.add": 0,
              "op_density.div": 0,
              "op_density.lor": 0,
              "op_density.mul": 0,
              "op_density.sub": 0,
              "op_density.land": 0,
              "op_density.lnot": 0,
              "max_concat_chain": 2,
              "member_depth_max": 3,
              "max_numeric_array": 3,
              "op_density.coalesce": 0,
              "const_return_function_count": 1,
              "const_return_function_ratio": 0.04,
              "string_return_function_count": 1,
              "string_return_function_ratio": 0.04
            },
            "file": {
              "size": 11921,
              "entropy": 5.04
            },
            "text": {
              "lines": 340,
              "top_char": 101,
              "max_ws_run": 1,
              "digit_ratio": 0.02,
              "space_count": 1758,
              "char_entropy": 5.04,
              "unique_chars": 89,
              "top_char_null": 0,
              "string_density": 0.32,
              "top_char_ratio": 0.08,
              "avg_line_length": 34.06,
              "max_line_length": 165,
              "non_ascii_ratio": 0,
              "empty_line_ratio": 0.16,
              "last_line_length": 2,
              "whitespace_ratio": 0.18,
              "identifier_density": 1.47,
              "line_length_stddev": 32.97,
              "normalized_string_count": 5.86,
              "suspicious_identifier_ratio": 0.01,
              "normalized_unique_identifiers": 16.89
            },
            "binds": {
              "count": 46
            },
            "binary": {
              "peak_region_bytes": 10897,
              "peak_region_entropy": 5.14
            },
            "source": {
              "class_count": 3,
              "function_count": 15
            },
            "imports": {
              "count": 2,
              "relative": 2,
              "relative_ratio": 1,
              "third_party_count": 2,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 2742,
              "count": 108,
              "url_count": 1,
              "avg_length": 25.39,
              "max_length": 153,
              "path_count": 2,
              "avg_entropy": 3.06,
              "empty_count": 1,
              "entropy_stddev": 0.95
            },
            "functions": {
              "count": 18,
              "nested": 5,
              "density": 7.06,
              "anonymous": 9,
              "avg_params": 1,
              "code_ratio": 0.81,
              "max_params": 3,
              "one_liners": 9,
              "length_stddev": 16.28,
              "avg_name_length": 17.27,
              "no_params_count": 4,
              "avg_length_lines": 11.54,
              "max_length_lines": 75,
              "min_length_lines": 1,
              "avg_nesting_depth": 0.42,
              "max_nesting_depth": 2,
              "high_entropy_names": 7,
              "avg_param_name_length": 6.46
            },
            "identifiers": {
              "count": 501,
              "unique": 142,
              "avg_length": 10.85,
              "max_length": 33,
              "min_length": 2,
              "avg_entropy": 2.8,
              "reuse_ratio": 0.28,
              "length_stddev": 6.48,
              "high_entropy_count": 22,
              "high_entropy_ratio": 0.15,
              "all_lowercase_ratio": 0.42,
              "all_uppercase_ratio": 0.04,
              "keyboard_pattern_names": 1
            }
          }
        },
        "id": 4,
        "path": "pi-subscription-meter-0.6.0.tgz!!package/src/extensions/core/providers/anthropic.ts",
        "pid": 0,
        "refs": [
          {
            "to": "../auth.ts",
            "off": 76,
            "file": 5,
            "kind": "local"
          },
          {
            "to": "./types.ts",
            "off": 218,
            "file": 18,
            "kind": "local"
          }
        ],
        "risk": 1,
        "sha": "16085af03d350a70340b9f27e5f19106d43193c6d155d497d15f00970bcfd1ce",
        "size": 11921,
        "traits": [
          {
            "id": "metadata/file/extension/token-shape::bare-alphanumeric-script-basename",
            "conf": 0.9,
            "crit": 2,
            "desc": "Script filename is a bare alphanumeric token",
            "spans": [
              [
                0,
                0
              ]
            ]
          },
          {
            "id": "objectives/anti-analysis/timing/evasion::js-date-loop",
            "atk": "T1497.001",
            "mbc": "B0001.032",
            "conf": 0.5,
            "crit": 1,
            "desc": "Multiple Date object creations in proximity",
            "spans": [
              [
                2529,
                0
              ]
            ]
          },
          {
            "id": "objectives/credential-access/env/secrets/ai-provider::anthropic-api-key",
            "atk": "T1552.001",
            "conf": 0.85,
            "crit": 1,
            "desc": "ANTHROPIC_API_KEY env variable name ref",
            "spans": [
              [
                10192,
                0
              ]
            ]
          }
        ],
        "type": "javascript"
      },
      {
        "ctx": [
          {
            "b": "z*2\u00269wPyvMaBLwAA=k!qa$+J\u003cD2Ntoe{8dUi%(rFfcBk9ze:AlvrcSoA+f5#vrl05xlvT6wi7\u0026GwO2*6okeiXavy6TwGU]lBrCHlaARpdaAz4ax(!xpC{4lEBzkLlx([zsA=(nwx(dA7Aa9\u003c4azC)tA+c?lzEE0\u003cwN({8vp\u003c7!C}GClz/fSravP3\u003elqf*Pog./MuQEQSmpe\u003e?pGy4Pmn+l\u003eazb4#B7EAu3s!0(B95J)mmGNyoJkv}qCQs+l\u0026",
            "ln": 475,
            "col": 61,
            "line": 9
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "providers.filter.map"
            ],
            [
              "",
              "providers.filter"
            ],
            [
              "",
              "getDefaultEnabledProviderIds"
            ],
            [
              "",
              "./anthropic.ts"
            ],
            [
              "",
              "./github-copilot.ts"
            ],
            [
              "",
              "./kilocode.ts"
            ],
            [
              "",
              "./kimi-code.ts"
            ],
            [
              "",
              "./openai-codex.ts"
            ],
            [
              "",
              "./opencode.ts"
            ],
            [
              "",
              "./openrouter.ts"
            ],
            [
              "",
              "./types.ts"
            ],
            [
              "",
              "./xai.ts"
            ]
          ],
          "mbr": [
            "provider.enabledByDefault",
            "provider.id",
            "providers.filter",
            "providers.filter().map"
          ],
          "tgt": [
            "Set",
            "SubscriptionProviderRegistry",
            "getDefaultEnabledProviderIds",
            "providers.filter",
            "providers.filter().map"
          ],
          "funcs": [
            [
              "constructor",
              1107
            ],
            [
              "getAllProviders",
              1336
            ],
            [
              "getEnabledProviders",
              1429
            ],
            [
              "anonymous",
              1520
            ],
            [
              "isEnabled",
              1584
            ],
            [
              "setEnabledProviders",
              1700
            ],
            [
              "anonymous",
              1886
            ],
            [
              "getDefaultEnabledProviderIds",
              2008
            ],
            [
              "anonymous",
              2170
            ],
            [
              "anonymous",
              2215
            ],
            [
              "createDefaultSubscriptionProviderRegistry",
              2253
            ]
          ],
          "metrics": {
            "ast": {
              "op.eq": 1,
              "max_depth": 15,
              "call_count": 11,
              "node_count": 622,
              "member_count": 4,
              "max_array_len": 8,
              "op_density.eq": 0,
              "member_depth_max": 3
            },
            "file": {
              "size": 2736,
              "entropy": 4.94
            },
            "text": {
              "lines": 77,
              "top_char": 114,
              "max_ws_run": 1,
              "space_count": 267,
              "char_entropy": 4.94,
              "unique_chars": 61,
              "top_char_null": 0,
              "string_density": 0.13,
              "top_char_ratio": 0.09,
              "avg_line_length": 34.53,
              "max_line_length": 107,
              "empty_line_ratio": 0.14,
              "last_line_length": 20,
              "whitespace_ratio": 0.13,
              "identifier_density": 1.34,
              "line_length_stddev": 28.46,
              "normalized_string_count": 1.14,
              "normalized_unique_identifiers": 6.06
            },
            "binds": {
              "count": 2
            },
            "binary": {
              "peak_region_bytes": 2736,
              "peak_region_entropy": 4.98
            },
            "source": {
              "class_count": 1,
              "function_count": 7
            },
            "imports": {
              "count": 9,
              "relative": 9,
              "relative_ratio": 1,
              "third_party_count": 9,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 133,
              "count": 10,
              "avg_length": 13.3,
              "max_length": 19,
              "path_count": 10,
              "avg_entropy": 3.25,
              "entropy_stddev": 0.37
            },
            "comments": {
              "chars": 105,
              "count": 1,
              "lines": 1,
              "to_code_ratio": 0.01
            },
            "functions": {
              "count": 8,
              "nested": 3,
              "density": 14.29,
              "anonymous": 4,
              "avg_params": 0.91,
              "code_ratio": 0.49,
              "max_params": 2,
              "one_liners": 4,
              "length_stddev": 2.39,
              "avg_name_length": 20.29,
              "no_params_count": 2,
              "avg_length_lines": 3.45,
              "max_length_lines": 8,
              "min_length_lines": 1,
              "avg_nesting_depth": 0.36,
              "max_nesting_depth": 1,
              "high_entropy_names": 5,
              "avg_param_name_length": 10.7
            },
            "identifiers": {
              "count": 103,
              "unique": 38,
              "avg_length": 15.61,
              "max_length": 41,
              "min_length": 2,
              "avg_entropy": 3.09,
              "reuse_ratio": 0.37,
              "length_stddev": 9.5,
              "high_entropy_count": 16,
              "high_entropy_ratio": 0.42,
              "all_lowercase_ratio": 0.26,
              "all_uppercase_ratio": 0.05
            }
          }
        },
        "id": 8,
        "mol": "K(Am)",
        "path": "pi-subscription-meter-0.6.0.tgz!!package/src/extensions/core/providers/index.ts",
        "pid": 0,
        "refs": [
          {
            "to": "./anthropic.ts",
            "off": 35,
            "file": 4,
            "kind": "local"
          },
          {
            "to": "./github-copilot.ts",
            "off": 91,
            "file": 6,
            "kind": "local"
          },
          {
            "to": "./kilocode.ts",
            "off": 147,
            "file": 9,
            "kind": "local"
          },
          {
            "to": "./kimi-code.ts",
            "off": 197,
            "file": 10,
            "kind": "local"
          },
          {
            "to": "./opencode.ts",
            "off": 248,
            "file": 12,
            "kind": "local"
          },
          {
            "to": "./openai-codex.ts",
            "off": 301,
            "file": 11,
            "kind": "local"
          },
          {
            "to": "./openrouter.ts",
            "off": 357,
            "file": 13,
            "kind": "local"
          },
          {
            "to": "./xai.ts",
            "off": 404,
            "file": 19,
            "kind": "local"
          },
          {
            "to": "./types.ts",
            "off": 492,
            "file": 18,
            "kind": "local"
          }
        ],
        "risk": 1,
        "sha": "4851c73ed6e69e9743d60e72884bb3b3e59c0042363d30bfc682d6a697b2e8e9",
        "size": 2736,
        "traits": [
          {
            "id": "well-known/app/development/kilocode::kilo-code-js-bundle",
            "conf": 0.98,
            "crit": 2,
            "desc": "Kilo Code JavaScript bundle marker",
            "spans": [
              [
                539,
                0
              ]
            ]
          },
          {
            "id": "well-known/app/development/kilocode::kilo-code-identity",
            "conf": 0.98,
            "crit": 3,
            "desc": "Kilo Code package or integration marker",
            "uses": [
              0
            ],
            "spans": [
              [
                539,
                9
              ]
            ]
          }
        ],
        "type": "javascript"
      },
      {
        "ctx": [
          {
            "b": "x(d*cA=-BJaAz44wjyoHwM9\u003e(v\u003c3gxw].*bar\u003eYwwmW/lB0rWMx(d*cA=-BJaztXgwN]H}aBLwAA=k!qb5RsfwJB:Jb0ccCze:AlBrC]MyhW*7aBLwAA=k!qb5RsfwJB^sBz8\u0026",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "ax9z(B7ol8Acb/jzCUv(C4\u003eF#AZTFJx(mTbx(v(ijS]7UarUxeiV]RZx(4Y$z!9A6ed9Hxy**^:y=SW.okeiXavy6TwG\u0026VjarU-sz/P}[vpA!:iV]Rtx(4Yied9HxwO${=y?mczC%(jQvrDydiV@3yy\u0026:es3lQE9ze:r5zdNQbvruj4zC$T=BAIT=ar\u003eJpAbo95wO#Q3wfJMiarUiaB7ol8Acb/jzAn):oLFVYawlA+zY?LUBy/V8C{3N8yY",
            "ln": 14498,
            "col": 31,
            "line": 430
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "Number.isFinite"
            ],
            [
              "",
              "Number"
            ],
            [
              "",
              "Number.isFinite"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "Math.min"
            ],
            [
              "",
              "Number.isFinite"
            ],
            [
              "",
              "Number.isFinite"
            ],
            [
              "",
              "clampPercent"
            ],
            [
              "",
              "JSON.parse"
            ],
            [
              "",
              "readFileSync"
            ],
            [
              "",
              "Array.isArray"
            ],
            [
              "",
              "providers.find"
            ],
            [
              "",
              "parsePiCredential"
            ],
            [
              "",
              "authStorage.get"
            ],
            [
              "",
              "parsePiCredential"
            ],
            [
              "",
              "authStorage.get"
            ],
            [
              "",
              "parseLocalKiloCredential"
            ],
            [
              "",
              "readJsonFile"
            ],
            [
              "",
              "join"
            ],
            [
              "",
              "homedir"
            ],
            [
              "",
              "parseLegacyKiloConfig"
            ],
            [
              "",
              "readJsonFile"
            ],
            [
              "",
              "join"
            ],
            [
              "",
              "homedir"
            ],
            [
              "",
              "firstPresentEnv"
            ],
            [
              "",
              "firstPresentEnv"
            ],
            [
              "",
              "fetch"
            ],
            [
              "",
              "AbortSignal.timeout"
            ],
            [
              "",
              "response.text.catch"
            ],
            [
              "",
              "response.text"
            ],
            [
              "",
              "response.json"
            ],
            [
              "",
              "fetchKiloJson"
            ],
            [
              "",
              "fetchKiloJson"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "reportedTotalCreditsFromBalance"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "totalUsageFromBalance"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "reportedTotalCreditsFromBalance"
            ],
            [
              "",
              "totalCreditsFromBalance"
            ],
            [
              "",
              "totalUsageFromBalance"
            ],
            [
              "",
              "windows.push"
            ],
            [
              "",
              "formatCurrency"
            ],
            [
              "",
              "formatCurrency"
            ],
            [
              "",
              "formatCurrency"
            ],
            [
              "",
              "formatCurrency"
            ],
            [
              "",
              "windows.push"
            ],
            [
              "",
              "safePercent"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "formatCurrency"
            ],
            [
              "",
              "formatCurrency"
            ],
            [
              "",
              "formatCurrency"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "windows.push"
            ],
            [
              "",
              "windows.push"
            ],
            [
              "",
              "createSubscriptionAuthStorage"
            ],
            [
              "",
              "resolveKiloAuth"
            ],
            [
              "",
              "Promise.allSettled"
            ],
            [
              "",
              "fetchKiloProfile"
            ],
            [
              "",
              "fetchKiloBalance"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "parseNumber"
            ],
            [
              "",
              "Array.isArray"
            ],
            [
              "",
              "organizations.find"
            ],
            [
              "",
              "notes.unshift"
            ],
            [
              "",
              "notes.unshift"
            ],
            [
              "",
              "notes.push"
            ],
            [
              "",
              "notes.push"
            ],
            [
              "",
              "formatCurrency"
            ],
            [
              "",
              "buildKiloUsageWindows"
            ],
            [
              "",
              "String"
            ],
            [
              "",
              "../auth.ts"
            ],
            [
              "",
              "./types.ts"
            ],
            [
              "",
              "node:fs"
            ],
            [
              "",
              "node:os"
            ],
            [
              "",
              "node:path"
            ]
          ],
          "mbr": [
            "AbortSignal.timeout",
            "Array.isArray",
            "Intl.NumberFormat",
            "Intl.NumberFormat().format",
            "JSON.parse",
            "Math.max",
            "Math.min",
            "Number.isFinite",
            "Promise.allSettled",
            "authStorage.get",
            "balanceResponse.balance",
            "balanceResponse.isDepleted",
            "balanceResult.reason",
            "balanceResult.status",
            "balanceResult.value",
            "credential.access",
            "credential.access.length",
            "credential.accountId",
            "credential.key",
            "credential.key.length",
            "credential.type",
            "currentOrganization.name",
            "currentOrganization.role",
            "error.message",
            "legacyKilo.accessToken",
            "localKilo.accessToken",
            "notes.push",
            "notes.unshift",
            "orgEnv.name",
            "orgEnv.value",
            "organization.id",
            "organizations.find",
            "piKilo.accessToken",
            "piKilocode.accessToken",
            "process.env",
            "process.env.KILO_API_URL",
            "profile.email",
            "profile.organizations",
            "profile.user",
            "profile.user.email",
            "profileResult.status",
            "profileResult.value",
            "provider.kilocodeOrganizationId",
            "provider.kilocodeToken",
            "provider.kilocodeToken.length",
            "providers.find",
            "resolvedAuth.accessToken",
            "resolvedAuth.authSource",
            "resolvedAuth.organizationId",
            "resolvedAuth.organizationSource",
            "response.balance",
            "response.creditsPurchased",
            "response.json",
            "response.ok",
            "response.purchased_credits",
            "response.status",
            "response.statusText",
            "response.text",
            "response.text().catch",
            "response.totalCredits",
            "response.totalUsage",
            "response.total_credits",
            "response.total_usage",
            "tokenEnv.name",
            "tokenEnv.value",
            "value.length",
            "windows.push"
          ],
          "tgt": [
            "AbortSignal.timeout",
            "Array.isArray",
            "Date",
            "Error",
            "Intl.NumberFormat",
            "Intl.NumberFormat().format",
            "JSON.parse",
            "Math.max",
            "Math.min",
            "Number",
            "Number.isFinite",
            "Promise.allSettled",
            "String",
            "authStorage.get",
            "buildKiloUsageWindows",
            "clampPercent",
            "createSubscriptionAuthStorage",
            "fetch",
            "fetchKiloBalance",
            "fetchKiloJson",
            "fetchKiloProfile",
            "firstPresentEnv",
            "formatCurrency",
            "homedir",
            "join",
            "notes.push",
            "notes.unshift",
            "organizations.find",
            "parseLegacyKiloConfig",
            "parseLocalKiloCredential",
            "parseNumber",
            "parsePiCredential",
            "providers.find",
            "readFileSync",
            "readJsonFile",
            "reportedTotalCreditsFromBalance",
            "resolveKiloAuth",
            "response.json",
            "response.text",
            "response.text().catch",
            "safePercent",
            "totalCreditsFromBalance",
            "totalUsageFromBalance",
            "windows.push"
          ],
          "funcs": [
            [
              "parseNumber",
              1508
            ],
            [
              "clampPercent",
              1805
            ],
            [
              "safePercent",
              1899
            ],
            [
              "formatCurrency",
              2099
            ],
            [
              "readJsonFile",
              2317
            ],
            [
              "parsePiCredential",
              2475
            ],
            [
              "parseLocalKiloCredential",
              3310
            ],
            [
              "parseLegacyKiloConfig",
              4366
            ],
            [
              "anonymous",
              4675
            ],
            [
              "firstPresentEnv",
              5396
            ],
            [
              "resolveKiloAuth",
              5656
            ],
            [
              "fetchKiloJson",
              6870
            ],
            [
              "anonymous",
              7318
            ],
            [
              "fetchKiloProfile",
              7456
            ],
            [
              "fetchKiloBalance",
              7620
            ],
            [
              "reportedTotalCreditsFromBalance",
              7904
            ],
            [
              "totalUsageFromBalance",
              8182
            ],
            [
              "totalCreditsFromBalance",
              8349
            ],
            [
              "buildKiloUsageWindows",
              8801
            ],
            [
              "loadKiloCodeRuntimeState",
              10663
            ],
            [
              "anonymous",
              12042
            ]
          ],
          "metrics": {
            "ast": {
              "op.eq": 27,
              "op.gt": 5,
              "op.le": 1,
              "op.ne": 13,
              "op.add": 1,
              "op.div": 1,
              "op.lor": 14,
              "op.mul": 1,
              "op.sub": 2,
              "op.land": 11,
              "op.lnot": 11,
              "max_depth": 19,
              "call_count": 83,
              "node_count": 4103,
              "op.coalesce": 7,
              "member_count": 67,
              "max_array_len": 6,
              "op_density.eq": 0.01,
              "op_density.gt": 0,
              "op_density.le": 0,
              "op_density.ne": 0,
              "op_density.add": 0,
              "op_density.div": 0,
              "op_density.lor": 0,
              "op_density.mul": 0,
              "op_density.sub": 0,
              "op_density.land": 0,
              "op_density.lnot": 0,
              "max_concat_chain": 2,
              "member_depth_max": 3,
              "max_numeric_array": 3,
              "op_density.coalesce": 0,
              "const_return_function_count": 1,
              "const_return_function_ratio": 0.05,
              "string_return_function_count": 1,
              "string_return_function_ratio": 0.05
            },
            "file": {
              "size": 15500,
              "entropy": 5.02
            },
            "text": {
              "lines": 451,
              "top_char": 101,
              "max_ws_run": 1,
              "digit_ratio": 0.01,
              "space_count": 2322,
              "char_entropy": 5.02,
              "unique_chars": 90,
              "top_char_null": 0,
              "lines_over_200": 1,
              "string_density": 0.37,
              "top_char_ratio": 0.07,
              "avg_line_length": 33.37,
              "max_line_length": 215,
              "non_ascii_ratio": 0,
              "empty_line_ratio": 0.14,
              "last_line_length": 2,
              "whitespace_ratio": 0.18,
              "identifier_density": 1.41,
              "line_length_stddev": 34.07,
              "normalized_string_count": 7.91,
              "repeated_char_sequences": 2,
              "suspicious_string_ratio": 0.01,
              "suspicious_identifier_ratio": 0.01,
              "normalized_unique_identifiers": 18.37
            },
            "binds": {
              "count": 39
            },
            "binary": {
              "peak_region_bytes": 3072,
              "peak_region_entropy": 5.37
            },
            "source": {
              "class_count": 4,
              "function_count": 18
            },
            "imports": {
              "count": 5,
              "relative": 2,
              "stdlib_count": 3,
              "stdlib_ratio": 0.6,
              "relative_ratio": 0.4,
              "third_party_count": 2,
              "third_party_ratio": 0.4
            },
            "strings": {
              "sql": 1,
              "bytes": 3627,
              "count": 168,
              "shell": 1,
              "url_count": 1,
              "avg_length": 21.59,
              "max_length": 195,
              "path_count": 7,
              "avg_entropy": 3.04,
              "empty_count": 1,
              "entropy_stddev": 0.75
            },
            "functions": {
              "count": 22,
              "nested": 3,
              "density": 4.66,
              "anonymous": 3,
              "avg_params": 1.19,
              "code_ratio": 0.82,
              "max_params": 3,
              "one_liners": 2,
              "length_stddev": 19.67,
              "avg_name_length": 17.61,
              "no_params_count": 2,
              "avg_length_lines": 17.52,
              "max_length_lines": 82,
              "min_length_lines": 1,
              "avg_nesting_depth": 0.14,
              "max_nesting_depth": 1,
              "high_entropy_names": 9,
              "avg_param_name_length": 8.32
            },
            "identifiers": {
              "count": 638,
              "unique": 162,
              "avg_length": 10.67,
              "max_length": 33,
              "min_length": 1,
              "avg_entropy": 2.77,
              "reuse_ratio": 0.25,
              "length_stddev": 6.5,
              "sequential_names": 1,
              "single_char_count": 1,
              "single_char_ratio": 0.01,
              "high_entropy_count": 17,
              "high_entropy_ratio": 0.1,
              "all_lowercase_ratio": 0.4,
              "all_uppercase_ratio": 0.06
            }
          }
        },
        "id": 9,
        "mol": "K(Am)",
        "path": "pi-subscription-meter-0.6.0.tgz!!package/src/extensions/core/providers/kilocode.ts",
        "pid": 0,
        "refs": [
          {
            "to": "../auth.ts",
            "off": 186,
            "file": 5,
            "kind": "local"
          },
          {
            "to": "./types.ts",
            "off": 328,
            "file": 18,
            "kind": "local"
          }
        ],
        "risk": 1,
        "sha": "b74fa53db891297356bc26a949f667b91bd71733f7c02202083da803bf4d0e0f",
        "size": 15500,
        "traits": [
          {
            "id": "well-known/app/development/kilocode::kilo-code-js-bundle",
            "conf": 0.98,
            "crit": 2,
            "desc": "Kilo Code JavaScript bundle marker",
            "spans": [
              [
                14562,
                0
              ]
            ]
          },
          {
            "id": "well-known/app/development/kilocode::kilo-code-identity",
            "conf": 0.98,
            "crit": 3,
            "desc": "Kilo Code package or integration marker",
            "uses": [
              0
            ],
            "spans": [
              [
                14562,
                9
              ]
            ]
          }
        ],
        "type": "javascript"
      },
      {
        "ctx": [
          {
            "b": "x(d*cA=-BJay/C6vru6VBZ/A4A+PGmx(v(PB-.p}Bz(hdxjSRpBA}?pax9z(B7ol8Acb/jzB5z!xJ61YBAITEEircxz/3Qve?O!=B-.pHBAnS/3tBu@z/P}xBA}?paBsCrax9z(B7ol8Acb/jzCUv(C4\u003eF#AZP",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "A=LPltu@vmax@bk3lQEcwPP5pz//A7lv0V:B09Q*fGPQGarU=DC{4CvarR^HCw7YbwGSyyA=\u003e}xaBsCrarR^Hay/tcB95KKay]zdwH[%EvqH6$aBLv}ayPF5x(\u003eFrwNPaXAXqxzvpQ=ni%)8MarR^Hx\u003ewFown=u%diJ%AarR^HarR^HvSD3*yDz\u003eCarR^HaBKO7",
            "ln": 3501,
            "col": 23,
            "line": 114
          },
          {
            "b": "avy6Tx(mMam[3x1flP66B-Q#7wPF#9zE^Z8x(n2Ba$K6zarR^Jph+j%Bz\u0026phwGUG3zF13jwN({cx([2hokeiXavy6TwH[%FxLy%\u0026azC)tvixS5Aa9=}By=OlA=kGhv@@\u00264zE:(eA=lbnwmY^la$K6zaycJ9arU/Fvp%dMx(mE1Cxk!/tm8F}arV1Ny**^:y=SW.s7L@Uy\u003cviQaAITkBAIT#vpA!:iV]R.z^^f\u003czFd%VRxNMlzF%SbxK#lCao",
            "ln": 12485,
            "col": 55,
            "line": 368
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "Array.isArray"
            ],
            [
              "",
              "Number.isFinite"
            ],
            [
              "",
              "value.trim"
            ],
            [
              "",
              "Number"
            ],
            [
              "",
              "Number.isFinite"
            ],
            [
              "",
              "Math.max"
            ],
            [
              "",
              "Math.min"
            ],
            [
              "",
              "Number.isNaN"
            ],
            [
              "",
              "date.getTime"
            ],
            [
              "",
              "asRecord"
            ],
            [
              "",
              "override.trim"
            ],
            [
              "",
              "override.trim"
            ],
            [
              "",
              "base.replace"
            ],
            [
              "",
              "Number"
            ],
            [
              "",
              "response.headers.get"
            ],
            [
              "",
              "Number.isFinite"
            ],
            [
              "",
              "response.body.getReader"
            ],
            [
              "",
              "reader.read"
            ],
            [
              "",
              "chunks.push"
            ],
            [
              "",
              "reader.releaseLock"
            ],
            [
              "",
              "Buffer.concat"
            ],
            [
              "",
              "JSON.parse"
            ],
            [
              "",
              "asRecord"
            ],
            [
              "",
              "parseKimiNumber"
            ],
            [
              "",
              "parseKimiNumber"
            ],
            [
              "",
              "parseKimiNumber"
            ],
            [
              "",
              "parseOptionalString"
            ],
            [
              "",
              "asRecord"
            ],
            [
              "",
              "asRecord"
            ],
            [
              "",
              "asRecord"
            ],
            [
              "",
              "Array.isArray"
            ],
            [
              "",
              "root.limits.map.filter.map"
            ],
            [
              "",
              "root.limits.map.filter"
            ],
            [
              "",
              "root.limits.map"
            ],
            [
              "",
              "asRecord"
            ],
            [
              "",
              "parseKimiNumber"
            ],
            [
              "",
              "parseOptionalString"
            ],
            [
              "",
              "parseUsageDetail"
            ],
            [
              "",
              "asRecord"
            ],
            [
              "",
              "parseOptionalString"
            ],
            [
              "",
              "parseUsageDetail"
            ],
            [
              "",
              "parseKimiNumber"
            ],
            [
              "",
              "fetch"
            ],
            [
              "",
              "kimiCodingBaseUrl"
            ],
            [
              "",
              "AbortSignal.timeout"
            ],
            [
              "",
              "parseUsagesResponse"
            ],
            [
              "",
              "readBoundedJson"
            ],
            [
              "",
              "clampPercent"
            ],
            [
              "",
              "clampPercent"
            ],
            [
              "",
              "usedPercentOf"
            ],
            [
              "",
              "parseDate"
            ],
            [
              "",
              "createSubscriptionAuthStorage"
            ],
            [
              "",
              "authStorage.getAuthStatus"
            ],
            [
              "",
              "authStorage.get"
            ],
            [
              "",
              "isOAuthCredential"
            ],
            [
              "",
              "asRecord"
            ],
            [
              "",
              "authStorage.getApiKey"
            ],
            [
              "",
              "fetchKimiUsages"
            ],
            [
              "",
              "quotaWindow"
            ],
            [
              "",
              "quotaWindow"
            ],
            [
              "",
              "windowLabel"
            ],
            [
              "",
              "windowMinutes"
            ],
            [
              "",
              "primary.label.toLowerCase"
            ],
            [
              "",
              "Math.round"
            ],
            [
              "",
              "primary.label.toLowerCase"
            ],
            [
              "",
              "authSourceLabel"
            ],
            [
              "",
              "authSourceLabel"
            ],
            [
              "",
              "String"
            ],
            [
              "",
              "../auth.ts"
            ],
            [
              "",
              "./types.ts"
            ]
          ],
          "mbr": [
            "AbortSignal.timeout",
            "Array.isArray",
            "Buffer.concat",
            "JSON.parse",
            "Math.max",
            "Math.min",
            "Math.round",
            "Number.isFinite",
            "Number.isNaN",
            "TextDecoder().decode",
            "asRecord().type",
            "authStatus.label",
            "authStatus.source",
            "authStorage.get",
            "authStorage.getApiKey",
            "authStorage.getAuthStatus",
            "base.replace",
            "chunks.push",
            "credential.access",
            "credential.access.length",
            "credential.type",
            "date.getTime",
            "detail.limit",
            "detail.remaining",
            "detail.resetTime",
            "detail.used",
            "entry.detail",
            "entry.window",
            "error.message",
            "item.detail",
            "item.window",
            "membership.level",
            "override.trim",
            "override.trim().length",
            "parallel.limit",
            "primary.label",
            "primary.label.toLowerCase",
            "primary.usedPercent",
            "process.env",
            "process.env.KIMI_BASE_URL",
            "process.env.KIMI_CODE_BASE_URL",
            "reader.read",
            "reader.releaseLock",
            "response.body",
            "response.body.getReader",
            "response.headers",
            "response.headers.get",
            "response.limits",
            "response.ok",
            "response.parallel",
            "response.parallel.limit",
            "response.status",
            "response.usage",
            "response.user",
            "response.user.membership",
            "response.user.membership.level",
            "root.limits",
            "root.limits.map",
            "root.limits.map().filter",
            "root.limits.map().filter().map",
            "root.parallel",
            "root.usage",
            "root.user",
            "usageWindows.length",
            "user.membership",
            "value.byteLength",
            "value.length",
            "value.trim",
            "value.trim().length",
            "window.duration",
            "window.timeUnit"
          ],
          "tgt": [
            "AbortSignal.timeout",
            "Array.isArray",
            "Buffer.concat",
            "Date",
            "Error",
            "JSON.parse",
            "Math.max",
            "Math.min",
            "Math.round",
            "Number",
            "Number.isFinite",
            "Number.isNaN",
            "String",
            "TextDecoder",
            "TextDecoder().decode",
            "asRecord",
            "authSourceLabel",
            "authStorage.get",
            "authStorage.getApiKey",
            "authStorage.getAuthStatus",
            "base.replace",
            "chunks.push",
            "clampPercent",
            "createSubscriptionAuthStorage",
            "date.getTime",
            "fetch",
            "fetchKimiUsages",
            "isOAuthCredential",
            "kimiCodingBaseUrl",
            "override.trim",
            "parseDate",
            "parseKimiNumber",
            "parseOptionalString",
            "parseUsageDetail",
            "parseUsagesResponse",
            "primary.label.toLowerCase",
            "quotaWindow",
            "readBoundedJson",
            "reader.read",
            "reader.releaseLock",
            "response.body.getReader",
            "response.headers.get",
            "root.limits.map",
            "root.limits.map().filter",
            "root.limits.map().filter().map",
            "usedPercentOf",
            "value.trim",
            "windowLabel",
            "windowMinutes"
          ],
          "funcs": [
            [
              "asRecord",
              1097
            ],
            [
              "parseKimiNumber",
              1390
            ],
            [
              "parseOptionalString",
              1738
            ],
            [
              "clampPercent",
              1907
            ],
            [
              "parseDate",
              2001
            ],
            [
              "isOAuthCredential",
              2254
            ],
            [
              "authSourceLabel",
              2461
            ],
            [
              "kimiCodingBaseUrl",
              2744
            ],
            [
              "readBoundedJson",
              3033
            ],
            [
              "parseUsageDetail",
              4114
            ],
            [
              "parseUsagesResponse",
              4470
            ],
            [
              "anonymous",
              4840
            ],
            [
              "anonymous",
              4902
            ],
            [
              "fetchKimiUsages",
              5562
            ],
            [
              "usedPercentOf",
              6135
            ],
            [
              "windowMinutes",
              6543
            ],
            [
              "windowLabel",
              6920
            ],
            [
              "quotaWindow",
              7350
            ],
            [
              "loadKimiCodeRuntimeState",
              8006
            ],
            [
              "anonymous",
              9612
            ],
            [
              "anonymous",
              9722
            ]
          ],
          "metrics": {
            "ast": {
              "op.eq": 24,
              "op.ge": 2,
              "op.gt": 7,
              "op.le": 4,
              "op.ne": 8,
              "op.add": 1,
              "op.div": 4,
              "op.lor": 6,
              "op.mod": 2,
              "op.mul": 7,
              "op.sub": 1,
              "op.land": 16,
              "op.lnot": 13,
              "max_depth": 23,
              "call_count": 80,
              "node_count": 3389,
              "op.coalesce": 3,
              "member_count": 71,
              "max_array_len": 4,
              "op_density.eq": 0.01,
              "op_density.ge": 0,
              "op_density.gt": 0,
              "op_density.le": 0,
              "op_density.ne": 0,
              "op_density.add": 0,
              "op_density.div": 0,
              "op_density.lor": 0,
              "op_density.mod": 0,
              "op_density.mul": 0,
              "op_density.sub": 0,
              "op_density.land": 0,
              "op_density.lnot": 0,
              "member_depth_max": 5,
              "max_numeric_array": 3,
              "infinite_loop_count": 1,
              "op_density.coalesce": 0
            },
            "file": {
              "size": 12756,
              "entropy": 4.97
            },
            "text": {
              "lines": 375,
              "top_char": 101,
              "max_ws_run": 1,
              "digit_ratio": 0.01,
              "space_count": 2181,
              "char_entropy": 4.97,
              "unique_chars": 94,
              "top_char_null": 0,
              "string_density": 0.27,
              "top_char_ratio": 0.08,
              "avg_line_length": 33.02,
              "max_line_length": 160,
              "non_ascii_ratio": 0,
              "empty_line_ratio": 0.11,
              "last_line_length": 2,
              "whitespace_ratio": 0.2,
              "identifier_density": 1.39,
              "line_length_stddev": 31.85,
              "normalized_string_count": 5.27,
              "repeated_char_sequences": 7,
              "suspicious_comment_ratio": 0.25,
              "suspicious_identifier_ratio": 0.01,
              "normalized_unique_identifiers": 17.31
            },
            "binds": {
              "count": 40
            },
            "binary": {
              "peak_region_bytes": 10708,
              "peak_region_entropy": 5.15
            },
            "source": {
              "class_count": 3,
              "function_count": 17
            },
            "imports": {
              "count": 2,
              "relative": 2,
              "relative_ratio": 1,
              "third_party_count": 2,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 2821,
              "count": 102,
              "url_count": 1,
              "avg_length": 27.66,
              "max_length": 148,
              "path_count": 2,
              "avg_entropy": 3.18,
              "empty_count": 1,
              "entropy_stddev": 0.82
            },
            "comments": {
              "chars": 355,
              "count": 4,
              "lines": 4,
              "high_entropy": 1,
              "to_code_ratio": 0.01
            },
            "functions": {
              "count": 20,
              "nested": 2,
              "density": 5.6,
              "anonymous": 4,
              "avg_params": 0.95,
              "code_ratio": 0.83,
              "max_params": 2,
              "one_liners": 2,
              "length_stddev": 18.35,
              "avg_name_length": 14.65,
              "no_params_count": 2,
              "avg_length_lines": 14.86,
              "max_length_lines": 85,
              "min_length_lines": 1,
              "avg_nesting_depth": 0.19,
              "max_nesting_depth": 1,
              "high_entropy_names": 6,
              "avg_param_name_length": 5.9
            },
            "identifiers": {
              "count": 522,
              "unique": 148,
              "avg_length": 9.83,
              "max_length": 33,
              "min_length": 2,
              "avg_entropy": 2.68,
              "reuse_ratio": 0.28,
              "length_stddev": 6.34,
              "has_digit_ratio": 0.01,
              "base64_like_names": 1,
              "high_entropy_count": 16,
              "high_entropy_ratio": 0.11,
              "all_lowercase_ratio": 0.44,
              "all_uppercase_ratio": 0.04,
              "keyboard_pattern_names": 1
            }
          }
        },
        "id": 10,
        "mol": "K(Am)",
        "path": "pi-subscription-meter-0.6.0.tgz!!package/src/extensions/core/providers/kimi-code.ts",
        "pid": 0,
        "refs": [
          {
            "to": "../auth.ts",
            "off": 76,
            "file": 5,
            "kind": "local"
          },
          {
            "to": "./types.ts",
            "off": 218,
            "file": 18,
            "kind": "local"
          }
        ],
        "risk": 1,
        "sha": "4551d7b50bfbbc213424a132c603f56b49384174c3360f18159534d1e1f76255",
        "size": 12756,
        "traits": [
          {
            "id": "well-known/app/development/kilocode::kilo-code-js-bundle",
            "conf": 0.98,
            "crit": 2,
            "desc": "Kilo Code JavaScript bundle marker",
            "spans": [
              [
                12549,
                0
              ]
            ]
          },
          {
            "id": "well-known/app/development/kilocode::kilo-code-identity",
            "conf": 0.98,
            "crit": 3,
            "desc": "Kilo Code package or integration marker",
            "uses": [
              0
            ],
            "spans": [
              [
                12549,
                9
              ]
            ]
          }
        ],
        "type": "javascript"
      },
      {
        "id": 20,
        "sha": "1b6f88988b56e40b7b1252441f62482d96ae1fc589169ebfa988d4b5fcc9d3f0",
        "path": "pi-subscription-meter@0.6.0.registry.json",
        "size": 992,
        "type": "registry",
        "depth": 1
      }
    ],
    "omitted_files": 1,
    "v": "8"
  }
}