{"schema_version":"2","scorer_version":"0.1.0","scoring_version":"prov-5+qual-2+sec-2","generated_at":"2026-11-14T14:52:06.692660Z","repo":{"ref":{"host":"github.com","owner":"notzhan","name":"Rustagon"},"default_branch":"main","clone_url":"https://github.com/notzhan/Rustagon.git","html_url":"https://github.com/notzhan/Rustagon","description":"Rustagon 是一个采用 100% 纯 Rust 语言与 Aya eBPF 框架构建的新一代云原生容器运行时安全（Container Runtime Security）引擎，并且整个项目的系统架构设计、eBPF 内核代码、用户态引擎、AST 规则解析器以及测试套件，100% 完全由 AI（Cursor / Claude / OpenCode）辅助自动生成，0 手动代码编写。","stars":0,"forks":0,"is_fork":false,"is_archived":false,"is_private":false,"size_kb":612,"primary_language":"Rust","license_spdx":"Apache-2.0","created_at":"2026-09-08T10:23:05Z","pushed_at":"2026-09-10T07:08:29Z","security_policy_url":null,"distribution":{"owner_created_at":"2011-10-31T06:03:14Z","owner_type":"User","release_assets":[]}},"commit_sha":"560d5d6c7e4144a926cf66182b7c87c15b576053","profile":{"lines_by_language":{"Rust":14908,"Python":132,"Shell":25},"files_by_category":{"source":68,"test":37,"docs":29,"config":15,"other":3,"generated":1},"source_lines":8870,"test_lines":6195},"pillars":{"ai_provenance":{"score":100.0,"confidence":0.86,"coverage":1.0,"label":"explicit","breakdown":{"attributed_share":1.0,"suspected_share":0.0,"estimated_share":1.0,"ai_artifacts":1.0,"flagged_work_units":2.0,"flagged_releases":null,"style_index":0.225},"summary":"Explicit AI attribution on 100% of first-party code added; an estimated 100% including velocity signals."},"quality":{"score":81.6,"confidence":0.9,"coverage":1.0,"label":"strong","breakdown":{"complexity":71.7,"duplication":87.5,"lint":100.0,"testing":90.0,"docs":65.0,"type_safety":40.0,"process":null},"summary":"Code quality is strong: test-to-source ratio 0.70, CI runs tests; 11% of function code in complex or long functions; 2% duplicated lines. Weakest area: type safety."},"security":{"score":75.4,"confidence":0.85,"coverage":1.0,"label":"adequate","breakdown":{"secrets":100.0,"sast":91.5,"dependencies":null,"ci_actions":63.1,"posture":0.0,"scorecard":null},"summary":"Security posture is adequate: 2 high-severity workflow issues. Weakest area: posture."}},"analyzer_results":[{"analyzer":"sec-scorecard","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":"no published OpenSSF Scorecard result for this repo"},{"analyzer":"sec-registry","pillar":"security","status":"ok","tool_version":null,"metrics":{"declared":25.0,"checked":25.0,"missing":0.0,"recent":0.0,"lookup_errors":0.0},"findings":[],"evidence":[],"data":{"phantom":false},"error":null},{"analyzer":"ai-attribution","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"commits":66.0,"attributed_commits":64.0,"attributed_commit_share":0.9696969696969697,"effective_loc":17638.0,"attributed_loc":17638.0,"attributed_loc_share":1.0,"tools_detected":2.0},"findings":[],"evidence":[{"kind":"attribution-summary","description":"Cursor agent: 62 attributed commits, 16,514 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attribution-summary","description":"GitHub Copilot coding agent: 2 attributed commits, 1,124 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"fa6082e702b1bb187d338d50ca10bd265c8e6937","url":"https://github.com/notzhan/Rustagon/commit/fa6082e702b1bb187d338d50ca10bd265c8e6937","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"762b587071a3c80d0d853df78ca692271eaf3e25","url":"https://github.com/notzhan/Rustagon/commit/762b587071a3c80d0d853df78ca692271eaf3e25","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"8418197e74bf2fb92d94f69def5970d7a2729a75","url":"https://github.com/notzhan/Rustagon/commit/8418197e74bf2fb92d94f69def5970d7a2729a75","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"8d01a30c92c4bf66e85243ef67e55b67bae8454d","url":"https://github.com/notzhan/Rustagon/commit/8d01a30c92c4bf66e85243ef67e55b67bae8454d","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"80026422c1dcd4e2648907e68038d4879b13878a","url":"https://github.com/notzhan/Rustagon/commit/80026422c1dcd4e2648907e68038d4879b13878a","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"329ac2ef09ea9ab5cc4933877edb3bdaab5469a4","url":"https://github.com/notzhan/Rustagon/commit/329ac2ef09ea9ab5cc4933877edb3bdaab5469a4","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"91c9b74c8499528762a90302137badc83b1d5752","url":"https://github.com/notzhan/Rustagon/commit/91c9b74c8499528762a90302137badc83b1d5752","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"f15a25a6716bcbc737690bcb3991cdcdf5cd80fd","url":"https://github.com/notzhan/Rustagon/commit/f15a25a6716bcbc737690bcb3991cdcdf5cd80fd","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"aa3d26850146ceb7734067f5bb42c6a83188f5a3","url":"https://github.com/notzhan/Rustagon/commit/aa3d26850146ceb7734067f5bb42c6a83188f5a3","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"a4d88f866a0821093902083a053fd21742c70742","url":"https://github.com/notzhan/Rustagon/commit/a4d88f866a0821093902083a053fd21742c70742","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"edc50643dd46209da64c1a92abd4b21cedc86b60","url":"https://github.com/notzhan/Rustagon/commit/edc50643dd46209da64c1a92abd4b21cedc86b60","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"20b4c00786384a687b6f793cf27264132c56abc6","url":"https://github.com/notzhan/Rustagon/commit/20b4c00786384a687b6f793cf27264132c56abc6","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"eb8fc34a103bb3eba9a346bb4c471cddc5e7b83f","url":"https://github.com/notzhan/Rustagon/commit/eb8fc34a103bb3eba9a346bb4c471cddc5e7b83f","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"811aed0d5e3d67ebce00f70f66d7b68f21e613bd","url":"https://github.com/notzhan/Rustagon/commit/811aed0d5e3d67ebce00f70f66d7b68f21e613bd","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"6cd8206ea35df7827f34ad343dc3a4ddb6adfe56","url":"https://github.com/notzhan/Rustagon/commit/6cd8206ea35df7827f34ad343dc3a4ddb6adfe56","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"d13d5009a48e973f3665a1f67b64d877e856d4af","url":"https://github.com/notzhan/Rustagon/commit/d13d5009a48e973f3665a1f67b64d877e856d4af","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"668487802f8196c8a8a560f18025449f99c04df7","url":"https://github.com/notzhan/Rustagon/commit/668487802f8196c8a8a560f18025449f99c04df7","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"c73e170b2296041cfb6a1d340cc7e85fda543a2b","url":"https://github.com/notzhan/Rustagon/commit/c73e170b2296041cfb6a1d340cc7e85fda543a2b","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"82f71dde3e4500518c389dca5d25810177c5ffe0","url":"https://github.com/notzhan/Rustagon/commit/82f71dde3e4500518c389dca5d25810177c5ffe0","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"9d414c72d510991d1c077b0b9a3d8217f9267b75","url":"https://github.com/notzhan/Rustagon/commit/9d414c72d510991d1c077b0b9a3d8217f9267b75","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"3743cad926d5a25a478f2b53dad44cc438a2c890","url":"https://github.com/notzhan/Rustagon/commit/3743cad926d5a25a478f2b53dad44cc438a2c890","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"63eddefbeb22486f287c9076fe6972799d85ca64","url":"https://github.com/notzhan/Rustagon/commit/63eddefbeb22486f287c9076fe6972799d85ca64","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"ef0a6203cdecc2b7d4e13c5adbb67090c48db638","url":"https://github.com/notzhan/Rustagon/commit/ef0a6203cdecc2b7d4e13c5adbb67090c48db638","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"0d0598381b20ee3ff7846b64e18a6eb7d3a6d416","url":"https://github.com/notzhan/Rustagon/commit/0d0598381b20ee3ff7846b64e18a6eb7d3a6d416","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: trailer 'Co-authored-by: Cursor'","ref":"c38a07bb38f28cafc942482908b4d165984c43f4","url":"https://github.com/notzhan/Rustagon/commit/c38a07bb38f28cafc942482908b4d165984c43f4","weight":0.9}],"data":{"attributed_loc_by_commit":{"29c83584a790d28e1ac3b9065cfbb143b36de7b7":1026,"5c0869245a9f9e9ff5ac05d7d94b9576d25f27da":98,"29cfa042c3a2d47c9f92bf8803516d9e96fa2faa":0,"5c40c622fa3c6f97a3ab8f4030301d505a24deb9":0,"a84b0a61d23d7fa0143b4f87f9e90474b38d1be7":0,"ecfe696aa3a5f510f762ad166c798ed9d31941c2":25,"945d46f98d9812c684da981077382ae2c7cb646e":0,"4e0ab9ef5fa7141437655170440bb4762c8189ab":57,"a4300c7a4307d52898d8806e6b802d32d8821c61":56,"c79bdae14246cdf2d7fcf315984198989277f8d5":46,"e2995a773b7c9fe904bfd3f942f027cf22631b20":182,"a86d244b13205be80774af7ae99f36b2e57fcfee":93,"d092b23492cdc3c75ce732d7c68e8ec93cabd8f1":56,"b2357ffdda1fdfd377cf0a90231b859c537b581c":196,"25c178dc3e33d80962f2058cf7e72e093cf7d1d7":121,"87e32d1ca1af2fac280d92a6de7ef265314ffdda":371,"aa78b3f19ca1e746d815b49f1e7053303e97ad6d":513,"606bfb142ac19c018b7385b865a76bae3969510c":0,"3903ff1d9c6ea9eb90ef01d670dcebb8198d770f":348,"2d6595c7e3a96b0c8a51adf49f226b4defa33e70":322,"61ae9b38970ddc3f291984e04ad0291af4dad077":176,"78e8cff31c1e5040778398659d7c5bb069d1e9cf":0,"b97f42557860f3ab2b02e39f8fc2a686a72e7d48":459,"650f5e9890d78b63558092f73fe24b0bdd1a4258":232,"b8f6e92f655dd07c7c3dbc61a2f955499951fdc8":221,"d0fcc2aa50a64e00b2f5ccca2a49f2ea1b589e13":303,"c3714a17687cd242a463b3a39854979b8d061656":257,"0a6ec43797347af9f426d15a2e4f3247df34b7eb":290,"afd103a4778c5ba20b0e22f15caf3bb5bad6a3c6":134,"b6a6d9806402b0b770dc4a8401ce99b3749edfcb":134,"ea27bc4011c051279d7e47fd11ec43883f2f411a":653,"40a626d23b17166aa2af05bf9fdffe809cde4461":21,"cc363bb0f9df001679d05a933ea894445510d164":1249,"5227de0e5832ac8e844f4e63760aab640075d04a":297,"2772e504edc6b0aff40a8644f28c10a15fbf6d23":8,"7203aff4af2e190ba0ac56f94a29f486c7d315a5":787,"f360a9887e79e7da586fd87e3910bc7708a43f31":316,"a6533f8464ac15844a0404a10bb92e9d009e7464":5,"3d8aab6161f2084f3732880ed05bbf248fc55e4c":584,"c38a07bb38f28cafc942482908b4d165984c43f4":126,"ef0a6203cdecc2b7d4e13c5adbb67090c48db638":0,"0d0598381b20ee3ff7846b64e18a6eb7d3a6d416":1037,"63eddefbeb22486f287c9076fe6972799d85ca64":157,"3743cad926d5a25a478f2b53dad44cc438a2c890":793,"9d414c72d510991d1c077b0b9a3d8217f9267b75":288,"82f71dde3e4500518c389dca5d25810177c5ffe0":1626,"c73e170b2296041cfb6a1d340cc7e85fda543a2b":747,"668487802f8196c8a8a560f18025449f99c04df7":46,"d13d5009a48e973f3665a1f67b64d877e856d4af":461,"6cd8206ea35df7827f34ad343dc3a4ddb6adfe56":120,"811aed0d5e3d67ebce00f70f66d7b68f21e613bd":1,"eb8fc34a103bb3eba9a346bb4c471cddc5e7b83f":410,"20b4c00786384a687b6f793cf27264132c56abc6":316,"edc50643dd46209da64c1a92abd4b21cedc86b60":390,"a4d88f866a0821093902083a053fd21742c70742":209,"aa3d26850146ceb7734067f5bb42c6a83188f5a3":227,"f15a25a6716bcbc737690bcb3991cdcdf5cd80fd":50,"91c9b74c8499528762a90302137badc83b1d5752":219,"329ac2ef09ea9ab5cc4933877edb3bdaab5469a4":158,"80026422c1dcd4e2648907e68038d4879b13878a":267,"8d01a30c92c4bf66e85243ef67e55b67bae8454d":292,"8418197e74bf2fb92d94f69def5970d7a2729a75":58,"762b587071a3c80d0d853df78ca692271eaf3e25":4,"fa6082e702b1bb187d338d50ca10bd265c8e6937":0},"tools":{"github-copilot":{"name":"GitHub Copilot coding agent","commits":2,"loc":1124,"first_seen":1788863588,"last_seen":1788863814},"cursor":{"name":"Cursor agent","commits":62,"loc":16514,"first_seen":1788944729,"last_seen":1789014364}},"monthly":{"2026-09":{"loc":17638,"attributed_loc":17638}}},"error":null},{"analyzer":"ai-artifacts","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"artifacts":1.0,"workflow_agents":0.0,"tools_configured":1.0,"earliest_adoption":1788863588.0},"findings":[],"evidence":[{"kind":"ai-artifact","description":".cursor/rules.md (cursor configuration)","ref":".cursor/rules.md","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/.cursor/rules.md","weight":0.5}],"data":{"artifacts":[{"tool":"cursor","path":".cursor/rules.md","added_at":1788863588}],"workflows":[],"tools":["cursor"]},"error":null},{"analyzer":"ai-velocity","pillar":"ai_provenance","status":"ok","tool_version":"prov-4","metrics":{"work_units":3.0,"flagged_units":2.0,"pre_ai_era_bursts":0.0,"pre_ai_era_measured_loc":0.0,"pre_ai_era_burst_loc":0.0,"measured_loc":16356.0,"flagged_loc":15232.0,"flagged_loc_share":0.9312790413303986,"max_loc_per_hour":1322.7418084071003,"median_loc_per_hour":1021.6178413241122,"pr_timed_units":0.0,"excluded_import_loc":0.0},"findings":[],"evidence":[{"kind":"velocity-burst","description":"7,928 lines of first-party code in ~6.0h (1,323 lines/hour, 30 commit session)","ref":"a6533f8464ac15844a0404a10bb92e9d009e7464","url":"https://github.com/notzhan/Rustagon/commit/a6533f8464ac15844a0404a10bb92e9d009e7464","weight":0.39682254252213006},{"kind":"velocity-burst","description":"7,304 lines of first-party code in ~7.1h (1,022 lines/hour, 24 commit session)","ref":"762b587071a3c80d0d853df78ca692271eaf3e25","url":"https://github.com/notzhan/Rustagon/commit/762b587071a3c80d0d853df78ca692271eaf3e25","weight":0.3064853523972336}],"data":{"flagged_loc_by_commit":{"ecfe696aa3a5f510f762ad166c798ed9d31941c2":25,"4e0ab9ef5fa7141437655170440bb4762c8189ab":57,"a4300c7a4307d52898d8806e6b802d32d8821c61":56,"c79bdae14246cdf2d7fcf315984198989277f8d5":46,"e2995a773b7c9fe904bfd3f942f027cf22631b20":182,"a86d244b13205be80774af7ae99f36b2e57fcfee":93,"d092b23492cdc3c75ce732d7c68e8ec93cabd8f1":56,"b2357ffdda1fdfd377cf0a90231b859c537b581c":196,"25c178dc3e33d80962f2058cf7e72e093cf7d1d7":121,"87e32d1ca1af2fac280d92a6de7ef265314ffdda":371,"aa78b3f19ca1e746d815b49f1e7053303e97ad6d":513,"3903ff1d9c6ea9eb90ef01d670dcebb8198d770f":348,"2d6595c7e3a96b0c8a51adf49f226b4defa33e70":322,"61ae9b38970ddc3f291984e04ad0291af4dad077":176,"b97f42557860f3ab2b02e39f8fc2a686a72e7d48":459,"650f5e9890d78b63558092f73fe24b0bdd1a4258":232,"b8f6e92f655dd07c7c3dbc61a2f955499951fdc8":221,"d0fcc2aa50a64e00b2f5ccca2a49f2ea1b589e13":303,"c3714a17687cd242a463b3a39854979b8d061656":257,"0a6ec43797347af9f426d15a2e4f3247df34b7eb":290,"afd103a4778c5ba20b0e22f15caf3bb5bad6a3c6":134,"b6a6d9806402b0b770dc4a8401ce99b3749edfcb":134,"ea27bc4011c051279d7e47fd11ec43883f2f411a":653,"40a626d23b17166aa2af05bf9fdffe809cde4461":21,"cc363bb0f9df001679d05a933ea894445510d164":1249,"5227de0e5832ac8e844f4e63760aab640075d04a":297,"2772e504edc6b0aff40a8644f28c10a15fbf6d23":8,"7203aff4af2e190ba0ac56f94a29f486c7d315a5":787,"f360a9887e79e7da586fd87e3910bc7708a43f31":316,"a6533f8464ac15844a0404a10bb92e9d009e7464":5,"3d8aab6161f2084f3732880ed05bbf248fc55e4c":584,"c38a07bb38f28cafc942482908b4d165984c43f4":126,"0d0598381b20ee3ff7846b64e18a6eb7d3a6d416":1037,"63eddefbeb22486f287c9076fe6972799d85ca64":157,"3743cad926d5a25a478f2b53dad44cc438a2c890":793,"9d414c72d510991d1c077b0b9a3d8217f9267b75":288,"82f71dde3e4500518c389dca5d25810177c5ffe0":344,"c73e170b2296041cfb6a1d340cc7e85fda543a2b":747,"668487802f8196c8a8a560f18025449f99c04df7":46,"d13d5009a48e973f3665a1f67b64d877e856d4af":461,"6cd8206ea35df7827f34ad343dc3a4ddb6adfe56":120,"811aed0d5e3d67ebce00f70f66d7b68f21e613bd":1,"eb8fc34a103bb3eba9a346bb4c471cddc5e7b83f":410,"20b4c00786384a687b6f793cf27264132c56abc6":316,"edc50643dd46209da64c1a92abd4b21cedc86b60":390,"a4d88f866a0821093902083a053fd21742c70742":209,"aa3d26850146ceb7734067f5bb42c6a83188f5a3":227,"f15a25a6716bcbc737690bcb3991cdcdf5cd80fd":50,"91c9b74c8499528762a90302137badc83b1d5752":219,"329ac2ef09ea9ab5cc4933877edb3bdaab5469a4":158,"80026422c1dcd4e2648907e68038d4879b13878a":267,"8d01a30c92c4bf66e85243ef67e55b67bae8454d":292,"8418197e74bf2fb92d94f69def5970d7a2729a75":58,"762b587071a3c80d0d853df78ca692271eaf3e25":4},"excluded_import_commits":[]},"error":null},{"analyzer":"ai-release-velocity","pillar":"ai_provenance","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"ai-stylometry","pillar":"ai_provenance","status":"ok","tool_version":null,"metrics":{"lines_scanned":8870.0,"index":0.225,"count:narrated_steps":0.0,"per_kloc:narrated_steps":0.0,"files:narrated_steps":0.0,"count:placeholder":1.0,"per_kloc:placeholder":0.113,"files:placeholder":1.0,"count:emoji_in_code":0.0,"per_kloc:emoji_in_code":0.0,"files:emoji_in_code":0.0,"count:assistant_voice":0.0,"per_kloc:assistant_voice":0.0,"files:assistant_voice":0.0},"findings":[],"evidence":[{"kind":"stylometry:placeholder","description":"placeholder or demo-only phrasing: // In a real implementation:","ref":"rustagon-core/src/runner.rs:32","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-core/src/runner.rs#L32","weight":0.0}],"data":{},"error":null},{"analyzer":"sec-secrets","pillar":"security","status":"ok","tool_version":"gitleaks 8.30.1","metrics":{"secrets_current":0.0,"secrets_history":0.0,"secrets_nonprod":0.0,"secrets_low_confidence":0.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-sast","pillar":"security","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":9.0,"findings_high":0.0,"findings_medium":0.0,"findings_low":9.0,"weighted_findings":2.25,"scanned_lines":8870.0,"parse_errors":1.0},"findings":[{"rule_id":"opengrep/rust.lang.security.unsafe-usage","severity":"low","message":"Detected 'unsafe' usage, please audit for secure usage [confidence high]","path":"rustagon-ebpf/src/lib.rs","line":83,"fingerprint":"rust.lang.security.unsafe-usage:rustagon-ebpf/src/lib.rs:83"},{"rule_id":"opengrep/rust.lang.security.unsafe-usage","severity":"low","message":"Detected 'unsafe' usage, please audit for secure usage [confidence high]","path":"rustagon-ebpf/src/lib.rs","line":89,"fingerprint":"rust.lang.security.unsafe-usage:rustagon-ebpf/src/lib.rs:89"},{"rule_id":"opengrep/rust.lang.security.unsafe-usage","severity":"low","message":"Detected 'unsafe' usage, please audit for secure usage [confidence high]","path":"rustagon-ebpf/src/lib.rs","line":90,"fingerprint":"rust.lang.security.unsafe-usage:rustagon-ebpf/src/lib.rs:90"},{"rule_id":"opengrep/rust.lang.security.unsafe-usage","severity":"low","message":"Detected 'unsafe' usage, please audit for secure usage [confidence high]","path":"rustagon-ebpf/src/lib.rs","line":91,"fingerprint":"rust.lang.security.unsafe-usage:rustagon-ebpf/src/lib.rs:91"},{"rule_id":"opengrep/rust.lang.security.unsafe-usage","severity":"low","message":"Detected 'unsafe' usage, please audit for secure usage [confidence high]","path":"rustagon-ebpf/src/lib.rs","line":92,"fingerprint":"rust.lang.security.unsafe-usage:rustagon-ebpf/src/lib.rs:92"},{"rule_id":"opengrep/rust.lang.security.unsafe-usage","severity":"low","message":"Detected 'unsafe' usage, please audit for secure usage [confidence high]","path":"rustagon-ebpf/src/lib.rs","line":95,"fingerprint":"rust.lang.security.unsafe-usage:rustagon-ebpf/src/lib.rs:95"},{"rule_id":"opengrep/rust.lang.security.unsafe-usage","severity":"low","message":"Detected 'unsafe' usage, please audit for secure usage [confidence high]","path":"rustagon-ebpf/src/lib.rs","line":108,"fingerprint":"rust.lang.security.unsafe-usage:rustagon-ebpf/src/lib.rs:108"},{"rule_id":"opengrep/rust.lang.security.unsafe-usage","severity":"low","message":"Detected 'unsafe' usage, please audit for secure usage [confidence high]","path":"rustagon-ebpf/src/lib.rs","line":124,"fingerprint":"rust.lang.security.unsafe-usage:rustagon-ebpf/src/lib.rs:124"},{"rule_id":"opengrep/rust.lang.security.unsafe-usage","severity":"low","message":"Detected 'unsafe' usage, please audit for secure usage [confidence high]","path":"rustagon-ebpf/src/lib.rs","line":150,"fingerprint":"rust.lang.security.unsafe-usage:rustagon-ebpf/src/lib.rs:150"}],"evidence":[],"data":{"rulesets":["rust","python","bash"]},"error":null},{"analyzer":"sec-deps","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-actions","pillar":"security","status":"ok","tool_version":"zizmor 1.32.0","metrics":{"workflows":1.0,"findings":4.0,"findings_high":2.0,"findings_medium":2.0,"findings_low":0.0,"penalty":27.6},"findings":[{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/parity.yml","line":12,"fingerprint":"unpinned-uses:.github/workflows/parity.yml:12"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/parity.yml","line":14,"fingerprint":"unpinned-uses:.github/workflows/parity.yml:14"},{"rule_id":"zizmor/artipacked","severity":"medium","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/parity.yml","line":12,"fingerprint":"artipacked:.github/workflows/parity.yml:12"},{"rule_id":"zizmor/excessive-permissions","severity":"medium","message":"overly broad permissions [confidence medium]","path":".github/workflows/parity.yml","line":9,"fingerprint":"excessive-permissions:.github/workflows/parity.yml:9"}],"evidence":[],"data":{},"error":null},{"analyzer":"sec-posture","pillar":"security","status":"ok","tool_version":null,"metrics":{"check:security_policy":0.0,"check:dependency_updates":0.0,"check:signed_commits":0.0,"check:lockfiles":0.0,"signed_commit_share":0.0606,"unpinned_manifests":11.0},"findings":[],"evidence":[{"kind":"posture","description":"Cargo.toml has no lockfile alongside it (unpinned dependencies)","ref":"Cargo.toml","url":null,"weight":0.3},{"kind":"posture","description":"rustagon-app/Cargo.toml has no lockfile alongside it (unpinned dependencies)","ref":"rustagon-app/Cargo.toml","url":null,"weight":0.3},{"kind":"posture","description":"rustagon-common/Cargo.toml has no lockfile alongside it (unpinned dependencies)","ref":"rustagon-common/Cargo.toml","url":null,"weight":0.3},{"kind":"posture","description":"rustagon-config/Cargo.toml has no lockfile alongside it (unpinned dependencies)","ref":"rustagon-config/Cargo.toml","url":null,"weight":0.3},{"kind":"posture","description":"rustagon-core/Cargo.toml has no lockfile alongside it (unpinned dependencies)","ref":"rustagon-core/Cargo.toml","url":null,"weight":0.3},{"kind":"posture","description":"rustagon-ebpf/Cargo.toml has no lockfile alongside it (unpinned dependencies)","ref":"rustagon-ebpf/Cargo.toml","url":null,"weight":0.3},{"kind":"posture","description":"rustagon-engine/Cargo.toml has no lockfile alongside it (unpinned dependencies)","ref":"rustagon-engine/Cargo.toml","url":null,"weight":0.3},{"kind":"posture","description":"rustagon-parser/Cargo.toml has no lockfile alongside it (unpinned dependencies)","ref":"rustagon-parser/Cargo.toml","url":null,"weight":0.3},{"kind":"posture","description":"rustagon-scap/Cargo.toml has no lockfile alongside it (unpinned dependencies)","ref":"rustagon-scap/Cargo.toml","url":null,"weight":0.3},{"kind":"posture","description":"rustagon-sinsp/Cargo.toml has no lockfile alongside it (unpinned dependencies)","ref":"rustagon-sinsp/Cargo.toml","url":null,"weight":0.3},{"kind":"posture","description":"xtask/Cargo.toml has no lockfile alongside it (unpinned dependencies)","ref":"xtask/Cargo.toml","url":null,"weight":0.3}],"data":{},"error":null},{"analyzer":"sec-distribution","pillar":"security","status":"ok","tool_version":null,"metrics":{"signals":0.0,"binary_assets":0.0,"suspicious":0.0},"findings":[],"evidence":[],"data":{"signals":[],"suspicious":false,"unusual_traction":false,"metadata":true},"error":null},{"analyzer":"qual-complexity","pillar":"quality","status":"ok","tool_version":"lizard 1.25.1","metrics":{"functions":403.0,"function_nloc":5738.0,"mean_ccn":3.47,"p90_ccn":8.0,"complex_functions":7.0,"long_functions":2.0,"many_param_functions":0.0,"risky_nloc_share":0.111},"findings":[],"evidence":[{"kind":"complex-function","description":"apply_rule in rustagon-engine/src/rule_loader.rs: complexity 49, 211 lines","ref":"rustagon-engine/src/rule_loader.rs","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-engine/src/rule_loader.rs#L377","weight":0.8166666666666667},{"kind":"complex-function","description":"load_sequence in rustagon-engine/src/rule_loader.rs: complexity 31, 139 lines","ref":"rustagon-engine/src/rule_loader.rs","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-engine/src/rule_loader.rs#L166","weight":0.5166666666666667},{"kind":"complex-function","description":"main in rustagon-app/scripts/generate_ppm_events.py: complexity 22, 75 lines","ref":"rustagon-app/scripts/generate_ppm_events.py","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-app/scripts/generate_ppm_events.py#L23","weight":0.36666666666666664},{"kind":"complex-function","description":"parse_record_inner in rustagon-scap/src/modern_ebpf.rs: complexity 21, 73 lines","ref":"rustagon-scap/src/modern_ebpf.rs","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-scap/src/modern_ebpf.rs#L136","weight":0.35},{"kind":"complex-function","description":"load_from_file_with_cli_overrides in rustagon-config/src/config.rs: complexity 18, 50 lines","ref":"rustagon-config/src/config.rs","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-config/src/config.rs#L206","weight":0.3},{"kind":"complex-function","description":"parameter_count in rustagon-common/src/ppm.rs: complexity 16, 20 lines","ref":"rustagon-common/src/ppm.rs","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-common/src/ppm.rs#L72","weight":0.26666666666666666},{"kind":"complex-function","description":"parse_key in rustagon-config/src/config.rs: complexity 16, 69 lines","ref":"rustagon-config/src/config.rs","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-config/src/config.rs#L503","weight":0.26666666666666666}],"data":{},"error":null},{"analyzer":"qual-duplication","pillar":"quality","status":"ok","tool_version":"repotrust-dup-w6","metrics":{"compared_lines":6318.0,"duplicated_lines":140.0,"duplicated_share":0.0222,"files":68.0},"findings":[],"evidence":[{"kind":"duplicate-code","description":"6+ duplicated lines: rustagon-engine/src/alt_loader.rs:68 and rustagon-engine/src/alt_loader.rs:85","ref":"rustagon-engine/src/alt_loader.rs","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-engine/src/alt_loader.rs#L68","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: rustagon-engine/src/engine.rs:418 and rustagon-engine/src/engine.rs:433","ref":"rustagon-engine/src/engine.rs","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-engine/src/engine.rs#L418","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: rustagon-engine/src/rule_loader.rs:67 and rustagon-engine/src/rule_loader.rs:103","ref":"rustagon-engine/src/rule_loader.rs","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-engine/src/rule_loader.rs#L67","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: rustagon-engine/src/ruleset.rs:65 and rustagon-engine/src/ruleset.rs:82","ref":"rustagon-engine/src/ruleset.rs","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-engine/src/ruleset.rs#L65","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: rustagon-parser/src/parser.rs:102 and rustagon-parser/src/parser.rs:117","ref":"rustagon-parser/src/parser.rs","url":"https://github.com/notzhan/Rustagon/blob/560d5d6c7e4144a926cf66182b7c87c15b576053/rustagon-parser/src/parser.rs#L102","weight":0.3}],"data":{},"error":null},{"analyzer":"qual-lint","pillar":"quality","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":0.0,"weighted_findings":0.0,"scanned_lines":8870.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"qual-testing","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:has_tests":1.0,"check:test_ratio":1.0,"check:ci_present":1.0,"check:ci_runs_tests":1.0,"check:ci_runs_lint":0.0,"check:tests_cochange":1.0,"test_lines":6195.0,"source_lines":8870.0,"test_ratio":0.6984,"ci_files":1.0,"cochange_share":0.7455,"cochange_commits":55.0},"findings":[],"evidence":[{"kind":"ci","description":"CI config: .github/workflows/parity.yml","ref":".github/workflows/parity.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI runs tests (go test, cargo test)","ref":null,"url":null,"weight":0.0}],"data":{"test_commands":["go test","cargo test"],"lint_commands":[]},"error":null},{"analyzer":"qual-docs","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:readme":1.0,"check:license":1.0,"check:contributing":0.0,"check:changelog":0.0,"readme_lines":57.0},"findings":[],"evidence":[{"kind":"docs","description":"README.md","ref":"README.md","url":null,"weight":0.0},{"kind":"docs","description":"LICENSE","ref":"LICENSE","url":null,"weight":0.0}],"data":{},"error":null},{"analyzer":"qual-type-safety","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:strict_config":0.0,"check:low_escape_density":1.0,"escapes":0.0,"escapes_per_kloc":0.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"x-blame","pillar":"ai_provenance","status":"ok","tool_version":"git-blame","metrics":{"ai_lines":8870.0,"other_lines":0.0,"files_blamed":68.0,"blame_failures":0.0,"quality:ai_findings":0.0,"quality:ai_per_kloc":0.0,"quality:other_findings":0.0,"security:ai_findings":9.0,"security:ai_per_kloc":1.015,"security:other_findings":0.0},"findings":[],"evidence":[],"data":{"sampled":false,"comparable":false},"error":null}],"flags":[]}