{"schema_version":"2","scorer_version":"0.1.0","scoring_version":"prov-5+qual-2+sec-2","generated_at":"2026-11-14T15:13:19.455220Z","repo":{"ref":{"host":"github.com","owner":"AvaloniaUI","name":"Avalonia"},"default_branch":"main","clone_url":"https://github.com/AvaloniaUI/Avalonia.git","html_url":"https://github.com/AvaloniaUI/Avalonia","description":"Develop Desktop, Embedded, Mobile and WebAssembly apps with C# and XAML. The future of .NET UI","stars":31816,"forks":2899,"is_fork":false,"is_archived":false,"is_private":false,"size_kb":236838,"primary_language":"C#","license_spdx":"MIT","created_at":"2013-12-05T20:13:21Z","pushed_at":"2026-11-14T08:15:40Z","security_policy_url":"https://github.com/AvaloniaUI/Avalonia/security/policy","distribution":{"owner_created_at":"2015-09-01T14:01:15Z","owner_type":"Organization","release_assets":[]}},"commit_sha":"8035f14fd356beb7d7e7d8243dc8ce98dfc27551","profile":{"lines_by_language":{"C#":694044,"TypeScript":3503,"C":1476,"Shell":95,"JavaScript":94,"PowerShell":79},"files_by_category":{"source":3545,"other":919,"test":902,"binary":519,"config":115,"docs":83,"vendored":31,"oversized":4},"source_lines":481642,"test_lines":217649},"pillars":{"ai_provenance":{"score":4.1,"confidence":0.95,"coverage":1.0,"label":"explicit","breakdown":{"attributed_share":0.0408,"suspected_share":0.0333,"estimated_share":0.0408,"ai_artifacts":1.0,"flagged_work_units":17.0,"flagged_releases":0.0,"style_index":0.056},"summary":"Explicit AI attribution on 4% of first-party code added; an estimated 4% including velocity signals."},"quality":{"score":76.1,"confidence":0.9,"coverage":1.0,"label":"adequate","breakdown":{"complexity":63.3,"duplication":70.6,"lint":99.8,"testing":67.6,"docs":80.0,"type_safety":60.0,"process":100.0},"summary":"Code quality is adequate: test-to-source ratio 0.45, no CI test run detected; 15% of function code in complex or long functions; 6% duplicated lines. Weakest area: type safety."},"security":{"score":60.2,"confidence":0.85,"coverage":1.0,"label":"weak","breakdown":{"secrets":87.5,"sast":99.9,"dependencies":25.1,"ci_actions":0.0,"posture":100.0,"scorecard":33.3},"summary":"Security posture is weak: 28 known vulnerabilities in 12 dependencies; 42 high-severity workflow issues. Weakest area: ci actions."}},"analyzer_results":[{"analyzer":"sec-scorecard","pillar":"security","status":"ok","tool_version":"scorecard v5.6.0","metrics":{"aggregate":6.2,"check:Maintained":10.0,"check:Code-Review":10.0,"check:Security-Policy":10.0,"check:Token-Permissions":0.0,"check:Dangerous-Workflow":10.0,"check:CII-Best-Practices":0.0,"check:Binary-Artifacts":10.0,"check:License":10.0,"check:Pinned-Dependencies":0.0,"check:Fuzzing":0.0,"check:SAST":0.0},"findings":[],"evidence":[{"kind":"scorecard-check","description":"Scorecard Maintained: 10/10 (30 commit(s) and 13 issue activity found in the last 90 days -- score normalized to 10)","ref":"Maintained","url":"https://scorecard.dev/viewer/?uri=github.com/AvaloniaUI/Avalonia","weight":0.0},{"kind":"scorecard-check","description":"Scorecard Code-Review: 10/10 (all changesets reviewed)","ref":"Code-Review","url":"https://scorecard.dev/viewer/?uri=github.com/AvaloniaUI/Avalonia","weight":0.0},{"kind":"scorecard-check","description":"Scorecard Security-Policy: 10/10 (security policy file detected)","ref":"Security-Policy","url":"https://scorecard.dev/viewer/?uri=github.com/AvaloniaUI/Avalonia","weight":0.0},{"kind":"scorecard-check","description":"Scorecard Token-Permissions: 0/10 (detected GitHub workflow tokens with excessive permissions)","ref":"Token-Permissions","url":"https://scorecard.dev/viewer/?uri=github.com/AvaloniaUI/Avalonia","weight":1.0},{"kind":"scorecard-check","description":"Scorecard Dangerous-Workflow: 10/10 (no dangerous workflow patterns detected)","ref":"Dangerous-Workflow","url":"https://scorecard.dev/viewer/?uri=github.com/AvaloniaUI/Avalonia","weight":0.0},{"kind":"scorecard-check","description":"Scorecard CII-Best-Practices: 0/10 (no effort to earn an OpenSSF best practices badge detected)","ref":"CII-Best-Practices","url":"https://scorecard.dev/viewer/?uri=github.com/AvaloniaUI/Avalonia","weight":1.0},{"kind":"scorecard-check","description":"Scorecard Binary-Artifacts: 10/10 (no binaries found in the repo)","ref":"Binary-Artifacts","url":"https://scorecard.dev/viewer/?uri=github.com/AvaloniaUI/Avalonia","weight":0.0},{"kind":"scorecard-check","description":"Scorecard License: 10/10 (license file detected)","ref":"License","url":"https://scorecard.dev/viewer/?uri=github.com/AvaloniaUI/Avalonia","weight":0.0},{"kind":"scorecard-check","description":"Scorecard Pinned-Dependencies: 0/10 (dependency not pinned by hash detected -- score normalized to 0)","ref":"Pinned-Dependencies","url":"https://scorecard.dev/viewer/?uri=github.com/AvaloniaUI/Avalonia","weight":1.0},{"kind":"scorecard-check","description":"Scorecard Fuzzing: 0/10 (project is not fuzzed)","ref":"Fuzzing","url":"https://scorecard.dev/viewer/?uri=github.com/AvaloniaUI/Avalonia","weight":1.0},{"kind":"scorecard-check","description":"Scorecard SAST: 0/10 (SAST tool is not run on all commits -- score normalized to 0)","ref":"SAST","url":"https://scorecard.dev/viewer/?uri=github.com/AvaloniaUI/Avalonia","weight":1.0}],"data":{"date":"2026-10-19","commit":"913517076982123e42bae247cb1e6cf6eff8b7e6","matches_head":false},"error":null},{"analyzer":"sec-registry","pillar":"security","status":"ok","tool_version":null,"metrics":{"declared":20.0,"checked":20.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":18871.0,"attributed_commits":129.0,"attributed_commit_share":0.006835885750622648,"effective_loc":1466137.0,"attributed_loc":59844.0,"attributed_loc_share":0.040817467944673655,"tools_detected":4.0},"findings":[],"evidence":[{"kind":"attribution-summary","description":"Claude Code: 96 attributed commits, 44,254 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attribution-summary","description":"GitHub Copilot coding agent: 30 attributed commits, 15,531 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attribution-summary","description":"Cursor agent: 2 attributed commits, 59 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attribution-summary","description":"OpenAI Codex: 1 attributed commits, 0 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"500e78afef78a82eb6df3270d02ec2a144813d11","url":"https://github.com/AvaloniaUI/Avalonia/commit/500e78afef78a82eb6df3270d02ec2a144813d11","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: PR description attribution","ref":"02d7bc35e34fa1207a93d540b1639e42e4e88f57","url":"https://github.com/AvaloniaUI/Avalonia/commit/02d7bc35e34fa1207a93d540b1639e42e4e88f57","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"e08cd2521268bab75b5295c97f8668af8a76e68f","url":"https://github.com/AvaloniaUI/Avalonia/commit/e08cd2521268bab75b5295c97f8668af8a76e68f","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-authored-by: Claude'","ref":"60b1719596312b69bf601c1877ae5c61d25e5776","url":"https://github.com/AvaloniaUI/Avalonia/commit/60b1719596312b69bf601c1877ae5c61d25e5776","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-authored-by: Claude'","ref":"e73a976afd392e7b14ab41709d1dddcca97cde1e","url":"https://github.com/AvaloniaUI/Avalonia/commit/e73a976afd392e7b14ab41709d1dddcca97cde1e","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-authored-by: Claude'","ref":"a4f832f5d67f46ee031a9a9c440a4c4c802434fe","url":"https://github.com/AvaloniaUI/Avalonia/commit/a4f832f5d67f46ee031a9a9c440a4c4c802434fe","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: PR description attribution","ref":"6350ac83e644ea7670b380d4529b59dd3333bd2d","url":"https://github.com/AvaloniaUI/Avalonia/commit/6350ac83e644ea7670b380d4529b59dd3333bd2d","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-authored-by: Claude'","ref":"61c3aaa8762c9f13cb9dbfa6efd0167a33c984db","url":"https://github.com/AvaloniaUI/Avalonia/commit/61c3aaa8762c9f13cb9dbfa6efd0167a33c984db","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"24b6c7b41046b349de3f0c8ed007ad1e777ed20b","url":"https://github.com/AvaloniaUI/Avalonia/commit/24b6c7b41046b349de3f0c8ed007ad1e777ed20b","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"050d3fb9411b3b16a6e2c67c35656ac5f550af54","url":"https://github.com/AvaloniaUI/Avalonia/commit/050d3fb9411b3b16a6e2c67c35656ac5f550af54","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"22e9912b75188097c285939a6c0b091c7c573fe4","url":"https://github.com/AvaloniaUI/Avalonia/commit/22e9912b75188097c285939a6c0b091c7c573fe4","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"5ef345810e89d1a4a3b7ff38b62587a450e7da93","url":"https://github.com/AvaloniaUI/Avalonia/commit/5ef345810e89d1a4a3b7ff38b62587a450e7da93","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"8dae868308851046bb384c45769c45f55798d536","url":"https://github.com/AvaloniaUI/Avalonia/commit/8dae868308851046bb384c45769c45f55798d536","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"80c4f31848f6dd404d497cd7fec8b35fb3b6d795","url":"https://github.com/AvaloniaUI/Avalonia/commit/80c4f31848f6dd404d497cd7fec8b35fb3b6d795","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"2061fb509005ce6043389979f773537677281e83","url":"https://github.com/AvaloniaUI/Avalonia/commit/2061fb509005ce6043389979f773537677281e83","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"b6a5fbc19131c4bf017ca5b58f06856b295f194a","url":"https://github.com/AvaloniaUI/Avalonia/commit/b6a5fbc19131c4bf017ca5b58f06856b295f194a","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"ae5ae6124e62ac22ce310b823211cf6d6a4386c5","url":"https://github.com/AvaloniaUI/Avalonia/commit/ae5ae6124e62ac22ce310b823211cf6d6a4386c5","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-authored-by: Claude'","ref":"69be03931f0cbeab1d248e519b4bd27524ff3ed7","url":"https://github.com/AvaloniaUI/Avalonia/commit/69be03931f0cbeab1d248e519b4bd27524ff3ed7","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"48132c0500826f5c21e08cf1a574432a8d92bd2f","url":"https://github.com/AvaloniaUI/Avalonia/commit/48132c0500826f5c21e08cf1a574432a8d92bd2f","weight":0.9},{"kind":"attributed-commit","description":"GitHub Copilot coding agent: trailer 'Co-authored-by: Copilot'","ref":"c4d24e9dab0310935664d0d3479ca7775b229228","url":"https://github.com/AvaloniaUI/Avalonia/commit/c4d24e9dab0310935664d0d3479ca7775b229228","weight":0.9},{"kind":"attributed-commit","description":"GitHub Copilot coding agent: trailer 'Co-authored-by: Copilot'","ref":"f5af0ebf98a9074e6854b73e865c018d7a134238","url":"https://github.com/AvaloniaUI/Avalonia/commit/f5af0ebf98a9074e6854b73e865c018d7a134238","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-authored-by: Claude'","ref":"c3b6f5cf614fa280c08aa4bc34b84e2888e6456a","url":"https://github.com/AvaloniaUI/Avalonia/commit/c3b6f5cf614fa280c08aa4bc34b84e2888e6456a","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"408f2494f09c1c530ab4bca8b0e84e9d52e736eb","url":"https://github.com/AvaloniaUI/Avalonia/commit/408f2494f09c1c530ab4bca8b0e84e9d52e736eb","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: PR description attribution","ref":"ee4f35bfdd5841dda194f1f1aaab4e8ec72b85aa","url":"https://github.com/AvaloniaUI/Avalonia/commit/ee4f35bfdd5841dda194f1f1aaab4e8ec72b85aa","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"9ce8ffda396149ed656d2f94570a2225a3afb108","url":"https://github.com/AvaloniaUI/Avalonia/commit/9ce8ffda396149ed656d2f94570a2225a3afb108","weight":0.9}],"data":{"attributed_loc_by_commit":{"6e35604b9d2061dc97c7a6ea285c5ad0734400d9":5,"406925a344b1d15f8ab3b4c8fc27a667aadd1de8":45,"981a0106a68d43baa648380a4e06af5123bf06a3":809,"62597de97c8794f8c5a70da02596562328caade4":377,"5d3a9c167a96f9b60c85e160971b2f330c898c7a":34,"70f3bef7059e9fd87817afae8d68b6d0d399abf9":1265,"2c44533707a03764e2547ccc64ea8c00ab767319":169,"49b509f11edeb09aa3a435fa37646aa661698071":0,"12f7e96d72d90df5bdd5c31c40bf611dd60c6eb9":452,"c62e1dffffeea03a3a36296069d66e38c6a203ae":38,"ba43523daf221599441c27696b03d105330a7aa7":88,"0f2760afce49fadefb0767b2cff6504a9ec77b79":509,"ae6a085ebcd002f8f4f3a47973dc6217e32261c3":479,"ff980aeba2d23eb52a26c8d946c6854aad4275fc":146,"059bd5f7b94fef990630e932ffdc616f47bec964":191,"14b591b488ff9f6a873ac85146c03f38cbf61fc6":86,"cdc722264659ef5d43d6a84d780e0a14351a49ed":206,"a01245a78411816663c4b8ab53011ed04a69a433":67,"a59e6cbb0b152c8cd764e59b74b22906ece0acb9":128,"989a91dc9cfa7c65fd7bbcb1436fa6a582efd5a5":0,"50a22e9df390d8419f3c5bfcbb2d8445b63e33cd":356,"a77f08d675d201526922b843f85184e50cdc64f0":1634,"391444d8551cba05f35e4abc0353acd441f73a5a":59,"0279a557b42c52e5510e247bb7130b6773dc5704":465,"a932c75dbbc06262e36276794502ad957d0f9110":146,"905e620b820925363e62da11075910f82bccee16":108,"842937ddad8378a92d48bb15d63bd9b75e17fe2c":124,"63a5f830c4d2496c795752a90f011e4295672cf0":767,"9becf5d6345621707e10cac038465eb5e4f078a9":44,"f8dd4248ca23070b510dde9a488c88185a394d91":1,"fb09d611062b199f70551e9c26b2316f0173ff09":0,"b2d9e7904bde138880743ba3936ad180acadb2fb":163,"71ded23911c2c3565d40cbd424b42784b76bafbc":557,"49f8f055189745950b72483871be9c80dd8e4ae6":0,"3c3a04d8cdec77c0ec9a5299dbd01f53d4cf4233":258,"4918bdf37012173e18ad43eca4a5729a952c13f0":14,"41fbff90eafd352c9500e57ebfcf2240bf8fe0cb":0,"7f456057cdad1c64253d208091112f63bca7456f":99,"a8738963cd28a6490b5fe740b341758a5b518f52":75,"a83222ea6a708bca53ee11cb85499643897decb8":854,"bd6c8823d720a34866eba785632a66e3eb281426":563,"b84025f6c9ef86d935272bd3329130fefcad9cc9":4255,"97dd7857fd6c686cc831ed9dff26df96ed05d9d0":260,"38402fc046e7f56298a7c9cedd51600e1ff6f9e0":84,"15a9c99fc619798388304b57b189ee8c84703a89":2426,"76735b20a46a1255a16bab860eec1eae7d2aea65":211,"eeb9e36a05dad8f131f61531fa264bb987c3916e":3497,"7527557ca001b1ace3739776dd97ae4486db68be":200,"9d54818fd57f7942cdd22a749ea5fe487453a424":196,"31d6979377892b81377bf4964038afae1858331c":117,"9254686fea8bae6b1d90baa082cab4294f10cc39":548,"9654332a79f637473da96054f75b2a16deaa557e":23,"1c9e55999643c1d12ea9745f39f3bb791c0424a2":56,"2e7d2c5c60352b442c907ba923d236c9fa2d7fb8":158,"082064422392d83ca6e3f93c488cdb1d0df82a86":19,"774f561a9129c02443c8ddb41a2a8629d25f5e17":13,"b709c58c6b1b8aa3b90866c7c001b7bf82b6353b":3189,"79ff4ff73eaed53d81562c074bdf56f584ee28cf":903,"4ec9cbb7b82bf360f04d85e28d864601312d3019":657,"0082fc6b2a9542b3651c3f56eca267f69ec9f208":155,"54ae2d047f014d8a0797c885f9b85bab1e5c0a78":247,"c6a9d345297fdd6bf838219c4b80fcd4b7ed894b":15,"888f7557bde9a0cef796e81fd6f63e3009d43490":356,"0dbce40347f7ccc327763d5deaf8d71404de62b5":926,"920eaa4a22dc64261d6bea6d45e634652898b76d":99,"acc14943085d9c16fb846019206dc0859a3e1c4d":5748,"3447134315f9f334b6541c917903612b95d239dc":61,"a4fe71e2cd5a0f38a2c9eeb48d3e5a49bf77f11d":151,"334536066a6cf4df5dcfb1da22cb9ed80dd66e8e":11,"6564835607e34f07f8272cc3143f2218b32e2030":17,"8f9ae01905403e75c6ad5abf54e1e3afccb219ae":98,"c423071d3382b9aefb8ea57ed07f83c595f8d2ce":201,"9c463f472c2f63dbf31c33b6b52d6c34dac61f52":492,"d412d70865b2ac1e14026804ca1a58c610baaa28":25,"a1861a80af41236daed0e9990bd5800fb98c57e5":3,"04f49f7a1193f7d96dcba9685db2f96e05b21e94":2,"11ea9b1120f1ef2a8bbf1a513c9e35520eb7f675":108,"b76623d46e09d058e1d61f0506f7209d8bdf93f2":190,"f4591beca4fd1ccf23f035dcded71ac59a144bd8":379,"1b50ee4bdd5e39d893f00ec52cb56efb35bb6212":176,"5f8cbc8c86218889279629f9f0e4baea1eeec153":81,"a6df0e3c39722ff8bb04091ffb32a5003add7712":62,"16572aeff14531c02deaac5ba1a7c132a9c985d0":99,"b607235da177b413af5324df82c5cbaae444a870":327,"6477086eaad8e725664e287735a3fb12c0e7bba6":31,"8973430f37490a982fa9ca3659c7495f1a0969c8":45,"19952840c5704831de8f853acf4a3ca416955af6":1454,"b72f1fd4d8665aeffe8022f7881eaf8f6d56fe7d":81,"dc0105179bcd9db1110dd20d2612859a7c4ae3ca":253,"d3fcf74a91ae37bf8828d9f7cf5a5077e603e8ef":212,"c2a6e2916e39e9a4313839bcead0c9d4538e1fe7":30,"d8f2fc7b9fec9bf2f0896efa5f942cc66b32546f":248,"bd835340fb37db8aea82596777ad99fd6110fd73":796,"0a728569fca5c31a84278646bb976f30afe75f5e":184,"db0a9a9cdb8495f2ce6de41735b57fda40569ca7":460,"75ea7e186c01c86fe6af6be27257719ebbfe04b6":249,"0e0dad08ca63065497a189a1fa345fa884939165":94,"5d6b56563bf231c74bee9db12404cc7e756174a9":107,"d1cc67f3ae7476c4d32a31e1cde1f5555d877d10":0,"c85e221c6082e740968b12c8b6d01a7214e0b48b":220,"c9c7b90053345d16232aa41f9e78fe488323cecc":30,"719787dc699b48b1d6d91d538fb56224ee0f667a":128,"eae84c140368f18e234fe9211044e8b0a2b6f1eb":1409,"64b21ba1cc4ae2039018a13a09a88724396d5bf9":2207,"9ce8ffda396149ed656d2f94570a2225a3afb108":1560,"408f2494f09c1c530ab4bca8b0e84e9d52e736eb":1160,"ee4f35bfdd5841dda194f1f1aaab4e8ec72b85aa":568,"c3b6f5cf614fa280c08aa4bc34b84e2888e6456a":0,"f5af0ebf98a9074e6854b73e865c018d7a134238":510,"c4d24e9dab0310935664d0d3479ca7775b229228":535,"48132c0500826f5c21e08cf1a574432a8d92bd2f":18,"69be03931f0cbeab1d248e519b4bd27524ff3ed7":1,"ae5ae6124e62ac22ce310b823211cf6d6a4386c5":629,"b6a5fbc19131c4bf017ca5b58f06856b295f194a":75,"2061fb509005ce6043389979f773537677281e83":482,"80c4f31848f6dd404d497cd7fec8b35fb3b6d795":18,"8dae868308851046bb384c45769c45f55798d536":1822,"5ef345810e89d1a4a3b7ff38b62587a450e7da93":164,"22e9912b75188097c285939a6c0b091c7c573fe4":34,"050d3fb9411b3b16a6e2c67c35656ac5f550af54":77,"24b6c7b41046b349de3f0c8ed007ad1e777ed20b":235,"61c3aaa8762c9f13cb9dbfa6efd0167a33c984db":0,"6350ac83e644ea7670b380d4529b59dd3333bd2d":497,"a4f832f5d67f46ee031a9a9c440a4c4c802434fe":87,"e73a976afd392e7b14ab41709d1dddcca97cde1e":2,"60b1719596312b69bf601c1877ae5c61d25e5776":31,"e08cd2521268bab75b5295c97f8668af8a76e68f":4558,"02d7bc35e34fa1207a93d540b1639e42e4e88f57":91,"500e78afef78a82eb6df3270d02ec2a144813d11":230},"tools":{"claude-code":{"name":"Claude Code","commits":96,"loc":44254,"first_seen":1761115592,"last_seen":1794596395},"github-copilot":{"name":"GitHub Copilot coding agent","commits":30,"loc":15531,"first_seen":1764604943,"last_seen":1793963140},"openai-codex":{"name":"OpenAI Codex","commits":1,"loc":0,"first_seen":1784818592,"last_seen":1784818592},"cursor":{"name":"Cursor agent","commits":2,"loc":59,"first_seen":1787153060,"last_seen":1792140099}},"monthly":{"2013-12":{"loc":4661,"attributed_loc":0},"2014-02":{"loc":5217,"attributed_loc":0},"2014-03":{"loc":2294,"attributed_loc":0},"2014-04":{"loc":1055,"attributed_loc":0},"2014-06":{"loc":7631,"attributed_loc":0},"2014-09":{"loc":19481,"attributed_loc":0},"2014-10":{"loc":930,"attributed_loc":0},"2014-11":{"loc":1603,"attributed_loc":0},"2014-12":{"loc":15514,"attributed_loc":0},"2015-01":{"loc":2949,"attributed_loc":0},"2015-02":{"loc":2324,"attributed_loc":0},"2015-03":{"loc":77,"attributed_loc":0},"2015-04":{"loc":3337,"attributed_loc":0},"2015-05":{"loc":7395,"attributed_loc":0},"2015-06":{"loc":3792,"attributed_loc":0},"2015-07":{"loc":7130,"attributed_loc":0},"2015-08":{"loc":11168,"attributed_loc":0},"2015-09":{"loc":34216,"attributed_loc":0},"2015-10":{"loc":11326,"attributed_loc":0},"2015-11":{"loc":17426,"attributed_loc":0},"2015-12":{"loc":6519,"attributed_loc":0},"2016-01":{"loc":6502,"attributed_loc":0},"2016-02":{"loc":6963,"attributed_loc":0},"2016-03":{"loc":6326,"attributed_loc":0},"2016-04":{"loc":8727,"attributed_loc":0},"2016-05":{"loc":98677,"attributed_loc":0},"2016-06":{"loc":5325,"attributed_loc":0},"2016-07":{"loc":2138,"attributed_loc":0},"2016-08":{"loc":8929,"attributed_loc":0},"2016-09":{"loc":1824,"attributed_loc":0},"2016-10":{"loc":1630,"attributed_loc":0},"2016-11":{"loc":5183,"attributed_loc":0},"2016-12":{"loc":3001,"attributed_loc":0},"2017-01":{"loc":5902,"attributed_loc":0},"2017-02":{"loc":6124,"attributed_loc":0},"2017-03":{"loc":8150,"attributed_loc":0},"2017-04":{"loc":4522,"attributed_loc":0},"2017-05":{"loc":1527,"attributed_loc":0},"2017-06":{"loc":4859,"attributed_loc":0},"2017-07":{"loc":1596,"attributed_loc":0},"2017-08":{"loc":7813,"attributed_loc":0},"2017-09":{"loc":2907,"attributed_loc":0},"2017-10":{"loc":11458,"attributed_loc":0},"2017-11":{"loc":720,"attributed_loc":0},"2017-12":{"loc":2649,"attributed_loc":0},"2018-01":{"loc":2129,"attributed_loc":0},"2018-02":{"loc":8686,"attributed_loc":0},"2018-03":{"loc":12945,"attributed_loc":0},"2018-04":{"loc":5146,"attributed_loc":0},"2018-05":{"loc":7369,"attributed_loc":0},"2018-06":{"loc":40451,"attributed_loc":0},"2018-07":{"loc":4092,"attributed_loc":0},"2018-08":{"loc":4492,"attributed_loc":0},"2018-09":{"loc":10986,"attributed_loc":0},"2018-10":{"loc":10460,"attributed_loc":0},"2018-11":{"loc":5849,"attributed_loc":0},"2018-12":{"loc":3764,"attributed_loc":0},"2019-01":{"loc":5887,"attributed_loc":0},"2019-02":{"loc":3944,"attributed_loc":0},"2019-03":{"loc":5049,"attributed_loc":0},"2019-04":{"loc":5040,"attributed_loc":0},"2019-05":{"loc":32424,"attributed_loc":0},"2019-06":{"loc":7725,"attributed_loc":0},"2019-07":{"loc":14328,"attributed_loc":0},"2019-08":{"loc":3352,"attributed_loc":0},"2019-09":{"loc":4391,"attributed_loc":0},"2019-10":{"loc":5744,"attributed_loc":0},"2019-11":{"loc":12638,"attributed_loc":0},"2019-12":{"loc":10376,"attributed_loc":0},"2020-01":{"loc":10208,"attributed_loc":0},"2020-02":{"loc":16364,"attributed_loc":0},"2020-03":{"loc":3712,"attributed_loc":0},"2020-04":{"loc":7200,"attributed_loc":0},"2020-05":{"loc":17349,"attributed_loc":0},"2020-06":{"loc":23246,"attributed_loc":0},"2020-07":{"loc":6675,"attributed_loc":0},"2020-08":{"loc":15787,"attributed_loc":0},"2020-09":{"loc":6289,"attributed_loc":0},"2020-10":{"loc":9183,"attributed_loc":0},"2020-11":{"loc":15872,"attributed_loc":0},"2020-12":{"loc":774,"attributed_loc":0},"2021-01":{"loc":2768,"attributed_loc":0},"2021-02":{"loc":3873,"attributed_loc":0},"2021-03":{"loc":10043,"attributed_loc":0},"2021-04":{"loc":3300,"attributed_loc":0},"2021-05":{"loc":4098,"attributed_loc":0},"2021-06":{"loc":2780,"attributed_loc":0},"2021-07":{"loc":3369,"attributed_loc":0},"2021-08":{"loc":2480,"attributed_loc":0},"2021-09":{"loc":6891,"attributed_loc":0},"2021-10":{"loc":3136,"attributed_loc":0},"2021-11":{"loc":6594,"attributed_loc":0},"2021-12":{"loc":9170,"attributed_loc":0},"2022-01":{"loc":24702,"attributed_loc":0},"2022-02":{"loc":5009,"attributed_loc":0},"2022-03":{"loc":10437,"attributed_loc":0},"2022-04":{"loc":13256,"attributed_loc":0},"2022-05":{"loc":16497,"attributed_loc":0},"2022-06":{"loc":17031,"attributed_loc":0},"2022-07":{"loc":20434,"attributed_loc":0},"2022-08":{"loc":5117,"attributed_loc":0},"2022-09":{"loc":12685,"attributed_loc":0},"2022-10":{"loc":12566,"attributed_loc":0},"2022-11":{"loc":18504,"attributed_loc":0},"2022-12":{"loc":25675,"attributed_loc":0},"2023-01":{"loc":20714,"attributed_loc":0},"2023-02":{"loc":17727,"attributed_loc":0},"2023-03":{"loc":14893,"attributed_loc":0},"2023-04":{"loc":11327,"attributed_loc":0},"2023-05":{"loc":14378,"attributed_loc":0},"2023-06":{"loc":5840,"attributed_loc":0},"2023-07":{"loc":2660,"attributed_loc":0},"2023-08":{"loc":2217,"attributed_loc":0},"2023-09":{"loc":10579,"attributed_loc":0},"2023-10":{"loc":3920,"attributed_loc":0},"2023-11":{"loc":5106,"attributed_loc":0},"2023-12":{"loc":1913,"attributed_loc":0},"2024-01":{"loc":13950,"attributed_loc":0},"2024-02":{"loc":8953,"attributed_loc":0},"2024-03":{"loc":10883,"attributed_loc":0},"2024-04":{"loc":15200,"attributed_loc":0},"2024-05":{"loc":4741,"attributed_loc":0},"2024-06":{"loc":6299,"attributed_loc":0},"2024-07":{"loc":4767,"attributed_loc":0},"2024-08":{"loc":5543,"attributed_loc":0},"2024-09":{"loc":2636,"attributed_loc":0},"2024-10":{"loc":4861,"attributed_loc":0},"2024-11":{"loc":3549,"attributed_loc":0},"2024-12":{"loc":6712,"attributed_loc":0},"2025-01":{"loc":2866,"attributed_loc":0},"2025-02":{"loc":1816,"attributed_loc":0},"2025-03":{"loc":3545,"attributed_loc":0},"2025-04":{"loc":4102,"attributed_loc":0},"2025-05":{"loc":1750,"attributed_loc":0},"2025-06":{"loc":1358,"attributed_loc":0},"2025-07":{"loc":1186,"attributed_loc":0},"2025-08":{"loc":9253,"attributed_loc":0},"2025-09":{"loc":1640,"attributed_loc":0},"2025-10":{"loc":8197,"attributed_loc":5},"2025-11":{"loc":5102,"attributed_loc":0},"2025-12":{"loc":7708,"attributed_loc":1231},"2026-01":{"loc":12418,"attributed_loc":34},"2026-02":{"loc":13665,"attributed_loc":1434},"2026-03":{"loc":54559,"attributed_loc":2262},"2026-04":{"loc":4332,"attributed_loc":128},"2026-05":{"loc":17453,"attributed_loc":2514},"2026-06":{"loc":28425,"attributed_loc":254},"2026-07":{"loc":15788,"attributed_loc":1656},"2026-08":{"loc":27453,"attributed_loc":13680},"2026-09":{"loc":22483,"attributed_loc":13602},"2026-10":{"loc":24647,"attributed_loc":12948},"2026-11":{"loc":17185,"attributed_loc":10096}}},"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":1774959514.0},"findings":[],"evidence":[{"kind":"ai-artifact","description":".github/copilot-instructions.md (github-copilot configuration)","ref":".github/copilot-instructions.md","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/.github/copilot-instructions.md","weight":0.5}],"data":{"artifacts":[{"tool":"github-copilot","path":".github/copilot-instructions.md","added_at":1774959514}],"workflows":[],"tools":["github-copilot"]},"error":null},{"analyzer":"ai-velocity","pillar":"ai_provenance","status":"ok","tool_version":"prov-5","metrics":{"work_units":9981.0,"flagged_units":17.0,"pre_ai_era_bursts":31.0,"pre_ai_era_measured_loc":589839.0,"pre_ai_era_burst_loc":97005.0,"measured_loc":1188257.0,"flagged_loc":48803.0,"flagged_loc_share":0.04107108142430468,"max_loc_per_hour":4194.0,"median_loc_per_hour":49.25,"pr_timed_units":1707.0,"excluded_import_loc":277880.0},"findings":[],"evidence":[{"kind":"velocity-burst","description":"2,097 lines of first-party code in ~0.5h (4,194 lines/hour, 1 commit session)","ref":"a4086c17a6214edfb2449e474f0bd836db95f187","url":"https://github.com/AvaloniaUI/Avalonia/commit/a4086c17a6214edfb2449e474f0bd836db95f187","weight":0.6},{"kind":"velocity-burst","description":"5,579 lines of first-party code in ~4.0h (1,395 lines/hour, 1 commit session)","ref":"8416b4a3a171936db68f38376e66b4a21e8ab29e","url":"https://github.com/AvaloniaUI/Avalonia/commit/8416b4a3a171936db68f38376e66b4a21e8ab29e","weight":0.418425},{"kind":"velocity-burst","description":"4,254 lines of first-party code in ~4.0h (1,064 lines/hour, 1 commit session)","ref":"d7904b34cd7995935b4dce91bc057c5480973031","url":"https://github.com/AvaloniaUI/Avalonia/commit/d7904b34cd7995935b4dce91bc057c5480973031","weight":0.31904999999999994},{"kind":"velocity-burst","description":"3,320 lines of first-party code in ~4.0h (830 lines/hour, 1 commit session)","ref":"64610c264b8bcef8ee6a9a15e1717a3f50f68f17","url":"https://github.com/AvaloniaUI/Avalonia/commit/64610c264b8bcef8ee6a9a15e1717a3f50f68f17","weight":0.24899999999999997},{"kind":"velocity-burst","description":"3,319 lines of first-party code in ~4.1h (811 lines/hour, 8 commit session)","ref":"347a36e40825868e237f1725f5ee5ceb63242e4e","url":"https://github.com/AvaloniaUI/Avalonia/commit/347a36e40825868e237f1725f5ee5ceb63242e4e","weight":0.2434474327628362},{"kind":"velocity-burst","description":"3,207 lines of first-party code in ~4.0h (802 lines/hour, 1 commit session)","ref":"ac00fe2bf4f4cf720c7b10b37f0058ee1cc8eddc","url":"https://github.com/AvaloniaUI/Avalonia/commit/ac00fe2bf4f4cf720c7b10b37f0058ee1cc8eddc","weight":0.240525},{"kind":"velocity-burst","description":"3,030 lines of first-party code in ~4.0h (758 lines/hour, 1 commit session)","ref":"692c0c155dd2f9c8285fb95ede288a18f2ded600","url":"https://github.com/AvaloniaUI/Avalonia/commit/692c0c155dd2f9c8285fb95ede288a18f2ded600","weight":0.22724999999999998},{"kind":"velocity-burst","description":"2,760 lines of first-party code in ~4.0h (690 lines/hour, 1 commit session)","ref":"6a99ca39f905280a93e4470508e99cc530acf9d1","url":"https://github.com/AvaloniaUI/Avalonia/commit/6a99ca39f905280a93e4470508e99cc530acf9d1","weight":0.207},{"kind":"velocity-burst","description":"2,683 lines of first-party code in ~4.0h (671 lines/hour, 1 commit session)","ref":"eaf2ce38a4780123d4d06931068926353f31824b","url":"https://github.com/AvaloniaUI/Avalonia/commit/eaf2ce38a4780123d4d06931068926353f31824b","weight":0.201225},{"kind":"velocity-burst","description":"2,670 lines of first-party code in ~4.0h (668 lines/hour, 1 commit session)","ref":"1101f28dd7a6460764873b6cc2e9ce4da293eb61","url":"https://github.com/AvaloniaUI/Avalonia/commit/1101f28dd7a6460764873b6cc2e9ce4da293eb61","weight":0.20024999999999998},{"kind":"velocity-burst","description":"2,633 lines of first-party code in ~4.1h (649 lines/hour, 7 commit session)","ref":"d12ee97e78f9ec1f1a15d0d61906d70317d62f94","url":"https://github.com/AvaloniaUI/Avalonia/commit/d12ee97e78f9ec1f1a15d0d61906d70317d62f94","weight":0.1945832763103873},{"kind":"velocity-burst","description":"2,417 lines of first-party code in ~4.0h (604 lines/hour, 1 commit session)","ref":"77e32f4bbeb80c0db97419aa848f63e053d5e588","url":"https://github.com/AvaloniaUI/Avalonia/commit/77e32f4bbeb80c0db97419aa848f63e053d5e588","weight":0.181275},{"kind":"velocity-burst","description":"2,398 lines of first-party code in ~4.0h (600 lines/hour, 1 commit session)","ref":"89482b0181a2feb7ba9748140e74391625682807","url":"https://github.com/AvaloniaUI/Avalonia/commit/89482b0181a2feb7ba9748140e74391625682807","weight":0.17985},{"kind":"velocity-burst","description":"2,308 lines of first-party code in ~4.0h (577 lines/hour, 1 commit session)","ref":"2f3c5ef98fefb19a81f59870cc1fbc7645477469","url":"https://github.com/AvaloniaUI/Avalonia/commit/2f3c5ef98fefb19a81f59870cc1fbc7645477469","weight":0.17309999999999998},{"kind":"velocity-burst","description":"2,062 lines of first-party code in ~4.0h (516 lines/hour, 1 commit session)","ref":"9250d9340723554b5a05726f2dffc003c26888f3","url":"https://github.com/AvaloniaUI/Avalonia/commit/9250d9340723554b5a05726f2dffc003c26888f3","weight":0.15464999999999998}],"data":{"flagged_loc_by_commit":{"ec74057151e8f405bbc8a324325a9f957e84bf7b":2058,"692c0c155dd2f9c8285fb95ede288a18f2ded600":3030,"1101f28dd7a6460764873b6cc2e9ce4da293eb61":2670,"8416b4a3a171936db68f38376e66b4a21e8ab29e":5579,"eaf2ce38a4780123d4d06931068926353f31824b":2683,"6a99ca39f905280a93e4470508e99cc530acf9d1":2760,"64610c264b8bcef8ee6a9a15e1717a3f50f68f17":3320,"89482b0181a2feb7ba9748140e74391625682807":2398,"0289a515b38984601d36186a260c44edf5acd8be":843,"e717cce7e822f25cc4290150597410489fcbdc26":517,"3dac39618223e8eef086cc204d4ef3366e7241af":111,"06e141bf81dce8ebb180dac37b73db2436056b10":87,"eacd6796498b05c1dd74347668539d332cb6d843":263,"3ddd068687e3d56efb79dd12eb819c4668b8ccae":406,"eb403ea15ed6389113119cdbba1142b5341d58c4":455,"347a36e40825868e237f1725f5ee5ceb63242e4e":637,"a4086c17a6214edfb2449e474f0bd836db95f187":2097,"77e32f4bbeb80c0db97419aa848f63e053d5e588":2417,"9250d9340723554b5a05726f2dffc003c26888f3":2062,"e1e6789f7824c6a21f4d8c7288cf2cffe672ee00":151,"bf9b356a29655e74b3a8fd7ade8a094f34952054":32,"653abb3b3187e2b6f8753ad3b97616d590aa483f":181,"2e9d392ef91ca27bd94567dd30926a7ec9ce3321":59,"0f3409064864cffc65996d2ac8a29ce4a4d225f5":388,"fb63032d40bea28ef5703a05814c230d6025a093":1820,"d12ee97e78f9ec1f1a15d0d61906d70317d62f94":2,"d7904b34cd7995935b4dce91bc057c5480973031":4254,"ac00fe2bf4f4cf720c7b10b37f0058ee1cc8eddc":3207,"2f3c5ef98fefb19a81f59870cc1fbc7645477469":2308,"3687cb9eccae330a241ebd0c126acd4b18ff3529":2008},"excluded_import_commits":["12cefeb74a965174708284481008e0edc25070dd","145411020b868f63bf4f2acd77d71011c7d67dec","1f404646fa48fe526feba9a80aaa821668a2106d","2a44d8b56463c71e4a1757d43e8fa9b8e762ab98","39f57c38d4983fc9ece217cf861422bf6a3f57bd","3a1a69b1458fe276b03aafc3600889a958dac1ed","3b1eb338e61c6ef8223a9f0d123d390289fa6e49","491ac53e79d5d3867464121ada90fb47bf50defd","5be41985c32c1270b41aa531e8b2a96ddf6792cb","71785b73d8f08be870cfe59b3e96e75f7511d5f7","7bc087c658d5a2d36eda31ee52417398abe2da29","8e68bd532fbbf5b09380cfedb94b339a4bbbd762","af0f61a02b117ace0979a8b287a5aa6b117d86e5","b094699f760b1f760174d841fd3a5fddfb7e663d","b815a22d5a9e2a9d2f0b9b083f05709573edc618","bfadaac5d9ede8526c20da87d93a1ca37a2f9eb3","c4fccd5dd7b606a4b5ae1bf35a3bb70027794320","cd2b7530f5e3e0cea2c45c39bdc9a433149c2200","d714f37fce8b01b38f2ad61fc2bd2d7fb981b88a","de93e8e969f5008f593cd0738bb99e8d46e4b0a1","e8424283febb15d0a72269bdfa065b83d27fef0e","ece1b3e334c4c77acb1092e64604e4d285a7ce8a"]},"error":null},{"analyzer":"ai-release-velocity","pillar":"ai_provenance","status":"ok","tool_version":"prov-5","metrics":{"releases":32.0,"flagged_releases":0.0,"max_loc_per_day":900.3},"findings":[],"evidence":[],"data":{"releases":[{"from":"0.0.1-alpha","to":"0.1.0-alpha2","loc":21723,"days":24.13,"loc_per_day":900.3,"flagged":false},{"from":"0.1.0-alpha2","to":"0.4.0","loc":80579,"days":319.66,"loc_per_day":252.1,"flagged":false},{"from":"0.4.0","to":"0.5.0","loc":27812,"days":280.02,"loc_per_day":99.3,"flagged":false},{"from":"0.5.0","to":"nuget-release-0.5.1","loc":190,"days":18.28,"loc_per_day":10.4,"flagged":false},{"from":"nuget-release-0.5.1","to":"nuget-release-0.6.0","loc":50498,"days":262.58,"loc_per_day":192.3,"flagged":false},{"from":"nuget-release-0.6.0","to":"nuget-release-0.6.1","loc":45,"days":0.54,"loc_per_day":83.0,"flagged":false},{"from":"nuget-release-0.6.1","to":"0.7.0","loc":63203,"days":253.81,"loc_per_day":249.0,"flagged":false},{"from":"0.7.0","to":"0.8.0","loc":29918,"days":155.05,"loc_per_day":193.0,"flagged":false},{"from":"0.8.0","to":"0.8.1","loc":271,"days":94.18,"loc_per_day":2.9,"flagged":false},{"from":"0.8.1","to":"0.8.2","loc":0,"days":33.64,"loc_per_day":0.0,"flagged":false},{"from":"0.8.2","to":"0.1.1","loc":1290,"days":449.82,"loc_per_day":2.9,"flagged":false},{"from":"0.1.1","to":"0.1.2","loc":78,"days":0.11,"loc_per_day":681.3,"flagged":false},{"from":"0.1.2","to":"0.1.3","loc":6,"days":0.04,"loc_per_day":144.0,"flagged":false},{"from":"0.1.3","to":"0.1.4","loc":3,"days":0.04,"loc_per_day":72.0,"flagged":false},{"from":"0.1.4","to":"0.1.9","loc":519,"days":98.48,"loc_per_day":5.3,"flagged":false},{"from":"0.1.9","to":"0.1.10","loc":0,"days":0.04,"loc_per_day":0.0,"flagged":false},{"from":"0.1.10","to":"0.2.0-preview","loc":87,"days":1.49,"loc_per_day":58.4,"flagged":false},{"from":"0.2.0-preview","to":"0.2.1-preview","loc":363,"days":0.43,"loc_per_day":846.1,"flagged":false},{"from":"0.2.1-preview","to":"0.3.1-preview","loc":268,"days":2.52,"loc_per_day":106.3,"flagged":false},{"from":"0.3.1-preview","to":"0.4.1","loc":197,"days":0.99,"loc_per_day":199.0,"flagged":false},{"from":"0.4.1","to":"0.5.1","loc":95,"days":9.1,"loc_per_day":10.4,"flagged":false},{"from":"0.5.1","to":"1.0.1","loc":70,"days":6.42,"loc_per_day":10.9,"flagged":false},{"from":"1.0.1","to":"1.0.4","loc":3,"days":0.59,"loc_per_day":5.1,"flagged":false},{"from":"1.0.4","to":"1.1.1","loc":0,"days":0.04,"loc_per_day":0.0,"flagged":false},{"from":"1.1.1","to":"1.1.2","loc":0,"days":6.94,"loc_per_day":0.0,"flagged":false},{"from":"1.1.2","to":"1.2.1","loc":8,"days":53.51,"loc_per_day":0.1,"flagged":false},{"from":"1.2.1","to":"1.3.1","loc":2,"days":80.75,"loc_per_day":0.0,"flagged":false},{"from":"1.3.1","to":"1.3.4","loc":0,"days":21.93,"loc_per_day":0.0,"flagged":false},{"from":"1.3.4","to":"1.4.1","loc":1381,"days":450.02,"loc_per_day":3.1,"flagged":false},{"from":"1.4.1","to":"1.4.2","loc":43,"days":2.08,"loc_per_day":20.6,"flagged":false},{"from":"1.4.2","to":"1.5.1","loc":38,"days":28.19,"loc_per_day":1.3,"flagged":false},{"from":"1.5.1","to":"1.6.1","loc":43,"days":76.08,"loc_per_day":0.6,"flagged":false}]},"error":null},{"analyzer":"ai-stylometry","pillar":"ai_provenance","status":"ok","tool_version":null,"metrics":{"lines_scanned":481642.0,"index":0.056,"count:narrated_steps":23.0,"per_kloc:narrated_steps":0.048,"files:narrated_steps":9.0,"count:placeholder":0.0,"per_kloc:placeholder":0.0,"files:placeholder":0.0,"count:emoji_in_code":8.0,"per_kloc:emoji_in_code":0.017,"files:emoji_in_code":3.0,"count:assistant_voice":0.0,"per_kloc:assistant_voice":0.0,"files:assistant_voice":0.0},"findings":[],"evidence":[{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Then, as we transition from yellow and green, green is now completely present, red is becoming decreasingly present, ","ref":"src/Avalonia.Base/Media/HsvColor.cs:561","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Base/Media/HsvColor.cs#L561","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Finally, the not-present color must be equal to the minimum value, since it is the one least participating in the ove","ref":"src/Avalonia.Base/Media/HsvColor.cs:571","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Base/Media/HsvColor.cs#L571","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // First, consume as many Prepend scalars as we can (rule GB9b).","ref":"src/Avalonia.Base/Media/TextFormatting/Unicode/GraphemeEnumerator.cs:57","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Base/Media/TextFormatting/Unicode/GraphemeEnumerator.cs#L57","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Next, make sure we're not about to violate control character restrictions.","ref":"src/Avalonia.Base/Media/TextFormatting/Unicode/GraphemeEnumerator.cs:72","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Base/Media/TextFormatting/Unicode/GraphemeEnumerator.cs#L72","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // First, drain any Extend scalars that might exist","ref":"src/Avalonia.Base/Media/TextFormatting/Unicode/GraphemeEnumerator.cs:203","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Base/Media/TextFormatting/Unicode/GraphemeEnumerator.cs#L203","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Step 1: Append this to the end of the \"sequential\" linked list.","ref":"src/Avalonia.Base/Threading/DispatcherPriorityQueue.cs:54","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Base/Threading/DispatcherPriorityQueue.cs#L54","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Step 2: Append the item into the priority chain.","ref":"src/Avalonia.Base/Threading/DispatcherPriorityQueue.cs:57","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Base/Threading/DispatcherPriorityQueue.cs#L57","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Step 1: Remove the item from its priority chain.","ref":"src/Avalonia.Base/Threading/DispatcherPriorityQueue.cs:108","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Base/Threading/DispatcherPriorityQueue.cs#L108","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":1.0,"secrets_low_confidence":3.0},"findings":[{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree (test/docs/example file)","path":"samples/ControlCatalog/Pages/ThemePage.axaml","line":73,"fingerprint":"samples/ControlCatalog/Pages/ThemePage.axaml:generic-api-key:73"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree","path":"src/Avalonia.X11/X11KeyTransform.cs","line":199,"fingerprint":"src/Avalonia.X11/X11KeyTransform.cs:generic-api-key:199"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in history (commit 5df3a46645); removed from the current tree but still retrievable","path":"src/Headless/Avalonia.Headless.Vnc/HeadlessVncFramebufferSource.cs","line":103,"fingerprint":"5df3a4664501e35d81462de2d48f4837a4d4c104:src/Headless/Avalonia.Headless.Vnc/HeadlessVncFramebufferSource.cs:generic-api-key:103"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in history (commit 57750c8cfe); removed from the current tree but still retrievable","path":"build.cake","line":811,"fingerprint":"57750c8cfe726587cc04b4225e074885f8b8accb:build.cake:generic-api-key:811"}],"evidence":[],"data":{},"error":null},{"analyzer":"sec-sast","pillar":"security","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":2.0,"findings_high":0.0,"findings_medium":2.0,"findings_low":0.0,"weighted_findings":0.85,"scanned_lines":481563.0,"parse_errors":26.0},"findings":[{"rule_id":"opengrep/javascript.browser.security.wildcard-postmessage-configuration","severity":"medium","message":"The target origin of the window.postMessage() API is set to \"*\". This could allow for information disclosure due to the possibility of any origin allowed to receive the message. [confidence medium]","path":"src/Avalonia.DesignerSupport/Remote/HtmlTransport/webapp/src/FramePresenter.tsx","line":93,"fingerprint":"javascript.browser.security.wildcard-postmessage-configuration:src/Avalonia.DesignerSupport/Remote/HtmlTransport/webapp/src/FramePresenter.tsx:93"},{"rule_id":"opengrep/csharp.lang.security.memory.memory-marshal-create-span","severity":"medium","message":"MemoryMarshal.CreateSpan and MemoryMarshal.CreateReadOnlySpan should be used with caution, as the length argument is not checked. [confidence low]","path":"src/Windows/Avalonia.Win32.Automation/Marshalling/SafeArrayRef.cs","line":70,"fingerprint":"csharp.lang.security.memory.memory-marshal-create-span:src/Windows/Avalonia.Win32.Automation/Marshalling/SafeArrayRef.cs:70"}],"evidence":[],"data":{"rulesets":["csharp","typescript","javascript","c","bash"]},"error":null},{"analyzer":"sec-deps","pillar":"security","status":"ok","tool_version":"osv-scanner version: 2.7.1","metrics":{"vulnerable_packages":12.0,"vulnerabilities":28.0,"vulns_critical":1.0,"vulns_high":17.0,"vulns_medium":9.0,"vulns_low":1.0,"vulns_unknown":0.0,"penalty":83.0},"findings":[{"rule_id":"osv/GHSA-w7jw-789q-3m8p","severity":"critical","message":"shell-quote@1.7.3 (npm) is affected by GHSA-w7jw-789q-3m8p","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"shell-quote@1.7.3 (npm):GHSA-w7jw-789q-3m8p"},{"rule_id":"osv/GHSA-3jxr-9vmj-r5cp","severity":"high","message":"brace-expansion@1.1.11 (npm) is affected by GHSA-3jxr-9vmj-r5cp","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"brace-expansion@1.1.11 (npm):GHSA-3jxr-9vmj-r5cp"},{"rule_id":"osv/GHSA-6j4f-fj2g-mc7p","severity":"high","message":"brace-expansion@1.1.11 (npm) is affected by GHSA-6j4f-fj2g-mc7p","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"brace-expansion@1.1.11 (npm):GHSA-6j4f-fj2g-mc7p"},{"rule_id":"osv/GHSA-mh99-v99m-4gvg","severity":"high","message":"brace-expansion@1.1.11 (npm) is affected by GHSA-mh99-v99m-4gvg","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"brace-expansion@1.1.11 (npm):GHSA-mh99-v99m-4gvg"},{"rule_id":"osv/GHSA-qhr7-859c-m2p7","severity":"high","message":"brace-expansion@1.1.11 (npm) is affected by GHSA-qhr7-859c-m2p7","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"brace-expansion@1.1.11 (npm):GHSA-qhr7-859c-m2p7"},{"rule_id":"osv/GHSA-rgw5-rvv9-x895","severity":"high","message":"brace-expansion@1.1.11 (npm) is affected by GHSA-rgw5-rvv9-x895","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"brace-expansion@1.1.11 (npm):GHSA-rgw5-rvv9-x895"},{"rule_id":"osv/GHSA-3xgq-45jj-v275","severity":"high","message":"cross-spawn@6.0.5 (npm) is affected by GHSA-3xgq-45jj-v275","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"cross-spawn@6.0.5 (npm):GHSA-3xgq-45jj-v275"},{"rule_id":"osv/GHSA-3xgq-45jj-v275","severity":"high","message":"cross-spawn@7.0.3 (npm) is affected by GHSA-3xgq-45jj-v275","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"cross-spawn@7.0.3 (npm):GHSA-3xgq-45jj-v275"},{"rule_id":"osv/GHSA-25h7-pfq9-p65f","severity":"high","message":"flatted@3.2.7 (npm) is affected by GHSA-25h7-pfq9-p65f","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"flatted@3.2.7 (npm):GHSA-25h7-pfq9-p65f"},{"rule_id":"osv/GHSA-rf6f-7fwh-wjgh","severity":"high","message":"flatted@3.2.7 (npm) is affected by GHSA-rf6f-7fwh-wjgh","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"flatted@3.2.7 (npm):GHSA-rf6f-7fwh-wjgh"},{"rule_id":"osv/GHSA-2883-xcg3-v3hh","severity":"high","message":"js-yaml@4.1.0 (npm) is affected by GHSA-2883-xcg3-v3hh","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"js-yaml@4.1.0 (npm):GHSA-2883-xcg3-v3hh"},{"rule_id":"osv/GHSA-52cp-r559-cp3m","severity":"high","message":"js-yaml@4.1.0 (npm) is affected by GHSA-52cp-r559-cp3m","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"js-yaml@4.1.0 (npm):GHSA-52cp-r559-cp3m"},{"rule_id":"osv/GHSA-5p4m-2wfm-xmqj","severity":"high","message":"js-yaml@4.1.0 (npm) is affected by GHSA-5p4m-2wfm-xmqj","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"js-yaml@4.1.0 (npm):GHSA-5p4m-2wfm-xmqj"},{"rule_id":"osv/GHSA-23c5-xmqv-rm74","severity":"high","message":"minimatch@3.1.2 (npm) is affected by GHSA-23c5-xmqv-rm74","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"minimatch@3.1.2 (npm):GHSA-23c5-xmqv-rm74"},{"rule_id":"osv/GHSA-3ppc-4f35-3m26","severity":"high","message":"minimatch@3.1.2 (npm) is affected by GHSA-3ppc-4f35-3m26","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"minimatch@3.1.2 (npm):GHSA-3ppc-4f35-3m26"},{"rule_id":"osv/GHSA-7r86-cg39-jmmj","severity":"high","message":"minimatch@3.1.2 (npm) is affected by GHSA-7r86-cg39-jmmj","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"minimatch@3.1.2 (npm):GHSA-7r86-cg39-jmmj"},{"rule_id":"osv/GHSA-c2c7-rcm5-vvqj","severity":"high","message":"picomatch@2.3.1 (npm) is affected by GHSA-c2c7-rcm5-vvqj","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"picomatch@2.3.1 (npm):GHSA-c2c7-rcm5-vvqj"},{"rule_id":"osv/GHSA-395f-4hp3-45gv","severity":"high","message":"shell-quote@1.7.3 (npm) is affected by GHSA-395f-4hp3-45gv","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"shell-quote@1.7.3 (npm):GHSA-395f-4hp3-45gv"},{"rule_id":"osv/GHSA-67mh-4wv8-2f99","severity":"medium","message":"esbuild@0.14.54 (npm) is affected by GHSA-67mh-4wv8-2f99","path":"src/Avalonia.DesignerSupport/Remote/HtmlTransport/webapp/bun.lock","line":null,"fingerprint":"esbuild@0.14.54 (npm):GHSA-67mh-4wv8-2f99"},{"rule_id":"osv/GHSA-2g4f-4pwh-qvx6","severity":"medium","message":"ajv@6.12.6 (npm) is affected by GHSA-2g4f-4pwh-qvx6","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"ajv@6.12.6 (npm):GHSA-2g4f-4pwh-qvx6"},{"rule_id":"osv/GHSA-f886-m6hf-6m8v","severity":"medium","message":"brace-expansion@1.1.11 (npm) is affected by GHSA-f886-m6hf-6m8v","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"brace-expansion@1.1.11 (npm):GHSA-f886-m6hf-6m8v"},{"rule_id":"osv/GHSA-q2hr-2g5m-vwhr","severity":"medium","message":"brace-expansion@1.1.11 (npm) is affected by GHSA-q2hr-2g5m-vwhr","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"brace-expansion@1.1.11 (npm):GHSA-q2hr-2g5m-vwhr"},{"rule_id":"osv/GHSA-67mh-4wv8-2f99","severity":"medium","message":"esbuild@0.15.9 (npm) is affected by GHSA-67mh-4wv8-2f99","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"esbuild@0.15.9 (npm):GHSA-67mh-4wv8-2f99"},{"rule_id":"osv/GHSA-h67p-54hq-rp68","severity":"medium","message":"js-yaml@4.1.0 (npm) is affected by GHSA-h67p-54hq-rp68","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"js-yaml@4.1.0 (npm):GHSA-h67p-54hq-rp68"},{"rule_id":"osv/GHSA-mh29-5h37-fv8m","severity":"medium","message":"js-yaml@4.1.0 (npm) is affected by GHSA-mh29-5h37-fv8m","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"js-yaml@4.1.0 (npm):GHSA-mh29-5h37-fv8m"},{"rule_id":"osv/GHSA-952p-6rrq-rcjv","severity":"medium","message":"micromatch@4.0.5 (npm) is affected by GHSA-952p-6rrq-rcjv","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"micromatch@4.0.5 (npm):GHSA-952p-6rrq-rcjv"},{"rule_id":"osv/GHSA-3v7f-55p6-f55p","severity":"medium","message":"picomatch@2.3.1 (npm) is affected by GHSA-3v7f-55p6-f55p","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"picomatch@2.3.1 (npm):GHSA-3v7f-55p6-f55p"},{"rule_id":"osv/GHSA-v6h2-p8h4-qcjw","severity":"low","message":"brace-expansion@1.1.11 (npm) is affected by GHSA-v6h2-p8h4-qcjw","path":"src/Browser/Avalonia.Browser/webapp/bun.lock","line":null,"fingerprint":"brace-expansion@1.1.11 (npm):GHSA-v6h2-p8h4-qcjw"}],"evidence":[],"data":{"ecosystems":["npm"]},"error":null},{"analyzer":"sec-actions","pillar":"security","status":"ok","tool_version":"zizmor 1.32.0","metrics":{"workflows":7.0,"findings":55.0,"findings_high":42.0,"findings_medium":4.0,"findings_low":9.0,"penalty":494.0},"findings":[{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/actions/publish-nuget/action.yml","line":26,"fingerprint":"unpinned-uses:.github/actions/publish-nuget/action.yml:26"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/actions/publish-nuget/action.yml","line":32,"fingerprint":"unpinned-uses:.github/actions/publish-nuget/action.yml:32"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/actions/publish-nuget/action.yml","line":40,"fingerprint":"unpinned-uses:.github/actions/publish-nuget/action.yml:40"},{"rule_id":"zizmor/dangerous-triggers","severity":"high","message":"use of fundamentally insecure workflow trigger [confidence medium]","path":".github/workflows/CLA.yml","line":5,"fingerprint":"dangerous-triggers:.github/workflows/CLA.yml:5"},{"rule_id":"zizmor/dangerous-triggers","severity":"high","message":"use of fundamentally insecure workflow trigger [confidence medium]","path":".github/workflows/CLA.yml","line":3,"fingerprint":"dangerous-triggers:.github/workflows/CLA.yml:3"},{"rule_id":"zizmor/dangerous-triggers","severity":"high","message":"use of fundamentally insecure workflow trigger [confidence medium]","path":".github/workflows/api-diff.yml","line":4,"fingerprint":"dangerous-triggers:.github/workflows/api-diff.yml:4"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/api-diff.yml","line":28,"fingerprint":"unpinned-uses:.github/workflows/api-diff.yml:28"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/api-diff.yml","line":42,"fingerprint":"unpinned-uses:.github/workflows/api-diff.yml:42"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/api-diff.yml","line":54,"fingerprint":"unpinned-uses:.github/workflows/api-diff.yml:54"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/api-diff.yml","line":70,"fingerprint":"unpinned-uses:.github/workflows/api-diff.yml:70"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/api-diff.yml","line":76,"fingerprint":"unpinned-uses:.github/workflows/api-diff.yml:76"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/api-diff.yml","line":85,"fingerprint":"unpinned-uses:.github/workflows/api-diff.yml:85"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/api-diff.yml","line":155,"fingerprint":"unpinned-uses:.github/workflows/api-diff.yml:155"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/api-diff.yml","line":167,"fingerprint":"unpinned-uses:.github/workflows/api-diff.yml:167"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":37,"fingerprint":"unpinned-uses:.github/workflows/build.yml:37"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":43,"fingerprint":"unpinned-uses:.github/workflows/build.yml:43"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":37,"fingerprint":"unpinned-uses:.github/workflows/build.yml:37"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":43,"fingerprint":"unpinned-uses:.github/workflows/build.yml:43"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":78,"fingerprint":"unpinned-uses:.github/workflows/build.yml:78"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":84,"fingerprint":"unpinned-uses:.github/workflows/build.yml:84"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":90,"fingerprint":"unpinned-uses:.github/workflows/build.yml:90"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":37,"fingerprint":"unpinned-uses:.github/workflows/build.yml:37"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":43,"fingerprint":"unpinned-uses:.github/workflows/build.yml:43"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":115,"fingerprint":"unpinned-uses:.github/workflows/build.yml:115"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":121,"fingerprint":"unpinned-uses:.github/workflows/build.yml:121"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":164,"fingerprint":"unpinned-uses:.github/workflows/build.yml:164"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/build.yml","line":164,"fingerprint":"unpinned-uses:.github/workflows/build.yml:164"},{"rule_id":"zizmor/dangerous-triggers","severity":"high","message":"use of fundamentally insecure workflow trigger [confidence medium]","path":".github/workflows/publish-nuget-pr.yml","line":12,"fingerprint":"dangerous-triggers:.github/workflows/publish-nuget-pr.yml:12"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/publish-nuget-pr.yml","line":41,"fingerprint":"unpinned-uses:.github/workflows/publish-nuget-pr.yml:41"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/publish-nuget-pr.yml","line":68,"fingerprint":"unpinned-uses:.github/workflows/publish-nuget-pr.yml:68"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/publish-nuget-pr.yml","line":93,"fingerprint":"unpinned-uses:.github/workflows/publish-nuget-pr.yml:93"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/submit-dependency-graph.yml","line":34,"fingerprint":"unpinned-uses:.github/workflows/submit-dependency-graph.yml:34"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/submit-dependency-graph.yml","line":39,"fingerprint":"unpinned-uses:.github/workflows/submit-dependency-graph.yml:39"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/submit-dependency-graph.yml","line":53,"fingerprint":"unpinned-uses:.github/workflows/submit-dependency-graph.yml:53"},{"rule_id":"zizmor/dangerous-triggers","severity":"high","message":"use of fundamentally insecure workflow trigger [confidence medium]","path":".github/workflows/update-api.yml","line":4,"fingerprint":"dangerous-triggers:.github/workflows/update-api.yml:4"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/update-api.yml","line":28,"fingerprint":"unpinned-uses:.github/workflows/update-api.yml:28"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/update-api.yml","line":42,"fingerprint":"unpinned-uses:.github/workflows/update-api.yml:42"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/update-api.yml","line":54,"fingerprint":"unpinned-uses:.github/workflows/update-api.yml:54"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/update-api.yml","line":72,"fingerprint":"unpinned-uses:.github/workflows/update-api.yml:72"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/update-api.yml","line":79,"fingerprint":"unpinned-uses:.github/workflows/update-api.yml:79"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/update-api.yml","line":100,"fingerprint":"unpinned-uses:.github/workflows/update-api.yml:100"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/update-api.yml","line":112,"fingerprint":"unpinned-uses:.github/workflows/update-api.yml:112"},{"rule_id":"zizmor/dependabot-cooldown","severity":"medium","message":"insufficient cooldown in Dependabot updates [confidence high]","path":".github/dependabot.yml","line":3,"fingerprint":"dependabot-cooldown:.github/dependabot.yml:3"},{"rule_id":"zizmor/excessive-permissions","severity":"medium","message":"overly broad permissions [confidence medium]","path":".github/workflows/CLA.yml","line":9,"fingerprint":"excessive-permissions:.github/workflows/CLA.yml:9"},{"rule_id":"zizmor/artipacked","severity":"medium","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/api-diff.yml","line":69,"fingerprint":"artipacked:.github/workflows/api-diff.yml:69"},{"rule_id":"zizmor/artipacked","severity":"medium","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/update-api.yml","line":71,"fingerprint":"artipacked:.github/workflows/update-api.yml:71"},{"rule_id":"zizmor/self-repository","severity":"low","message":"use GitHub's dedicated self-repository syntax [confidence high]","path":".github/workflows/CLA.yml","line":20,"fingerprint":"self-repository:.github/workflows/CLA.yml:20"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/build.yml","line":35,"fingerprint":"artipacked:.github/workflows/build.yml:35"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/build.yml","line":64,"fingerprint":"artipacked:.github/workflows/build.yml:64"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/build.yml","line":101,"fingerprint":"artipacked:.github/workflows/build.yml:101"},{"rule_id":"zizmor/self-repository","severity":"low","message":"use GitHub's dedicated self-repository syntax [confidence high]","path":".github/workflows/build.yml","line":170,"fingerprint":"self-repository:.github/workflows/build.yml:170"},{"rule_id":"zizmor/self-repository","severity":"low","message":"use GitHub's dedicated self-repository syntax [confidence high]","path":".github/workflows/build.yml","line":190,"fingerprint":"self-repository:.github/workflows/build.yml:190"},{"rule_id":"zizmor/self-repository","severity":"low","message":"use GitHub's dedicated self-repository syntax [confidence high]","path":".github/workflows/publish-nuget-pr.yml","line":77,"fingerprint":"self-repository:.github/workflows/publish-nuget-pr.yml:77"},{"rule_id":"zizmor/artipacked","severity":"low","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/submit-dependency-graph.yml","line":33,"fingerprint":"artipacked:.github/workflows/submit-dependency-graph.yml:33"},{"rule_id":"zizmor/template-injection","severity":"info","message":"code injection via template expansion [confidence low]","path":".github/workflows/update-api.yml","line":95,"fingerprint":"template-injection:.github/workflows/update-api.yml:95"}],"evidence":[],"data":{},"error":null},{"analyzer":"sec-posture","pillar":"security","status":"ok","tool_version":null,"metrics":{"check:security_policy":1.0,"check:dependency_updates":1.0,"check:signed_commits":1.0,"check:lockfiles":1.0,"signed_commit_share":1.0,"unpinned_manifests":0.0},"findings":[],"evidence":[{"kind":"posture","description":"Security policy: SECURITY.md","ref":"SECURITY.md","url":null,"weight":0.0},{"kind":"posture","description":"Dependency updates: .github/dependabot.yml","ref":".github/dependabot.yml","url":null,"weight":0.0}],"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":21295.0,"function_nloc":240063.0,"mean_ccn":2.84,"p90_ccn":6.0,"complex_functions":349.0,"long_functions":125.0,"many_param_functions":99.0,"risky_nloc_share":0.1525},"findings":[],"evidence":[{"kind":"complex-function","description":"WindowImpl::AppWndProc in src/Windows/Avalonia.Win32/WindowImpl.AppWndProc.cs: complexity 197, 806 lines","ref":"src/Windows/Avalonia.Win32/WindowImpl.AppWndProc.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Windows/Avalonia.Win32/WindowImpl.AppWndProc.cs#L27","weight":1.0},{"kind":"complex-function","description":"XamlCompilerTaskExecutor::CompileCore in src/Avalonia.Build.Tasks/XamlCompilerTaskExecutor.cs: complexity 99, 498 lines","ref":"src/Avalonia.Build.Tasks/XamlCompilerTaskExecutor.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Build.Tasks/XamlCompilerTaskExecutor.cs#L105","weight":1.0},{"kind":"complex-function","description":"ExpressionVariant::GetProperty in src/Avalonia.Base/Rendering/Composition/Expressions/ExpressionVariant.cs: complexity 83, 192 lines","ref":"src/Avalonia.Base/Rendering/Composition/Expressions/ExpressionVariant.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Base/Rendering/Composition/Expressions/ExpressionVariant.cs#L53","weight":1.0},{"kind":"complex-function","description":"BidiAlgorithm::ProcessIsolatedRunSequence in src/Avalonia.Base/Media/TextFormatting/Unicode/BiDiAlgorithm.cs: complexity 78, 302 lines","ref":"src/Avalonia.Base/Media/TextFormatting/Unicode/BiDiAlgorithm.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Base/Media/TextFormatting/Unicode/BiDiAlgorithm.cs#L856","weight":1.0},{"kind":"complex-function","description":"XamlIlBindingPathHelper::TransformBindingPath in src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/XamlIlBindingPathHelper.cs: complexity 77, 313 lines","ref":"src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/XamlIlBindingPathHelper.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/XamlIlBindingPathHelper.cs#L141","weight":1.0},{"kind":"complex-function","description":"X11Window::OnEvent in src/Avalonia.X11/X11Window.cs: complexity 67, 180 lines","ref":"src/Avalonia.X11/X11Window.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.X11/X11Window.cs#L595","weight":1.0},{"kind":"complex-function","description":"AvaloniaXamlIlLanguageParseIntrinsics::TryConvert in src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/AvaloniaXamlIlLanguageParseIntrinsics.cs: complexity 65, 361 lines","ref":"src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/AvaloniaXamlIlLanguageParseIntrinsics.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/AvaloniaXamlIlLanguageParseIntrinsics.cs#L19","weight":1.0},{"kind":"complex-function","description":"TextBox::OnKeyDown in src/Avalonia.Controls/TextBox.cs: complexity 64, 307 lines","ref":"src/Avalonia.Controls/TextBox.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Controls/TextBox.cs#L1408","weight":1.0},{"kind":"complex-function","description":"Grid::SetFinalSizeMaxDiscrepancy in src/Avalonia.Controls/Grid.cs: complexity 63, 292 lines","ref":"src/Avalonia.Controls/Grid.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Controls/Grid.cs#L1799","weight":1.0},{"kind":"complex-function","description":"TextPathSegmentEllipsis::Collapse in src/Avalonia.Base/Media/TextPathSegmentEllipsis.cs: complexity 61, 288 lines","ref":"src/Avalonia.Base/Media/TextPathSegmentEllipsis.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/src/Avalonia.Base/Media/TextPathSegmentEllipsis.cs#L46","weight":1.0}],"data":{},"error":null},{"analyzer":"qual-duplication","pillar":"quality","status":"ok","tool_version":"repotrust-dup-w6","metrics":{"compared_lines":299647.0,"duplicated_lines":17374.0,"duplicated_share":0.058,"files":3545.0},"findings":[],"evidence":[{"kind":"duplicate-code","description":"6+ duplicated lines: samples/AppWithoutLifetime/Program.cs:23 and samples/IntegrationTestApp/Program.cs:30","ref":"samples/AppWithoutLifetime/Program.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/samples/AppWithoutLifetime/Program.cs#L23","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: samples/AppWithoutLifetime/Program.cs:25 and samples/SafeAreaDemo.Desktop/Program.cs:17","ref":"samples/AppWithoutLifetime/Program.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/samples/AppWithoutLifetime/Program.cs#L25","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: samples/BindingDemo/App.xaml.cs:7 and samples/RenderDemo/App.xaml.cs:7","ref":"samples/BindingDemo/App.xaml.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/samples/BindingDemo/App.xaml.cs#L7","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: samples/ControlCatalog.Desktop/NativeControls/Win/WinApi.cs:49 and samples/IntegrationTestApp/Embedding/WinApi.cs:86","ref":"samples/ControlCatalog.Desktop/NativeControls/Win/WinApi.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/samples/ControlCatalog.Desktop/NativeControls/Win/WinApi.cs#L49","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: samples/ControlCatalog.iOS/Main.cs:5 and samples/SafeAreaDemo.iOS/Main.cs:5","ref":"samples/ControlCatalog.iOS/Main.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/samples/ControlCatalog.iOS/Main.cs#L5","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: samples/ControlCatalog/Controls/CodeBlock.cs:290 and samples/ControlCatalog/Controls/CodeBlock.cs:391","ref":"samples/ControlCatalog/Controls/CodeBlock.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/samples/ControlCatalog/Controls/CodeBlock.cs#L290","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: samples/ControlCatalog/Controls/HomeItemExpander.cs:47 and src/Avalonia.Controls/Button.cs:139","ref":"samples/ControlCatalog/Controls/HomeItemExpander.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/samples/ControlCatalog/Controls/HomeItemExpander.cs#L47","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: samples/ControlCatalog/Controls/HomeItemExpander.cs:49 and src/Avalonia.Controls/SplitButton/SplitButton.cs:89","ref":"samples/ControlCatalog/Controls/HomeItemExpander.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/samples/ControlCatalog/Controls/HomeItemExpander.cs#L49","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: samples/ControlCatalog/Controls/HomeItemExpander.cs:75 and src/Avalonia.Controls/ListBoxItem.cs:36","ref":"samples/ControlCatalog/Controls/HomeItemExpander.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/samples/ControlCatalog/Controls/HomeItemExpander.cs#L75","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: samples/ControlCatalog/Controls/HomeItemExpander.cs:76 and src/Avalonia.Controls/TabItem.cs:75","ref":"samples/ControlCatalog/Controls/HomeItemExpander.cs","url":"https://github.com/AvaloniaUI/Avalonia/blob/8035f14fd356beb7d7e7d8243dc8ce98dfc27551/samples/ControlCatalog/Controls/HomeItemExpander.cs#L76","weight":0.3}],"data":{},"error":null},{"analyzer":"qual-lint","pillar":"quality","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":12.0,"weighted_findings":3.0,"scanned_lines":481563.0,"category:best-practice":2.0,"category:correctness":10.0},"findings":[{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"build-native.sh","line":5,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:build-native.sh:5"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"native/Avalonia.Native/generate-headers.sh","line":4,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:native/Avalonia.Native/generate-headers.sh:4"},{"rule_id":"opengrep/csharp.lang.best-practice.structured-logging","severity":"low","message":"String interpolation in log message obscures the distinction between variables and the log message. Use structured logging instead, where the variables are passed as additional arguments and the interpolation is performed by the logging library. This reduces the possibility of log injection and make","path":"nukebuild/XamlCompilationVerifier.cs","line":35,"fingerprint":"csharp.lang.best-practice.structured-logging:nukebuild/XamlCompilationVerifier.cs:35"},{"rule_id":"opengrep/csharp.lang.best-practice.structured-logging","severity":"low","message":"String interpolation in log message obscures the distinction between variables and the log message. Use structured logging instead, where the variables are passed as additional arguments and the interpolation is performed by the logging library. This reduces the possibility of log injection and make","path":"nukebuild/XamlCompilationVerifier.cs","line":54,"fingerprint":"csharp.lang.best-practice.structured-logging:nukebuild/XamlCompilationVerifier.cs:54"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-command-substitution-in-command","severity":"low","message":"The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or other separators specified by the IFS variable. You should surround it with double quotes to avoid splitting the result.","path":"samples/IntegrationTestApp/bundle.sh","line":3,"fingerprint":"bash.lang.correctness.unquoted-command-substitution-in-command:samples/IntegrationTestApp/bundle.sh:3"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"samples/IntegrationTestApp/bundle.sh","line":11,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:samples/IntegrationTestApp/bundle.sh:11"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"samples/IntegrationTestApp/bundle.sh","line":12,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:samples/IntegrationTestApp/bundle.sh:12"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"scripts/ReplaceNugetCache.sh","line":3,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:scripts/ReplaceNugetCache.sh:3"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"scripts/ReplaceNugetCache.sh","line":4,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:scripts/ReplaceNugetCache.sh:4"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"scripts/ReplaceNugetCache.sh","line":5,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:scripts/ReplaceNugetCache.sh:5"},{"rule_id":"opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command","severity":"low","message":"Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may use a variable that starts with an underscore e.g. $_X instead of ","path":"scripts/ReplaceNugetCache.sh","line":6,"fingerprint":"bash.lang.correctness.unquoted-variable-expansion-in-command:scripts/ReplaceNugetCache.sh:6"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`inputElement.style.width` is assigned twice; the first assignment is useless","path":"src/Browser/Avalonia.Browser/webapp/modules/avalonia/input.ts","line":586,"fingerprint":"javascript.lang.correctness.useless-assignment:src/Browser/Avalonia.Browser/webapp/modules/avalonia/input.ts:586"}],"evidence":[],"data":{},"error":null},{"analyzer":"qual-testing","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:has_tests":1.0,"check:test_ratio":0.9038,"check:ci_present":1.0,"check:ci_runs_tests":0.0,"check:ci_runs_lint":0.0,"check:tests_cochange":1.0,"test_lines":217649.0,"source_lines":481642.0,"test_ratio":0.4519,"ci_files":7.0,"cochange_share":0.6346,"cochange_commits":260.0},"findings":[],"evidence":[{"kind":"ci","description":"CI config: .github/workflows/CLA.yml","ref":".github/workflows/CLA.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/api-diff.yml","ref":".github/workflows/api-diff.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/build.yml","ref":".github/workflows/build.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/publish-nuget-pr.yml","ref":".github/workflows/publish-nuget-pr.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/submit-dependency-graph.yml","ref":".github/workflows/submit-dependency-graph.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/team-label.yml","ref":".github/workflows/team-label.yml","url":null,"weight":0.0},{"kind":"ci","description":"CI config: .github/workflows/update-api.yml","ref":".github/workflows/update-api.yml","url":null,"weight":0.0}],"data":{"test_commands":[],"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":1.0,"check:changelog":0.0,"readme_lines":68.0},"findings":[],"evidence":[{"kind":"docs","description":"readme.md","ref":"readme.md","url":null,"weight":0.0},{"kind":"docs","description":"licence.md","ref":"licence.md","url":null,"weight":0.0},{"kind":"docs","description":"CONTRIBUTING.md","ref":"CONTRIBUTING.md","url":null,"weight":0.0}],"data":{},"error":null},{"analyzer":"qual-type-safety","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:strict_config":1.0,"check:low_escape_density":0.0,"escapes":81.0,"escapes_per_kloc":23.761},"findings":[],"evidence":[{"kind":"typing","description":"TypeScript strict type checking: src/Browser/Avalonia.Browser/webapp/tsconfig.json","ref":"src/Browser/Avalonia.Browser/webapp/tsconfig.json","url":null,"weight":0.0}],"data":{},"error":null},{"analyzer":"x-blame","pillar":"ai_provenance","status":"ok","tool_version":"git-blame","metrics":{"ai_lines":12928.0,"other_lines":194335.0,"files_blamed":1500.0,"blame_failures":0.0,"quality:ai_findings":0.0,"quality:ai_per_kloc":0.0,"quality:other_findings":6.0,"quality:other_per_kloc":0.031,"quality:ratio":0.0,"security:ai_findings":0.0,"security:ai_per_kloc":0.0,"security:other_findings":2.0,"security:other_per_kloc":0.01,"security:ratio":0.0},"findings":[],"evidence":[],"data":{"sampled":true,"comparable":true},"error":null}],"flags":[]}