{
  "ml": {
    "v": "7",
    "eng": "2.12.0-beta.1",
    "lvl": -1,
    "conf": 0,
    "mods": [
      {
        "cls": 0,
        "raw": 0.000008503596,
        "rte": "az",
        "prob": 0.000008503596
      },
      {
        "cls": 0,
        "raw": 0.0002641181,
        "rte": "az/tar",
        "prob": 0.0002641181
      }
    ],
    "prob": 0.000017404556,
    "files": [
      {
        "id": 0,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000017404556274414062,
        "type": "crate"
      },
      {
        "id": 1,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010540087714616675,
        "type": "json"
      },
      {
        "id": 7,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000010500351891096216,
        "type": "rust"
      },
      {
        "id": 10,
        "lvl": -1,
        "conf": 0,
        "prob": 0.000017404556274414062,
        "type": "registry"
      }
    ],
    "version": "v18.18",
    "analyzed_at": "2026-10-07T15:50:45Z"
  },
  "path": "sc-network-common-0.56.0.crate",
  "raw": {
    "files": [
      {
        "id": 0,
        "mol": "H(Db)Md",
        "sha": "0922f62c734443338d987db52c65d91d2a0c25cd63ef017b0b70615fb0fd3c85",
        "path": "sc-network-common-0.56.0.crate",
        "risk": 3,
        "size": 29426,
        "type": "crate",
        "facts": {
          "metrics": {
            "file": {
              "size": 29426,
              "entropy": 7.99
            },
            "parse": {
              "error_count": 1
            },
            "binary": {
              "peak_region_bytes": 29426,
              "peak_region_entropy": 7.82
            }
          }
        },
        "ident": {
          "name": {
            "value": "sc-network-common",
            "source": "crate.name",
            "verified": false
          },
          "urls": [
            {
              "url": "https://github.com/paritytech/polkadot-sdk.git",
              "kind": "repository",
              "source": "crate.repository"
            },
            {
              "url": "https://paritytech.github.io/polkadot-sdk/",
              "kind": "homepage",
              "source": "crate.homepage"
            }
          ],
          "trust": "unsigned",
          "emails": [
            "admin@parity.io"
          ],
          "authors": [
            {
              "name": "Parity Technologies",
              "role": "author",
              "email": "admin@parity.io",
              "source": "crate.authors"
            }
          ],
          "version": {
            "value": "0.56.0",
            "source": "crate.version",
            "verified": false
          },
          "identifier": {
            "value": "sc-network-common",
            "source": "crate.name",
            "verified": false
          }
        },
        "traits": [
          {
            "id": "metadata/import/rust/sp_runtime/traits/numberfor::sp_runtime/traits/numberfor",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports sp_runtime::traits::NumberFor",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/codec/input::codec/input",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec::Input",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "micro-behaviors/data/buffer/integer-codec::rust-big-endian-byte-conversion",
            "conf": 0.85,
            "crit": 3,
            "desc": "Rust integer to big-endian bytes",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/codec/encode::codec/encode",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec::Encode",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/import/rust/codec/decode::codec/decode",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec::Decode",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/codec::codec",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "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": 4
              }
            ]
          },
          {
            "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": 4
              }
            ]
          },
          {
            "id": "metadata/import/rust/codec/output::codec/output",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec::Output",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/version::cargo-package-version",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package has version"
          },
          {
            "id": "metadata/import/rust/bitflags/bitflags::bitflags/bitflags",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports bitflags::bitflags",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/package/name/convention::cargo-readme-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares readme"
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-4",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"have\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/package/name/convention::cargo-package-name",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package has name"
          },
          {
            "id": "metadata/import/rust/super/blockstate::super/blockstate",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::BlockState",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/package/name/convention::cargo-meaningful-description",
            "conf": 0.78,
            "crit": 2,
            "desc": "Cargo package has meaningful description"
          },
          {
            "id": "metadata/import/rust/sp_runtime/justifications::sp_runtime/justifications",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports sp_runtime::Justifications",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/super/blockattributes::super/blockattributes",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::BlockAttributes",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/sp_runtime/traits/header::HeaderT",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports sp_runtime::traits::Header as HeaderT",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/sp_runtime/traits/block::BlockT",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports sp_runtime::traits::Block as BlockT",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/generic/fromblock::generic/fromblock",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports generic::FromBlock",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/lang/natural::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "from": [
              {
                "file": 4
              }
            ]
          },
          {
            "id": "metadata/import/rust/super/direction::super/direction",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::Direction",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/generic/blockannounce::generic/blockannounce",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports generic::BlockAnnounce",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/package/name/convention::cargo-repository-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares repository"
          },
          {
            "id": "metadata/import/rust/crate/message/requestid::crate/message/requestid",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::message::RequestId",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/sp_runtime/encodedjustification::sp_runtime/encodedjustification",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports sp_runtime::EncodedJustification",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/crate/role/roles::crate/role/roles",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::role::Roles",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/codec/error::codec/error",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec::Error",
            "from": [
              {
                "file": 7
              }
            ]
          },
          {
            "id": "metadata/import/rust/codec/encodelike::codec/encodelike",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec::EncodeLike",
            "from": [
              {
                "file": 6
              }
            ]
          },
          {
            "id": "metadata/package/name/convention::cargo-license-field",
            "conf": 0.85,
            "crit": 2,
            "desc": "Cargo package declares license"
          },
          {
            "id": "metadata/file/naming::archive-member-under-10kb",
            "conf": 0.9,
            "crit": 3,
            "desc": "Archive has a sub-10KB member"
          }
        ]
      },
      {
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 125,
              "entropy": 4.96
            },
            "json": {
              "parsed_bytes": 125,
              "parse_limit_bytes": 76800
            },
            "binary": {
              "peak_region_bytes": 125,
              "peak_region_entropy": 4.96
            }
          }
        },
        "id": 1,
        "path": "sc-network-common-0.56.0.crate!!sc-network-common-0.56.0/.cargo_vcs_info.json",
        "pid": 0,
        "risk": 1,
        "sha": "2f35677f036bcd738866fd922e5efd2f5eaf7d7dc8a91facaab00139fd652fc9",
        "size": 125,
        "traits": [
          {
            "id": "metadata/file/extension/identity::json-txt-md-basename",
            "conf": 1.0,
            "crit": 2,
            "desc": "JSON, text, or markdown filename extension"
          },
          {
            "id": "metadata/file/extension/identity::web-asset-extension",
            "conf": 1.0,
            "crit": 2,
            "desc": "Common web or JSON file extension"
          },
          {
            "id": "metadata/file/format/conformance::json-document-opening",
            "conf": 0.95,
            "crit": 2,
            "desc": "File begins with a JSON document",
            "spans": [
              [
                0,
                0
              ]
            ]
          }
        ],
        "type": "json"
      },
      {
        "analysis_gaps": [
          "flow-graph-limited"
        ],
        "ctx": [
          {
            "b": "fe1CExLzJgw[=6)azC)tAa9^eaA7\u003cmq/#L\u003cBAg/iwIaq%fe1Cnz/x#xx\u003eIa3asGPaaw=G!x([RyraPMMzF%ufxk7{#asHk.diIrawg!ixfcBg\u0026l%83mx\u003e7Z(B7D{{wmYU2x\u003ez6\u003cAYLskp!SC%e?!\u003e}AXh9oBy/Fns4MvZavx%NB8#qeBz9mqCW\u003er7BzkVheIX}j3jnBtaxi2*B0bBxz!B90z6iLlazbU9wGV5jw]@l9A+doOD2E*Fv{%l$A+e=}B98CpvS=^7azC{uvqYQez/M$qz!9M]C)VhTazC{uB-7-3AV/EqwGV8aA=2\u003euz!pblxK@qRpe@AbwO#71vqE5.BZ/f3v\u003c1DVv}xL0wGUA5aAhEjy?W%7wN(])C)VhTaARpdavZx.wGT]\u0026w]@l9A+cv.z/]@dvruj4zy=]wx([31AV/KpA=U@kzxH.Tz!pblxK@qWx\u003e7Z(B7D)Bz/MgrfczVKBrC\u003cEBP",
            "ln": 0,
            "col": 1,
            "line": 1
          },
          {
            "b": "z/dfm3nj4Pra]#!aAhvtxl4A$azC)twncabA+P09By!#9x(k5nxK@r1z/xngBzb98azC{uCwg(fayX[8B-RbaB.\u0026Pofe1CSB-X:cnMnkRrA78bpfwYvk#HPDpe\u003evTaA}KwxM53naz2.czxK4mwGUY7Abol1wfu88A=LPaBA]0Ew^QgAawCp5lR6Hrr6-\u0026xoI5h^aA8oymOcMOmn)bcmO=]8k{e#\u0026qDcjPrzkXRaw=6op!$1Ue*a87wGV8dwEp7zav/gbav*0XwPzi}aw^h\u0026y?Wx4oLF0FzGxwiw]zYjzeTDaay]59vqfL0e^.}sfcBzoBS+:sz/](bazthbwGV28v}xv$wN(](ay/teC{43qaARpdav/gbav*0XwPzi}aw^h\u0026y?Wx4oLF0FzGxv@fe1CRy\u0026si7aA}KwxDRzgx(+zoA=kPhvqNRtnOf8.z/^JMB7F]9jzn?Uz#",
            "ln": 406,
            "col": 36,
            "line": 9
          },
          {
            "b": "y?Wx\u003czGxxgffQ#}3nj4QawMG\u0026Cw?IqaAg+0yH}PgzdN^fvp%c]BA}?pB1OOmxK#l@azkncaAIamx\u003c\u003e*(DsZRfvqYP#AclmBx(n3haARpdaz+$uwPw]fwP?T3aAhvtBz\u003eVcyZI*GaS$-jD2dzcwg!h@B-Rapv@=11wJz\u003e)z!@#Ci-o)jwPG{u3uZA3ayY5bw]7)*B2(u\u003ex()%6vp%Ty3uZA3ay/t2wN^+ZDQIBPz!9AgavQfTz!9AgavQr\u003ez/NxKnP5G\u0026BsXLgB-.OBBBujTAckRjB-RapxjU%(A+P2Ai^Thfz!0MGzF\u003cxnzEWleavZx\u0026z9\u00265Sv@3GO3uZA3aAIHeA=(nwx(dAxi=]yJx([zSi^Thfz!0M9vriLTy\u0026r*0r4Gd.wNPaXAV!!iav{6LwmY^XefEYgzdm6%mSir}i%(rFfe1CED2NsqvqGT^B0b7kAV/HCx(mMaBzbkdvR/%)yANUeADL\u0026lBrCWJAaHemB7]J8ayYe9v@0ieD2NsqAa9=}zdN*2A=S\u0026uAckRjBA}?pavo).v@1$NADL\u0026lBuz(NauZ5rxjU%(A+P1",
            "ln": 787,
            "col": 62,
            "line": 17
          },
          {
            "b": "zEWP}wN)?ABU+^4at2=1qE%](y\u0026?^rwO+%favQr\u003ez/O2:DKp5=q!o=SiYZ\u003e[z/5\u0026\u003cx([zAwO#0@wmYp7Bz\u003eI}wNw[(By/Iwdo!Gidgcv/2}*diuVf%(wO=B0d13y+mriA!AYMl[A=k!yb1VV}vqGT*avo).v@1wLBAh88B-.hoa$j@F34iee3jpG:AblT=zEWP}wGUP6AV^X+z!0MGBAzLqvS=^7B0b/p31!5$wO#0@wmYa\u0026z-*#WawWc4AclmBd/",
            "ln": 2568,
            "col": 22,
            "line": 68
          },
          {
            "b": "C4A6\u0026wNY^{efE+$A==27y^\u0026s{avQo3avx%-zE\u003evwlVl{?efEx0v@C)?efEt(v@C)?dp0olfe1Cmy\u0026r*0az2CkzdN-@BzkVhay]hbwN/*@z/dfmAckRjwO#TcavG{:",
            "ln": 3077,
            "col": 7,
            "line": 88
          },
          {
            "b": "fcA+@zE)\u003c5v\u003c2(sAaK8y3ugb%az(4cazkn6wPzG{aBsC4B-RapB9hCkAYMmdltQNIyE95:A+P09By/IAavo).v@21+vru6iavG{:wN/*@z/f$+3jg\u0026@wGUG6vru6wi=eCHB75Y)iYZeIADL\u0026lBv*183jg\u0026@wGUG3wmYmii^Tnav@C)?efEx0v@C)?efEJ4AclmNawWc4AclnJi%(ppB7DFnA9)TdzGGPfwJz(0mq=QNwmYpzB-RUsw[+:-BzkVhefEMcB98bdx\u003e7N[x(v)gEld=y2})}+avo).v@0h$vrt{2B7GlhazCZoBzbkdA+frhz/fSce^.[ftv.q=x)a5ol$G?IxdLf4vrcE7vqFwLefEx3efEq@z/fbqavQfTz!9AgavG^Jz!9Adt)Z)SBZ=FmBAhIl",
            "ln": 4028,
            "col": 3,
            "line": 126
          },
          {
            "b": "vJYt}vpS}\u0026iV{%A3jd1(fe1Cmy\u0026r*0aAITkBy^6Er8k[TiV}sizeTPeayE#:BzkVhu)5(}wftx8B98tqaz2C2z!9N1xcqziwO@Slg:3msv@Di}B0a$hzeBiee^.)\u003eAckRjB97\u0026j",
            "ln": 6192,
            "col": 5,
            "line": 192
          }
        ],
        "depth": 1,
        "facts": {
          "imp": [
            [
              "",
              "u32::from_be_bytes"
            ],
            [
              "",
              "Self::from_bits.ok_or_else"
            ],
            [
              "",
              "Self::from_bits"
            ],
            [
              "",
              "encoded.to_be_bytes"
            ],
            [
              "",
              "codec::Error::from"
            ],
            [
              "",
              "dest.push_byte"
            ],
            [
              "",
              "Self::from_bits.ok_or_else"
            ],
            [
              "",
              "Self::from_bits"
            ],
            [
              "",
              "input.read_byte"
            ],
            [
              "",
              "codec::Error::from"
            ],
            [
              "",
              "state.encode_to"
            ],
            [
              "",
              "data.encode_to"
            ],
            [
              "",
              "H::decode"
            ],
            [
              "",
              "super::BlockState::decode.ok"
            ],
            [
              "",
              "super::BlockState::decode"
            ],
            [
              "",
              "Vec::decode.ok"
            ],
            [
              "",
              "Vec::decode"
            ],
            [
              "",
              "Ok"
            ],
            [
              "",
              "crate::role::Roles"
            ],
            [
              "",
              "bitflags::bitflags"
            ],
            [
              "",
              "codec::Decode"
            ],
            [
              "",
              "codec::Encode"
            ],
            [
              "",
              "codec::Error"
            ],
            [
              "",
              "codec::Input"
            ],
            [
              "",
              "codec::Output"
            ],
            [
              "",
              "generic::BlockAnnounce"
            ],
            [
              "",
              "generic::FromBlock"
            ],
            [
              "",
              "sp_runtime::traits::Block"
            ],
            [
              "",
              "sp_runtime::traits::Header"
            ],
            [
              "",
              "sp_runtime::traits::NumberFor"
            ],
            [
              "",
              "super::BlockAttributes"
            ],
            [
              "",
              "super::BlockState"
            ],
            [
              "",
              "super::Direction"
            ],
            [
              "",
              "crate::message::RequestId"
            ],
            [
              "",
              "codec::Decode"
            ],
            [
              "",
              "codec::Encode"
            ],
            [
              "",
              "codec::Input"
            ],
            [
              "",
              "codec::Output"
            ],
            [
              "",
              "sp_runtime::EncodedJustification"
            ],
            [
              "",
              "sp_runtime::Justifications"
            ]
          ],
          "mbr": [
            "BlockState::decode.ok",
            "Self::from_bits.ok_or_else",
            "Vec::decode.ok",
            "data.encode_to",
            "dest.push_byte",
            "encoded.to_be_bytes",
            "input.read_byte",
            "state.encode_to"
          ],
          "tgt": [
            "H::decode",
            "Ok",
            "Self::from_bits",
            "Self::from_bits.ok_or_else",
            "Vec::decode",
            "Vec::decode.ok",
            "codec::Error::from",
            "data.encode_to",
            "dest.push_byte",
            "encoded.to_be_bytes",
            "input.read_byte",
            "state.encode_to",
            "super::BlockState::decode",
            "super::BlockState::decode.ok",
            "u32::from_be_bytes"
          ],
          "funcs": [
            [
              "to_be_u32",
              2396
            ],
            [
              "from_be_u32",
              2548
            ],
            [
              "encode_to",
              2749
            ],
            [
              "decode",
              2923
            ],
            [
              "summary",
              3807
            ],
            [
              "encode_to",
              6690
            ],
            [
              "decode",
              6971
            ],
            [
              "build",
              7617
            ]
          ],
          "metrics": {
            "ast": {
              "max_depth": 13,
              "call_count": 24,
              "node_count": 1978,
              "member_count": 8,
              "max_array_length": 4,
              "max_member_depth": 2
            },
            "file": {
              "size": 7796,
              "entropy": 5.23
            },
            "text": {
              "lines": 246,
              "top_char": 101,
              "tab_count": 259,
              "digit_ratio": 0.02,
              "space_count": 809,
              "char_entropy": 5.23,
              "unique_chars": 85,
              "top_char_null": 0,
              "import_density": 8.94,
              "string_density": 0.01,
              "top_char_ratio": 0.08,
              "avg_line_length": 30.69,
              "max_line_length": 94,
              "empty_line_ratio": 0.12,
              "last_line_length": 1,
              "whitespace_ratio": 0.17,
              "identifier_density": 1.6,
              "line_length_stddev": 23.75,
              "max_whitespace_run": 1,
              "normalized_import_count": 1.4,
              "normalized_string_count": 0.13,
              "suspicious_comment_ratio": 0.03,
              "normalized_function_count": 0.51,
              "imports_to_functions_ratio": 2.75,
              "strings_to_functions_ratio": 0.25,
              "suspicious_identifier_ratio": 0.04,
              "normalized_unique_identifiers": 12.97,
              "identifiers_to_functions_ratio": 12.88
            },
            "binds": {
              "count": 3
            },
            "binary": {
              "peak_region_bytes": 7796,
              "peak_region_entropy": 5.35
            },
            "source": {
              "class_count": 9,
              "function_count": 6
            },
            "imports": {
              "count": 22,
              "aliased": 2,
              "third_party_count": 22,
              "third_party_ratio": 1
            },
            "strings": {
              "bytes": 36,
              "count": 2,
              "avg_length": 18,
              "max_length": 23,
              "avg_entropy": 3.92,
              "entropy_stddev": 0.22
            },
            "comments": {
              "chars": 3081,
              "count": 71,
              "lines": 71,
              "url_count": 1,
              "todo_count": 2,
              "high_entropy": 2,
              "to_code_ratio": 0.41
            },
            "functions": {
              "count": 15,
              "density": 3.25,
              "avg_params": 1.63,
              "code_ratio": 0.18,
              "max_params": 4,
              "length_stddev": 2.4,
              "avg_name_length": 7.75,
              "avg_length_lines": 5.5,
              "max_length_lines": 9,
              "min_length_lines": 3,
              "avg_param_name_length": 6.31
            },
            "identifiers": {
              "count": 394,
              "unique": 103,
              "avg_length": 7.52,
              "max_length": 23,
              "min_length": 1,
              "avg_entropy": 2.42,
              "reuse_ratio": 0.26,
              "length_stddev": 4.07,
              "has_digit_ratio": 0.03,
              "sequential_names": 4,
              "single_char_count": 4,
              "single_char_ratio": 0.04,
              "high_entropy_count": 3,
              "high_entropy_ratio": 0.03,
              "all_lowercase_ratio": 0.45,
              "all_uppercase_ratio": 0.1,
              "numeric_suffix_count": 3
            }
          }
        },
        "id": 7,
        "mol": "H(Db)Md(Pa)",
        "path": "sc-network-common-0.56.0.crate!!sc-network-common-0.56.0/src/sync/message.rs",
        "pid": 0,
        "risk": 3,
        "sha": "de6d6e60b5a20e6894a07c278cebb3034f5b1b6b30d2bfa0ad88fa855d2fd7f3",
        "size": 7796,
        "traits": [
          {
            "id": "metadata/package/license::spdx-license-identifier",
            "conf": 0.9,
            "crit": 3,
            "desc": "Source SPDX license identifier declaration",
            "spans": [
              [
                86,
                41
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/buffer/integer-codec::rust-big-endian-byte-conversion",
            "conf": 0.85,
            "crit": 3,
            "desc": "Rust integer to big-endian bytes",
            "spans": [
              [
                2632,
                13
              ]
            ]
          },
          {
            "id": "metadata/file/comment::source-comment-bytes-over-300",
            "conf": 0.92,
            "crit": 2,
            "desc": "Source has over 300 comment bytes"
          },
          {
            "id": "metadata/file/extension/identity::rust-source-extension",
            "conf": 0.98,
            "crit": 2,
            "desc": "Rust source filename extension"
          },
          {
            "id": "metadata/file/string/attribution::gnu-license-notice",
            "conf": 0.9,
            "crit": 2,
            "desc": "GNU license notice in source",
            "spans": [
              [
                259,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/bitflags/bitflags::bitflags/bitflags",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports bitflags::bitflags",
            "spans": [
              [
                936,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/codec/decode::codec/decode",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec::Decode",
            "spans": [
              [
                968,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/codec/encode::codec/encode",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec::Encode",
            "spans": [
              [
                976,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/codec/error::codec/error",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec::Error",
            "spans": [
              [
                984,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/codec/input::codec/input",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec::Input",
            "spans": [
              [
                991,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/codec/output::codec/output",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports codec::Output",
            "spans": [
              [
                998,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/message/requestid::crate/message/requestid",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::message::RequestId",
            "spans": [
              [
                4122,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/crate/role/roles::crate/role/roles",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports crate::role::Roles",
            "spans": [
              [
                911,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/generic/blockannounce::generic/blockannounce",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports generic::BlockAnnounce",
            "spans": [
              [
                1025,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/generic/fromblock::generic/fromblock",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports generic::FromBlock",
            "spans": [
              [
                1040,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/sp_runtime/encodedjustification::sp_runtime/encodedjustification",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports sp_runtime::EncodedJustification",
            "spans": [
              [
                4212,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/sp_runtime/justifications::sp_runtime/justifications",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports sp_runtime::Justifications",
            "spans": [
              [
                4234,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/sp_runtime/traits/block::BlockT",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports sp_runtime::traits::Block as BlockT",
            "spans": [
              [
                1077,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/sp_runtime/traits/header::HeaderT",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports sp_runtime::traits::Header as HeaderT",
            "spans": [
              [
                1094,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/sp_runtime/traits/numberfor::sp_runtime/traits/numberfor",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports sp_runtime::traits::NumberFor",
            "spans": [
              [
                1113,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/super/blockattributes::super/blockattributes",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::BlockAttributes",
            "spans": [
              [
                4076,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/super/blockstate::super/blockstate",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::BlockState",
            "spans": [
              [
                4093,
                0
              ]
            ]
          },
          {
            "id": "metadata/import/rust/super/direction::super/direction",
            "conf": 0.95,
            "crit": 2,
            "desc": "imports super::Direction",
            "spans": [
              [
                4105,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english",
            "conf": 0.8,
            "crit": 2,
            "desc": "Contains common English function words",
            "uses": [
              27,
              28,
              29,
              30,
              31,
              32,
              33
            ],
            "spans": [
              [
                242,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/upstream::upstream-project-attribution",
            "conf": 0.9,
            "crit": 2,
            "desc": "Header names an upstream project",
            "spans": [
              [
                3,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/content-word::data-access-verb-token",
            "conf": 0.88,
            "crit": 1,
            "desc": "Data-access verb token",
            "spans": [
              [
                3109,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/content-word::english-edit-verb-token",
            "conf": 0.88,
            "crit": 1,
            "desc": "English edit-action verb token",
            "spans": [
              [
                6230,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-1",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"the\"",
            "spans": [
              [
                242,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-2",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"and\"",
            "spans": [
              [
                216,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-3",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"that\"",
            "spans": [
              [
                454,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-4",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"have\"",
            "spans": [
              [
                671,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-5",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"for\"",
            "spans": [
              [
                574,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-6",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"with\"",
            "spans": [
              [
                128,
                0
              ]
            ]
          },
          {
            "id": "metadata/lang/natural/vocabulary/function-word::lang-english--atom-7",
            "conf": 0.8,
            "crit": 1,
            "desc": "English function-word token \"this\"",
            "spans": [
              [
                3,
                0
              ]
            ]
          },
          {
            "id": "micro-behaviors/data/llm/repository-directive::repository-agent-directive-marker",
            "conf": 0.88,
            "crit": 1,
            "desc": "Marks text as an agent directive",
            "spans": [
              [
                819,
                0
              ]
            ]
          }
        ],
        "type": "rust"
      },
      {
        "depth": 1,
        "facts": {
          "metrics": {
            "file": {
              "size": 928,
              "entropy": 4.91
            },
            "binary": {
              "peak_region_bytes": 928,
              "peak_region_entropy": 4.91
            },
            "registry": {
              "age_days": 0,
              "published_at": 1791387350,
              "releases_24h": 1,
              "releases_48h": 1,
              "is_deprecated": 0,
              "release_count": 52,
              "unpacked_size": 29426,
              "downloads_total": 1593945,
              "version_removed": 0,
              "downloads_recent": 402422,
              "package_age_days": 1416,
              "first_published_at": 1669027269,
              "previous_published_at": 1782995203,
              "days_since_previous_release": 97
            }
          }
        },
        "id": 10,
        "mol": "Md(Re)",
        "path": "sc-network-common@0.56.0.registry.json",
        "pid": 0,
        "rel": "registry",
        "risk": 1,
        "role": "sidecar",
        "sha": "57f71d497c4bd08c5ba5053eade0652af67e7e9e86ad080f1fc335956daa8a1a",
        "size": 928,
        "traits": [
          {
            "id": "metadata/registry::established-package",
            "conf": 1.0,
            "crit": 3,
            "desc": "Package is at least one year old"
          },
          {
            "id": "metadata/registry::many-releases",
            "conf": 1.0,
            "crit": 3,
            "desc": "Twenty or more releases"
          },
          {
            "id": "metadata/registry::widely-installed",
            "conf": 1.0,
            "crit": 3,
            "desc": "Large registry install base (10k+ downloads)"
          },
          {
            "id": "metadata/registry::freshly-published",
            "conf": 1.0,
            "crit": 3,
            "desc": "Release published within seven days"
          }
        ],
        "type": "registry"
      }
    ],
    "rev": "c1ea9",
    "v": "8"
  }
}