{
  "ml": {
    "v": "7",
    "eng": "2.12.0-beta.3",
    "lvl": -1,
    "conf": 0,
    "mods": [
      {
        "cls": 0,
        "raw": 0.007874479,
        "rte": "az",
        "prob": 0.007874479
      },
      {
        "cls": 0,
        "raw": 0.013651818,
        "rte": "az/tar",
        "prob": 0.013651818
      }
    ],
    "prob": 0.007874479,
    "files": [
      {
        "id": 0,
        "lvl": -1,
        "conf": 0,
        "prob": 0.007874478586018085,
        "type": "crate"
      },
      {
        "id": 4,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00001055002212524414,
        "type": "text"
      },
      {
        "id": 5,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009695689186628442,
        "type": "rust"
      },
      {
        "id": 6,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000011483828529890161,
        "type": "rust"
      },
      {
        "id": 7,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009874503120954614,
        "type": "rust"
      },
      {
        "id": 8,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010838110938493628,
        "type": "rust"
      },
      {
        "id": 9,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009546677574689966,
        "type": "rust"
      },
      {
        "id": 10,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000012973944649274927,
        "type": "rust"
      },
      {
        "id": 11,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013391177162702661,
        "type": "registry"
      },
      {
        "id": 12,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013391177162702661,
        "type": "registry"
      },
      {
        "id": 13,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013361374840314966,
        "type": "registry"
      },
      {
        "id": 14,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013391177162702661,
        "type": "registry"
      },
      {
        "id": 15,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013361374840314966,
        "type": "registry"
      },
      {
        "id": 16,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013391177162702661,
        "type": "registry"
      },
      {
        "id": 17,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013391177162702661,
        "type": "registry"
      },
      {
        "id": 18,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000014454126358032227,
        "type": "registry"
      },
      {
        "id": 19,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000014454126358032227,
        "type": "registry"
      },
      {
        "id": 20,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000012914340004499536,
        "type": ""
      },
      {
        "id": 21,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000012914340004499536,
        "type": ""
      },
      {
        "id": 22,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000015497207641601562,
        "type": ""
      },
      {
        "id": 23,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000012914340004499536,
        "type": ""
      },
      {
        "id": 24,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000012914340004499536,
        "type": ""
      },
      {
        "id": 25,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00001681844332779292,
        "type": ""
      },
      {
        "id": 26,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000016828378647915088,
        "type": "crate"
      },
      {
        "id": 31,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010202328667219263,
        "type": "rust"
      },
      {
        "id": 32,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000008980433449323755,
        "type": "rust"
      },
      {
        "id": 34,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013361374840314966,
        "type": "rust"
      },
      {
        "id": 35,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013808409676130395,
        "type": "rust"
      },
      {
        "id": 36,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009745359420776367,
        "type": "rust"
      },
      {
        "id": 37,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010659297004167456,
        "type": "rust"
      },
      {
        "id": 38,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009497006431047339,
        "type": "rust"
      },
      {
        "id": 39,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00001777211764419917,
        "type": "crate"
      },
      {
        "id": 46,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000008970499038696289,
        "type": "rust"
      },
      {
        "id": 47,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000011980533599853516,
        "type": "rust"
      },
      {
        "id": 49,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00002242127993667964,
        "type": "rust"
      },
      {
        "id": 51,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009953975677490234,
        "type": "rust"
      },
      {
        "id": 52,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009149312973022461,
        "type": "rust"
      },
      {
        "id": 53,
        "lvl": -1,
        "conf": 0,
        "prob": 0.00001282493303733645,
        "type": "rust"
      },
      {
        "id": 54,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000013043482795183081,
        "type": "rust"
      },
      {
        "id": 55,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000009586413398210425,
        "type": "rust"
      },
      {
        "id": 56,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000017404556274414062,
        "type": "registry"
      }
    ],
    "version": "v18.18",
    "analyzed_at": "2026-10-09T22:37:26Z"
  },
  "path": "lopatnov-conduit-limits-2.0.0.crate",
  "raw": {
    "fetched": [
      {
        "kind": "dependency",
        "size": 13366,
        "served": "cache",
        "status": 200,
        "headers": [
          [
            "connection",
            "keep-alive"
          ],
          [
            "content-length",
            "13366"
          ],
          [
            "x-cache-hits",
            "3332"
          ],
          [
            "etag",
            "\"873036bd52f5fd829bd41b3c2ca0bc08\""
          ],
          [
            "x-amz-request-id",
            "25XZR0N9MDEZZAN7"
          ],
          [
            "x-amz-replication-status",
            "COMPLETED"
          ],
          [
            "server",
            "AmazonS3"
          ],
          [
            "date",
            "Tue, 06 Oct 2026 04:18:41 GMT"
          ],
          [
            "x-amz-server-side-encryption",
            "AES256"
          ],
          [
            "last-modified",
            "Sun, 28 Jun 2026 15:08:05 GMT"
          ],
          [
            "x-amz-id-2",
            "j7kgzt+UmG+mPQiBM5/BiK44LY2dU0zD59jLoVN6IzuNu1wQmtkxMifzu5l45zTbpQcr+7M0gcXU89epKSKu30N37T6Dq6gh"
          ],
          [
            "x-amz-version-id",
            "mJpww7l4CTqLk2X2AQAEmLvLLdr1HfR9"
          ],
          [
            "accept-ranges",
            "bytes"
          ],
          [
            "content-type",
            "application/gzip"
          ],
          [
            "cache-control",
            "public,max-age=31536000,immutable"
          ],
          [
            "age",
            "240462"
          ],
          [
            "x-cache",
            "HIT"
          ],
          [
            "x-served-by",
            "cache-iad-kiad7000122-IAD"
          ]
        ],
        "locator": "pkg:cargo/adler2@2.0.1",
        "outcome": "ok",
        "final_url": "https://static.crates.io/crates/adler2/adler2-2.0.1.crate",
        "fetched_at": 1791500782,
        "pin_verified": true,
        "resolved_url": "https://static.crates.io/crates/adler2/adler2-2.0.1.crate",
        "source_offset": 227,
        "source_sha256": "e09d1f3ad3f135fa6cfe58ad8c5b1207cdbd8e0efa6a4259c710710d2965058d",
        "content_sha256": "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"
      },
      {
        "kind": "dependency",
        "size": 43413,
        "served": "cache",
        "status": 200,
        "headers": [
          [
            "connection",
            "keep-alive"
          ],
          [
            "content-length",
            "43413"
          ],
          [
            "x-amz-replication-status",
            "COMPLETED"
          ],
          [
            "x-amz-server-side-encryption",
            "AES256"
          ],
          [
            "x-cache-hits",
            "1578"
          ],
          [
            "accept-ranges",
            "bytes"
          ],
          [
            "etag",
            "\"2d72538f5e173edbd18d17e347f409bc\""
          ],
          [
            "last-modified",
            "Sun, 28 Jun 2026 16:57:27 GMT"
          ],
          [
            "x-amz-request-id",
            "T16D598KDTSERGZF"
          ],
          [
            "server",
            "AmazonS3"
          ],
          [
            "x-amz-id-2",
            "TNfMuIpTxHAxMJfOokY7RcgSs/k32hTiCmFJCr8hH1IpGkzMhTrGxUPPd2S1xyNdQuootTu8A6W1ppG+RQvGbkhM+Se0LOh0"
          ],
          [
            "x-amz-version-id",
            "wkA8NB4HQ6NdOLKIJYloLIItrmutLP4y"
          ],
          [
            "date",
            "Wed, 07 Oct 2026 04:43:38 GMT"
          ],
          [
            "content-type",
            "application/gzip"
          ],
          [
            "cache-control",
            "public,max-age=31536000,immutable"
          ],
          [
            "age",
            "152565"
          ],
          [
            "x-cache",
            "HIT"
          ],
          [
            "x-served-by",
            "cache-iad-kiad7000053-IAD"
          ]
        ],
        "locator": "pkg:cargo/ahash@0.8.12",
        "outcome": "ok",
        "final_url": "https://static.crates.io/crates/ahash/ahash-0.8.12.crate",
        "fetched_at": 1791500782,
        "pin_verified": true,
        "resolved_url": "https://static.crates.io/crates/ahash/ahash-0.8.12.crate",
        "source_offset": 678,
        "source_sha256": "e09d1f3ad3f135fa6cfe58ad8c5b1207cdbd8e0efa6a4259c710710d2965058d",
        "content_sha256": "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75"
      },
      {
        "kind": "dependency",
        "size": 184015,
        "served": "cache",
        "status": 200,
        "headers": [
          [
            "connection",
            "keep-alive"
          ],
          [
            "content-length",
            "184015"
          ],
          [
            "content-type",
            "application/gzip"
          ],
          [
            "x-amz-request-id",
            "JCNFZAWZBWZX94MB"
          ],
          [
            "etag",
            "\"2fb8e2b2c327d642027d27dd82160195\""
          ],
          [
            "server",
            "AmazonS3"
          ],
          [
            "x-amz-replication-status",
            "COMPLETED"
          ],
          [
            "x-amz-version-id",
            "Pp1NG3tT2GOws_m0kXzhP1K8Zke2E_Jt"
          ],
          [
            "last-modified",
            "Sun, 28 Jun 2026 16:53:34 GMT"
          ],
          [
            "x-amz-server-side-encryption",
            "AES256"
          ],
          [
            "x-amz-id-2",
            "C/qWgCa1i/V5IzTMR0MLAOMhrhNTaNSZqL186DoxZTq4psfpdWjP1vGrsjgFcKnPkofB6cE2t3jFLRBxndLnQw109T1Jg7Rq"
          ],
          [
            "x-cache-hits",
            "12503"
          ],
          [
            "date",
            "Wed, 07 Oct 2026 04:36:42 GMT"
          ],
          [
            "accept-ranges",
            "bytes"
          ],
          [
            "cache-control",
            "public,max-age=31536000,immutable"
          ],
          [
            "age",
            "153484"
          ],
          [
            "x-cache",
            "HIT"
          ],
          [
            "x-served-by",
            "cache-iad-kiad7000095-IAD"
          ]
        ],
        "locator": "pkg:cargo/aho-corasick@1.1.4",
        "outcome": "ok",
        "final_url": "https://static.crates.io/crates/aho-corasick/aho-corasick-1.1.4.crate",
        "fetched_at": 1791501284,
        "pin_verified": true,
        "resolved_url": "https://static.crates.io/crates/aho-corasick/aho-corasick-1.1.4.crate",
        "source_offset": 986,
        "source_sha256": "e09d1f3ad3f135fa6cfe58ad8c5b1207cdbd8e0efa6a4259c710710d2965058d",
        "content_sha256": "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301"
      },
      {
        "kind": "dependency",
        "size": 6169,
        "served": "cache",
        "status": 200,
        "headers": [
          [
            "connection",
            "keep-alive"
          ],
          [
            "content-length",
            "6169"
          ],
          [
            "last-modified",
            "Sun, 28 Jun 2026 15:31:45 GMT"
          ],
          [
            "x-amz-server-side-encryption",
            "AES256"
          ],
          [
            "x-cache-hits",
            "595"
          ],
          [
            "accept-ranges",
            "bytes"
          ],
          [
            "x-amz-id-2",
            "3d8lAZ6OyY+lKoVqKRWifzHLs05sVIndx+ed4PHWzn554xZz2PoLWzI8GOUoY5yjpDIXKBARn2gcREbBVfXvusc5zi8iF7ae"
          ],
          [
            "etag",
            "\"f02c179eca8c70ccdfa3f17b5c33563a\""
          ],
          [
            "server",
            "AmazonS3"
          ],
          [
            "date",
            "Wed, 07 Oct 2026 04:41:57 GMT"
          ],
          [
            "x-amz-request-id",
            "P8TXD3RCVMS91SR2"
          ],
          [
            "x-amz-version-id",
            "0S7LhhOQ3IK2G01nPLScKHuqIpXRdZXK"
          ],
          [
            "x-amz-replication-status",
            "COMPLETED"
          ],
          [
            "content-type",
            "application/gzip"
          ],
          [
            "cache-control",
            "public,max-age=31536000,immutable"
          ],
          [
            "age",
            "155014"
          ],
          [
            "x-cache",
            "HIT"
          ],
          [
            "x-served-by",
            "cache-iad-kiad7000043-IAD"
          ]
        ],
        "locator": "pkg:cargo/aliasable@0.1.3",
        "outcome": "ok",
        "final_url": "https://static.crates.io/crates/aliasable/aliasable-0.1.3.crate",
        "fetched_at": 1791503129,
        "pin_verified": true,
        "resolved_url": "https://static.crates.io/crates/aliasable/aliasable-0.1.3.crate",
        "source_offset": 1209,
        "source_sha256": "e09d1f3ad3f135fa6cfe58ad8c5b1207cdbd8e0efa6a4259c710710d2965058d",
        "content_sha256": "250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd"
      },
      {
        "kind": "dependency",
        "size": 63622,
        "served": "cache",
        "status": 200,
        "headers": [
          [
            "connection",
            "keep-alive"
          ],
          [
            "content-length",
            "63622"
          ],
          [
            "x-cache-hits",
            "1966"
          ],
          [
            "x-amz-request-id",
            "MN7AWY82PZHFH3HJ"
          ],
          [
            "server",
            "AmazonS3"
          ],
          [
            "last-modified",
            "Sun, 28 Jun 2026 14:58:55 GMT"
          ],
          [
            "x-amz-version-id",
            "TDgmaPe5WM7anCKQxsqqmHHcm2Zj6L3p"
          ],
          [
            "etag",
            "\"a4cce839af1f5a83a1bf73de16819a75\""
          ],
          [
            "x-amz-server-side-encryption",
            "AES256"
          ],
          [
            "x-amz-id-2",
            "rh3OASowsAT7897UsMJ2IAKJ+6Ki6YEa04XtEOot2v8dstKLgKV9qXxO+l4x2F1132Ok/9pvTrm4MSa1Y0LpeaRXvPwf0Z1Q"
          ],
          [
            "x-amz-replication-status",
            "COMPLETED"
          ],
          [
            "date",
            "Wed, 07 Oct 2026 04:56:23 GMT"
          ],
          [
            "accept-ranges",
            "bytes"
          ],
          [
            "content-type",
            "application/gzip"
          ],
          [
            "cache-control",
            "public,max-age=31536000,immutable"
          ],
          [
            "age",
            "151800"
          ],
          [
            "x-cache",
            "HIT"
          ],
          [
            "x-served-by",
            "cache-iad-kiad7000216-IAD"
          ]
        ],
        "locator": "pkg:cargo/allocator-api2@0.2.21",
        "outcome": "ok",
        "final_url": "https://static.crates.io/crates/allocator-api2/allocator-api2-0.2.21.crate",
        "fetched_at": 1791500782,
        "pin_verified": true,
        "resolved_url": "https://static.crates.io/crates/allocator-api2/allocator-api2-0.2.21.crate",
        "source_offset": 1842,
        "source_sha256": "e09d1f3ad3f135fa6cfe58ad8c5b1207cdbd8e0efa6a4259c710710d2965058d",
        "content_sha256": "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
      },
      {
        "kind": "dependency",
        "size": 17787,
        "served": "cache",
        "status": 200,
        "headers": [
          [
            "connection",
            "keep-alive"
          ],
          [
            "content-length",
            "17787"
          ],
          [
            "x-cache-hits",
            "2517"
          ],
          [
            "server",
            "AmazonS3"
          ],
          [
            "x-amz-replication-status",
            "COMPLETED"
          ],
          [
            "x-amz-version-id",
            "7kvypAd4LQ_0xpxl18uJThdPLYgCJCm5"
          ],
          [
            "last-modified",
            "Sun, 28 Jun 2026 14:41:57 GMT"
          ],
          [
            "x-amz-request-id",
            "4MWS9FX0PBREW602"
          ],
          [
            "x-amz-server-side-encryption",
            "AES256"
          ],
          [
            "etag",
            "\"91cfd4289e3d9ca994b5651a7959fd7c\""
          ],
          [
            "date",
            "Wed, 07 Oct 2026 04:45:48 GMT"
          ],
          [
            "x-amz-id-2",
            "WGoubRmgsSkHx6taAJYVtx5scRyevG4K9UWJT66mFA9AsTMfjxhMtyNr7ia5GA8VbAQWrpdsVGhLE6Fno13aznQgxRQWjokQ"
          ],
          [
            "accept-ranges",
            "bytes"
          ],
          [
            "content-type",
            "application/gzip"
          ],
          [
            "cache-control",
            "public,max-age=31536000,immutable"
          ],
          [
            "age",
            "152436"
          ],
          [
            "x-cache",
            "HIT"
          ],
          [
            "x-served-by",
            "cache-iad-kiad7000108-IAD"
          ]
        ],
        "locator": "pkg:cargo/anstyle@1.0.14",
        "outcome": "ok",
        "final_url": "https://static.crates.io/crates/anstyle/anstyle-1.0.14.crate",
        "fetched_at": 1791500782,
        "pin_verified": true,
        "resolved_url": "https://static.crates.io/crates/anstyle/anstyle-1.0.14.crate",
        "source_offset": 2367,
        "source_sha256": "e09d1f3ad3f135fa6cfe58ad8c5b1207cdbd8e0efa6a4259c710710d2965058d",
        "content_sha256": "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000"
      },
      {
        "kind": "dependency",
        "size": 354916,
        "served": "cache",
        "status": 200,
        "headers": [
          [
            "connection",
            "keep-alive"
          ],
          [
            "content-length",
            "354916"
          ],
          [
            "content-type",
            "application/gzip"
          ],
          [
            "x-amz-version-id",
            ".pKaKyfqoPe4oJOZIQLdqhWc97w2uoZr"
          ],
          [
            "x-amz-id-2",
            "bvViJXvjSjif3hpXu6mWXSVUWINqxp68ywZP5qbL9oTlivvfL4YO9QftSpT+QyHLbhSYVYBVl1Eo8xTbOIkrUGABCfdzsk/5"
          ],
          [
            "etag",
            "\"039b68ad4423e03069a58f9c91041d11\""
          ],
          [
            "x-amz-request-id",
            "A17T2X2XGSBWDSWH"
          ],
          [
            "server",
            "AmazonS3"
          ],
          [
            "x-amz-replication-status",
            "COMPLETED"
          ],
          [
            "x-amz-server-side-encryption",
            "AES256"
          ],
          [
            "last-modified",
            "Sun, 28 Jun 2026 18:35:41 GMT"
          ],
          [
            "x-cache-hits",
            "11756"
          ],
          [
            "date",
            "Wed, 07 Oct 2026 04:21:29 GMT"
          ],
          [
            "accept-ranges",
            "bytes"
          ],
          [
            "cache-control",
            "public,max-age=31536000,immutable"
          ],
          [
            "age",
            "155523"
          ],
          [
            "x-cache",
            "HIT"
          ],
          [
            "x-served-by",
            "cache-iad-kiad7000059-IAD"
          ]
        ],
        "locator": "pkg:cargo/bstr@1.12.1",
        "outcome": "ok",
        "final_url": "https://static.crates.io/crates/bstr/bstr-1.12.1.crate",
        "fetched_at": 1791502411,
        "pin_verified": true,
        "resolved_url": "https://static.crates.io/crates/bstr/bstr-1.12.1.crate",
        "source_offset": 6859,
        "source_sha256": "e09d1f3ad3f135fa6cfe58ad8c5b1207cdbd8e0efa6a4259c710710d2965058d",
        "content_sha256": "63044e1ae8e69f3b5a92c736ca6269b8d12fa7efe39bf34ddb06d102cf0e2cab"
      },
      {
        "kind": "dependency",
        "size": 20930,
        "served": "cache",
        "status": 200,
        "headers": [
          [
            "connection",
            "keep-alive"
          ],
          [
            "content-length",
            "20930"
          ],
          [
            "x-amz-request-id",
            "NW5RQN3F6VM77YPA"
          ],
          [
            "x-amz-id-2",
            "g93HZhVOtU7CgKhcyw8gpt4yY8fR8l63huvHpP8rIV1QxVm97sjREeFG4gQPWqduV9XXTe8Rrp4="
          ],
          [
            "x-cache-hits",
            "3"
          ],
          [
            "accept-ranges",
            "bytes"
          ],
          [
            "date",
            "Fri, 09 Oct 2026 20:51:57 GMT"
          ],
          [
            "server",
            "AmazonS3"
          ],
          [
            "last-modified",
            "Fri, 09 Oct 2026 20:51:19 GMT"
          ],
          [
            "etag",
            "\"e95bc000a3b94ead86bcad929aed5fd2\""
          ],
          [
            "x-amz-replication-status",
            "COMPLETED"
          ],
          [
            "x-amz-version-id",
            "kMXtt0dOojdcU57FItXm2CWXaBViSqll"
          ],
          [
            "cache-control",
            "public,max-age=31536000,immutable"
          ],
          [
            "content-type",
            "application/gzip"
          ],
          [
            "x-amz-server-side-encryption",
            "AES256"
          ],
          [
            "age",
            "2225"
          ],
          [
            "x-cache",
            "HIT"
          ],
          [
            "x-served-by",
            "cache-iad-kiad7000191-IAD"
          ]
        ],
        "locator": "pkg:cargo/lopatnov-conduit-config-core@2.0.0",
        "outcome": "ok",
        "final_url": "https://static.crates.io/crates/lopatnov-conduit-config-core/lopatnov-conduit-config-core-2.0.0.crate",
        "fetched_at": 1791581341,
        "pin_verified": true,
        "resolved_url": "https://static.crates.io/crates/lopatnov-conduit-config-core/lopatnov-conduit-config-core-2.0.0.crate",
        "source_offset": 25340,
        "source_sha256": "e09d1f3ad3f135fa6cfe58ad8c5b1207cdbd8e0efa6a4259c710710d2965058d",
        "content_sha256": "876a90c5165c0fb6ae9028ed2aa6ccb39611b79908aba46ea97f58cd9d99b342"
      },
      {
        "kind": "dependency",
        "size": 30209,
        "served": "cache",
        "status": 200,
        "headers": [
          [
            "connection",
            "keep-alive"
          ],
          [
            "content-length",
            "30209"
          ],
          [
            "x-amz-request-id",
            "NW5ZSTQZ7W0Q8KA3"
          ],
          [
            "x-amz-id-2",
            "avLMdRDm49Kt0tVp28SL28pysO6IOiwNAhr87LLFGNGtkECdF/PB3FlaBsabWE/HsuOuY/Ogxa4="
          ],
          [
            "x-cache-hits",
            "3"
          ],
          [
            "accept-ranges",
            "bytes"
          ],
          [
            "date",
            "Fri, 09 Oct 2026 20:51:57 GMT"
          ],
          [
            "server",
            "AmazonS3"
          ],
          [
            "last-modified",
            "Fri, 09 Oct 2026 20:51:20 GMT"
          ],
          [
            "etag",
            "\"a21c06eae1099e2de7e5a56774371887\""
          ],
          [
            "x-amz-replication-status",
            "COMPLETED"
          ],
          [
            "x-amz-version-id",
            "Lbd9UE_OuzlCbzoLJoC06924dpgCzzDl"
          ],
          [
            "cache-control",
            "public,max-age=31536000,immutable"
          ],
          [
            "content-type",
            "application/gzip"
          ],
          [
            "x-amz-server-side-encryption",
            "AES256"
          ],
          [
            "age",
            "2225"
          ],
          [
            "x-cache",
            "HIT"
          ],
          [
            "x-served-by",
            "cache-iad-kiad7000128-IAD"
          ]
        ],
        "locator": "pkg:cargo/lopatnov-conduit-core@2.0.0",
        "outcome": "ok",
        "final_url": "https://static.crates.io/crates/lopatnov-conduit-core/lopatnov-conduit-core-2.0.0.crate",
        "fetched_at": 1791581341,
        "pin_verified": true,
        "resolved_url": "https://static.crates.io/crates/lopatnov-conduit-core/lopatnov-conduit-core-2.0.0.crate",
        "source_offset": 25688,
        "source_sha256": "e09d1f3ad3f135fa6cfe58ad8c5b1207cdbd8e0efa6a4259c710710d2965058d",
        "content_sha256": "6fb151e80457748728f880dc5d649a05f5193e6398e3df4e621dfc16a9a29816"
      }
    ],
    "files": [
      {
        "id": 0,
        "mol": "H(F)Md(Pa₂)",
        "sha": "573c3cc0532f96db6245687471b9d73e2caf686118150e4d6518485846ea8d12",
        "path": "/data/samples/incoming/forager/rust/crates.io/_/lopatnov-conduit-limits/lopatnov-conduit-limits-2.0.0.crate",
        "risk": 4,
        "size": 28382,
        "type": "crate",
        "facts": {
          "metrics": {
            "file": {
              "size": 28382,
              "entropy": 7.99
            },
            "binary": {
              "peak_region_bytes": 28382,
              "peak_region_entropy": 7.83
            }
          }
        },
        "ident": {
          "name": {
            "value": "lopatnov-conduit-limits",
            "source": "crate.name",
            "verified": false
          },
          "urls": [
            {
              "url": "https://github.com/lopatnov/conduit",
              "kind": "repository",
              "source": "crate.repository"
            }
          ],
          "trust": "unsigned",
          "version": {
            "value": "2.0.0",
            "source": "crate.version",
            "verified": false
          },
          "identifier": {
            "value": "lopatnov-conduit-limits",
            "source": "crate.name",
            "verified": false
          },
          "description": {
            "value": "Request size/inflight/per-IP/upload-rate limits config + guard for conduit's feature-driven workspace (issue #114/#137, #51)",
            "source": "crate.description",
            "verified": false
          }
        },
        "traits": [
          {
            "id": "metadata/package/documentation/agent-safety::security-test-documentation-marker",
            "conf": 0.96,
            "crit": 3,
            "desc": "Security heading or confirmation requirement",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust test marker or harness",
            "from": [
              {
                "off": 8376,
                "file": 7,
                "line": 214
              },
              {
                "off": 2725,
                "file": 9,
                "line": 92
              }
            ],
            "uses": [
              27,
              28
            ]
          },
          {
            "id": "micro-behaviors/fs/path/config/accounts::unix-account-database-path-reference",
            "conf": 0.95,
            "crit": 3,
            "desc": "Unix account database path reference",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/async_trait/async_trait::async_trait/async_trait",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports async_trait::async_trait",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/bytes/bytes::bytes/bytes",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports bytes::Bytes",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/conduit_config_core/validation/validationerror::conduit_config_core/validation/validationerror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports conduit_config_core::validation::ValidationError",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/conduit_core/filter/chain/filtercontext::conduit_core/filter/chain/filtercontext",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports conduit_core::filter::chain::FilterContext",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/conduit_core/filter/chain/filteroutcome::conduit_core/filter/chain/filteroutcome",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports conduit_core::filter::chain::FilterOutcome",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/conduit_core/filter/chain/requestfilter::conduit_core/filter/chain/requestfilter",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports conduit_core::filter::chain::RequestFilter",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/conduit_core/handler/response::conduit_core/handler/response",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports conduit_core::handler::response",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/config/limitsconfig::config/limitsconfig",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports config::LimitsConfig",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/crate/config/limitsconfig::crate/config/limitsconfig",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::config::LimitsConfig",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/crate/limits::crate/limits",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::limits",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/ctx/limitsreqstate::ctx/limitsreqstate",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports ctx::LimitsReqState",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/pingora_core/result::pingora_core/result",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports pingora_core::Result",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/pingora_proxy/session::pingora_proxy/session",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports pingora_proxy::Session",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/serde/deserialize::serde/deserialize",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports serde::Deserialize",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/serde/serialize::serde/serialize",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports serde::Serialize",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/sync/arc::std/sync/arc",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::sync::Arc",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/sync/atomic/atomicusize::std/sync/atomic/atomicusize",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::sync::atomic::AtomicUsize",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/sync/atomic/ordering::std/sync/atomic/ordering",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::sync::atomic::Ordering",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/package/name/convention::cargo-license-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares license"
          },
          {
            "id": "metadata/package/name/convention::cargo-meaningful-description",
            "conf": 0.78,
            "crit": 2,
            "desc": "Cargo package has meaningful description"
          },
          {
            "id": "metadata/package/name/convention::cargo-package-name",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package has name"
          },
          {
            "id": "metadata/package/name/convention::cargo-readme-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares readme"
          },
          {
            "id": "metadata/package/name/convention::cargo-repository-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares repository"
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-cfg-test",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[cfg(test)] attribute",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test-attr",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[test] attribute",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/package/version::cargo-package-version",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package has version"
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-4",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"have\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "from": [
              {
                "file": 4
              }
            ]
          }
        ]
      },
      {
        "ctx": [
          {
            "b": "tx11XyHH\u003c!t)+ETzdK?jarR^HarS/\u0026b5zgpvruy9B$EixzE^)7Bs?ryze19ka{@H8A=U@kzz3cKA+/-nvpJ\u003c\u003earR^\u0026aARTDwEr0Vx([6czz3cKA+/-nvpJ\u003c\u003earR^\u0026aARTDwErE2B960SwPz\u003caz/dgKz/PSmAa9l/auZ\u0026?A=\u003e}2wmY*(A+PGmx(v(ijS\u003e}DwPq\u003c7B95KCx)Ktzx(mK0x\u003eIa3fk$GyeLe+(B-qenvpQ%gvru66y?W:2BAnNmz/ff3xcnYExlvT6wftG5AV!\u003egzE^)7BshbLw[ty)B-I4Bwo8ycwO@Smz/PSmAa9l/asH@BB9h4pbqy]ffc-hch.l6@h8cK73t:A^wO#N2e{zkOyJBD6v}u=9arS/\u0026BAhIn3uxY%z/YSmz/QaQCw?IqB8UL$wGTbUBAhIn3jp0Nx\u003c$uPzEEx[auZ?\u003ev@Dl}B.L@8y?W:2BAnSkAa9\u003c4auZ?\u003eB8\u003e+zy?WuhA=SAi3r}4LAaJ]$wO#0(wPIb:boQw{vqGT*vruj4zBFO^z/Pkdw]zYjBzbxfay/C2By=?vay/tcw[+)2C42i3wmoN]z/cWCu#{u#flQ=ux\u003egT]wIe1Au[0Yny\u0026so3Bz=2ueN@ZpwozQdeN@Zpw[+)fv@Dy0auZ\u0026]aA}:AyJBD6v}u=CaARTDwGVydboP:1ax@C?vruTjwPIc1BywS{wGY#.LPT^Rze19kazC)tvqHc@D2\u003eMQzxHt{oHhVDmj@B/ay]4[x(!0bzxHeWf!sC?xK}I}aAH$dwGUz$Cvt=rePkIHA::67z/f01wGUA5az+$nvruy9B$EixzE^)7Bs?iCw[=76wPxBQv@Dyefa5{DePUGkB-IhrC}AYvvpS}\u0026B1Ya=vruj2x(\u003e.zaAIvkv}u=qdj=P.zY\u0026RmwPA5swmYZ\u003ezE^r@v%GhgwPzu8\u0026^^m2boQYrv@co#x(mMay\u0026so3Bz=2ueN@ZpwozQdeN@ZtwH[%wwO2y-wftubazk?9A+4i(oLFuTBAo@{vrb)3\u0026^^mox(:Raaz\u003eL8wmoN#A^ohUzF%Rtu#H1ax(v($y-\u003e\u003e-BAhInu[JN2wO009A:{+sx\u003c@YnB0b1iv\u003c2o1zeA\u003c4BrCglAV/NtC{4ixx(:Raay/C2By=OeB0bvsBrCgbvruTjwI4L6By!#9y?WV@ay/tcwozQdeOnBly\u0026\u003c.Kv@Dl}B.L}HvrDW9eOYGKfj/lne^=VhA+5-7arR^HarR^HarR^HarR^HjS]7]Cw?IqB8UL$wGTbUBAhInaBKP9B9RUkeP=2wx(\u003eEuarR^HarR^HauZ\u0026]aA}:AyJBD6v}u=CaARTDwGVydvTi6bB08OFarR^HarR^HarR^HarS/\u0026DMWJJA+/-nvpJ\u003c\u003ejS[\u0026!B.8Xz3s)N^xL?f%arR^HarR^HarR^HarR^\u0026aBtkPz/PSmAa9l/auZ\u0026?A=\u003e}oEf%UfBz@uBarR^HarR^HarR^HarR^HjS]7]Cw?IqB8UL$wGTbUBAhInaBKPox(mN4A:ZLfz/PziarR^HarR^HauZ\u0026]aA}:AyJBD6v}u=CaARTDwGVydAa%i5z/PnrAb](wC{1jLarR^HarS/\u0026DMWJJA+/-nvpJ\u003c\u003ejS[\u0026!B.8Xz3t:T1vruy9B$EixzE^)7Bs?0vA+cvRaBtkPz/PSmAa9l/auZ\u0026?A=\u003e}oEf]",
            "ln": 0,
            "col": 1,
            "line": 1
          }
        ],
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 1314,
              "entropy": 4.69
            },
            "binary": {
              "peak_region_bytes": 1024,
              "peak_region_entropy": 4.83
            },
            "consistency": {
              "extension_content_mismatch": 1,
              "extension_content_mismatch.text_as_unknown": 1
            }
          }
        },
        "id": 4,
        "mol": "Md(Pa)",
        "path": "/data/samples/incoming/forager/rust/crates.io/_/lopatnov-conduit-limits/lopatnov-conduit-limits-2.0.0.crate!!lopatnov-conduit-limits-2.0.0/Cargo.toml.orig",
        "pid": 1213,
        "risk": 1,
        "sha": "ef490811975c289dca08e842910c339ab2afe6222c115accb84e66d58b839d6c",
        "size": 1314,
        "traits": [
          {
            "id": "metadata/package/documentation/agent-safety::security-test-documentation-marker",
            "conf": 0.96,
            "crit": 3,
            "desc": "Security heading or confirmation requirement",
            "spans": [
              [
                666,
                11
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                599,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                214,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                424,
                0
              ]
            ]
          }
        ],
        "type": "text"
      },
      {
        "id": 5,
        "sha": "eef97b128de288a4702889a770c470ed1989fdc8efc7c88ad080f9bbad7bbf22",
        "path": "/data/samples/incoming/forager/rust/crates.io/_/lopatnov-conduit-limits/lopatnov-conduit-limits-2.0.0.crate!!lopatnov-conduit-limits-2.0.0/src/config.rs",
        "risk": 1,
        "size": 5134,
        "type": "rust",
        "depth": 1
      },
      {
        "id": 6,
        "sha": "e2cc73295ba1ab35003c08b827ecd257a27a3a9b254d495d1e46cec8f2fb3a2f",
        "path": "/data/samples/incoming/forager/rust/crates.io/_/lopatnov-conduit-limits/lopatnov-conduit-limits-2.0.0.crate!!lopatnov-conduit-limits-2.0.0/src/ctx.rs",
        "risk": 1,
        "size": 1882,
        "type": "rust",
        "depth": 1
      },
      {
        "ctx": [
          {
            "b": "B-RapB97}Ni=/N:v(=UVBz(2gv(=U$l3d3Zx\u003e7d:x)KtwawW2*wPzH5xmh\u0026GB-RapB97}Ni=/N:v(=UpA:}fr3uZA3ayPtpzEW3}A:-W7iYZX\u003cD2vb0BAg/7Buo?LB7DF6D30RsiYYPMBy/IP3uZA3ay/tcwozQduT[1{wJz\u003e:x(4)5AYMl\u003exKLQ)iY.QSx(4)5AZK+.By/YsefEz@y\u0026\u003clepJZ+?z/65paw#=\u003cB.bSomRMWXwPAhX3uZA3ay/tcwozQduT[1{wJz\u003e=vqYQ(wPx*)A+frhz/fSci%{aKwGU@azF9)dvp9I.A+do)qE%](y\u0026?-C3uZA3ay/C2By^G]v@Dl%x\u003eGE/oLFuTBAo//zF0P}i%{aKwGUG6vru6wi=5IEx([zT3jnBtfcAY3w]zZ1wPF#mwPq\u003c7B95Klz!abovqYP#xK$Q.wPw]mx)Ktky?W:2BAo5wAckRjB98CBv@@?!x(dNaB4pvYA+3qt3lQDlaAhEjay/1@iV}agze19klVl\u003cOx\u003eF$7arR^Hfe1$3p?sV0v@b\u003c\u003czGEE4p-%m^zEW*fA+fcgay/tczE)s1x(v(iv@DHcBAnMMzF9W3CPZ*pze190v@Dm5aAg+hBy/Ggdj$@IarR!CBZ=FcA9)9[zF\u0026/\u003ez/]@tB2\u003eBfA:}jxvrla0vq[m*l$7dIo\u003c@06q/)4]zF7Hyl3d3Zx\u003e7d:x)KtOj$E3-arR^Wfe1CpCYW$mv@#o)ay/k4wO#PjnL*KLB7F(8w]zYjAaK5wnL*Ktz/fD7v@#B6zxJ+fze19azF7NearR^HAckRjv@b\u003c\u003czGGl1A5]auBAh8kxdKyr3jn1ZvrlZiv{:s#vqf*?3tBu@y-(R!ADL\u0026lBvG$XBy/Fnw]zX",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "az+RhaztXmByeY(AV^H/v@#@FB7GAlx(v(wA+fk$xK$Q.wPxgFe[!*8wmY!5e[X:qc)AtyB95PPi%)8MarR^HarUxgazC[7xM4%luUB1VwmY^*x(n95y?WAdxM4%luUA$\u003cdiJ%AarR^HarR^HarR^HA+frhz/fSciY.F9x()][A+frhz/fScc\u003c?7tao",
            "ln": 1227,
            "col": 8,
            "line": 32
          },
          {
            "b": "B95Kmvq)vGFrRf^xK$W?wN(])wOb\u003e3wGUD2wo/?wwNPaXAV/gjze19kaAIDzBzbj)arR^HarR^Hfe1C*wOL^^BzkVhay/thBrCpsaz\u003e?gx(do{aA}HgzxK4mwGV59A=#2mazC)tB-7-3AV/4bvrM]sy\u0026r-)e^-ZzarR^HarUxgaz+Rhax9h}wHIx",
            "ln": 2430,
            "col": 26,
            "line": 63
          },
          {
            "b": "fcCpDADL\u0026lByeS]y\u0026\u003cleefG1LaARpday/LmA+fcgaA?gfB.8XfzEWH9wmY*8BzbxfaAz4kB.bSoe^-ZzarR^HarR^HarUGiBrC7oA=L-eBrAZ?v@#@Fx(mK0x\u003eIa3e]kDmwggk]wmY^}zF80\u003eqE%VMCX7zmayPslBV86r3lQDlarR^HarR^HazCBg",
            "ln": 2705,
            "col": 14,
            "line": 67
          },
          {
            "b": "AV/Kly\u0026%qix(+zlvqGK]A=2w#aA8oyv@DmbvqfR23nj4=ay/7[A:-E1wPz\u0026mBzb98ay/tjy?aU$wGUMeAboDbBy!#9w]zYjxK$Q.wPxwpzFA-)BzkVhayPwlvpK7]e^:l+fa6u=fcBe7ygQ)%B2\u003cTYfe1C1awM\u0026)eMC+teJs\u003eZD30Rse^:l+fcz??",
            "ln": 4561,
            "col": 41,
            "line": 113
          },
          {
            "b": "BAIRwwN({8zWFcJfcCvIwGUF\u003ey\u00260W6ay!?$aAz4dwN/*8BzbkdA+flkwPI@oCwhejayMxHgc3%faw#=)B-IwvayGqiB.a@6Cw7M9aARpd3nj4=aAIvqBrC^oB0bKDv}f7\u003eB7PMhy\u003cvdiv@VT9A+e=l3tae#BAhUlvpKq1x(W=(x(EB2y\u0026szzx(D9Q",
            "ln": 5727,
            "col": 69,
            "line": 144
          },
          {
            "b": "arR!GA=\u003e}2Ef{rmfcGnsFz#/zaw$G%nG.IYzF\u003c2}BzkVhePU-DBrCjsvrb)3\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z3jnBtfcBdUnL74qBZYr3aARp9BrCmny?dPfz/fbeAaK5wnL*Ktz/fD7v@#B6zxK1pz/^alz/M$xxK@q%B-H]jx(v(iz!pb23nj4=aAz4kB.bSoe^:l+fa6u=",
            "ln": 6336,
            "col": 2,
            "line": 160
          },
          {
            "b": "A+e=7y?W:2BAo5ww]n-cx(dNaB6\u0026%0ygQ)%x(v(qA+frmy\u0026?YXy?W:2BAoG7lUH4vyF[.+B.(dGat2=1pJgz\u0026z/dV=BUL^9avpu}wPGp:aBsCrarR!zvru0)aAz4mB.(dxDKp(rarR^HarUGmze19kiYYSwwN/HNwPJ0gBuhDHz!ab)z/nrTA+w@ajW70n3lQDlarR^HarR^Hax9h}wHF@-f/7v6lv0V:B2(u]A=k/4B97\u0026jx\u003e5M2b2O",
            "ln": 7715,
            "col": 43,
            "line": 195
          },
          {
            "b": "djDXMarR^HarR^HEf}8tarR^HarUGmze19kiYYSwwN/HNwPJ0gBuhDUyAL=7awM\u0026)wH[fharR!P3vJl*bu[U\u0026xdd\u003ekB95\u003cp3t\u003cY(aARgoBAnNK3lQDlaA.:paAIWAwPx*)dMW$AarR^Hfe1EcLZ}+TFfnVxze19kuVGZ)wN/*@z/cYSLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ\u003c8FarR^Hbu]n3B97W{arR^Hw]n-cx(dNaB6\u0026%0ygQ)%x(v(@vSb!5uVZj8uU\u003cd\u003exjUB\u003cwPS6nzGxewf/7jbaBsCrarR^HarR!ywPP5nwPJ0gBrAZ?y?W:2BAp/fwOL^^BzkVhc#rQmx([zSiZWN(v@1$NB9hqviYYPCwo?c)z+KOWxjSIN3lQDlarR^HayPtjwPz(oc#@)uB.(dLx(^T5z/65ldjEs=arR^HarR^Hy?mYhd06GsBAITQayYn1C{%\u003e0aAz4mB.(dLB-8zzvq)Rzi%)8MarR^HarU9lB7GxluUaj2d06GsBAITQat+/edlv\u003eVarR^HarR!nB8$]kBrJ4QvSb!5e[]xlwO(ydC{\u003e9\u003ci%)8MarV7t3lQDlar$9jwPI%03lQDlazbHly?W:2BAp/fwOL^^BzkVhuUB1V",
            "ln": 8076,
            "col": 77,
            "line": 202
          },
          {
            "b": "fe1EcLZ}+TFfnVxze19kuVGZ)wN/*@z/cXbz!abDxK$Q.wPw]gwPI{3xjVcb\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[%23lQDlar$9jwPI%03lQDlazbHly?W:2BAp/fwOL^^BzkVhuT^}:D0+A1B8$=5wNw}=A=L-3BsnNXDKp(rarR^HarUGiBrCQnB9hqvauZ\u0026-x(dNaB6\u0026%0ygQ(",
            "ln": 9102,
            "col": 5,
            "line": 237
          },
          {
            "b": "3lQDlarR^HaBKOtarR!P3jm)#arSr\u003caMwSo\u0026/[%onPm4nzF\u0026x?z/!G(vrb)3\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ\u003c8FarR^Hbu]n3B97W{arR^Hw]n-9A9)9[zF\u0026*5y\u0026sA5xlvT6wm5\u003eUv@=c$wO#QhuVf*?wo8Qcc[co=3lQDlarR^Haz+Rhay/tjzGG}Xavg3Tjy?(wxL?f%iYW",
            "ln": 11117,
            "col": 70,
            "line": 288
          },
          {
            "b": "z/fbndlv\u003eVarR!P3jm)#arSr\u003caMwSo\u0026/[%oBAhUlvpKq1x(W=(x(EB2y\u0026szr\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFc(SaarR^KtxBB$Bx]j@arR!szxK4wD0:#\u0026ADL#owNxd\u003cuVQ44ByeD)y\u0026sJsuUj1)B97=fwPq\u003c7B95/VaBsCrarR^HarR!ywPP58z/]@tB09Q*wmoK)zddxAiS",
            "ln": 13108,
            "col": 42,
            "line": 336
          },
          {
            "b": "arUGiBrC7iB-8qxauZ\u0026Tvrla0vq[m*l$7dIo\u003c@04i=nIMc[dj+arR^HarR^Hw]zYjuM:62attA2h6vkMarR^HarR^HarR^HvrlH3A=-DMBAhUlvpKq1x(W=(x(EB2y\u0026szza#7=7fFk4igA[v)h7P\u003c%v@DHcBAn(Wi%)8MarR^HarV7tarR^HarR^HvrlH3A=-DMaP",
            "ln": 14121,
            "col": 7,
            "line": 359
          },
          {
            "b": "3jm)#arR[kBy/Jnt).X%arUolaztXmBye{dy*QT%By!*1wOL^^By!#hdiJ%AarR^HarR^HvrlH3A=-DMv}YB-yHp:[B95*tb4U}iy+xjozcRrtfD}}{i%)8MarV7t3lQDlar$9jwPI%03lQDlazbHlxM4%luVQf{v}x1/wOL^^By!#hdiJ%AarR^HarR^HvrlH3A=-DMv}YB-yHp:[B95*tb4Q",
            "ln": 15908,
            "col": 6,
            "line": 411
          },
          {
            "b": "Aa9=}Bz(hbA+e#%v@#o)c[co=3lQDlarR^HayPtjwPz(oc$u}4v@2B+z/Z1GvJ]xbx(2ziz/4cWe?X?ffj/lnfk$uvB9zdsdjEs=arR^HEf{r7arR^KtxBB$Bx]j@arR!szxJRhB97=bz/e{8By)HtA+e#%v@#o)c[co=3lQDlarR^Hatkw\u003cfNc5RazC)tzF%RtC42i3wfs(KmLcOYaARKeB98BJdiJ?Gy?$kmwPS6nzxIw*AV\u003cv@K%1\u003c!wNPV",
            "ln": 16133,
            "col": 20,
            "line": 424
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "ctx.session.req_header.headers.get"
            ],
            [
              "",
              "ctx.session.req_header"
            ],
            [
              "",
              "is_host_header_invalid"
            ],
            [
              "",
              "conduit_core::handler::response::write_response"
            ],
            [
              "",
              "bytes::Bytes::from_static"
            ],
            [
              "",
              "ctx.inflight.fetch_sub"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "ctx.session.req_header.headers.len"
            ],
            [
              "",
              "ctx.session.req_header"
            ],
            [
              "",
              "conduit_core::handler::response::write_response"
            ],
            [
              "",
              "bytes::Bytes::from_static"
            ],
            [
              "",
              "ctx.inflight.fetch_sub"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "ctx.inflight.load"
            ],
            [
              "",
              "conduit_core::handler::response::write_response"
            ],
            [
              "",
              "bytes::Bytes::from_static"
            ],
            [
              "",
              "ctx.inflight.fetch_sub"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "limits_rejection"
            ],
            [
              "",
              "crate::limits::check"
            ],
            [
              "",
              "conduit_core::handler::response::write_response"
            ],
            [
              "",
              "ctx.inflight.fetch_sub"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "ip.is_empty"
            ],
            [
              "",
              "try_acquire_ip_slot"
            ],
            [
              "",
              "conduit_core::handler::response::write_response"
            ],
            [
              "",
              "bytes::Bytes::from_static"
            ],
            [
              "",
              "ctx.inflight.fetch_sub"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "v.to_str"
            ],
            [
              "",
              "s.bytes.any"
            ],
            [
              "",
              "s.bytes"
            ],
            [
              "",
              "http::uri::Authority::try_from.is_err"
            ],
            [
              "",
              "http::uri::Authority::try_from"
            ],
            [
              "",
              "counts.entry.or_insert_with.fetch_add"
            ],
            [
              "",
              "counts.entry.or_insert_with"
            ],
            [
              "",
              "counts.entry"
            ],
            [
              "",
              "ip.to_owned"
            ],
            [
              "",
              "std::sync::atomic::AtomicUsize::new"
            ],
            [
              "",
              "counts.get"
            ],
            [
              "",
              "counter.fetch_sub"
            ],
            [
              "",
              "counter.fetch_sub"
            ],
            [
              "",
              "counter.store"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "bytes::Bytes::from_static"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "bytes::Bytes::from_static"
            ],
            [
              "",
              "limits_rejection"
            ],
            [
              "",
              "result.unwrap"
            ],
            [
              "",
              "limits_rejection"
            ],
            [
              "",
              "result.unwrap"
            ],
            [
              "",
              "limits_rejection"
            ],
            [
              "",
              "limits_rejection"
            ],
            [
              "",
              "result.unwrap"
            ],
            [
              "",
              "std::str::from_utf8.unwrap_or"
            ],
            [
              "",
              "std::str::from_utf8"
            ],
            [
              "",
              "limits_rejection"
            ],
            [
              "",
              "result.unwrap"
            ],
            [
              "",
              "std::str::from_utf8.unwrap_or"
            ],
            [
              "",
              "std::str::from_utf8"
            ],
            [
              "",
              "h.bytes.any"
            ],
            [
              "",
              "h.bytes"
            ],
            [
              "",
              "h.bytes.any"
            ],
            [
              "",
              "h.bytes"
            ],
            [
              "",
              "std::sync::Arc::new"
            ],
            [
              "",
              "dashmap::DashMap::new"
            ],
            [
              "",
              "counts.entry.or_insert_with.store"
            ],
            [
              "",
              "counts.entry.or_insert_with"
            ],
            [
              "",
              "counts.entry"
            ],
            [
              "",
              "std::sync::atomic::AtomicUsize::new"
            ],
            [
              "",
              "std::sync::Arc::clone"
            ],
            [
              "",
              "drop"
            ],
            [
              "",
              "std::sync::Arc::new"
            ],
            [
              "",
              "dashmap::DashMap::new"
            ],
            [
              "",
              "counts.entry.or_insert_with.store"
            ],
            [
              "",
              "counts.entry.or_insert_with"
            ],
            [
              "",
              "counts.entry"
            ],
            [
              "",
              "std::sync::atomic::AtomicUsize::new"
            ],
            [
              "",
              "std::sync::Arc::clone"
            ],
            [
              "",
              "drop"
            ],
            [
              "",
              "dashmap::DashMap::new"
            ],
            [
              "",
              "dashmap::DashMap::new"
            ],
            [
              "",
              "dashmap::DashMap::new"
            ],
            [
              "",
              "dashmap::DashMap::new"
            ],
            [
              "",
              "http::header::HeaderValue::from_bytes"
            ],
            [
              "",
              "is_host_header_invalid"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "std::sync::atomic::AtomicUsize"
            ],
            [
              "",
              "std::sync::atomic::Ordering"
            ],
            [
              "",
              "std::sync::Arc"
            ],
            [
              "",
              "async_trait::async_trait"
            ],
            [
              "",
              "bytes::Bytes"
            ],
            [
              "",
              "conduit_core::filter::chain::FilterContext"
            ],
            [
              "",
              "conduit_core::filter::chain::FilterOutcome"
            ],
            [
              "",
              "conduit_core::filter::chain::RequestFilter"
            ],
            [
              "",
              "conduit_core::handler::response"
            ],
            [
              "",
              "pingora_core::Result"
            ],
            [
              "",
              "crate::config::LimitsConfig"
            ],
            [
              "",
              "crate::limits"
            ],
            [
              "",
              "super::*"
            ]
          ],
          "mbr": [
            "counter.fetch_sub",
            "counter.store",
            "counts.entry",
            "counts.entry.or_insert_with",
            "counts.entry.or_insert_with.fetch_add",
            "counts.entry.or_insert_with.store",
            "counts.get",
            "ctx.extra_headers",
            "ctx.inflight",
            "ctx.inflight.fetch_sub",
            "ctx.inflight.load",
            "ctx.session",
            "ctx.session.req_header",
            "ctx.session.req_header.headers",
            "ctx.session.req_header.headers.get",
            "ctx.session.req_header.headers.len",
            "h.bytes",
            "h.bytes.any",
            "http::uri::Authority::try_from.is_err",
            "ip.is_empty",
            "ip.to_owned",
            "result.unwrap",
            "s.bytes",
            "s.bytes.any",
            "std::str::from_utf8.unwrap_or",
            "v.to_str"
          ],
          "tgt": [
            "Ok",
            "Some",
            "bytes::Bytes::from_static",
            "conduit_core::handler::response::write_response",
            "counter.fetch_sub",
            "counter.store",
            "counts.entry",
            "counts.entry.or_insert_with",
            "counts.entry.or_insert_with.fetch_add",
            "counts.entry.or_insert_with.store",
            "counts.get",
            "crate::limits::check",
            "ctx.inflight.fetch_sub",
            "ctx.inflight.load",
            "ctx.session.req_header",
            "ctx.session.req_header.headers.get",
            "ctx.session.req_header.headers.len",
            "dashmap::DashMap::new",
            "drop",
            "h.bytes",
            "h.bytes.any",
            "http::header::HeaderValue::from_bytes",
            "http::uri::Authority::try_from",
            "http::uri::Authority::try_from.is_err",
            "ip.is_empty",
            "ip.to_owned",
            "is_host_header_invalid",
            "limits_rejection",
            "result.unwrap",
            "s.bytes",
            "s.bytes.any",
            "std::str::from_utf8",
            "std::str::from_utf8.unwrap_or",
            "std::sync::Arc::clone",
            "std::sync::Arc::new",
            "std::sync::atomic::AtomicUsize::new",
            "try_acquire_ip_slot",
            "v.to_str"
          ],
          "funcs": [
            [
              "apply",
              714
            ],
            [
              "is_host_header_invalid",
              4966
            ],
            [
              "try_acquire_ip_slot",
              5848
            ],
            [
              "drop",
              7274
            ],
            [
              "limits_rejection",
              7727
            ],
            [
              "limits_rejection_body_too_large_returns_413",
              8392
            ],
            [
              "limits_rejection_header_too_large_returns_431",
              8689
            ],
            [
              "limits_rejection_ok_returns_none",
              8952
            ],
            [
              "limits_rejection_body_message_correct",
              9267
            ],
            [
              "limits_rejection_header_message_correct",
              9676
            ],
            [
              "host_validation_rejects_crlf_in_host",
              10158
            ],
            [
              "host_validation_accepts_normal_host",
              10739
            ],
            [
              "ip_conn_slot_guard_decrements_on_drop",
              11345
            ],
            [
              "ip_conn_slot_guard_prevents_wrap_on_zero",
              12143
            ],
            [
              "is_host_header_invalid_absent_host_returns_false",
              12934
            ],
            [
              "try_acquire_ip_slot_allows_first_request",
              13327
            ],
            [
              "try_acquire_ip_slot_rejects_when_limit_reached",
              13586
            ],
            [
              "try_acquire_ip_slot_fills_up_to_limit",
              14070
            ],
            [
              "try_acquire_ip_slot_different_ips_are_independent",
              14447
            ],
            [
              "check_host",
              14797
            ],
            [
              "host_valid_simple_domain_accepted",
              15387
            ],
            [
              "host_valid_domain_with_port_accepted",
              15497
            ],
            [
              "host_valid_ipv4_accepted",
              15615
            ],
            [
              "host_valid_ipv6_accepted",
              15716
            ],
            [
              "host_cr_lf_rejected",
              15815
            ],
            [
              "host_nul_byte_rejected",
              15926
            ],
            [
              "host_space_rejected",
              16025
            ],
            [
              "host_path_separator_rejected",
              16118
            ],
            [
              "host_non_utf8_rejected",
              16236
            ]
          ],
          "metrics": {
            "ast": {
              "op.eq": 10,
              "op.gt": 3,
              "op.add": 1,
              "op.lor": 6,
              "op.land": 1,
              "max_depth": 19,
              "call_count": 93,
              "node_count": 3586,
              "member_count": 26,
              "op_density.eq": 0,
              "op_density.gt": 0,
              "op_density.add": 0,
              "op_density.lor": 0,
              "op_density.land": 0,
              "max_array_length": 4,
              "max_concat_chain": 2,
              "max_member_depth": 5
            },
            "file": {
              "size": 16405,
              "entropy": 4.9
            },
            "text": {
              "lines": 433,
              "top_char": 101,
              "digit_ratio": 0.03,
              "space_count": 3868,
              "char_entropy": 4.9,
              "unique_chars": 93,
              "top_char_null": 0,
              "escape_density": 0.02,
              "import_density": 3,
              "string_density": 0.12,
              "top_char_ratio": 0.06,
              "avg_line_length": 36.89,
              "max_line_length": 192,
              "non_ascii_ratio": 0.06,
              "empty_line_ratio": 0.11,
              "hex_escape_count": 2,
              "last_line_length": 1,
              "long_token_count": 5,
              "whitespace_ratio": 0.26,
              "identifier_density": 1.45,
              "line_length_stddev": 32.79,
              "max_whitespace_run": 6,
              "octal_escape_count": 1,
              "normalized_import_count": 0.62,
              "normalized_string_count": 2.55,
              "repeated_char_sequences": 98,
              "suspicious_comment_ratio": 0.06,
              "normalized_function_count": 1.39,
              "imports_to_functions_ratio": 0.45,
              "strings_to_functions_ratio": 1.83,
              "suspicious_identifier_ratio": 0.03,
              "normalized_unique_identifiers": 16.44,
              "identifiers_to_functions_ratio": 4.97
            },
            "binds": {
              "count": 27
            },
            "binary": {
              "peak_region_bytes": 13312,
              "peak_region_entropy": 4.91
            },
            "source": {
              "class_count": 2,
              "function_count": 29
            },
            "imports": {
              "count": 13,
              "wildcard": 1,
              "third_party_count": 13,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 733,
              "count": 53,
              "ip_count": 19,
              "url_count": 1,
              "avg_length": 13.83,
              "max_length": 50,
              "path_count": 1,
              "avg_entropy": 2.67,
              "domain_count": 2,
              "entropy_stddev": 1.04
            },
            "comments": {
              "chars": 4773,
              "count": 81,
              "empty": 2,
              "lines": 79,
              "high_entropy": 5,
              "to_code_ratio": 0.22
            },
            "functions": {
              "count": 31,
              "density": 6.7,
              "avg_params": 0.31,
              "code_ratio": 0.7,
              "max_params": 3,
              "length_stddev": 15.19,
              "avg_name_length": 29.9,
              "no_params_count": 23,
              "avg_length_lines": 10.38,
              "max_length_lines": 87,
              "min_length_lines": 3,
              "high_entropy_names": 22,
              "avg_param_name_length": 4.44
            },
            "identifiers": {
              "count": 626,
              "unique": 144,
              "avg_length": 11.74,
              "max_length": 49,
              "min_length": 1,
              "avg_entropy": 2.61,
              "reuse_ratio": 0.23,
              "length_stddev": 11.25,
              "has_digit_ratio": 0.04,
              "sequential_names": 5,
              "single_char_count": 5,
              "single_char_ratio": 0.03,
              "high_entropy_count": 25,
              "high_entropy_ratio": 0.17,
              "all_lowercase_ratio": 0.76,
              "numeric_suffix_count": 3
            }
          }
        },
        "id": 7,
        "mol": "H(F)Md(Pa)",
        "path": "/data/samples/incoming/forager/rust/crates.io/_/lopatnov-conduit-limits/lopatnov-conduit-limits-2.0.0.crate!!lopatnov-conduit-limits-2.0.0/src/guard.rs",
        "pid": 1213,
        "risk": 3,
        "sha": "3f89f99d6df745468ab029501e3cc4e7ccef07afa7a35cb081c55722c3bfd6b3",
        "size": 16405,
        "supp": [
          {
            "by": [
              {
                "id": "metadata/package/testing/harness/unit::rust-test",
                "spans": [
                  [
                    8140,
                    12
                  ],
                  [
                    8376,
                    11
                  ]
                ]
              }
            ],
            "id": "micro-behaviors/communications/ip/endpoint::private-ipv4-port-192-source-literal",
            "crit": "notable",
            "kind": "unless"
          }
        ],
        "traits": [
          {
            "id": "metadata/package/testing/harness/unit::rust-test",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust test marker or harness",
            "uses": [
              18,
              19
            ],
            "spans": [
              [
                8140,
                12
              ],
              [
                8376,
                11
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/path/config/accounts::unix-account-database-path-reference",
            "conf": 0.95,
            "crit": 3,
            "desc": "Unix account database path reference",
            "spans": [
              [
                16197,
                11
              ]
            ]
          },
          {
            "id": "metadata/file/comment::source-comment-bytes-over-300",
            "conf": 0.92,
            "crit": 2,
            "desc": "Source has over 300 comment bytes"
          },
          {
            "id": "metadata/import/rust/async_trait/async_trait::async_trait/async_trait",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports async_trait::async_trait",
            "spans": [
              [
                73,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/bytes/bytes::bytes/bytes",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports bytes::Bytes",
            "spans": [
              [
                103,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/conduit_core/filter/chain/filtercontext::conduit_core/filter/chain/filtercontext",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports conduit_core::filter::chain::FilterContext",
            "spans": [
              [
                151,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/conduit_core/filter/chain/filteroutcome::conduit_core/filter/chain/filteroutcome",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports conduit_core::filter::chain::FilterOutcome",
            "spans": [
              [
                166,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/conduit_core/filter/chain/requestfilter::conduit_core/filter/chain/requestfilter",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports conduit_core::filter::chain::RequestFilter",
            "spans": [
              [
                181,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/conduit_core/handler/response::conduit_core/handler/response",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports conduit_core::handler::response",
            "spans": [
              [
                201,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/config/limitsconfig::crate/config/limitsconfig",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::config::LimitsConfig",
            "spans": [
              [
                265,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/limits::crate/limits",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::limits",
            "spans": [
              [
                298,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/pingora_core/result::pingora_core/result",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports pingora_core::Result",
            "spans": [
              [
                238,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/sync/arc::std/sync/arc",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::sync::Arc",
            "spans": [
              [
                52,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/sync/atomic/atomicusize::std/sync/atomic/atomicusize",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::sync::atomic::AtomicUsize",
            "spans": [
              [
                24,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/sync/atomic/ordering::std/sync/atomic/ordering",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::sync::atomic::Ordering",
            "spans": [
              [
                37,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "spans": [
              [
                8173,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-assert-eq-macro",
            "conf": 0.7,
            "crit": 2,
            "desc": "assert_eq! macro",
            "spans": [
              [
                8605,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-assert-macro",
            "conf": 0.6,
            "crit": 2,
            "desc": "assert! macro",
            "spans": [
              [
                8524,
                0
              ],
              [
                15956,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-cfg-test",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[cfg(test)] attribute",
            "spans": [
              [
                8140,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test-attr",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[test] attribute",
            "spans": [
              [
                8376,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                2478,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                340,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                4609,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                596,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                5775,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                2753,
                0
              ]
            ]
          }
        ],
        "type": "rust"
      },
      {
        "id": 8,
        "sha": "f5f5b725a2b103cb57189326d72309a98d0cfecd7e2d9d7b9ed293f16056cc4e",
        "path": "/data/samples/incoming/forager/rust/crates.io/_/lopatnov-conduit-limits/lopatnov-conduit-limits-2.0.0.crate!!lopatnov-conduit-limits-2.0.0/src/lib.rs",
        "risk": 1,
        "size": 3771,
        "type": "rust",
        "depth": 1
      },
      {
        "ctx": [
          {
            "b": "B-RapAa%i5z/Pn[Ab](wC@^#+wPI{bz/dSz3uZA3ay/C2By^G]v@Dl%x\u003eGE/oLFuTBAo//zF0P}i%(slBZ=F8zGP!slUH4vyF[.+B.(dxDKp(rarTD}ed9HxarT0?wo?c)z+KOWxjSR3arR^Hnm=juwPy:*z+KOWxjSR3Ef{rmfe1CnxK$W?ay]4[y*?u}wfslTzGGDcBs*f$zFa68ayO[\u003ex(n0laz\u003eLilt{yWlv0V:B0a[ewftL%vpS}\u0026aAImywGUz]vqfR2BrCBeCT#yOwmY^FD30Rse^:l+fcBkdzdNTdBrCdjw]zZ1wO(0@BrCQnADL#owPF$\u0026q.q/%C4CFjB8LM7wPP5kAcb/jzGu}ezu",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "az\u003eLidgdguarV1rarR^HarR^HA+funA=90!xK$W?qE%](y\u0026?Z0nm=juwPy:*z+KOWxjTdiarR^HEf{r7arR!vw/$P4zF0P}3lQDlarR^HatdItCWB]#wo?J\u003eD30Rs3lQC",
            "ln": 465,
            "col": 50,
            "line": 16
          },
          {
            "b": "z+KOWxjTdiarR^HEf{r7arR^]xK$W?qE%](y\u0026?Z0pIQq=3jnBtfcB81A=U!mBzbkdlVl\u003c:wO#PwoL59OBz8!qwPq\u003c7B95KrwNPaXAV/7lBz\u0026pgayYRrwGUG3B-8pLazCBgAb]JhwO#PjvqYP#C42i3wg!j3zxJF3v@bN]wN]dTz/fVdzGGl4wO#b",
            "ln": 698,
            "col": 35,
            "line": 26
          },
          {
            "b": "3lQDlarR^HatdXCABix\u003cvpS}\u0026c[bGCarR^HarR^VxK$Q.wPz\u00260arR^HarR^He[X:qc)AetzGGDcBs?ruzFa68a$k.-arR^HarR^He{82sB98BJdgdguarR^HarSpPyByR@3lQDlarR^HatdRwA=U!udgdguarR^HarSpPyByRsEf{r[zxJR7vpS}\u0026uJ",
            "ln": 895,
            "col": 12,
            "line": 34
          },
          {
            "b": "wPP5bx\u003eq9\u003eB2\u003eB^B7]@iauZ\u0026/wPn51arR^HarR^VxK$Q.wPz\u00260arR^HarR^He[]AsAWSvzarR^HarR^He]t3od10BUefG9+D)0hSvrk^%BAe=Ue]k9pc[cn?atL5\u0026aA/wNwO@[Bas!M\u0026diHn%ar\u003eYizdL:JC42ifwN6mXzxYAgarR^HarR^VB9hsFdlv\u003e",
            "ln": 1272,
            "col": 6,
            "line": 48
          },
          {
            "b": "x(mD7Bzbj)fe1$3ze0)4zfoXrA::63ayPd#aAIjmB.\u003eOhvR3W5wOL^^By!#9Cwhejat+=ie^:l+fa6u=fczFZl2{QXzdNQbA%:MNfcz??u$BN)wPI{2aMv{oaAzQxzFs03aAIWCAboVrazCZovTi6bB08(Iz/YSmx)a5gjS[uBB95@QzE)D?Bzk]f",
            "ln": 1669,
            "col": 63,
            "line": 59
          },
          {
            "b": "aAhd9v}vn1fe1$3eG!ChxMXiduU\u003cp\u003eu)aDVLPTBXBy/IoA+e-(x)a5#azCZoBzbxfay/8czFH\u003cife1$3eG!Crx(mo#vru6*aMv{oaz\u003e?gx(e0fayO+\u0026wPh:1vR/P#A::63azCZovTi6bB0bBkAV/Bmv@Dl}e^:l+fcz??u$Bd.Ac2P3uVP^*B6{cI",
            "ln": 1844,
            "col": 18,
            "line": 64
          },
          {
            "b": "CW\u003eraB1RrzzyxvozEmA)By=O6B0b6Mg:$G[arR^HdRi\u003cmwPI]njrMj7ze0({A::63ayPslw\u0026qE{3vJl*bu[U\u0026xdd\u003ekB95\u003cp3t\u003cY(aARgoBAnNK3lQDlaA.:paAIWAwPx*)dMW$AarR^Hfe1EcLZ}+TFfn#Ny\u0026r-)uVGN%wNxI2wPe+uy?m3\u003cC}AGFv@2T$az\u003e?gx(e0faAy[jwH[@Gh8cK5\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z3jm)#arR[kBy/Jnt).X%arUolaA.Ttz^^f-A::63uVQs2A9)3}uUaE\u003cv@#6{x(mo#vru6/yH}6@B6\u0026H6v}x.5uWup7zZW4SDKp(rarR^HarUGiBrCByBrCdtv}x.5auZ\u00263e?*(}g=(3!arR^HarR!ywPP5ix(mo#vru66jS(EkgbKbigY",
            "ln": 2491,
            "col": 16,
            "line": 82
          },
          {
            "b": "x*KE]3lQDlarR^HarR^HarR^HarR^HarR^HarR^HarR^Hatkw\u003cmr\u0026lJBzMjBf!+vtayYRrwPF#dzxJInvpKy}C{1*:B7F\u003c1zE:)HHlrV\u003cCW\u003eraB0bKCvr(]pvrrRCe^-ZzarR^HarUGiBrCQnygQ)%wN(]DaA.Ttz^^f-A::63uVQs2A405IB-X:qCW\u003eraB1wB*fFUEoaz\u003e?guVGN%wH[@Ue?!.o3lQDlarR^HayPtjwPz(oc)rRxygQ)%wN)tmb4V1cv@#KjayPvmze0(gA::63az(mxBrCEtBrCQnygQ)%a$kOXarR^HarR^HvrlH3A=-DM3lQDlarR^HarR^HasH/Cv}x.5at1Y\u0026e?!.b",
            "ln": 2872,
            "col": 39,
            "line": 95
          },
          {
            "b": "By=NTatCM7fM/ogi%)8MarR^HarSr\u003cavZ6=B95KmxMXidiV})CxcpVaA=VsBBzb98azbt7y\u0026Z.vxK@rcB-ICqB-OWmBZ]h#Bs)[yarR^HarR!HAboD3wm6v=By!*2By/ztct^)Eaz2!cwPI]zatCMSfFCgiaz\u003e?guVGN%wH[@Te?!.o3lQDlarR^H",
            "ln": 5510,
            "col": 19,
            "line": 162
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "config.max_header_bytes.is_some_and"
            ],
            [
              "",
              "header_size"
            ],
            [
              "",
              "config.max_body_bytes.zip.is_some_and"
            ],
            [
              "",
              "config.max_body_bytes.zip"
            ],
            [
              "",
              "declared_content_length"
            ],
            [
              "",
              "session.req_header.headers.get"
            ],
            [
              "",
              "session.req_header"
            ],
            [
              "",
              "session.req_header"
            ],
            [
              "",
              "req.method.as_str.len"
            ],
            [
              "",
              "req.method.as_str"
            ],
            [
              "",
              "req.uri.to_string.len"
            ],
            [
              "",
              "req.uri.to_string"
            ],
            [
              "",
              "req.headers.iter.map.sum"
            ],
            [
              "",
              "req.headers.iter.map"
            ],
            [
              "",
              "req.headers.iter"
            ],
            [
              "",
              "k.as_str.len"
            ],
            [
              "",
              "k.as_str"
            ],
            [
              "",
              "v.len"
            ],
            [
              "",
              "excess.min"
            ],
            [
              "",
              "upload_rate_step"
            ],
            [
              "",
              "upload_rate_step"
            ],
            [
              "",
              "upload_rate_step"
            ],
            [
              "",
              "upload_rate_step"
            ],
            [
              "",
              "upload_rate_step"
            ],
            [
              "",
              "upload_rate_step"
            ],
            [
              "",
              "upload_rate_step"
            ],
            [
              "",
              "upload_rate_step"
            ],
            [
              "",
              "pingora_proxy::Session"
            ],
            [
              "",
              "crate::config::LimitsConfig"
            ],
            [
              "",
              "super::*"
            ]
          ],
          "mbr": [
            "config.max_body_bytes",
            "config.max_body_bytes.zip",
            "config.max_body_bytes.zip.is_some_and",
            "config.max_header_bytes",
            "config.max_header_bytes.is_some_and",
            "excess.min",
            "k.as_str",
            "k.as_str.len",
            "req.headers",
            "req.headers.iter",
            "req.headers.iter.map",
            "req.headers.iter.map.sum",
            "req.method",
            "req.method.as_str",
            "req.method.as_str.len",
            "req.uri",
            "req.uri.to_string",
            "req.uri.to_string.len",
            "session.req_header",
            "session.req_header.headers",
            "session.req_header.headers.get",
            "v.len"
          ],
          "tgt": [
            "config.max_body_bytes.zip",
            "config.max_body_bytes.zip.is_some_and",
            "config.max_header_bytes.is_some_and",
            "declared_content_length",
            "excess.min",
            "header_size",
            "k.as_str",
            "k.as_str.len",
            "req.headers.iter",
            "req.headers.iter.map",
            "req.headers.iter.map.sum",
            "req.method.as_str",
            "req.method.as_str.len",
            "req.uri.to_string",
            "req.uri.to_string.len",
            "session.req_header",
            "session.req_header.headers.get",
            "upload_rate_step",
            "v.len"
          ],
          "funcs": [
            [
              "check",
              304
            ],
            [
              "declared_content_length",
              821
            ],
            [
              "header_size",
              1034
            ],
            [
              "upload_rate_step",
              2287
            ],
            [
              "upload_rate_step_at_exact_min_rate_keeps_excess_zero",
              2741
            ],
            [
              "upload_rate_step_above_min_rate_accumulates_surplus",
              3256
            ],
            [
              "upload_rate_step_surplus_is_capped_at_one_second",
              3792
            ],
            [
              "upload_rate_step_below_min_rate_accumulates_deficit",
              4277
            ],
            [
              "upload_rate_step_rejects_when_deficit_exceeds_one_second",
              4838
            ],
            [
              "upload_rate_step_carries_over_surplus_for_slow_periods",
              5397
            ],
            [
              "upload_rate_step_zero_elapsed_never_rejects",
              6127
            ]
          ],
          "metrics": {
            "ast": {
              "op.gt": 2,
              "op.lt": 1,
              "op.add": 9,
              "op.mul": 1,
              "op.sub": 2,
              "max_depth": 18,
              "call_count": 31,
              "node_count": 1256,
              "member_count": 22,
              "op_density.gt": 0,
              "op_density.lt": 0,
              "op_density.add": 0.01,
              "op_density.mul": 0,
              "op_density.sub": 0,
              "max_concat_chain": 4,
              "max_member_depth": 5
            },
            "file": {
              "size": 6477,
              "entropy": 4.79
            },
            "text": {
              "lines": 183,
              "top_char": 101,
              "digit_ratio": 0.08,
              "space_count": 1532,
              "char_entropy": 4.79,
              "unique_chars": 87,
              "top_char_null": 0,
              "import_density": 1.64,
              "string_density": 0.08,
              "top_char_ratio": 0.09,
              "avg_line_length": 34.39,
              "max_line_length": 124,
              "non_ascii_ratio": 0.02,
              "empty_line_ratio": 0.1,
              "last_line_length": 1,
              "whitespace_ratio": 0.26,
              "identifier_density": 1.02,
              "line_length_stddev": 28.39,
              "max_whitespace_run": 7,
              "normalized_import_count": 0.22,
              "normalized_string_count": 1.03,
              "repeated_char_sequences": 12,
              "suspicious_comment_ratio": 0.07,
              "normalized_function_count": 0.81,
              "imports_to_functions_ratio": 0.27,
              "strings_to_functions_ratio": 1.27,
              "suspicious_identifier_ratio": 0.04,
              "normalized_unique_identifiers": 7.45,
              "identifiers_to_functions_ratio": 5.09
            },
            "binds": {
              "count": 23
            },
            "binary": {
              "peak_region_bytes": 6477,
              "peak_region_entropy": 4.89
            },
            "source": {
              "class_count": 1,
              "function_count": 11
            },
            "imports": {
              "count": 3,
              "wildcard": 1,
              "third_party_count": 3,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 532,
              "count": 14,
              "avg_length": 38,
              "max_length": 55,
              "avg_entropy": 3.85,
              "entropy_stddev": 0.31
            },
            "comments": {
              "chars": 1964,
              "count": 41,
              "lines": 41,
              "high_entropy": 3,
              "to_code_ratio": 0.29
            },
            "functions": {
              "count": 12,
              "density": 6.01,
              "avg_params": 0.73,
              "code_ratio": 0.69,
              "max_params": 4,
              "length_stddev": 2.61,
              "avg_name_length": 37.27,
              "no_params_count": 7,
              "avg_length_lines": 11.55,
              "max_length_lines": 18,
              "min_length_lines": 7,
              "high_entropy_names": 7,
              "avg_param_name_length": 7.75
            },
            "identifiers": {
              "count": 186,
              "unique": 56,
              "avg_length": 12.63,
              "max_length": 56,
              "min_length": 1,
              "avg_entropy": 2.44,
              "reuse_ratio": 0.3,
              "length_stddev": 15.1,
              "sequential_names": 2,
              "single_char_count": 2,
              "single_char_ratio": 0.04,
              "high_entropy_count": 7,
              "high_entropy_ratio": 0.13,
              "all_lowercase_ratio": 0.88
            }
          }
        },
        "id": 9,
        "mol": "Md(Pa)",
        "path": "/data/samples/incoming/forager/rust/crates.io/_/lopatnov-conduit-limits/lopatnov-conduit-limits-2.0.0.crate!!lopatnov-conduit-limits-2.0.0/src/limits.rs",
        "pid": 1213,
        "risk": 2,
        "sha": "890f79ae7cd894aa994fbf2e9426bb54c41e5778e98ceacaf87675a8596d384f",
        "size": 6477,
        "traits": [
          {
            "id": "metadata/package/testing/harness/unit::rust-test",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust test marker or harness",
            "uses": [
              6,
              7
            ],
            "spans": [
              [
                2555,
                12
              ],
              [
                2725,
                11
              ]
            ]
          },
          {
            "id": "metadata/file/comment::source-comment-bytes-over-300",
            "conf": 0.92,
            "crit": 2,
            "desc": "Source has over 300 comment bytes"
          },
          {
            "id": "metadata/import/rust/crate/config/limitsconfig::crate/config/limitsconfig",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::config::LimitsConfig",
            "spans": [
              [
                33,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/pingora_proxy/session::pingora_proxy/session",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports pingora_proxy::Session",
            "spans": [
              [
                4,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "spans": [
              [
                2588,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-assert-macro",
            "conf": 0.6,
            "crit": 2,
            "desc": "assert! macro",
            "spans": [
              [
                3056,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-cfg-test",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[cfg(test)] attribute",
            "spans": [
              [
                2555,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test-attr",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[test] attribute",
            "spans": [
              [
                2725,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                746,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                190,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                5558,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                1717,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                1892,
                0
              ]
            ]
          }
        ],
        "type": "rust"
      },
      {
        "id": 10,
        "sha": "1b837d6caa082e11b1f8aee2f82b472c426d04398eb19b52b67c9215d19979a3",
        "path": "/data/samples/incoming/forager/rust/crates.io/_/lopatnov-conduit-limits/lopatnov-conduit-limits-2.0.0.crate!!lopatnov-conduit-limits-2.0.0/src/validate.rs",
        "risk": 1,
        "size": 951,
        "type": "rust",
        "depth": 1
      },
      {
        "id": 11,
        "mol": "Md(Re)",
        "sha": "e715911bf26156c2514de25844df06a543e5f4995b5c27e8f29268e85279e019",
        "path": "adler2@2.0.1.registry.json",
        "risk": 1,
        "size": 868,
        "type": "registry",
        "depth": 2
      },
      {
        "id": 12,
        "mol": "Md(Re)",
        "sha": "57d8d9d4268617566b85e0b43b4e37d945109f101e18df6798541c09538a39ee",
        "path": "ahash@0.8.12.registry.json",
        "risk": 1,
        "size": 871,
        "type": "registry",
        "depth": 2
      },
      {
        "id": 13,
        "mol": "Md(Re)",
        "sha": "d31276d5d747d5968d942214f6cf264cd260593c54092d141901c258d0526182",
        "path": "aho-corasick@1.1.4.registry.json",
        "risk": 1,
        "size": 890,
        "type": "registry",
        "depth": 2
      },
      {
        "id": 14,
        "mol": "Md(Re)",
        "sha": "39897f90fbe51c09c7ccd71b7c696d192e12d0d00fa1e4bd2e9e3c5b0d11d568",
        "path": "aliasable@0.1.3.registry.json",
        "risk": 1,
        "size": 876,
        "type": "registry",
        "depth": 2
      },
      {
        "id": 15,
        "mol": "Md(Re)",
        "sha": "2a8dd76d35a1c709c1140b424341e2b0ceed2ef47fd8a37337c98b1afbbfff1d",
        "path": "allocator-api2@0.2.21.registry.json",
        "risk": 1,
        "size": 893,
        "type": "registry",
        "depth": 2
      },
      {
        "id": 16,
        "mol": "Md(Re)",
        "sha": "209a5552dcc0c526eec326faf40ec17c5936dccf70929c9a4654f7941ce0be82",
        "path": "anstyle@1.0.14.registry.json",
        "risk": 1,
        "size": 827,
        "type": "registry",
        "depth": 2
      },
      {
        "id": 17,
        "mol": "Md(Re)",
        "sha": "43bfcae77b999d3cec5de337709dfaa8edd79fed67a658b2e24f7c9270c60af5",
        "path": "bstr@1.12.1.registry.json",
        "risk": 1,
        "size": 887,
        "type": "registry",
        "depth": 2
      },
      {
        "id": 18,
        "mol": "Md(Re)",
        "sha": "fa6f1ef05f9c796b2d6762bcd5ac78d4644660920671fd035e66375bc79af41b",
        "path": "lopatnov-conduit-config-core@2.0.0.registry.json",
        "risk": 1,
        "size": 953,
        "type": "registry",
        "depth": 2
      },
      {
        "id": 19,
        "mol": "Md(Re)",
        "sha": "40085d2c3769b3a6dbc2db0bf62350cb99f4ca06a2a98d1c38c3bb06427f89e3",
        "path": "lopatnov-conduit-core@2.0.0.registry.json",
        "risk": 1,
        "size": 925,
        "type": "registry",
        "depth": 2
      },
      {
        "id": 20,
        "sha": "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa",
        "path": "pkg:cargo/adler2@2.0.1",
        "size": 13366,
        "type": "",
        "depth": 2
      },
      {
        "id": 21,
        "sha": "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75",
        "path": "pkg:cargo/ahash@0.8.12",
        "size": 43413,
        "type": "",
        "depth": 2
      },
      {
        "id": 22,
        "sha": "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301",
        "path": "pkg:cargo/aho-corasick@1.1.4",
        "size": 184015,
        "type": "",
        "depth": 2
      },
      {
        "id": 23,
        "sha": "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923",
        "path": "pkg:cargo/allocator-api2@0.2.21",
        "size": 63622,
        "type": "",
        "depth": 2
      },
      {
        "id": 24,
        "sha": "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000",
        "path": "pkg:cargo/anstyle@1.0.14",
        "size": 17787,
        "type": "",
        "depth": 2
      },
      {
        "id": 25,
        "sha": "63044e1ae8e69f3b5a92c736ca6269b8d12fa7efe39bf34ddb06d102cf0e2cab",
        "path": "pkg:cargo/bstr@1.12.1",
        "size": 354916,
        "type": "",
        "depth": 2
      },
      {
        "depth": 2,
        "facts": {
          "metrics": {
            "file": {
              "size": 20930,
              "entropy": 7.99
            },
            "binary": {
              "peak_region_bytes": 20930,
              "peak_region_entropy": 7.8
            }
          }
        },
        "id": 26,
        "ident": {
          "name": {
            "value": "lopatnov-conduit-config-core",
            "source": "crate.name",
            "verified": false
          },
          "urls": [
            {
              "url": "https://github.com/lopatnov/conduit",
              "kind": "repository",
              "source": "crate.repository"
            }
          ],
          "trust": "unsigned",
          "version": {
            "value": "2.0.0",
            "source": "crate.version",
            "verified": false
          },
          "identifier": {
            "value": "lopatnov-conduit-config-core",
            "source": "crate.name",
            "verified": false
          },
          "description": {
            "value": "Layer-0 config-loading mechanism for conduit's feature-driven workspace (issue #114/#127) — generic over the config payload type, zero schema knowledge",
            "source": "crate.description",
            "verified": false
          }
        },
        "mol": "K(Te)H₄(CmDb₂F₃Os)Md(Pa)",
        "path": "pkg:cargo/lopatnov-conduit-config-core@2.0.0",
        "pid": 2,
        "rel": "fetched",
        "risk": 10,
        "sha": "876a90c5165c0fb6ae9028ed2aa6ccb39611b79908aba46ea97f58cd9d99b342",
        "size": 20930,
        "traits": [
          {
            "id": "metadata/package/testing/harness/unit::rust-test",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust test marker or harness",
            "from": [
              {
                "off": 1945,
                "file": 36,
                "line": 62
              },
              {
                "off": 764,
                "file": 37,
                "line": 32
              },
              {
                "off": 3205,
                "file": 39,
                "line": 91
              },
              {
                "off": 11543,
                "file": 40,
                "line": 312
              },
              {
                "off": 2646,
                "file": 41,
                "line": 62
              },
              {
                "off": 521,
                "file": 42,
                "line": 14
              },
              {
                "off": 2192,
                "file": 43,
                "line": 62
              }
            ],
            "uses": [
              38,
              39
            ]
          },
          {
            "id": "micro-behaviors/communications/http/url/scheme::cleartext-http-url-code-literal",
            "atk": "T1071.001",
            "mbc": "C0002",
            "conf": 0.9,
            "crit": 3,
            "desc": "Code embeds cleartext HTTP URL literal",
            "from": [
              {
                "file": 11
              }
            ]
          },
          {
            "id": "micro-behaviors/data/control-flow/loop::block-unbounded-loop-header",
            "conf": 1.0,
            "crit": 3,
            "desc": "Contains an unbounded block loop",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "micro-behaviors/data/parse/json::rust-serde-json-parse",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust parses JSON text or bytes"
          },
          {
            "id": "micro-behaviors/fs/file/open::rust-open-options",
            "conf": 0.88,
            "crit": 3,
            "desc": "Rust OpenOptions builder",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/read/file/full::rust-read-to-string",
            "conf": 0.88,
            "crit": 3,
            "desc": "Reads a file into a Rust string",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/write/file/full::fs-write",
            "atk": "T1041",
            "conf": 0.85,
            "crit": 3,
            "desc": "Writes a file with Rust fs::write",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/write/file/full::repeated-buffer-write-token",
            "conf": 0.88,
            "crit": 3,
            "desc": "Source uses a buffer write call",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "micro-behaviors/os/env/read::rust-env-module-var",
            "conf": 0.86,
            "crit": 3,
            "desc": "Rust reads an environment variable",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "micro-behaviors/os/event/loop::tokio-namespace",
            "conf": 0.5,
            "crit": 3,
            "desc": "References the Tokio async runtime namespace",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "well-known/tool/detection/redaction::bracketed-redacted-marker",
            "conf": 0.92,
            "crit": 3,
            "desc": "Bracketed redacted replacement marker",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "well-known/tool/detection/redaction::redacted-replacement-marker",
            "conf": 0.9,
            "crit": 3,
            "desc": "REDACTED replacement marker",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/anyhow/context::anyhow/context",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports anyhow::Context",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/anyhow/result::anyhow/result",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports anyhow::Result",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/async_trait/async_trait::async_trait/async_trait",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports async_trait::async_trait",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/crate/env/interpolate::crate/env/interpolate",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::env::interpolate",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/crate/format/configformat::crate/format/configformat",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::format::ConfigFormat",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/crate/parse/load_file::crate/parse/load_file",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::parse::load_file",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/crate/validation/validationerror::crate/validation/validationerror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::validation::ValidationError",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/notify/eventkind::notify/eventkind",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports notify::EventKind::*",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/notify/watcher::_",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports notify::Watcher as _",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/serde/de/deserializeowned::serde/de/deserializeowned",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports serde::de::DeserializeOwned",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/serde/deserialize::serde/deserialize",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports serde::Deserialize",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/serial_test/serial::serial_test/serial",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports serial_test::serial",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/borrow/cow::std/borrow/cow",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::borrow::Cow",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/env::std/env",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::env",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/fmt::std/fmt",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::fmt",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/io/write::_",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::io::Write as _",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/path/path::std/path/path",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::path::Path",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/path/pathbuf::std/path/pathbuf",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::path::PathBuf",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/import/rust/super/is_redis_url::super/is_redis_url",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::is_redis_url",
            "from": [
              {
                "file": 11
              }
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/tokio/sync/mpsc::tokio/sync/mpsc",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tokio::sync::mpsc",
            "from": [
              {
                "file": 9
              }
            ]
          },
          {
            "id": "metadata/package/name/convention::cargo-license-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares license"
          },
          {
            "id": "metadata/package/name/convention::cargo-meaningful-description",
            "conf": 0.78,
            "crit": 2,
            "desc": "Cargo package has meaningful description"
          },
          {
            "id": "metadata/package/name/convention::cargo-package-name",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package has name"
          },
          {
            "id": "metadata/package/name/convention::cargo-readme-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares readme"
          },
          {
            "id": "metadata/package/name/convention::cargo-repository-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares repository"
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-cfg-test",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[cfg(test)] attribute",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test-attr",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[test] attribute",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/package/version::cargo-package-version",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package has version"
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "from": [
              {
                "file": 7
              }
            ]
          }
        ],
        "type": "crate",
        "via": "https://static.crates.io/crates/lopatnov-conduit-config-core/lopatnov-conduit-config-core-2.0.0.crate"
      },
      {
        "id": 31,
        "mol": "H(Os)Md(Pa)",
        "sha": "5a1d2f086550ffb7fdb251258d4c3ff92769d256110ad4696d541e624e1234e9",
        "path": "pkg:cargo/lopatnov-conduit-config-core@2.0.0!!lopatnov-conduit-config-core-2.0.0/src/env.rs",
        "risk": 2,
        "size": 4255,
        "type": "rust",
        "depth": 3
      },
      {
        "id": 32,
        "mol": "Md(Pa)",
        "sha": "999a59f375d0cd361d027890016ec6c5d09da2a23e6d6200234a3c840c1235b3",
        "path": "pkg:cargo/lopatnov-conduit-config-core@2.0.0!!lopatnov-conduit-config-core-2.0.0/src/format.rs",
        "risk": 2,
        "size": 1610,
        "type": "rust",
        "depth": 3
      },
      {
        "ctx": [
          {
            "b": "B-RapB97}Ni=FIHxGwgJvrufA3jp]%wGUA0D1.buiY.QPz/fVdCYUFVqE%](y\u0026\u003e7!3uZA3aAIamwmW!.wmW!.l$HBJA+O@#x)Kt^CwZ#5i%{aKwGV59A+5-xiZ^L2wPzG[y?Xibi%(sqB7DF7A::63iYZ?\u0026B#?V#zGGDgAbPM3By^JvB-Rapv@=11wJz\u003e:z/PY6BuhDIz/ff3xgu/WzddJF3jnBtfcA/1xj$\u003c$BrC7izF0P}aAI4awO\u003e\u0026#C4CYnx(v(iBzbxfayY55vrcSoB-7-3A=VthzE^/v3nj4=3nj4=avpi/A3fvrwO@S0ayYw5vqxN{xcpY5zF0P}ePUAnwO\u003e\u0026#v}Yp*xjSibxLzBbj0m@Ov@Dl%x\u003eFM2x(4u6wmYm!vrc71x9{pBfcBWCzE[36AV!+kwPz\u003caz/e@9x(+zqwOL^^By!#9CwhejayMy5y?m3}aA.ToA:-G\u0026az\u003eXhB75Y)aAy[jxK#ibBzb923nj4=aAImkwO#QaC{3%rB8UMdB7F(m3ugb%ay/tcB95J(pFKwJm{/p=qD3d.pc6IugCQ7oatC}+3nj4=aw#=Vwoe(izFTOvBzbkdC4CYnx(v(iw[+*)wftt)w]zZ3ay]z8zF782azb+jy-)X9A=U!A3l@+=wPzHdwHG@TB7GxavqGU7wH[@(wObv[y\u0026?ai3uHrfBZ]Ior+lq)x(v(=A=kz#aBsB",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "arR!ywPP5pwQ5qtjS[DRBy/Giz!@\u003c7wHIUiCYUw@3jm)#arUGiBrCKyz^)osaxA5]B7]Mgp\u0026ZF-wGTbUB7Gx5wNxg[z/dP%w].*buVQsfc)\u003c4ECYUw!B-8zzvq]N(A:Ju*w)]*#BsnO13lQDlay/7@v@2B{wPz\u003caz/c$xA=kz#dl/)33lQDlaz+RhazLBfjS(7*B-X:EwPzr)uUTU2zAo*DwPIB6x\u003c\u003e*(Ds.aTi+AzJzc}vaAWSnRwQ5qCi%)8MarU-pA+5-*Aa9\u003c4uVZh",
            "ln": 742,
            "col": 2,
            "line": 25
          },
          {
            "b": "vrufhdj=PMe[]ivwPxgFdjCQL3jnBtfcBe7vpQG*Aa9\u003c4u)664z/3Rcx(!5jvqYP#Aa9^dwGUYeayPslu@QI+aAg[jw]zZbx(mMawO#Vlx(n37A=t@kvruj4zxJL9A=VsP3nj4=3nj4=avp0*xDP]CpFJ2Xu[Mhnz/e@iayPd#ax.08oDU-\u003ee{Q\u003e",
            "ln": 1543,
            "col": 75,
            "line": 44
          },
          {
            "b": "wPIB6x\u003c\u003e*(DsY(@zE)uxc#-QpxGvm.p*[DVdiHiaaw#=(B.(dZr6zBK3lQDlaz+RhaAy[mauZ\u0026*ByWA[w]*0]A+eV\u0026uVZi[B98CpzF7wpvrufi3lQDlarR^Hatd\u003eLBzb2\u003ez/fVdCYUuYD)03tA=2lbaT!K4vqY$3BrCQnvpQG\u003cz/ff3xcp/2y?kTIDWN7?aAg+hxF9?fB8U@7C{\u003e9\u003cdl/)3arR^HzddJ@xDPVXzF0P}mSir:vrsK\u003ew].*buVoB}xEE?dBz99",
            "ln": 1812,
            "col": 22,
            "line": 51
          },
          {
            "b": "arR^HlR*DDnK)b*mn^5QpFIltarR^HarR^HarR^Qi%)8MarR^HarV7tarR^HEf}8tarTD}c[3I[3vJl*bu[U\u0026xdd\u003ekB95\u003cp3t\u003cY(aARgoBAnNK3lQDlaA.:paAIWAwPx*)dMW$AarR^Hbu[X\u0026A+PYdc}4SQB.rlFl$HBJA+O@#x)Ktwaw=G!Bzkf1mr6+Z3lQDlaAITBBZ]IorbW48DKp(rarR^HarR[kB7Gx5wHI82w)]*#BsyG5arR^HarR^H",
            "ln": 2710,
            "col": 13,
            "line": 70
          },
          {
            "b": "z/dPUpJgz\u0026z/dWWgCRcB3lQDlaBKO7arR^Hfe1EcLZ}+TFfnVDvpS.Sx(4u6\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[%23lQDlar$9jwPI%03lQDlazbHly\u0026r-)uUj1*wNxy+A=U/kuV]\u003c]x\u003egN=B8L@6w[=6)c[co=3lQDlarR^Haz+Rhay]hbauZ\u0026?wO(x#x(4uwi=[}IAaAW6c[c=\u003ezG*bfA40d%3lQDlarR^Haz+RhaAg+hxDPCXwnc6pAa9\u003c4c[c=-z!T8qb4CLewozQde]2DCzxZI\u003e3lQDlarR^HaAITniYZ\u003e]iY.F9x()]mcu9ynxE\u003eoDbo?EUAbP=sb03\u0026afGp+ma%OJ?B-8zzvq)Rzi%)8MarR^HarUGiBrC79xf4emz*rD*az+$8wm5}.y?k1wAa9\u003c4dk2:XCxdbhc[dj+arR^HarR^HvrlH3A=+V1AuM-uw[J-nz/P}Jax9h}wHGI(i4#^gi%)8MarV7t3lQDlar$9jwPI%03lQDlazbHly\u0026r-)uUj1*wNxy+A=U/kuV]\u003c]x\u003egN@vqP*/w[=6)c[co=3lQDlarR^Haz.",
            "ln": 2972,
            "col": 14,
            "line": 86
          },
          {
            "b": "Bye)0B8#5kxj20#yiarha$kOXarR^HarR^Hy?mYhA+frmy\u0026?YXqE%](y\u0026?^sz*sI?jS[MVvpS.Sx(4uect^ErB7]J8dlv\u003eVarR^HarR!nB8$]kBrJ5MwPJ0gBs}oGuUam#c[cPb3lQDlaBKO7arR^Hfe1EcLZ}+TFfnDAz/5\u003cbvqP*/B98BB\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z3jm)#arR[kBy/Jnt).X%arUolaBdyjy*Rc\u0026A=U/kuVP{#Abo8)v@Dl%x\u003eF?yaBsCrarR^HarR!ywPP58w[KdErbW48jS[uSz/5\u003cbvqP*/B98BJb5?EvBugK7",
            "ln": 4319,
            "col": 53,
            "line": 121
          },
          {
            "b": "b6v\u003cqA:-G\u0026a$j%53lQDlaBKO7arR^Hfe1EcLZ}+TFfnDAz/5\u0026@B8L@6B98BB\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[%23lQDlar$9jwPI%03lQDlazbHlB-8nyAbY-oBy!#\u0026C4CYnx(v(@A+funA=b@9wPz*fAWSvVDKp(rarR^HarUGiBrCQnB9hqviV}siB9hqvjxclAj%i0hw].!",
            "ln": 5315,
            "col": 80,
            "line": 145
          }
        ],
        "depth": 3,
        "facts": {
          "imp": [
            [
              "",
              "crate::env::interpolate"
            ],
            [
              "",
              "serde_json::from_str.unwrap_or_default"
            ],
            [
              "",
              "serde_json::from_str"
            ],
            [
              "",
              "check_version"
            ],
            [
              "",
              "serde_json::Deserializer::from_str"
            ],
            [
              "",
              "serde_path_to_error::deserialize.map_err"
            ],
            [
              "",
              "serde_path_to_error::deserialize"
            ],
            [
              "",
              "crate::env::interpolate"
            ],
            [
              "",
              "serde_yaml::from_str.unwrap_or_default"
            ],
            [
              "",
              "serde_yaml::from_str"
            ],
            [
              "",
              "check_version"
            ],
            [
              "",
              "serde_yaml::Deserializer::from_str"
            ],
            [
              "",
              "serde_path_to_error::deserialize.map_err"
            ],
            [
              "",
              "serde_path_to_error::deserialize"
            ],
            [
              "",
              "std::fs::read_to_string.with_context"
            ],
            [
              "",
              "std::fs::read_to_string"
            ],
            [
              "",
              "crate::format::ConfigFormat::from_path"
            ],
            [
              "",
              "from_yaml_str.with_context"
            ],
            [
              "",
              "from_yaml_str"
            ],
            [
              "",
              "from_json_str.with_context"
            ],
            [
              "",
              "from_json_str"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "tempfile::tempdir.unwrap"
            ],
            [
              "",
              "tempfile::tempdir"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "std::fs::write.unwrap"
            ],
            [
              "",
              "std::fs::write"
            ],
            [
              "",
              "load_file.unwrap"
            ],
            [
              "",
              "load_file"
            ],
            [
              "",
              "tempfile::tempdir.unwrap"
            ],
            [
              "",
              "tempfile::tempdir"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "std::fs::write.unwrap"
            ],
            [
              "",
              "std::fs::write"
            ],
            [
              "",
              "load_file.unwrap"
            ],
            [
              "",
              "load_file"
            ],
            [
              "",
              "tempfile::tempdir.unwrap"
            ],
            [
              "",
              "tempfile::tempdir"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "std::fs::write.unwrap"
            ],
            [
              "",
              "std::fs::write"
            ],
            [
              "",
              "load_file.expect"
            ],
            [
              "",
              "load_file"
            ],
            [
              "",
              "tempfile::tempdir.unwrap"
            ],
            [
              "",
              "tempfile::tempdir"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "load_file"
            ],
            [
              "",
              "from_yaml_str.expect"
            ],
            [
              "",
              "from_yaml_str"
            ],
            [
              "",
              "from_yaml_str"
            ],
            [
              "",
              "from_yaml_str"
            ],
            [
              "",
              "result.unwrap_err.to_string"
            ],
            [
              "",
              "result.unwrap_err"
            ],
            [
              "",
              "from_json_str"
            ],
            [
              "",
              "result.unwrap_err.to_string"
            ],
            [
              "",
              "result.unwrap_err"
            ],
            [
              "",
              "from_json_str"
            ],
            [
              "",
              "from_json_str"
            ],
            [
              "",
              "from_json_str"
            ],
            [
              "",
              "std::path::Path"
            ],
            [
              "",
              "anyhow::Context"
            ],
            [
              "",
              "anyhow::Result"
            ],
            [
              "",
              "serde::de::DeserializeOwned"
            ],
            [
              "",
              "serde::Deserialize"
            ],
            [
              "",
              "crate::env::interpolate"
            ],
            [
              "",
              "crate::format::ConfigFormat"
            ],
            [
              "",
              "super::*"
            ]
          ],
          "mbr": [
            "dir.path",
            "dir.path.join",
            "from_json_str.with_context",
            "from_yaml_str.expect",
            "from_yaml_str.with_context",
            "load_file.expect",
            "load_file.unwrap",
            "probe.version",
            "result.unwrap_err",
            "result.unwrap_err.to_string",
            "serde_json::from_str.unwrap_or_default",
            "serde_path_to_error::deserialize.map_err",
            "serde_yaml::from_str.unwrap_or_default",
            "std::fs::read_to_string.with_context",
            "std::fs::write.unwrap",
            "tempfile::tempdir.unwrap"
          ],
          "tgt": [
            "Ok",
            "check_version",
            "crate::env::interpolate",
            "crate::format::ConfigFormat::from_path",
            "dir.path",
            "dir.path.join",
            "from_json_str",
            "from_json_str.with_context",
            "from_yaml_str",
            "from_yaml_str.expect",
            "from_yaml_str.with_context",
            "load_file",
            "load_file.expect",
            "load_file.unwrap",
            "result.unwrap_err",
            "result.unwrap_err.to_string",
            "serde_json::Deserializer::from_str",
            "serde_json::from_str",
            "serde_json::from_str.unwrap_or_default",
            "serde_path_to_error::deserialize",
            "serde_path_to_error::deserialize.map_err",
            "serde_yaml::Deserializer::from_str",
            "serde_yaml::from_str",
            "serde_yaml::from_str.unwrap_or_default",
            "std::fs::read_to_string",
            "std::fs::read_to_string.with_context",
            "std::fs::write",
            "std::fs::write.unwrap",
            "tempfile::tempdir",
            "tempfile::tempdir.unwrap"
          ],
          "funcs": [
            [
              "from_json_str",
              672
            ],
            [
              "from_yaml_str",
              1161
            ],
            [
              "load_file",
              1791
            ],
            [
              "check_version",
              2391
            ],
            [
              "load_file_parses_valid_json_file",
              3221
            ],
            [
              "load_file_parses_valid_yaml_file",
              3537
            ],
            [
              "load_file_parses_yml_extension",
              3848
            ],
            [
              "load_file_missing_file_returns_error",
              4175
            ],
            [
              "yaml_parses_simple_config",
              4649
            ],
            [
              "yaml_invalid_port_type_returns_error",
              4817
            ],
            [
              "yaml_unsupported_version_returns_error",
              5026
            ],
            [
              "unsupported_version_returns_error",
              5552
            ],
            [
              "supported_version_parses_ok",
              5992
            ],
            [
              "no_version_field_parses_ok",
              6167
            ],
            [
              "invalid_json_returns_error",
              6327
            ]
          ],
          "metrics": {
            "ast": {
              "op.gt": 1,
              "max_depth": 13,
              "call_count": 63,
              "node_count": 1780,
              "member_count": 16,
              "op_density.gt": 0,
              "max_member_depth": 3
            },
            "file": {
              "size": 6523,
              "entropy": 5.06
            },
            "text": {
              "lines": 178,
              "top_char": 101,
              "digit_ratio": 0.02,
              "space_count": 1167,
              "char_entropy": 5.06,
              "unique_chars": 84,
              "top_char_null": 0,
              "import_density": 4.49,
              "lines_over_200": 1,
              "string_density": 0.18,
              "top_char_ratio": 0.06,
              "avg_line_length": 35.65,
              "max_line_length": 207,
              "non_ascii_ratio": 0.08,
              "empty_line_ratio": 0.16,
              "last_line_length": 1,
              "long_token_count": 3,
              "whitespace_ratio": 0.21,
              "identifier_density": 1.84,
              "line_length_stddev": 35.25,
              "max_whitespace_run": 1,
              "normalized_import_count": 0.6,
              "normalized_string_count": 2.4,
              "repeated_char_sequences": 13,
              "suspicious_comment_ratio": 0.06,
              "normalized_function_count": 1.12,
              "imports_to_functions_ratio": 0.53,
              "strings_to_functions_ratio": 2.13,
              "suspicious_identifier_ratio": 0.04,
              "normalized_unique_identifiers": 11.37,
              "identifiers_to_functions_ratio": 5.67
            },
            "binds": {
              "count": 28
            },
            "binary": {
              "peak_region_bytes": 6523,
              "peak_region_entropy": 4.99
            },
            "source": {
              "class_count": 2,
              "function_count": 15
            },
            "imports": {
              "count": 8,
              "wildcard": 1,
              "third_party_count": 8,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 726,
              "count": 32,
              "avg_length": 22.69,
              "max_length": 116,
              "avg_entropy": 3.3,
              "entropy_stddev": 0.96
            },
            "comments": {
              "chars": 1312,
              "count": 16,
              "lines": 16,
              "high_entropy": 1,
              "to_code_ratio": 0.1
            },
            "functions": {
              "count": 17,
              "density": 8.43,
              "avg_params": 0.27,
              "code_ratio": 0.59,
              "max_params": 1,
              "length_stddev": 2.76,
              "avg_name_length": 25.93,
              "no_params_count": 11,
              "avg_length_lines": 7,
              "max_length_lines": 13,
              "min_length_lines": 4,
              "high_entropy_names": 10,
              "avg_param_name_length": 4.25
            },
            "identifiers": {
              "count": 328,
              "unique": 85,
              "avg_length": 10.07,
              "max_length": 38,
              "min_length": 1,
              "avg_entropy": 2.49,
              "reuse_ratio": 0.26,
              "length_stddev": 9.02,
              "sequential_names": 3,
              "single_char_count": 3,
              "single_char_ratio": 0.04,
              "high_entropy_count": 11,
              "high_entropy_ratio": 0.13,
              "all_lowercase_ratio": 0.78,
              "all_uppercase_ratio": 0.02
            }
          }
        },
        "id": 34,
        "mol": "H₂(DbF₂)Md(Pa)",
        "path": "pkg:cargo/lopatnov-conduit-config-core@2.0.0!!lopatnov-conduit-config-core-2.0.0/src/parse.rs",
        "pid": 160,
        "risk": 4,
        "sha": "eda00a9202f06a6690a5acbf0201dc39a53ef022ec4c3377b07ffaa9b032b778",
        "size": 6523,
        "traits": [
          {
            "id": "metadata/package/testing/harness/unit::rust-test",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust test marker or harness",
            "uses": [
              12,
              13
            ],
            "spans": [
              [
                2774,
                12
              ],
              [
                3205,
                11
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/parse/json::rust-serde-json-parse",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust parses JSON text or bytes",
            "spans": [
              [
                806,
                27
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/read/file/full::rust-read-to-string",
            "conf": 0.88,
            "crit": 3,
            "desc": "Reads a file into a Rust string",
            "spans": [
              [
                1876,
                19
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/write/file/full::fs-write",
            "atk": "T1041",
            "conf": 0.85,
            "crit": 3,
            "desc": "Writes a file with Rust fs::write",
            "spans": [
              [
                3374,
                10
              ]
            ]
          },
          {
            "id": "metadata/import/rust/anyhow/context::anyhow/context",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports anyhow::Context",
            "spans": [
              [
                35,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/anyhow/result::anyhow/result",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports anyhow::Result",
            "spans": [
              [
                44,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/env/interpolate::crate/env/interpolate",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::env::interpolate",
            "spans": [
              [
                115,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/format/configformat::crate/format/configformat",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::format::ConfigFormat",
            "spans": [
              [
                144,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/serde/de/deserializeowned::serde/de/deserializeowned",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports serde::de::DeserializeOwned",
            "spans": [
              [
                57,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/serde/deserialize::serde/deserialize",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports serde::Deserialize",
            "spans": [
              [
                90,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/path/path::std/path/path",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::path::Path",
            "spans": [
              [
                4,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "spans": [
              [
                2807,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-cfg-test",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[cfg(test)] attribute",
            "spans": [
              [
                2774,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test-attr",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[test] attribute",
            "spans": [
              [
                3205,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                464,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                1591,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                348,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                208,
                0
              ]
            ]
          }
        ],
        "type": "rust"
      },
      {
        "ctx": [
          {
            "b": "BAg/1BzkVhe^:l+aQP\u003eQaS%5[tvpoFz*2\u00269wPx[2k44Usx(+z9aAIEzA:@V6Bzb98aAIWAAbol1B0bNrwGUY8x([5$y-)kazF0P}aA?gfB.8X6lTQlOfcIDDzE:(hBAg@3zf3?xAaAy0wPF#rxK#6)C4CXpBzbkdv@Dl%x\u003eINevruj4zxJC5vqYZ?B1OOylTR3JB0b7qy\u00261w7fe1E\u003ez/xc8B.8XewPzu8\u0026^^moBzbxfay/C2By=OjwP?T9az$R8wPF#5ay/tcv@=d5wGV57xK#3?aAR)FwIb98xK@rbz/o.8fe1E\u003ev@=11wGUC@zE^/hu{=51avf%=lVl\u003cOx\u003eH/@C4\u003ewcvixVqAaHe2",
            "ln": 38,
            "col": 39,
            "line": 1
          },
          {
            "b": "z/cWJaAg+hxDR2bw]zZbvruj4zy#nHfcIC[e*aLoze:qlp\u0026ZF$x\u003eg^}jvqpPw]zYjs-nC6p\u0026ZF$x\u003eg^}u[I^tfcIC]e*9-6ayGkjzyu@wiV@GPzE:(ixK@r2zFsibvqE5@z/ff3xcp]9zdNl(vru6%C}p7WxK#67yH}6@aA}mov}YN]x9{pBaS})",
            "ln": 438,
            "col": 43,
            "line": 10
          },
          {
            "b": "aAIamC4CX3fe1E\u003earR!FxMXAsx(mMawn=Wfdj$@mB-RapB97}Ni=FIHxGwh3p*[DVefE+$Bza0-w{(-F3uZA3ayPekxM58Qi-oKgB.(dY3uZA3ayPtpzEW3}A:-W7iYZX\u003cD2vb0BAg/7Buo?LB7DFnwPzr)iYZ!.iYYVuB7GxavqGU7wLWI/wN)\u003efB-RapBz\u003e@ez-P}2D2vaMi=e?Sv(\u003e28B-Rapv@=11wJz\u003e\u003evrcB2iY.7}vpS.Sx(4ux3uZA3ay/C2By^G]C42i3wmoN]z/dP%r://UwmoN]z/e0:A=k$W3jnBtaMwSo\u0026/[%orb#zYBrGOcFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ\u003c8Ffe1$3k{fVQzF0P}B-H]jx(v(iB8Mhwv}u^8xKM09B98ClvqQ6du{!rAB-p(1By/IC3l@+-B9RUkuVZr%x()R/AckRjBAg/7BrBz2z*2\u00269wPx[2j#%/+wO}",
            "ln": 698,
            "col": 74,
            "line": 14
          },
          {
            "b": "wPx[2j$dQaj%i:mB9hqvjszTxi%{xy3nj4P\u0026/[#MLZ\u003c(Cx(4uSA=lbnwmY^7\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFc(T9D2Nsqr://UwmoN#AY=YMauZ\u0026lz*jxPD2s-]zyu\u00260diHiaaxA5-jxt)bx\u003egT]x(v(TA=M8sj%hu#q!o\u0026Sas!NkD2vaQi%{7PAaHd=z^^f/AY=YMauZ\u0026lzV",
            "ln": 1639,
            "col": 39,
            "line": 43
          },
          {
            "b": "zeS@@dK(L?tvqU?Bzb2\u0026B-.LeA+f69vpS+KdlnO}vru0)wPF#oxK@q#x(4u6CwhejayG89Bzkuju\u003cXLufcBXvwftr6Bz(28Bzkk[y\u00261wtB7Gl1B0a)lzE[2mv@Dl%x\u003eFMjxK#6)C4CXpBzbkdw[=6)ay/7[zF9K4aA8cuwnca2e^:l+fcBnowOc73",
            "ln": 2227,
            "col": 19,
            "line": 56
          },
          {
            "b": "El5G$EiHi+wId}gBz9iFwId?hB8$=5wHP5narR^HarR^HarR^HarR^HarR^He[n*oy?m9#c[dj+arR^HarR^HarR^HarR^HvqZv7z*al6vQS$!aT!KAz/ff3xcqway?WA*BzkVhaz2Olz/P[WtYa[pa$K\u003cNB7YLDyhW*7c)z]la$j%53lQDlarR^HarR^H",
            "ln": 5279,
            "col": 40,
            "line": 139
          },
          {
            "b": "v@Dj6vrc76z/dfmarR^HarR^Hfe1CzzxJ!8v]32Cflz5IazC)tvixSpzer{7yAN.qatmXOx)9{bwIndxA62gWz//Y9C{4csBAIRwB0a$3zF%Abv{%f@Aa9\u003c4B1vUv",
            "ln": 6308,
            "col": 66,
            "line": 172
          },
          {
            "b": "Bye#}Bz9iFv}Yp*xjUB(CQU\u003cs3jm)#arR^HarV1rarR^HarR^HarR^HB-RapzF%Shw{DA#s7chXxK#ibvriL#i%)8MarR^HarR^HarSr\u003caxI#[v}W0bxK@r9vrb{%BrCadA+e:5z/QaCBz\u0026pyB-IUtC4z!8Bz(2gv\u003c2\u00263C4C.qc$M}6Bz(gxBy/rdeOnZkwGSGCA+fa",
            "ln": 6728,
            "col": 51,
            "line": 181
          },
          {
            "b": "v%8*kx)a5Zz!9Aui.\u003cQhqE%uXA=U@rwHP\u002693lQDlarR^HaBKO7arR^HarR^HCw7YbwGU/2BrBI2zdLazdjDx5ay/7[zF9J/A^fiSwN/)idk24Mvqf*aDKp(rarR^HarR^HarUxgar+/qy?tquwO=o[wm6m)uT)+TzF9JecuKFYe[5%jx(\u003eFA3lQDlarQ",
            "ln": 6952,
            "col": 60,
            "line": 186
          },
          {
            "b": "wPP4\u003cyBA+qwO#PsauZ\u0026/wPF#9y\u0026:egDMWuuBAIRwaBMrUarR^HarR^HB-RapzF%Shw{DA#mrSlWBw3s=wi8+3i%)8MarR^HarUGiBrCpnC5IhuwPIj2vrc0(BrAZ?wP?T5Bp6ckarR^HarR^HarSpQvrug73lQDlarR^HarR^HatdwIwPxgF3lQDlarR^HarR^Hatd8uC{[5V",
            "ln": 9879,
            "col": 10,
            "line": 262
          },
          {
            "b": "LZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ\u003c8Fbu[U\u0026xdd\u003ekB95\u003cp3t\u003cY(aARgoBAnNK3lQDlaA.:paAITniYZ$[iYZt.x()]evriL#i%(rqarR!HB7DFnwPzr)iYYVuB7GxavqGU7wJHkaarR^HB-RapB9hCkAYMlhi%(rqarR^Ktv.q=x)a5ol$G?IxdLe[wPIB6x\u003c\u003e*(DsXSIp*[x^x\u003c\u003e*DAv-k1y\u0026si5dp0o6arR!FBAhIlBrBL3C{4CvarR^HarR^Hbu]k2A+5-fwmYvYB.(dG",
            "ln": 10582,
            "col": 135,
            "line": 280
          },
          {
            "b": "arR^HarR^Hatd+Eze:93y?k1z3lQDlarR^HarR^HatdkIAaJK3c)A+Aze:93y?j!ti%)8MarR^HarUnGCxdztwNw\u003eZy:-!izGGDcBs}0yuT!q5wPGmGdk2gRAaJK3c)A\u003eQx()]gdlv\u003eVarR^HarR!se[O{xB7=%Je[GoDwN/*gb4+UlB7=:Di%)8MarR^HarUGiBrCKhBz8^Waz9lBvrufhdk2ZXuVoB}xKtj\u003ew*/8\u00263lQDlarR^HasH?MaAd",
            "ln": 11109,
            "col": 4,
            "line": 300
          },
          {
            "b": "AW8=Pb5?EvBrS:*fNUb\u0026i%(rqarR^WfcGnsFz#/zaw^8%C4\u003eF#AV/EAvqf*a\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z3jm)#arR[kBy/Jnt).X%arUolazbt7wNxy%z*2\u00269wPzc}vqPN.x(^S[x(4uediJ%AarR^HarR^HvrlH3A=+V1AuM-1x(4uSA=lbnwmY^xiY{wWC%jnIzE[2ua$[4PA4=C*yiarha$kcZvqPN7dj=O=w[=6)a$kOXarR^HEf{r7arR^KtxBB$Bx]j@arR!szxJL9y?l%)A=lbnwmY^*Aa9\u003c4uVQscA+e=*v@DydwN/*#C{\u003e9:DKp(rarR^HarUGiBrCJBjS)jdy?lB-z*2\u00269wPx*)jxclAj#$-xwP]KDflz5IfjO{rwozQde]2DCzxZI\u003e3lQDlarR^HayPtjwPz)1wPn\u003ewA4V9rBz96KefE+$Bz9Y@zE[2ua$[4PA4+ZtzE^)7Bs}rHz/c:Fdlv\u003eVarR!P3jm)#arR[kBy/Jnt).X%arUolaA}KwxA",
            "ln": 11349,
            "col": 27,
            "line": 308
          },
          {
            "b": "iY.d\u0026CpjT*BzU$ICRi-Lz/c:Fe{z2KxKtg\u003cBz\u003eJbwO=o[wge(*3lQDlarR^HayPtjwPz(oc#Z!EB-.LeA+f69vpQ/G3lQDlaBKO7arR^Hfe1EcLZ}+TFfo5AByO#\u003ewnc6bc#0:zB.8Wugb}6saMwSo\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z3jm)#arR[kBy/Jnt).X%arUolaA}mov}YjWx(WM\u0026vrb{^A+f5}Bzk]fuUj1*wO${[wNx4Ty\u00261f1vQS+ZuVZi[v%8*jwO#P%wnc6jdiJ%AarR^HarR^Hfe1CE",
            "ln": 11952,
            "col": 36,
            "line": 325
          },
          {
            "b": "iY.d\u0026CpjT/a$j%53lQDlaBKO7arR^Hfe1EcLZ}+TFfmT9wI4$pz/^asz!9A4\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFc(SaarR^KtxB!0x(u3[By/Jnt).X%arU9lD2vamw]n-fzE))5z//ucwO#41uUKy(Bzkf1uT[1(w[+)+vqYQ.A+funA=b}DdiJ%AarR^HarR^Hy?mYhc%{Nqao",
            "ln": 13057,
            "col": 51,
            "line": 357
          },
          {
            "b": "az(7sv(=UXxKL^@wO-+Hdlv\u003ezarR^HarR^Hy?mYhA+frmy\u0026*^.aAhvtC4\u003eF#AXqxPzyxQKdk24Mvqf*B3lQDlarR^HayPtjwPz(oc#@)uB.(dLx(^T1yByRXi%(rqarR^H",
            "ln": 13407,
            "col": 27,
            "line": 366
          },
          {
            "b": "arR!ywPP5nwPJ0gBrAZ?Bz\u003e@ez-P}3x(dAxi=]7MwP8Zkd06GviY.v%zdL:?m0iJUBzkVhiYZ\u003e[z/5\u003c5wN/^fgas:%Ab](ux\u003eg^}e](8Ld0fX.dgdguarR^HarR^HarSpBCvtic3lQDlarR^HarR^HatdkIAaJK3c)AIJB95Kxz/^anvqYZ4dlv\u003eVarR^HarR!nB8$]kBrJ4",
            "ln": 14416,
            "col": 6,
            "line": 398
          },
          {
            "b": "c[cPb3lQDlaBKO7arR^Hfe1EcLZ}+TFfnVDvpQGlaA}KwxKt{\u003ey?WA*Bz(gx\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ\u003c8FarR^Hbu]n3B97W{arR^Hw]n-cz^^f-vpJ!UAccedC42i3wm5?+zF0P}c[co=3lQDlarR^Haz+RhasHPeefF[uBz99CjS[@?x()][v@Dl%x\u003eF?*nLR\u0026Kk$?",
            "ln": 14834,
            "col": 46,
            "line": 408
          },
          {
            "b": "vpQ=ne[]xlz!*:Idlv\u003eVarR!P3jm)#arSr\u003caMwSo\u0026/[%oCwhejuU\u003cT?wmY^7\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFz#/z\u0026/[#MLZ}+TFc(SaarR^KtxBB$Bx]j@arR!szxKdqBzb2$z^^f/A:J:dwPz*9wmY*?Bzbk)wmYvYB.(ebwmY*[A+O@#x)Kuhc[co=3lQDlarR^Haz+RhasHPeefF[uBz99CjP",
            "ln": 16126,
            "col": 28,
            "line": 445
          },
          {
            "b": "DKp(rarR^HarU/FwGV5owi8+=z-P{XA+PSbayPsluPOPqarR^HarR!ywPP5iB-X:rauZ\u0026*ByWA[w]*0]pJf(.pJgz\u0026z/fRSi=nIMc[bGCarR^HarR^HarR^VCxdztwHIUvB.90earR^HarR^HarR^He{8bRzEW9%wHIUvB.90earR^HarR^HarR^He]LYuzyxEjBz99garR^HarR^HarR^He[GoDwN/*gb5.BizxJLfAV/pzwPA0nx()]gdlv\u003eVarR^HarQ",
            "ln": 17993,
            "col": 46,
            "line": 488
          },
          {
            "b": "BrCQGdiH+@ze:MaiYZ+:vqY%]y:.m(i%(rqarR^HarR!ywPP5dvqYQ(wGTbUBz\u003e@ez-P}2Aa9%dc$dgxzET/az*2XmDMWoFz*2\u00269wPxzzB-5QHCQUmNCvticaBLX23jm)#arR^HarSr\u003catCF\u003eqE%uHx)a5gx(mTbx\u003c\u003e*2v@Dl%x\u003eG49arR^HarR^Hy?mYhx(mTb",
            "ln": 18511,
            "col": 20,
            "line": 503
          },
          {
            "b": "y?j-3x(Xope^-ZzarR^HarU=AyIvYFi=]7MwJz\u003e[y?mf%d06GviY.v%zdL:?m0iJUBzkVhiYZ\u003e[z/5\u0026#x(4Q1B0@[1fEXC6vrVc]Buo*LarR^HarR!ywPP5qAaAy0wN(]DaAwXJDM)AEA=-G^au8krh*(\u003e{i%)8MarR^HarUPCwPA0nx()]mcu9ynxE\u003eoGAaAy0wN)kK3jm)#ao",
            "ln": 19088,
            "col": 63,
            "line": 516
          },
          {
            "b": "z!\u003c69iY.v%zdL:?nP5P\u003evqZfFi=n\u003eWc[cn?aAITniY.v%zdL:?m0iJUBzkVhiYZ\u003e[z/5\u003c5wN/^fi4l]@arR^HarR^Hy\u0026slhaBsCrarR^HarR^HarR!ywPP5nwO\u003e\u003c\u0026zFs03auZ\u0026TwNPa=x(mGmB76fkA::67zF9r!B-H]jx(v(@B7]J4wHIUsyIvYFi=]7MwJz\u003ezzGx]dzGE{2zF%.EdjEs=arR^HarR^HarR^Hx\u003ewGdwO\u003e\u003c\u0026zFs03e[]xlDs.bnc[b",
            "ln": 19516,
            "col": 25,
            "line": 524
          }
        ],
        "depth": 3,
        "facts": {
          "imp": [
            [
              "",
              "path.into"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "Box::new"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "Box::new"
            ],
            [
              "",
              "loader"
            ],
            [
              "",
              "crate::parse::load_file"
            ],
            [
              "",
              "validator"
            ],
            [
              "",
              "errors.is_empty"
            ],
            [
              "",
              "errors.iter.map.collect"
            ],
            [
              "",
              "errors.iter.map"
            ],
            [
              "",
              "errors.iter"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "tx.send"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "build_file_watcher"
            ],
            [
              "",
              "watcher.watch"
            ],
            [
              "",
              "watch_dir"
            ],
            [
              "",
              "change_rx.recv"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "path.parent"
            ],
            [
              "",
              "p.as_os_str.is_empty"
            ],
            [
              "",
              "p.as_os_str"
            ],
            [
              "",
              "std::path::Path::new"
            ],
            [
              "",
              "tx.send"
            ],
            [
              "",
              "notify::recommended_watcher"
            ],
            [
              "",
              "event.paths.iter.any"
            ],
            [
              "",
              "event.paths.iter"
            ],
            [
              "",
              "p.canonicalize.unwrap_or_else"
            ],
            [
              "",
              "p.canonicalize"
            ],
            [
              "",
              "p.clone"
            ],
            [
              "",
              "tx.blocking_send"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "tempfile::Builder::new.suffix.tempfile.expect"
            ],
            [
              "",
              "tempfile::Builder::new.suffix.tempfile"
            ],
            [
              "",
              "tempfile::Builder::new.suffix"
            ],
            [
              "",
              "tempfile::Builder::new"
            ],
            [
              "",
              "f.write_all.expect"
            ],
            [
              "",
              "f.write_all"
            ],
            [
              "",
              "content.as_bytes"
            ],
            [
              "",
              "f.flush.expect"
            ],
            [
              "",
              "f.flush"
            ],
            [
              "",
              "f.path.to_path_buf"
            ],
            [
              "",
              "f.path"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new.with_auto_reload"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "tokio::sync::mpsc::channel"
            ],
            [
              "",
              "provider.run"
            ],
            [
              "",
              "rx.recv"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "tokio::sync::mpsc::channel"
            ],
            [
              "",
              "provider.run"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "tokio::sync::mpsc::channel"
            ],
            [
              "",
              "drop"
            ],
            [
              "",
              "tokio::time::timeout"
            ],
            [
              "",
              "std::time::Duration::from_secs"
            ],
            [
              "",
              "provider.run"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "tokio::sync::mpsc::channel"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new.with_validator"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "provider.load.expect_err"
            ],
            [
              "",
              "provider.load"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new.with_validator"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new.with_loader"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "provider.load.expect"
            ],
            [
              "",
              "provider.load"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "provider.load.expect"
            ],
            [
              "",
              "provider.load"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new.with_loader"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "provider.load.expect_err"
            ],
            [
              "",
              "provider.load"
            ],
            [
              "",
              "std::fs::OpenOptions::new.write.truncate.open.expect"
            ],
            [
              "",
              "std::fs::OpenOptions::new.write.truncate.open"
            ],
            [
              "",
              "std::fs::OpenOptions::new.write.truncate"
            ],
            [
              "",
              "std::fs::OpenOptions::new.write"
            ],
            [
              "",
              "std::fs::OpenOptions::new"
            ],
            [
              "",
              "f.write_all.expect"
            ],
            [
              "",
              "f.write_all"
            ],
            [
              "",
              "content.as_bytes"
            ],
            [
              "",
              "f.flush.expect"
            ],
            [
              "",
              "f.flush"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new.with_auto_reload"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "tokio::sync::mpsc::channel"
            ],
            [
              "",
              "tokio::spawn"
            ],
            [
              "",
              "provider.run"
            ],
            [
              "",
              "tokio::time::timeout"
            ],
            [
              "",
              "std::time::Duration::from_secs"
            ],
            [
              "",
              "rx.recv"
            ],
            [
              "",
              "tokio::time::sleep"
            ],
            [
              "",
              "std::time::Duration::from_millis"
            ],
            [
              "",
              "overwrite"
            ],
            [
              "",
              "tokio::time::Instant::now"
            ],
            [
              "",
              "std::time::Duration::from_secs"
            ],
            [
              "",
              "deadline.saturating_duration_since"
            ],
            [
              "",
              "tokio::time::Instant::now"
            ],
            [
              "",
              "remaining.is_zero"
            ],
            [
              "",
              "tokio::time::timeout"
            ],
            [
              "",
              "rx.recv"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "handle.abort"
            ],
            [
              "",
              "write_config"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new.with_auto_reload"
            ],
            [
              "",
              "FileProvider::\u003cToy\u003e::new"
            ],
            [
              "",
              "tokio::sync::mpsc::channel"
            ],
            [
              "",
              "tokio::spawn"
            ],
            [
              "",
              "provider.run"
            ],
            [
              "",
              "tokio::time::timeout"
            ],
            [
              "",
              "std::time::Duration::from_secs"
            ],
            [
              "",
              "rx.recv"
            ],
            [
              "",
              "tokio::time::sleep"
            ],
            [
              "",
              "std::time::Duration::from_millis"
            ],
            [
              "",
              "overwrite"
            ],
            [
              "",
              "tokio::time::timeout"
            ],
            [
              "",
              "std::time::Duration::from_millis"
            ],
            [
              "",
              "rx.recv"
            ],
            [
              "",
              "handle.abort"
            ],
            [
              "",
              "std::path::Path"
            ],
            [
              "",
              "std::path::PathBuf"
            ],
            [
              "",
              "anyhow::Result"
            ],
            [
              "",
              "async_trait::async_trait"
            ],
            [
              "",
              "serde::de::DeserializeOwned"
            ],
            [
              "",
              "tokio::sync::mpsc"
            ],
            [
              "",
              "crate::parse::load_file"
            ],
            [
              "",
              "crate::validation::ValidationError"
            ],
            [
              "",
              "notify::Watcher"
            ],
            [
              "",
              "notify::EventKind::*"
            ],
            [
              "",
              "std::io::Write"
            ],
            [
              "",
              "serde::Deserialize"
            ],
            [
              "",
              "super::*"
            ],
            [
              "",
              "std::io::Write"
            ]
          ],
          "mbr": [
            "FileProvider::\u003cToy\u003e::new.with_auto_reload",
            "FileProvider::\u003cToy\u003e::new.with_loader",
            "FileProvider::\u003cToy\u003e::new.with_validator",
            "cfg.port",
            "change_rx.recv",
            "content.as_bytes",
            "deadline.saturating_duration_since",
            "errors.is_empty",
            "errors.iter",
            "errors.iter.map",
            "errors.iter.map.collect",
            "event.paths",
            "event.paths.iter",
            "event.paths.iter.any",
            "f.flush",
            "f.flush.expect",
            "f.path",
            "f.path.to_path_buf",
            "f.write_all",
            "f.write_all.expect",
            "handle.abort",
            "p.as_os_str",
            "p.as_os_str.is_empty",
            "p.canonicalize",
            "p.canonicalize.unwrap_or_else",
            "p.clone",
            "path.into",
            "path.parent",
            "provider.load",
            "provider.load.expect",
            "provider.load.expect_err",
            "provider.run",
            "remaining.is_zero",
            "rx.recv",
            "std::fs::OpenOptions::new.write",
            "std::fs::OpenOptions::new.write.truncate",
            "std::fs::OpenOptions::new.write.truncate.open",
            "std::fs::OpenOptions::new.write.truncate.open.expect",
            "tempfile::Builder::new.suffix",
            "tempfile::Builder::new.suffix.tempfile",
            "tempfile::Builder::new.suffix.tempfile.expect",
            "tx.blocking_send",
            "tx.send",
            "watcher.watch"
          ],
          "tgt": [
            "Box::new",
            "FileProvider::\u003cToy\u003e::new",
            "FileProvider::\u003cToy\u003e::new.with_auto_reload",
            "FileProvider::\u003cToy\u003e::new.with_loader",
            "FileProvider::\u003cToy\u003e::new.with_validator",
            "Ok",
            "Some",
            "build_file_watcher",
            "change_rx.recv",
            "content.as_bytes",
            "crate::parse::load_file",
            "deadline.saturating_duration_since",
            "drop",
            "errors.is_empty",
            "errors.iter",
            "errors.iter.map",
            "errors.iter.map.collect",
            "event.paths.iter",
            "event.paths.iter.any",
            "f.flush",
            "f.flush.expect",
            "f.path",
            "f.path.to_path_buf",
            "f.write_all",
            "f.write_all.expect",
            "handle.abort",
            "loader",
            "notify::recommended_watcher",
            "overwrite",
            "p.as_os_str",
            "p.as_os_str.is_empty",
            "p.canonicalize",
            "p.canonicalize.unwrap_or_else",
            "p.clone",
            "path.into",
            "path.parent",
            "provider.load",
            "provider.load.expect",
            "provider.load.expect_err",
            "provider.run",
            "remaining.is_zero",
            "rx.recv",
            "std::fs::OpenOptions::new",
            "std::fs::OpenOptions::new.write",
            "std::fs::OpenOptions::new.write.truncate",
            "std::fs::OpenOptions::new.write.truncate.open",
            "std::fs::OpenOptions::new.write.truncate.open.expect",
            "std::path::Path::new",
            "std::time::Duration::from_millis",
            "std::time::Duration::from_secs",
            "tempfile::Builder::new",
            "tempfile::Builder::new.suffix",
            "tempfile::Builder::new.suffix.tempfile",
            "tempfile::Builder::new.suffix.tempfile.expect",
            "tokio::spawn",
            "tokio::sync::mpsc::channel",
            "tokio::time::Instant::now",
            "tokio::time::sleep",
            "tokio::time::timeout",
            "tx.blocking_send",
            "tx.send",
            "validator",
            "watch_dir",
            "watcher.watch",
            "write_config"
          ],
          "funcs": [
            [
              "new",
              3082
            ],
            [
              "with_loader",
              3850
            ],
            [
              "with_auto_reload",
              4096
            ],
            [
              "with_validator",
              4337
            ],
            [
              "path",
              4567
            ],
            [
              "load",
              4860
            ],
            [
              "name",
              5578
            ],
            [
              "run",
              5637
            ],
            [
              "watch_dir",
              7833
            ],
            [
              "reload_on_change",
              8262
            ],
            [
              "build_file_watcher",
              9645
            ],
            [
              "write_config",
              10961
            ],
            [
              "file_provider_name_is_file",
              11559
            ],
            [
              "file_provider_path_stored_correctly",
              11692
            ],
            [
              "with_auto_reload_sets_flag",
              11883
            ],
            [
              "watch_dir_bare_relative_filename_falls_back_to_current_dir",
              12162
            ],
            [
              "watch_dir_relative_path_with_directory_uses_that_directory",
              12473
            ],
            [
              "watch_dir_absolute_path_uses_its_parent",
              12682
            ],
            [
              "watch_dir_root_path_falls_back_to_current_dir",
              12884
            ],
            [
              "oneshot_sends_initial_config_and_returns",
              13223
            ],
            [
              "oneshot_only_sends_one_message",
              13640
            ],
            [
              "oneshot_returns_ok_when_receiver_dropped_before_send",
              14152
            ],
            [
              "oneshot_fails_on_missing_file",
              14626
            ],
            [
              "load_accepts_valid_config",
              14978
            ],
            [
              "load_rejects_missing_file",
              15147
            ],
            [
              "load_rejects_parse_error",
              15309
            ],
            [
              "with_validator_rejects_config_that_fails_validation",
              15500
            ],
            [
              "with_validator_accepts_config_that_passes_validation",
              15908
            ],
            [
              "with_loader_overrides_the_default_deserializer",
              16297
            ],
            [
              "without_with_loader_uses_default_load_file",
              16986
            ],
            [
              "with_loader_errors_propagate",
              17317
            ],
            [
              "overwrite",
              17952
            ],
            [
              "auto_reload_sends_initial_then_update",
              18318
            ],
            [
              "auto_reload_ignores_invalid_file_changes",
              20258
            ]
          ],
          "metrics": {
            "ast": {
              "op.eq": 2,
              "op.add": 1,
              "max_depth": 20,
              "call_count": 157,
              "node_count": 4961,
              "member_count": 44,
              "op_density.eq": 0,
              "op_density.add": 0,
              "max_concat_chain": 2,
              "max_member_depth": 5
            },
            "file": {
              "size": 21199,
              "entropy": 4.88
            },
            "text": {
              "lines": 570,
              "top_char": 101,
              "digit_ratio": 0.01,
              "space_count": 4706,
              "char_entropy": 4.88,
              "unique_chars": 93,
              "top_char_null": 0,
              "import_density": 2.46,
              "string_density": 0.09,
              "top_char_ratio": 0.06,
              "avg_line_length": 36.19,
              "max_line_length": 200,
              "non_ascii_ratio": 0.07,
              "empty_line_ratio": 0.14,
              "last_line_length": 1,
              "long_token_count": 7,
              "whitespace_ratio": 0.25,
              "identifier_density": 1.49,
              "line_length_stddev": 32.11,
              "max_whitespace_run": 4,
              "normalized_import_count": 0.59,
              "normalized_string_count": 2.26,
              "repeated_char_sequences": 103,
              "suspicious_comment_ratio": 0.02,
              "normalized_function_count": 1.42,
              "imports_to_functions_ratio": 0.41,
              "strings_to_functions_ratio": 1.59,
              "suspicious_identifier_ratio": 0.02,
              "normalized_unique_identifiers": 20.86,
              "identifiers_to_functions_ratio": 5.62
            },
            "binds": {
              "count": 41
            },
            "binary": {
              "peak_region_bytes": 17103,
              "peak_region_entropy": 4.98
            },
            "source": {
              "class_count": 3,
              "function_count": 34
            },
            "imports": {
              "count": 14,
              "aliased": 3,
              "wildcard": 2,
              "third_party_count": 14,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 1042,
              "count": 54,
              "avg_length": 19.3,
              "max_length": 67,
              "path_count": 8,
              "avg_entropy": 2.97,
              "entropy_stddev": 1.12
            },
            "comments": {
              "chars": 7284,
              "count": 126,
              "lines": 126,
              "high_entropy": 3,
              "to_code_ratio": 0.28
            },
            "functions": {
              "count": 37,
              "density": 5.96,
              "avg_params": 0.56,
              "code_ratio": 0.62,
              "max_params": 2,
              "length_stddev": 9.6,
              "avg_name_length": 27.38,
              "no_params_count": 21,
              "avg_length_lines": 10.32,
              "max_length_lines": 42,
              "min_length_lines": 3,
              "high_entropy_names": 19,
              "single_char_params": 2,
              "avg_param_name_length": 4.95
            },
            "identifiers": {
              "count": 847,
              "unique": 191,
              "avg_length": 10.13,
              "max_length": 58,
              "min_length": 1,
              "avg_entropy": 2.45,
              "reuse_ratio": 0.23,
              "length_stddev": 11.21,
              "sequential_names": 4,
              "single_char_count": 5,
              "single_char_ratio": 0.03,
              "high_entropy_count": 22,
              "high_entropy_ratio": 0.12,
              "all_lowercase_ratio": 0.77,
              "all_uppercase_ratio": 0.02,
              "underscore_prefix_count": 4
            }
          }
        },
        "id": 35,
        "mol": "H₂(DbF₂)Md(Pa)",
        "path": "pkg:cargo/lopatnov-conduit-config-core@2.0.0!!lopatnov-conduit-config-core-2.0.0/src/provider.rs",
        "pid": 160,
        "risk": 5,
        "sha": "b3c3eabe75e7fcf9bf8028f7d9c71777ec488b83520b52999e1476237d6a6bec",
        "size": 21199,
        "traits": [
          {
            "id": "metadata/package/testing/harness/unit::rust-test",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust test marker or harness",
            "uses": [
              18,
              19
            ],
            "spans": [
              [
                10646,
                12
              ],
              [
                11543,
                11
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/control-flow/loop::block-unbounded-loop-header",
            "conf": 1.0,
            "crit": 3,
            "desc": "Contains an unbounded block loop",
            "spans": [
              [
                19580,
                14
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/file/open::rust-open-options",
            "conf": 0.88,
            "crit": 3,
            "desc": "Rust OpenOptions builder",
            "spans": [
              [
                18057,
                18
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/write/file/full::source-full-buffer-write-token",
            "conf": 0.88,
            "crit": 3,
            "desc": "Source uses a buffer write call",
            "spans": [
              [
                11173,
                10
              ]
            ]
          },
          {
            "id": "micro-behaviors/os/event/loop::tokio-namespace",
            "conf": 0.5,
            "crit": 3,
            "desc": "References the Tokio async runtime namespace",
            "spans": [
              [
                850,
                7
              ]
            ]
          },
          {
            "id": "metadata/import/rust/anyhow/result::anyhow/result",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports anyhow::Result",
            "spans": [
              [
                767,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/async_trait/async_trait::async_trait/async_trait",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports async_trait::async_trait",
            "spans": [
              [
                787,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/parse/load_file::crate/parse/load_file",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::parse::load_file",
            "spans": [
              [
                874,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/validation/validationerror::crate/validation/validationerror",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::validation::ValidationError",
            "spans": [
              [
                903,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/notify/eventkind::notify/eventkind",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports notify::EventKind::*",
            "spans": [
              [
                9927,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/notify/watcher::_",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports notify::Watcher as _",
            "spans": [
              [
                6776,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/serde/de/deserializeowned::serde/de/deserializeowned",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports serde::de::DeserializeOwned",
            "spans": [
              [
                817,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/serde/deserialize::serde/deserialize",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports serde::Deserialize",
            "spans": [
              [
                10709,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/io/write::_",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::io::Write as _",
            "spans": [
              [
                10679,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/path/path::std/path/path",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::path::Path",
            "spans": [
              [
                746,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/path/pathbuf::std/path/pathbuf",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::path::PathBuf",
            "spans": [
              [
                752,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "spans": [
              [
                10738,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/tokio/sync/mpsc::tokio/sync/mpsc",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tokio::sync::mpsc",
            "spans": [
              [
                850,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-cfg-test",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[cfg(test)] attribute",
            "spans": [
              [
                10646,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test-attr",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[test] attribute",
            "spans": [
              [
                11543,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                100,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                133,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                86,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                486,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                2275,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                222,
                0
              ]
            ]
          }
        ],
        "type": "rust"
      },
      {
        "id": 36,
        "mol": "K(Te)Md(Pa)",
        "sha": "b82f72ebf568c172b70a0daec227cf9c43804cb8f664bfa0378bb147a87e4a45",
        "path": "pkg:cargo/lopatnov-conduit-config-core@2.0.0!!lopatnov-conduit-config-core-2.0.0/src/redact.rs",
        "risk": 3,
        "size": 5877,
        "type": "rust",
        "depth": 3
      },
      {
        "id": 37,
        "mol": "H(Cm)Md(Pa)",
        "sha": "26edd83087018ef2e84267bc60af5bc60b078ad93217c2a412ba879263a1d478",
        "path": "pkg:cargo/lopatnov-conduit-config-core@2.0.0!!lopatnov-conduit-config-core-2.0.0/src/scheme.rs",
        "risk": 3,
        "size": 1003,
        "type": "rust",
        "depth": 3
      },
      {
        "id": 38,
        "mol": "Md(Pa)",
        "sha": "3a27b4505dd86dba385e3a08bba6b4eb98a3814f0c90412b33dd7d5b7c4f8fdb",
        "path": "pkg:cargo/lopatnov-conduit-config-core@2.0.0!!lopatnov-conduit-config-core-2.0.0/src/validation.rs",
        "risk": 2,
        "size": 3498,
        "type": "rust",
        "depth": 3
      },
      {
        "depth": 2,
        "facts": {
          "metrics": {
            "file": {
              "size": 30209,
              "entropy": 7.99
            },
            "binary": {
              "peak_region_bytes": 30209,
              "peak_region_entropy": 7.82
            }
          }
        },
        "id": 39,
        "ident": {
          "name": {
            "value": "lopatnov-conduit-core",
            "source": "crate.name",
            "verified": false
          },
          "urls": [
            {
              "url": "https://github.com/lopatnov/conduit",
              "kind": "repository",
              "source": "crate.repository"
            }
          ],
          "trust": "unsigned",
          "version": {
            "value": "2.0.0",
            "source": "crate.version",
            "verified": false
          },
          "identifier": {
            "value": "lopatnov-conduit-core",
            "source": "crate.name",
            "verified": false
          },
          "description": {
            "value": "Layer-0 traits and primitives for conduit's feature-driven workspace (issue #114/#126) — zero config knowledge, pingora + std only",
            "source": "crate.description",
            "verified": false
          }
        },
        "mol": "H₂(Cm₇F₃)Md₂(In₄Pa)",
        "path": "pkg:cargo/lopatnov-conduit-core@2.0.0",
        "pid": 2,
        "rel": "fetched",
        "risk": 8,
        "sha": "6fb151e80457748728f880dc5d649a05f5193e6398e3df4e621dfc16a9a29816",
        "size": 30209,
        "traits": [
          {
            "id": "metadata/import/rust/std/fs/file::std/fs/file",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports std::fs::File",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/fs/openoptions::std/fs/openoptions",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports std::fs::OpenOptions",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/os/unix/fs/openoptionsext::std/os/unix/fs/openoptionsext",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports std::os::unix::fs::OpenOptionsExt",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/os/unix/fs/symlink::std/os/unix/fs/symlink",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports std::os::unix::fs::symlink",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust test marker or harness",
            "from": [
              {
                "off": 1196,
                "file": 51,
                "line": 34
              },
              {
                "file": 54
              },
              {
                "off": 1245,
                "file": 56,
                "line": 29
              },
              {
                "off": 1634,
                "file": 57,
                "line": 50
              },
              {
                "off": 1365,
                "file": 58,
                "line": 30
              },
              {
                "off": 4489,
                "file": 59,
                "line": 134
              }
            ],
            "uses": [
              39,
              40
            ]
          },
          {
            "id": "micro-behaviors/communications/http/content-length::content-length-zero",
            "atk": "T1071.001",
            "mbc": "C0002",
            "conf": 0.9,
            "crit": 3,
            "desc": "HTTP Content-Length zero header",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/header/accept::accept-json-header",
            "atk": "T1071.001",
            "mbc": "C0002",
            "conf": 0.95,
            "crit": 3,
            "desc": "Requests a JSON HTTP response",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/header/content-type::json-content-type-reference",
            "atk": "T1071.001",
            "conf": 0.9,
            "crit": 3,
            "desc": "References JSON HTTP Content-Type header",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/message::multiple-raw-http-request-lines-source",
            "conf": 0.97,
            "crit": 3,
            "desc": "Multiple standard HTTP request lines in source",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/message::raw-http-safe-request-line-source",
            "conf": 0.94,
            "crit": 3,
            "desc": "Raw HTTP safe-method request line in source",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/response::http-absolute-location-header",
            "conf": 0.88,
            "crit": 3,
            "desc": "Emits an absolute HTTP Location header",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/response::response-success-field",
            "conf": 0.86,
            "crit": 3,
            "desc": "JSON response success field",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/http/server/framework::loopback-port-80-string",
            "atk": "T1071.001",
            "mbc": "C0002",
            "conf": 0.8,
            "crit": 3,
            "desc": "Loopback HTTP port 80 bind string",
            "from": [
              {
                "file": 14
              }
            ]
          },
          {
            "id": "micro-behaviors/communications/socket/port::loopback-endpoint-with-port",
            "conf": 0.9,
            "crit": 3,
            "desc": "Loopback socket endpoint with explicit port",
            "from": [
              {
                "file": 14
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/file/open::rust-open-options",
            "conf": 0.88,
            "crit": 3,
            "desc": "Rust OpenOptions builder",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/read/file/full::rust-read-to-string",
            "conf": 0.88,
            "crit": 3,
            "desc": "Reads a file into a Rust string",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/write/file/full::fs-write",
            "atk": "T1041",
            "conf": 0.85,
            "crit": 3,
            "desc": "Writes a file with Rust fs::write",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "micro-behaviors/fs/write/file/full::repeated-buffer-write-token",
            "conf": 0.88,
            "crit": 3,
            "desc": "Source uses a buffer write call",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "micro-behaviors/os/event/loop::tokio-namespace",
            "conf": 0.5,
            "crit": 3,
            "desc": "References the Tokio async runtime namespace",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "objectives/impact/crypto-manipulation/keywords::crypto-word",
            "conf": 0.2,
            "crit": 3,
            "desc": "crypto word in Rust source",
            "from": [
              {
                "file": 16
              }
            ]
          },
          {
            "id": "metadata/import/rust/async_trait/async_trait::async_trait/async_trait",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports async_trait::async_trait",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/bytes/bytes::bytes/bytes",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports bytes::Bytes",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/pingora_core/result::pingora_core/result",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports pingora_core::Result",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/pingora_http/responseheader::pingora_http/responseheader",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports pingora_http::ResponseHeader",
            "from": [
              {
                "file": 8
              }
            ]
          },
          {
            "id": "metadata/import/rust/pingora_proxy/session::pingora_proxy/session",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports pingora_proxy::Session",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/io/bufwriter::std/io/bufwriter",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::io::BufWriter",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/io/write::_",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::io::Write as _",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/io::std/io",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::io",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/sync/atomic/atomicusize::std/sync/atomic/atomicusize",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::sync::atomic::AtomicUsize",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/import/rust/std/sync/mutex::std/sync/mutex",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::sync::Mutex",
            "from": [
              {
                "file": 15
              }
            ]
          },
          {
            "id": "metadata/import/rust/subtle/constanttimeeq::_",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports subtle::ConstantTimeEq as _",
            "from": [
              {
                "file": 12
              }
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/tokio/io/asyncreadext::tokio/io/asyncreadext",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tokio::io::AsyncReadExt",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/import/rust/tokio/io/asyncwriteext::tokio/io/asyncwriteext",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports tokio::io::AsyncWriteExt",
            "from": [
              {
                "file": 10
              }
            ]
          },
          {
            "id": "metadata/package/name/convention::cargo-license-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares license"
          },
          {
            "id": "metadata/package/name/convention::cargo-meaningful-description",
            "conf": 0.78,
            "crit": 2,
            "desc": "Cargo package has meaningful description"
          },
          {
            "id": "metadata/package/name/convention::cargo-package-name",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package has name"
          },
          {
            "id": "metadata/package/name/convention::cargo-readme-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares readme"
          },
          {
            "id": "metadata/package/name/convention::cargo-repository-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares repository"
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-cfg-test",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[cfg(test)] attribute",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test-attr",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[test] attribute",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/package/version::cargo-package-version",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package has version"
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "from": [
              {
                "file": 5
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "from": [
              {
                "file": 5
              }
            ]
          }
        ],
        "type": "crate",
        "via": "https://static.crates.io/crates/lopatnov-conduit-core/lopatnov-conduit-core-2.0.0.crate"
      },
      {
        "id": 46,
        "mol": "Md(Pa)",
        "sha": "36d16d9fb87e5b65400aca981934a49207776877e4519bb2bbda401cad538e05",
        "path": "pkg:cargo/lopatnov-conduit-core@2.0.0!!lopatnov-conduit-core-2.0.0/src/filter/path.rs",
        "risk": 2,
        "size": 2837,
        "type": "rust",
        "depth": 3
      },
      {
        "id": 47,
        "sha": "defc1d986c139fa24ca6286e4cd6667034ffa7fcb5b8c7cb09fc02a8ca7e8620",
        "path": "pkg:cargo/lopatnov-conduit-core@2.0.0!!lopatnov-conduit-core-2.0.0/src/filter/response_chain.rs",
        "risk": 1,
        "size": 3089,
        "type": "rust",
        "depth": 3
      },
      {
        "id": 49,
        "mol": "H₂(Cm₅F)Md(Pa)",
        "sha": "03a4dcd505f130ec57697fab407d8fb0e8513f599ff66b0c2c90eeb32ad3337c",
        "path": "pkg:cargo/lopatnov-conduit-core@2.0.0!!lopatnov-conduit-core-2.0.0/src/handler/response.rs",
        "risk": 4,
        "size": 9520,
        "type": "rust",
        "depth": 3
      },
      {
        "id": 51,
        "mol": "Md(Pa)",
        "sha": "8cf5c7d8b2f34dd0370a9318628444fd3de156480b7088d88e5b77b3b97ee695",
        "path": "pkg:cargo/lopatnov-conduit-core@2.0.0!!lopatnov-conduit-core-2.0.0/src/util/crypto.rs",
        "risk": 2,
        "size": 2039,
        "type": "rust",
        "depth": 3
      },
      {
        "id": 52,
        "mol": "Md(Pa)",
        "sha": "7acf18ff4cf131142925562181c6068a75a25bcf2c16daa423be0c79991c9117",
        "path": "pkg:cargo/lopatnov-conduit-core@2.0.0!!lopatnov-conduit-core-2.0.0/src/util/encoding.rs",
        "risk": 2,
        "size": 4095,
        "type": "rust",
        "depth": 3
      },
      {
        "id": 53,
        "mol": "H(Cm₂)Md(Pa)",
        "sha": "5cf03cc8e281ecdeedc506cd87736f79b8f06a9d957ff30356c8277943794ec9",
        "path": "pkg:cargo/lopatnov-conduit-core@2.0.0!!lopatnov-conduit-core-2.0.0/src/util/host.rs",
        "risk": 3,
        "size": 3211,
        "type": "rust",
        "depth": 3
      },
      {
        "ctx": [
          {
            "b": "B-RapB97}Ni+AB]i^Ttgy?kdupJf(.pJgz\u0026z/fSAi%{aKwGV5owi8+=z-P}aB7Gf1efEo4w(\u003c1!By/FzaxJO$By=O6B0a?ri%{aKwGV5owi8+)D2vaMi.::swQ3oz3nj4=awV@/zGu}dAa9\u003c4u)661AV!!fAaJ]$asH-uwNPW{zF78aBrCpfayO-2wO#PsaA}KwxM53nazbLdy\u0026sJizF7823nj4=aAI*By?W^5ayPvmBzbkdw[=c\u003ey-)X9Bz8!bz/6DizE)ZcaMv{oaAIa9ayGnmx()\u0026#uUj1*wND)bay]z2ay/tbzdNQb3nj4=azbLjaARpdaxhc7r8lHpA::67z/f01wGSynB8#Fnar@S",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "z/ddbzFstrAbn%8w]zZbB08(GzWFcJfcBT#uRTx^pFsCTs70dXz/f5@Ac9SNvqYP#B9RRsx(mZcaARpdA+cwlwPq\u003cbA+cw8y?m=#By!#9Ab]Vox(4u[wPF#ozWFcJfcB+BwNPW(azCZoBzbkdw[=pbBrCKsvpJ\u003c\u003e\u0026^^moy\u0026sJeAV/ypB89iQazb3",
            "ln": 418,
            "col": 48,
            "line": 10
          },
          {
            "b": "asqeKAW-a.j%jMTiYZeIB9hqvjvT43wJ?k-3lQDlar$92w[JJmzFstAt).X%arV1rarR^HarR^HB-RapB97}Ni=x72i^2sOCSE($B2(uTAaJ].Acb/jzGwl\u003eBuo*LarR^HarR!5AaJ].Acb/jzGv\u003c1zE[2udgdguarR^HarR^HarSpDA+eW3wHIUvB.90earR^HarR^HarR^He[5ZrwO#3bBAhIndgdguarR^HarR^HarSpDB-RUyzc{)\u003evp%Tfy?Wu*iYZ5zpestPoIwk-dgdguarR^HarR^HarSpPAaJ]nAa9\u003c4dgdguarV7tao",
            "ln": 614,
            "col": 24,
            "line": 13
          },
          {
            "b": "arSr\u003cfa5*AarSr\u003cfcA\u0026cB9h4pbqIkjiV}\u003cGaz1#4y?WE3aA?spB7]MgaA7\u003cmBzbxfay/7@v@0ifB7F\u003e?arR^Hfe1$3u#{Qgy?W^5uU%v@vpS!*vjiNjazbLdy\u0026sJewftubayMxxB7Gr0A::63dJ\u0026a{AaJ].Acb/jzGv\u003c1z/xo9c[eKharR^Hfe1$3",
            "ln": 2089,
            "col": 3,
            "line": 64
          },
          {
            "b": "x([Acy?tZJBzbkdyH}K7wO-G3vqfL0aARpdaAI*Hv{%g\u0026ayPwgze0G*y\u00261wtCwhej3lQDlatkx3ayESipFT!{azCBgBzbkdw[=c\u003ey-)kaze:AhwO#Pjx(+z9aAI*By?W^5efGdJBz8!mzY\u003cmrzE^WfayX]7Cv+u63lQDlatkx3ay/7@v@2^@xcpS2",
            "ln": 2545,
            "col": 18,
            "line": 71
          },
          {
            "b": "efDc-y?W=#EiHa43lQDlarR^HarR^Hatkw\u003cmR)i*xDQ(fwPA5sy?W=#aAIDzBzb98az+$eaAR4ay?W^1aA}:AyJyRdz/P(fv@#Kje^-ZzarR^HarR^HarUGiBrB{kjS[@3w]8QhxECq\u003e3lQDlarR^HaBLwzy\u0026:egDKp(rarR^HarR^HarUSzx(n3e",
            "ln": 4179,
            "col": 31,
            "line": 115
          },
          {
            "b": "A+PSbAV/YoarR^Hw]n-4wObv[y\u0026?6Oat2=1q!o=SaBsCrarR^HarR!9wO+%ti=nIMc[bGCarR!P3vJl*bu[U\u0026xdd\u003ekB95\u003cp3t\u003cY(aARgoBAnNK3lQDlaA.:paAIWAwPx*)dMW$AarR^Hbu]n3B97W{arR^Hw]n-4wObv[y\u0026\u003c2#ze:q#zddJ@xK#l(zE[2udiJ%AarR^HarR^Hy?mYhCox3\u003eoMaMBA+PSbAYMl(wObv[y\u0026?6Oi%)8MarR^HarUGiBrCpnzE)\u0026hjS[@3x(m*1AXqfDv@0Fwe{h5QA:-]ndlv\u003eVarR^HarR!nB8$]kBrJ4tarR^HarR^HarR^Hx(m*1AXp%ry?kkkB6\u0026*6zE\u003ejBed9HxarR^HarR^HarR\u003eswObv[y\u0026*!zA+PSbAV/Bpz/](baA}\u003cuBy=OpzY\u003caywn=Qja{]CnarR^HarQ",
            "ln": 4381,
            "col": 22,
            "line": 124
          },
          {
            "b": "avpi.s8@1%wPxjL3lQDlarR^HaA]CXB7FZ1ByYrjBsnO13lQDlarR^Haz+Rhay/tcBy/uiauZ\u0026*ByWA[w]*0]A+eV\u0026uVZi[B98CpzF7vAAa9\u003c4dk2gRAaJK3c)AXyvpQG%z!ymyi%)8MarR^HarU9lB7GxlaT*\u0026szGGDcBs}6wzGGr3zGviIxK#0@zY\u0026Ujz/3RswPI@qdjEs=arR^HEf{r7arR^KtxBB$Bx]j@arR!szxK1Ax()\u0026#uUj1*wNxL6x\u003e7ZYyH}5",
            "ln": 5599,
            "col": 56,
            "line": 168
          },
          {
            "b": "arR^Hy?mYhx(m*1AV^H/Cp)PEzE)\u0026vy\u0026r*0c[c=\u003ezG*bfA40d%3lQDlarR^HayPtjwPz)1wPn\u003ewx(m*1AXqrtBz9pnB6\u0026D?A+e\u0026hdj=Puz/65lAa9\u003c4ga)V!uVQsfc[c=\u003ezG*bfA40d:dlv\u003eVarR!P3jm)#arR[kBy/Jnt).X%arR[kv}Gv4B-7]rdp0o6arR!szxK1Ax()\u0026#uVZi[B9RRsx(mY[A+funA=b@9wPz*fAWSvVDKp(rarR^HarU/FwGV5owi8+\u0026B2(v8zFstRi+AB]i=/N-y?W^5i%)8MarR^HarUGiBrCadAV^H/By/rdw[=6)iY.v]ze:31AWSv?B-8zzvq)Rzi%)8MarR^HarUGiBrCWlA+w%9auZ\u0026Tx(U?Bvrufhdk2vNx(ksyA+eV}e]kDsa$kOXarR^HarR^Hy?mYhy?W^5auZ\u0026Tx(U?Bvrufhdk2vNx(ksyy?W^5e]kDsa$kOXarR^HarR^HB97}Ni+AB]i^kQUBy=\u003cEByxi5wPPECa%FD*B-8zzvq)Rzi%)8MarR^HarU-Jzer{7yByJKvrc0(BsXKYy?W^5dk2:XCxdbhc[dj+3lQDlarR^Haz+RhaA[}\u003eawuY^s8@1%wPx*)zE[2udlv\u003eVarR^HarR!ywPP5nwPJ0gBrAZ?Cp)@Xx()\u0026#uUj1*wHIwezFH\u003eDz^NNcAWSv?B-8zzvq)Rzdlv\u003eVarR^HarR!nB8$]kBrJ5MwPJ0gBs}n",
            "ln": 6125,
            "col": 5,
            "line": 182
          }
        ],
        "depth": 3,
        "facts": {
          "imp": [
            [
              "",
              "std::fs::OpenOptions::new.create.append.custom_flags.open"
            ],
            [
              "",
              "std::fs::OpenOptions::new.create.append.custom_flags"
            ],
            [
              "",
              "std::fs::OpenOptions::new.create.append"
            ],
            [
              "",
              "std::fs::OpenOptions::new.create"
            ],
            [
              "",
              "std::fs::OpenOptions::new"
            ],
            [
              "",
              "std::fs::OpenOptions::new.create.append.open"
            ],
            [
              "",
              "std::fs::OpenOptions::new.create.append"
            ],
            [
              "",
              "std::fs::OpenOptions::new.create"
            ],
            [
              "",
              "std::fs::OpenOptions::new"
            ],
            [
              "",
              "std::sync::Mutex::new"
            ],
            [
              "",
              "open_no_follow"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "std::io::BufWriter::new"
            ],
            [
              "",
              "Some"
            ],
            [
              "",
              "path.to_owned"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "inner.path.clone"
            ],
            [
              "",
              "w.flush"
            ],
            [
              "",
              "Self::new"
            ],
            [
              "",
              "LogWriter::default"
            ],
            [
              "",
              "w.inner.lock.unwrap"
            ],
            [
              "",
              "w.inner.lock"
            ],
            [
              "",
              "LogWriter::new"
            ],
            [
              "",
              "w.inner.lock.unwrap"
            ],
            [
              "",
              "w.inner.lock"
            ],
            [
              "",
              "LogWriter::new"
            ],
            [
              "",
              "w.write_line"
            ],
            [
              "",
              "tempfile::tempdir.unwrap"
            ],
            [
              "",
              "tempfile::tempdir"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "LogWriter::new"
            ],
            [
              "",
              "w.switch_file.expect"
            ],
            [
              "",
              "w.switch_file"
            ],
            [
              "",
              "path.to_str.unwrap"
            ],
            [
              "",
              "path.to_str"
            ],
            [
              "",
              "w.write_line"
            ],
            [
              "",
              "w.use_stdout"
            ],
            [
              "",
              "std::fs::read_to_string.expect"
            ],
            [
              "",
              "std::fs::read_to_string"
            ],
            [
              "",
              "tempfile::tempdir.unwrap"
            ],
            [
              "",
              "tempfile::tempdir"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "LogWriter::new"
            ],
            [
              "",
              "w.switch_file.unwrap"
            ],
            [
              "",
              "w.switch_file"
            ],
            [
              "",
              "path1.to_str.unwrap"
            ],
            [
              "",
              "path1.to_str"
            ],
            [
              "",
              "w.switch_file.unwrap"
            ],
            [
              "",
              "w.switch_file"
            ],
            [
              "",
              "path2.to_str.unwrap"
            ],
            [
              "",
              "path2.to_str"
            ],
            [
              "",
              "w.inner.lock.unwrap"
            ],
            [
              "",
              "w.inner.lock"
            ],
            [
              "",
              "tempfile::tempdir.unwrap"
            ],
            [
              "",
              "tempfile::tempdir"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "std::fs::write.unwrap"
            ],
            [
              "",
              "std::fs::write"
            ],
            [
              "",
              "std::os::unix::fs::symlink.unwrap"
            ],
            [
              "",
              "std::os::unix::fs::symlink"
            ],
            [
              "",
              "LogWriter::new"
            ],
            [
              "",
              "w.switch_file"
            ],
            [
              "",
              "link.to_str.unwrap"
            ],
            [
              "",
              "link.to_str"
            ],
            [
              "",
              "tempfile::tempdir.unwrap"
            ],
            [
              "",
              "tempfile::tempdir"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "LogWriter::new"
            ],
            [
              "",
              "w.switch_file.unwrap"
            ],
            [
              "",
              "w.switch_file"
            ],
            [
              "",
              "path.to_str.unwrap"
            ],
            [
              "",
              "path.to_str"
            ],
            [
              "",
              "w.use_stdout"
            ],
            [
              "",
              "w.inner.lock.unwrap"
            ],
            [
              "",
              "w.inner.lock"
            ],
            [
              "",
              "LogWriter::new"
            ],
            [
              "",
              "tempfile::tempdir.unwrap"
            ],
            [
              "",
              "tempfile::tempdir"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "LogWriter::new"
            ],
            [
              "",
              "w.switch_file.unwrap"
            ],
            [
              "",
              "w.switch_file"
            ],
            [
              "",
              "path.to_str.unwrap"
            ],
            [
              "",
              "path.to_str"
            ],
            [
              "",
              "tempfile::tempdir.unwrap"
            ],
            [
              "",
              "tempfile::tempdir"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "LogWriter::new"
            ],
            [
              "",
              "w.switch_file.unwrap"
            ],
            [
              "",
              "w.switch_file"
            ],
            [
              "",
              "path.to_str.unwrap"
            ],
            [
              "",
              "path.to_str"
            ],
            [
              "",
              "w.use_stdout"
            ],
            [
              "",
              "tempfile::tempdir.unwrap"
            ],
            [
              "",
              "tempfile::tempdir"
            ],
            [
              "",
              "dir.path.join"
            ],
            [
              "",
              "dir.path"
            ],
            [
              "",
              "LogWriter::new"
            ],
            [
              "",
              "w.switch_file.unwrap"
            ],
            [
              "",
              "w.switch_file"
            ],
            [
              "",
              "path.to_str.unwrap"
            ],
            [
              "",
              "path.to_str"
            ],
            [
              "",
              "w.write_line"
            ],
            [
              "",
              "std::fs::read_to_string.expect"
            ],
            [
              "",
              "std::fs::read_to_string"
            ],
            [
              "",
              "std::fs::File"
            ],
            [
              "",
              "std::fs::OpenOptions"
            ],
            [
              "",
              "std::io"
            ],
            [
              "",
              "std::io::BufWriter"
            ],
            [
              "",
              "std::io::Write"
            ],
            [
              "",
              "std::sync::Mutex"
            ],
            [
              "",
              "std::os::unix::fs::OpenOptionsExt"
            ],
            [
              "",
              "super::*"
            ],
            [
              "",
              "std::os::unix::fs::symlink"
            ]
          ],
          "mbr": [
            "OpenOptions::new.create",
            "OpenOptions::new.create.append",
            "OpenOptions::new.create.append.custom_flags",
            "OpenOptions::new.create.append.custom_flags.open",
            "OpenOptions::new.create.append.open",
            "dir.path",
            "dir.path.join",
            "inner.file",
            "inner.path",
            "inner.path.clone",
            "link.to_str",
            "link.to_str.unwrap",
            "path.to_owned",
            "path.to_str",
            "path.to_str.unwrap",
            "path1.to_str",
            "path1.to_str.unwrap",
            "path2.to_str",
            "path2.to_str.unwrap",
            "std::fs::read_to_string.expect",
            "std::fs::write.unwrap",
            "symlink.unwrap",
            "tempfile::tempdir.unwrap",
            "w.flush",
            "w.inner",
            "w.inner.lock",
            "w.inner.lock.unwrap",
            "w.switch_file",
            "w.switch_file.expect",
            "w.switch_file.unwrap",
            "w.use_stdout",
            "w.write_line"
          ],
          "tgt": [
            "LogWriter::default",
            "LogWriter::new",
            "Ok",
            "Self::new",
            "Some",
            "dir.path",
            "dir.path.join",
            "inner.path.clone",
            "link.to_str",
            "link.to_str.unwrap",
            "open_no_follow",
            "path.to_owned",
            "path.to_str",
            "path.to_str.unwrap",
            "path1.to_str",
            "path1.to_str.unwrap",
            "path2.to_str",
            "path2.to_str.unwrap",
            "std::fs::OpenOptions::new",
            "std::fs::OpenOptions::new.create",
            "std::fs::OpenOptions::new.create.append",
            "std::fs::OpenOptions::new.create.append.custom_flags",
            "std::fs::OpenOptions::new.create.append.custom_flags.open",
            "std::fs::OpenOptions::new.create.append.open",
            "std::fs::read_to_string",
            "std::fs::read_to_string.expect",
            "std::fs::write",
            "std::fs::write.unwrap",
            "std::io::BufWriter::new",
            "std::os::unix::fs::symlink",
            "std::os::unix::fs::symlink.unwrap",
            "std::sync::Mutex::new",
            "tempfile::tempdir",
            "tempfile::tempdir.unwrap",
            "w.flush",
            "w.inner.lock",
            "w.inner.lock.unwrap",
            "w.switch_file",
            "w.switch_file.expect",
            "w.switch_file.unwrap",
            "w.use_stdout",
            "w.write_line"
          ],
          "funcs": [
            [
              "open_no_follow",
              591
            ],
            [
              "new",
              1502
            ],
            [
              "switch_file",
              2845
            ],
            [
              "use_stdout",
              3257
            ],
            [
              "current_path",
              3559
            ],
            [
              "write_line",
              3931
            ],
            [
              "default",
              4393
            ],
            [
              "default_impl_matches_new",
              4505
            ],
            [
              "new_writer_uses_stdout",
              4796
            ],
            [
              "write_line_to_stdout_does_not_panic",
              5043
            ],
            [
              "switch_file_writes_to_file",
              5267
            ],
            [
              "switch_file_twice_keeps_last_path",
              5786
            ],
            [
              "switch_to_symlink_returns_error",
              6280
            ],
            [
              "use_stdout_resets_to_stdout",
              6775
            ],
            [
              "current_path_returns_none_when_using_stdout",
              7165
            ],
            [
              "current_path_returns_path_when_file_open",
              7318
            ],
            [
              "current_path_returns_none_after_use_stdout",
              7656
            ],
            [
              "write_line_to_file_is_flushed",
              7986
            ]
          ],
          "metrics": {
            "ast": {
              "max_depth": 15,
              "call_count": 123,
              "node_count": 2427,
              "member_count": 32,
              "max_member_depth": 5
            },
            "file": {
              "size": 8641,
              "entropy": 4.63
            },
            "text": {
              "lines": 252,
              "top_char": 101,
              "digit_ratio": 0,
              "space_count": 2035,
              "char_entropy": 4.63,
              "unique_chars": 77,
              "top_char_null": 0,
              "import_density": 3.57,
              "string_density": 0.1,
              "top_char_ratio": 0.07,
              "avg_line_length": 33.29,
              "max_line_length": 86,
              "non_ascii_ratio": 0,
              "empty_line_ratio": 0.09,
              "last_line_length": 1,
              "whitespace_ratio": 0.26,
              "identifier_density": 1.71,
              "line_length_stddev": 24.77,
              "max_whitespace_run": 2,
              "normalized_import_count": 0.57,
              "normalized_string_count": 1.57,
              "repeated_char_sequences": 28,
              "suspicious_comment_ratio": 0.04,
              "normalized_function_count": 1.13,
              "imports_to_functions_ratio": 0.5,
              "strings_to_functions_ratio": 1.39,
              "suspicious_identifier_ratio": 0.01,
              "normalized_unique_identifiers": 10.91,
              "identifiers_to_functions_ratio": 4.83
            },
            "binds": {
              "count": 43
            },
            "binary": {
              "peak_region_bytes": 6593,
              "peak_region_entropy": 4.83
            },
            "source": {
              "class_count": 2,
              "function_count": 18
            },
            "imports": {
              "count": 9,
              "aliased": 1,
              "wildcard": 1,
              "third_party_count": 9,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 371,
              "count": 25,
              "avg_length": 14.84,
              "max_length": 41,
              "avg_entropy": 3.08,
              "empty_count": 1,
              "entropy_stddev": 0.53
            },
            "comments": {
              "chars": 2433,
              "count": 46,
              "lines": 46,
              "high_entropy": 2,
              "to_code_ratio": 0.22
            },
            "functions": {
              "count": 20,
              "density": 7.14,
              "avg_params": 0.39,
              "code_ratio": 0.63,
              "max_params": 2,
              "length_stddev": 3.28,
              "avg_name_length": 23.28,
              "no_params_count": 13,
              "avg_length_lines": 8.89,
              "max_length_lines": 15,
              "min_length_lines": 3,
              "high_entropy_names": 8,
              "avg_param_name_length": 4.57
            },
            "identifiers": {
              "count": 430,
              "unique": 87,
              "avg_length": 9.51,
              "max_length": 43,
              "min_length": 1,
              "avg_entropy": 2.42,
              "reuse_ratio": 0.2,
              "length_stddev": 9.37,
              "has_digit_ratio": 0.02,
              "sequential_names": 1,
              "single_char_count": 2,
              "single_char_ratio": 0.02,
              "high_entropy_count": 8,
              "high_entropy_ratio": 0.09,
              "all_lowercase_ratio": 0.77,
              "all_uppercase_ratio": 0.02,
              "numeric_suffix_count": 2,
              "underscore_prefix_count": 1
            }
          }
        },
        "id": 54,
        "mol": "H(F₃)Md₂(In₄Pa)",
        "path": "pkg:cargo/lopatnov-conduit-core@2.0.0!!lopatnov-conduit-core-2.0.0/src/util/log_writer.rs",
        "pid": 643,
        "risk": 5,
        "sha": "06bcbcc409cdb84f6b1777fa477812c21d4c90ddda692e1e45830db8219ab4a9",
        "size": 8641,
        "traits": [
          {
            "id": "metadata/import/rust/std/fs/file::std/fs/file",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports std::fs::File",
            "spans": [
              [
                14,
                13
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/fs/openoptions::std/fs/openoptions",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports std::fs::OpenOptions",
            "spans": [
              [
                20,
                20
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/os/unix/fs/openoptionsext::std/os/unix/fs/openoptionsext",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports std::os::unix::fs::OpenOptionsExt",
            "spans": [
              [
                678,
                33
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/os/unix/fs/symlink::std/os/unix/fs/symlink",
            "conf": 0.95,
            "crit": 3,
            "desc": "imports std::os::unix::fs::symlink",
            "spans": [
              [
                6331,
                26
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test",
            "conf": 0.95,
            "crit": 3,
            "desc": "Rust test marker or harness",
            "uses": [
              16,
              17
            ],
            "spans": [
              [
                4445,
                12
              ],
              [
                4489,
                11
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/file/open::rust-open-options",
            "conf": 0.88,
            "crit": 3,
            "desc": "Rust OpenOptions builder",
            "spans": [
              [
                721,
                18
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/read/file/full::rust-read-to-string",
            "conf": 0.88,
            "crit": 3,
            "desc": "Reads a file into a Rust string",
            "spans": [
              [
                5663,
                19
              ]
            ]
          },
          {
            "id": "micro-behaviors/fs/write/file/full::fs-write",
            "atk": "T1041",
            "conf": 0.85,
            "crit": 3,
            "desc": "Writes a file with Rust fs::write",
            "spans": [
              [
                6518,
                10
              ]
            ]
          },
          {
            "id": "metadata/file/comment::source-comment-bytes-over-300",
            "conf": 0.92,
            "crit": 2,
            "desc": "Source has over 300 comment bytes"
          },
          {
            "id": "metadata/import/rust/std/io/bufwriter::std/io/bufwriter",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::io::BufWriter",
            "spans": [
              [
                54,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/io/write::_",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::io::Write as _",
            "spans": [
              [
                65,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/io::std/io",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::io",
            "spans": [
              [
                48,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/std/sync/mutex::std/sync/mutex",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports std::sync::Mutex",
            "spans": [
              [
                82,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/super::super",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::*",
            "spans": [
              [
                4478,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-assert-eq-macro",
            "conf": 0.7,
            "crit": 2,
            "desc": "assert_eq! macro",
            "spans": [
              [
                6173,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-assert-macro",
            "conf": 0.6,
            "crit": 2,
            "desc": "assert! macro",
            "spans": [
              [
                4627,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-cfg-test",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[cfg(test)] attribute",
            "spans": [
              [
                4445,
                0
              ]
            ]
          },
          {
            "id": "metadata/package/testing/harness/unit::rust-test-attr",
            "conf": 0.9,
            "crit": 2,
            "desc": "#[test] attribute",
            "spans": [
              [
                4489,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                188,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                466,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                4227,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                118,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                2593,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                2137,
                0
              ]
            ]
          }
        ],
        "type": "rust"
      },
      {
        "id": 55,
        "sha": "f88ace18c166927e75856d3d0473ef60f2c81653a5b24d34fd1a1e770b31b608",
        "path": "pkg:cargo/lopatnov-conduit-core@2.0.0!!lopatnov-conduit-core-2.0.0/src/util/mod.rs",
        "risk": 1,
        "size": 68,
        "type": "rust",
        "depth": 3
      },
      {
        "id": 56,
        "mol": "Md(Re)",
        "sha": "9f51a12f065562040f0ebf58214994e15d64e71c8cb1dbcff377958e027024b2",
        "path": "lopatnov-conduit-limits@2.0.0.registry.json",
        "risk": 1,
        "size": 918,
        "type": "registry",
        "depth": 1
      }
    ],
    "omitted_files": 32,
    "rev": "a8f1b",
    "v": "8"
  }
}