RepoTrust

Leaderboard github.com

Radioo/573Renderer

  • View repository ↗
  • C++
  • ★ 16
  • commit 75f504c8835a
  • scored 2026-11-14
  • scoring prov-5+qual-2+sec-2

AI provenance

0%

possible

Confidence
65%
Coverage
100%

Estimated share of AI-generated code. Explicit attribution is a lower bound.

Code quality

82/100

strong

Confidence
90%
Coverage
100%

Complexity, duplication, lint density, tests, CI, docs and review process.

Security

70/100

adequate

Confidence
85%
Coverage
100%

Secrets, static analysis, vulnerable dependencies, CI and supply-chain posture.

AI provenance

0% possible

Weak signals consistent with AI-assisted development. 1 commit(s) carry explicit AI attribution, too few to characterize the codebase.

How the score is built

  • Explicitly attributed share0%
  • Unattributed share in AI-pace bursts45%
  • Estimated AI-generated share0%
  • AI tool configuration files1
  • Work sessions at AI pace27
  • Releases at AI pace0
  • Coding-style index (1.0+ means possible)0.00

Attributed AI tools

ToolCommitsLines addedFirst seenLast seen
Claude Code122026-07-082026-07-08

Lines added per month all AI-attributed share

  1. 2026-0729,823 · 0% AI
  2. 2026-0875,343 · 0% AI
  3. 2026-0985,162 · 0% AI
  4. 2026-101,057 · 0% AI
  5. 2026-11183 · 0% AI

Findings in AI-attributed lines vs the rest

From git blame: 0 lines trace to AI-attributed commits, 109,469 to others. Too few lines in one group for a fair comparison. Reported, not scored.

Findings per 1,000 linesAI-attributedOtherRatio
Code quality—0.05—
Security—0.12—

Evidence by analyzer

Explicit AI attributionok2 items
attributed_commit_share
0.5%
attributed_commits
1
attributed_loc
2
attributed_loc_share
0.0%
commits
196
effective_loc
191,568
tools_detected
1
AI tool configurationok1 item
artifacts
1
earliest_adoption
2026-07-07
tools_configured
1
workflow_agents
0
Commit velocityok15 items
excluded_import_loc
88,461
flagged_loc
86,398
flagged_loc_share
83.8%
flagged_units
27
max_loc_per_hour
2,804.47
measured_loc
103,107
median_loc_per_hour
483.47
pr_timed_units
0
pre_ai_era_burst_loc
0
pre_ai_era_bursts
0
pre_ai_era_measured_loc
0
work_units
67
Release velocityok
flagged_releases
0
max_loc_per_day
933.30
releases
4
Coding styleok
count:assistant_voice
0
count:emoji_in_code
0
count:narrated_steps
0
count:placeholder
0
files:assistant_voice
0
files:emoji_in_code
0
files:narrated_steps
0
files:placeholder
0
index
0
lines_scanned
109,469
per_kloc:assistant_voice
0
per_kloc:emoji_in_code
0
per_kloc:narrated_steps
0
per_kloc:placeholder
0
Findings in AI-written linesok
ai_lines
0
blame_failures
0
files_blamed
782
other_lines
109,469
quality:ai_findings
0
quality:other_findings
5
quality:other_per_kloc
0.05
security:ai_findings
0
security:other_findings
13
security:other_per_kloc
0.12

Code quality

82 strong

Code quality is strong: test-to-source ratio 0.52, CI runs tests; 9% of function code in complex or long functions; 3% duplicated lines. Weakest area: docs.

How the score is built

  • Complexity76
  • Duplication83
  • Lint and smells98
  • Tests and CI100
  • Documentation40
  • Type safety40
  • Review processnot measured

Evidence by analyzer

Complexity (lizard)ok10 items
complex_functions
63
function_nloc
69,960
functions
5,151
long_functions
19
many_param_functions
27
mean_ccn
4.11
p90_ccn
9
risky_nloc_share
9.1%
Duplication (jscpd)ok10 items
compared_lines
75,986
duplicated_lines
2,325
duplicated_share
3.1%
files
782
Lintok
category:best-practice
1
category:correctness
4
findings
5
scanned_lines
109,469
weighted_findings
7
Tests and CIok4 items
  • CI config: .github/workflows/build-renderer.yml .github/workflows/build-renderer.yml
  • CI config: .github/workflows/quality-gates.yml .github/workflows/quality-gates.yml
  • CI runs tests (pytest, ctest)
  • CI runs linters (ruff)
check:ci_present
yes
check:ci_runs_lint
yes
check:ci_runs_tests
yes
check:has_tests
yes
check:test_ratio
yes
check:tests_cochange
yes
ci_files
2
cochange_commits
181
cochange_share
90.6%
source_lines
109,469
test_lines
57,171
test_ratio
0.52
Documentationok1 item
  • README.md README.md
check:changelog
no
check:contributing
no
check:license
no
check:readme
yes
readme_lines
80
Type safetyok
check:low_escape_density
yes
check:strict_config
no
escapes
0
escapes_per_kloc
0

Security

70 adequate

Security posture is adequate: 1 known vulnerabilities in 1 dependencies; 12 high-severity SAST findings; 39 high-severity workflow issues. Weakest area: posture.

How the score is built

  • Secrets100
  • Static analysis (SAST)96
  • Vulnerable dependencies95
  • CI workflows0
  • Security posture0
  • OpenSSF Scorecardnot measured

Evidence by analyzer

OpenSSF Scorecardskipped

no published OpenSSF Scorecard result for this repo

Package registriesok
checked
5
declared
5
lookup_errors
0
missing
0
recent
0
Secrets (gitleaks)ok
secrets_current
0
secrets_history
0
secrets_low_confidence
0
secrets_nonprod
0
Static analysis (opengrep)ok
findings
13
findings_high
12
findings_low
0
findings_medium
1
parse_errors
22
scanned_lines
109,469
weighted_findings
11.35
Dependencies (osv-scanner)ok
penalty
3
vulnerabilities
1
vulnerable_packages
1
vulns_critical
0
vulns_high
0
vulns_low
0
vulns_medium
1
vulns_unknown
0
CI workflows (zizmor)ok
findings
45
findings_high
39
findings_low
6
findings_medium
0
penalty
393.90
workflows
2
Security postureok
check:dependency_updates
no
check:lockfiles
yes
check:security_policy
no
check:signed_commits
no
signed_commit_share
0.0%
unpinned_manifests
0
Release downloadsok5 items
binary_assets
8
signals
1
suspicious
0

Findings

52 high6 medium5 low1 info

SeverityRuleLocationMessageTool
high opengrep/python.lang.best-practice.arbitrary-sleep tools/ci/check_editor_starts.py:24 time.sleep() call; did you mean to leave this in? Lint
high zizmor/cache-poisoning .github/workflows/build-renderer.yml:111 runtime artifacts potentially vulnerable to a cache poisoning attack [confidence low] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:111 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/excessive-permissions .github/workflows/build-renderer.yml:16 overly broad permissions [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:167 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:176 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:187 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:193 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:204 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:224 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:236 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/cache-poisoning .github/workflows/build-renderer.yml:242 runtime artifacts potentially vulnerable to a cache poisoning attack [confidence low] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:242 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/cache-poisoning .github/workflows/build-renderer.yml:252 runtime artifacts potentially vulnerable to a cache poisoning attack [confidence low] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:252 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:277 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/cache-poisoning .github/workflows/build-renderer.yml:284 runtime artifacts potentially vulnerable to a cache poisoning attack [confidence low] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:284 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:296 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:315 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:327 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/cache-poisoning .github/workflows/build-renderer.yml:333 runtime artifacts potentially vulnerable to a cache poisoning attack [confidence low] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:333 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/cache-poisoning .github/workflows/build-renderer.yml:343 runtime artifacts potentially vulnerable to a cache poisoning attack [confidence low] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:343 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:374 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:377 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:383 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:389 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/cache-poisoning .github/workflows/build-renderer.yml:395 runtime artifacts potentially vulnerable to a cache poisoning attack [confidence low] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:395 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:404 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:56 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:69 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/cache-poisoning .github/workflows/build-renderer.yml:75 runtime artifacts potentially vulnerable to a cache poisoning attack [confidence low] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:75 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/cache-poisoning .github/workflows/build-renderer.yml:92 runtime artifacts potentially vulnerable to a cache poisoning attack [confidence low] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/build-renderer.yml:92 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/quality-gates.yml:23 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/quality-gates.yml:26 unpinned action reference [confidence high] CI workflows (zizmor)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit tools/ci/check_editor_starts.py:17 Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external... Static analysis (opengrep)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit tools/ci/preset_dump.py:41 Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external... Static analysis (opengrep)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit tools/ci/run_format.py:32 Detected subprocess function 'check_output' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... Static analysis (opengrep)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit tools/ci/run_format.py:50 Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external... Static analysis (opengrep)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit tools/ci/run_tidy.py:171 Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external... Static analysis (opengrep)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args tools/ci/run_tidy.py:171 Detected subprocess function 'run' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium] Static analysis (opengrep)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit tools/ci/run_tidy.py:31 Detected subprocess function 'check_output' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... Static analysis (opengrep)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit tools/ci/run_tidy.py:90 Detected subprocess function 'check_output' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... Static analysis (opengrep)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args tools/ci/run_tidy.py:90 Detected subprocess function 'check_output' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium] Static analysis (opengrep)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit tools/local/preset_sweep.py:49 Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external... Static analysis (opengrep)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit tools/local/render_regression.py:33 Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external... Static analysis (opengrep)
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit tools/render_regress/regress.py:91 Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external... Static analysis (opengrep)
medium opengrep/python.lang.correctness.common-mistakes.string-concat-in-list tools/ci/check_preset_layers.py:48 Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list? Lint
medium opengrep/python.lang.correctness.common-mistakes.string-concat-in-list tools/ci/check_preset_layers.py:54 Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list? Lint
medium opengrep/python.lang.correctness.common-mistakes.string-concat-in-list tools/ci/check_preset_states.py:59 Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list? Lint
medium opengrep/python.lang.correctness.common-mistakes.string-concat-in-list tools/ci/check_preset_states.py:65 Detected strings that are implicitly concatenated inside a list. Python will implicitly concatenate strings when not explicitly delimited. Was this supposed to be individual elements of the list? Lint
medium opengrep/c.lang.security.insecure-use-memset src/backend/afp_render_context.h:13 When handling sensitive information in a buffer, it's important to ensure that the data is securely erased before the buffer is deleted or reused. While `memset()` is commonly used for this purpose, it can leave sensitive information... Static analysis (opengrep)
medium osv/GHSA-6w46-j5rx-g56g tools/ci/uv.lock [email protected] (PyPI) is affected by PYSEC-2026-1845, GHSA-6w46-j5rx-g56g Dependencies (osv-scanner)
low zizmor/artipacked .github/workflows/build-renderer.yml:223 credential persistence through GitHub Actions artifacts [confidence low] CI workflows (zizmor)
low zizmor/artipacked .github/workflows/build-renderer.yml:314 credential persistence through GitHub Actions artifacts [confidence low] CI workflows (zizmor)
low zizmor/artipacked .github/workflows/build-renderer.yml:373 credential persistence through GitHub Actions artifacts [confidence low] CI workflows (zizmor)
low zizmor/artipacked .github/workflows/build-renderer.yml:55 credential persistence through GitHub Actions artifacts [confidence low] CI workflows (zizmor)
low zizmor/artipacked .github/workflows/quality-gates.yml:22 credential persistence through GitHub Actions artifacts [confidence low] CI workflows (zizmor)
info zizmor/superfluous-actions .github/workflows/build-renderer.yml:404 action functionality is already included by the runner [confidence high] CI workflows (zizmor)

Tools and coverage

Every analyzer that ran on this commit. A failed or skipped tool is a coverage gap: its share of the score is left out and the coverage figure drops.

AnalyzerPillarStatusVersionFindingsNote
AI tool configurationAI provenanceoksignatures-v10
Explicit AI attributionAI provenanceoksignatures-v10
Release velocityAI provenanceokprov-40
Coding styleAI provenanceok—0
Commit velocityAI provenanceokprov-40
Findings in AI-written linesAI provenanceokgit-blame0
Complexity (lizard)Code qualityoklizard 1.25.10
DocumentationCode qualityok—0
Duplication (jscpd)Code qualityokrepotrust-dup-w60
LintCode qualityokopengrep 1.33.1; rules f1d2b562b4145
Tests and CICode qualityok—0
Type safetyCode qualityok—0
CI workflows (zizmor)Securityokzizmor 1.32.045
Dependencies (osv-scanner)Securityokosv-scanner version: 2.7.11
Release downloadsSecurityok—0
Security postureSecurityok—0
Package registriesSecurityok—0
Static analysis (opengrep)Securityokopengrep 1.33.1; rules f1d2b562b41413
OpenSSF ScorecardSecurityskipped—0no published OpenSSF Scorecard result for this repo
Secrets (gitleaks)Securityokgitleaks 8.30.10

Score history

Scores from different scoring versions aren't directly comparable.

ScoredCommitScoringAI provenanceQualitySecurity
2026-11-1475f504c8835aprov-5+qual-2+sec-20%8270
2026-11-1475f504c8835aprov-4+qual-2+sec-20%8270

Embed a badge

Maintainers can show these in a README. Badges update when the repository is re-scored.

[![RepoTrust ai](https://repotrust.synapticcyber.com/badge/github.com/Radioo/573Renderer/ai.svg)](https://repotrust.synapticcyber.com/r/github.com/Radioo/573Renderer/)
[![RepoTrust quality](https://repotrust.synapticcyber.com/badge/github.com/Radioo/573Renderer/quality.svg)](https://repotrust.synapticcyber.com/r/github.com/Radioo/573Renderer/)
[![RepoTrust security](https://repotrust.synapticcyber.com/badge/github.com/Radioo/573Renderer/security.svg)](https://repotrust.synapticcyber.com/r/github.com/Radioo/573Renderer/)
Full text report
  • Repository: https://github.com/Radioo/573Renderer
  • Commit: 75f504c8835a59b27408940b51fe5814428b9eb1
  • Generated: 2026-11-14T14:52:01+00:00
  • Scorer 0.1.0, scoring prov-5+qual-2+sec-2, report schema v2

Scores

Pillar Score Signal Confidence Coverage
AI provenance (estimated AI-generated share) 0 possible 65% 100%
Code quality 82 strong 90% 100%
Security 70 adequate 85% 100%

AI provenance

Weak signals consistent with AI-assisted development. 1 commit(s) carry explicit AI attribution, too few to characterize the codebase.

  • Explicitly attributed share (lower bound): 0.0%
  • Unattributed share in AI-consistent velocity bursts: 45.1%
  • Estimated AI-generated share: 0.0%
AI tool Attributed commits Lines added
Claude Code 1 2
  • AI tooling configured in repo: claude-code

Current source lines last changed by AI-attributed commits: 0 of 109,469.

Too few lines in one group to compare finding densities.

Month Lines added Attributed to AI
2026-07 29,823 0%
2026-08 75,343 0%
2026-09 85,162 0%
2026-10 1,057 0%
2026-11 183 0%

Evidence

  • Claude Code: on merged branch (7d32ad52bc) (179339a18ea6)
  • 3,275 lines of first-party code in ~1.2h (2,804 lines/hour, 1 commit session) (61d22b79b4b6)
  • 1,777 lines of first-party code in ~1.0h (1,699 lines/hour, 1 commit session) (804cea5112c2)
  • CLAUDE.md (claude-code configuration) (CLAUDE.md)
  • 7,646 lines of first-party code in ~4.8h (1,577 lines/hour, 12 commit session) (c4d0bb7c2504)
  • 2,483 lines of first-party code in ~1.6h (1,540 lines/hour, 2 commit session) (fde0379b773d)
  • 3,561 lines of first-party code in ~2.3h (1,529 lines/hour, 3 commit session) (72d24c8adc5d)
  • 2,351 lines of first-party code in ~1.5h (1,525 lines/hour, 1 commit session) (cda3fff90b2a)
  • 2,928 lines of first-party code in ~2.2h (1,333 lines/hour, 1 commit session) (fc24565e759d)
  • 3,821 lines of first-party code in ~3.2h (1,196 lines/hour, 9 commit session) (9cc74c2ef535)
  • 2,183 lines of first-party code in ~2.2h (989 lines/hour, 4 commit session) (7d69a80cfeff)
  • 1,893 lines of first-party code in ~1.9h (986 lines/hour, 4 commit session) (acaedd8c6d57)
  • 3,837 lines of first-party code in ~4.0h (959 lines/hour, 1 commit session) (735eb6b09a21)
  • 2,194 lines of first-party code in ~2.3h (942 lines/hour, 6 commit session) (71aa63555e87)
  • 3,621 lines of first-party code in ~4.0h (905 lines/hour, 1 commit session) (6d1a8b628d28)

AI provenance describes how code was produced; it is not a quality judgment. Unless attribution is explicit, these are signals consistent with AI generation, not proof. Squash/rebase workflows, imported code, and rewritten history reduce accuracy.

Code quality

Code quality is strong: test-to-source ratio 0.52, CI runs tests; 9% of function code in complex or long functions; 3% duplicated lines. Weakest area: docs.

Area Score
Complexity (lizard) 76
Duplication 83
Code smells (Opengrep) 98
Tests and CI 100
Documentation 40
Type safety 40
Process (Scorecard review/maintenance) n/a
  • Functions: 5,151; mean complexity 4.1, 90th percentile 9; 63 complex and 19 long functions
  • Duplicated lines: 3.1% of 75,986 compared
  • Tests: 57,171 test lines for 109,469 source lines (ratio 0.52); CI test commands: pytest, ctest; 91% of recent source commits also change tests
  • Docs missing or thin: license, contributing, changelog

Most complex functions:

Security

Security posture is adequate: 1 known vulnerabilities in 1 dependencies; 12 high-severity SAST findings; 39 high-severity workflow issues. Weakest area: posture.

Area Score
Secrets (gitleaks, tree + history) 100
Static analysis (Opengrep) 96
Vulnerable dependencies (OSV) 95
CI workflows (zizmor) 0
Posture (policy, updates, signing, lockfiles) 0
OpenSSF Scorecard n/a
  • Known vulnerabilities: 1 in 1 packages (critical 0, high 0, medium 1, low 0)

  • Posture checks passed: lockfiles; missing: security policy, dependency updates, signed commits

Top findings

Severity Finding Location
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit: Detected subprocess function 'Popen' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low] tools/ci/check_editor_starts.py:17
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit: Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low] tools/ci/preset_dump.py:41
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit: Detected subprocess function 'check_output' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low] tools/ci/run_format.py:32
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit: Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low] tools/ci/run_format.py:50
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit: Detected subprocess function 'check_output' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low] tools/ci/run_tidy.py:31
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit: Detected subprocess function 'check_output' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low] tools/ci/run_tidy.py:90
high opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args: Detected subprocess function 'check_output' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium] tools/ci/run_tidy.py:90
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit: Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low] tools/ci/run_tidy.py:171
high opengrep/python.lang.security.audit.dangerous-subprocess-use-tainted-env-args: Detected subprocess function 'run' with user controlled data. A malicious actor could leverage this to perform command injection. You may consider using 'shlex.quote()'. [confidence medium] tools/ci/run_tidy.py:171
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit: Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low] tools/local/preset_sweep.py:49
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit: Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low] tools/local/render_regression.py:33
high opengrep/python.lang.security.audit.dangerous-subprocess-use-audit: Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external resource. You may consider using 'shlex.escape()'. [confidence low] tools/render_regress/regress.py:91
high zizmor/excessive-permissions: overly broad permissions [confidence high] .github/workflows/build-renderer.yml:16
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:56
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:69
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:75
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:92
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:111
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:167
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:176
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:187
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:193
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:204
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:224
high zizmor/unpinned-uses: unpinned action reference [confidence high] .github/workflows/build-renderer.yml:236

Static signals only: the scorer never runs the project's code. Secret findings are pattern matches that were not verified, and secret values are never stored.

Distribution signals

Signals consistent with a repository that exists to distribute a download. They are heuristics, not a verdict; release files were not downloaded or inspected.

Repository profile

  • Source lines: 109,469; test lines: 57,171
Language Lines
C++ 144,508
C 19,726
Python 2,341
Shell 65