aquasecurity/trivy - Open Source PR Review Scorecard

Find vulnerabilities, misconfigurations, secrets, SBOM in containers, Kubernetes, code repositories, clouds and more

C-Rank Grade: A (Welcoming) - 57/100

External PR Merge Rate: 47%

Response Time: 9h

First Timer Success: 26%

Frequently Asked Questions

Is aquasecurity/trivy welcoming to first-time open-source contributors?

aquasecurity/trivy has a recorded first-timer success rate of 26.1%. Repositories ranked A typically provide actionable feedback during code reviews and actively nurture new community contributors.

How fast can I expect code review feedback on my pull request?

Maintainers in aquasecurity/trivy respond to incoming external pull requests in approximately 9.4 hours on average. Keeping PRs focused on single tasks and ensuring tests pass helps maintainers review faster.

What does the 56.6 C-Rank™ score (A Tier) represent?

The C-Rank™ system evaluates GitHub projects on a 0–100 scale using real data: PR merge rates, review turnaround time, active maintainer presence, and first-time contributor success. A score of 56.6 places aquasecurity/trivy in the A tier.

What is the external contributor pull request merge rate for aquasecurity/trivy?

The external contributor pull request merge rate for aquasecurity/trivy is 46.7%, based on public PR activity from non-core contributors.

Are there Good First Issues available in aquasecurity/trivy?

aquasecurity/trivy currently has 1 active issue(s) tagged with beginner-friendly labels like "good first issue", "beginner", or "up-for-grabs".

aquasecurity
aquasecurity/trivyA•Welcoming38.3k
GitHub
Back to Explorer
aquasecurity

aquasecurity/trivy

38,313
Active (30d)A•Welcoming(57/100)Go

Find vulnerabilities, misconfigurations, secrets, SBOM in containers, Kubernetes, code repositories, clouds and more

GitHub
Compare••
Jump to:

AI Maintainer Review Guidelines

Review Persona

Strict Quality Architect

Warmth Score
7.1/10
Patience Score
7.6/10
Nitpick Rate
36%

Balanced & professional review environment in aquasecurity/trivy. Maintains strict focus on technical quality and test standards.

Top PR Submission Do's

  • •Add unit tests with >80% coverage for modified code paths
  • •Run repository linter and code formatters locally before pushing
  • •Link relevant GitHub issue ID in PR description pre-flight checklist

Top PR Friction Pitfalls (Don'ts)

  • •Do not submit unlinked PRs without referencing an existing issue
  • •Do not mix refactoring and feature logic into a single commit
  • •Do not ping maintainers repeatedly within 24 hours of opening
Response Velocity
9 hours
Standard maintainer review cycle

Average Response Latency

Tracks hours until a maintainer leaves a review, comment, or PR response.

Merge Efficiency
46.7%
Moderate PR acceptance rate

External Acceptance Rate

Percentage of community pull requests successfully merged into main.

First-Timer Success
26.1%
Accepts new contributor PRs

First PR Conversion

Rate at which developers submitting their first repository PR succeed.

Active Maintainers
77 core
Highly collaborative maintainer core
Diagnostic Health HUD
46.7%
Merge Gauge
26.1%
1st-Timer
Community Vibe49/100

Embed C-Rank Badge

Show contributors that your repository actively reviews and merges external pull requests.

GetMerged C-Rank badge for aquasecurity/trivy
[![GetMerged C-Rank](https://getmerged.abhishekco.de/api/badge/aquasecurity/trivy)](https://getmerged.abhishekco.de/aquasecurity/trivy?utm_source=github&utm_medium=badge)

Active Good First Issues (5)

View on GitHub

Description When a dependency in [[packages.dependencies]] of pylock.toml (PEP 751) is specified by name only, e.g. { name = "beta" }, Trivy silently drops it from the dependency graph. As a result, the SBOM (CycloneDX dependsOn, SPDX relationships) is incomplete, and the package shows up directly under pylock.toml instead of under its parent. Vulnerability detection is not affected. Reproduced on v0.75.0 and main: mkdir pylock-name-only && cd pylock-name-only cat > pylock.toml <<'EOF' lock-version = "1.0" created-by = "minimal-reproducer" [[packages]] name = "alpha" version = "1.0.0" dependencies = [{ name = "beta" }] [[packages]] name = "beta" version = "2.0.0" EOF trivy fs --format cyclonedx --output bom.json . jq -c '.dependencies[]' bom.json [email protected] is expected to depend on [email protected], but its dependsOn is empty. If the selector is changed to { name = "beta", version = "2.0.0" }, the relationship appears. Such lock files are produced by real tools, e.g. Pex (see test_issue_2

📅 Opened Oct 14, 2026💬 1 comment
Quality: 75/100Contribute

Description For pnpm-lock.yaml v9, Trivy detects direct dependencies and their dev/prod status from the importers section. When an importer's version is written in the alias form <name>@<version>, the direct dependency is not matched to its snapshot. As a result, it is marked as indirect and Dev: true, and its whole production subtree stays dev as well. Without --include-dev-deps, these packages and their vulnerabilities disappear from the result. The alias form appears in at least two cases. 1. pnpm deploy with a workspace package pnpm --config.inject-workspace-packages=true deploy --prod records the workspace package as a file: dependency: importers: .: dependencies: repro-shared: specifier: repro-shared@file:///<path>/packages/shared version: repro-shared@file:///<path>/packages/shared snapshots: '@xmldom/[email protected]': {} repro-shared@file:///<path>/packages/shared: dependencies: '@xmldom/xmldom': 0.8.13 Result (trivy fs pnpm-lock.yaml -

📅 Opened Oct 12, 2026💬 6 comments
Quality: 50/100Contribute

Description When a dependency in /lib/apk/db/installed uses the ~ (prefix match) operator, e.g. D:python3~3.12, Trivy silently drops it from the OS package dependency graph. As a result, the SBOM (CycloneDX dependsOn, SPDX relationships) is incomplete. Vulnerability detection is not affected. Reproduced on v0.75.0 and main: cat > Dockerfile <<'EOF' FROM alpine:3.20 RUN apk add --no-cache libxml2-static EOF docker build -t trivy-fuzzy-dep . docker run --rm trivy-fuzzy-dep apk info -R libxml2-static # python3~3.12 trivy image --format cyclonedx --output sbom.json trivy-fuzzy-dep jq -c '.dependencies[] | select(.ref | contains("libxml2-static"))' sbom.json libxml2-static is expected to depend on python3, but its dependsOn is empty, even though python3 is installed and present in the SBOM. Discussed in #11342 Root cause trimRequirement() in pkg/fanal/analyzer/pkg/apk/apk.go strips the version from a dependency name only at <, > and =. The token python3~3.12 is kept as-is, isn't found in

📅 Opened Oct 12, 2026💬 2 comments
Quality: 50/100Contribute

Description The Alpine detector reports already fixed vulnerabilities for apk packages that have no o: (origin) field in /lib/apk/db/installed. Such packages show up in images whose packages are not built with abuild, e.g. Docker Hardened Images. Original report: #11311. Reproduction trivy image --pkg-types os dhi.io/git:2-alpine@sha256:c22bf201b598dabf2e84defb4fdddfb485cc91c215db92614b879b624795b8f2 ┌─────────┬────────────────┬──────────┬────────┬───────────────────┬───────────────┐ │ Library │ Vulnerability │ Severity │ Status │ Installed Version │ Fixed Version │ ├─────────┼────────────────┼──────────┼────────┼───────────────────┼─────────────

📅 Opened Sep 28, 2026💬 3 comments
Quality: 50/100Contribute

Description The check treats a TLS policy as secure only if its name matches one of two hard-coded values: checks/cloud/aws/elasticsearch/use_secure_tls_policy.rego recommended_tls_policies := { "Policy-Min-TLS-1-2-2019-07", "Policy-Min-TLS-1-2-PFS-2023-10", } is_tls_policy_secure(domain) if domain.endpoint.tlspolicy.value in recommended_tls_policies DomainEndpointOptions.TLSSecurityPolicy accepts four values: Policy-Min-TLS-1-0-2019-07 - minimum TLS 1.0, correctly reported Policy-Min-TLS-1-2-2019-07 - minimum TLS 1.2, accepted Policy-Min-TLS-1-2-PFS-2023-10 - TLS 1.2 to 1.3 with PFS, accepted Policy-Min-TLS-1-2-RFC9151-FIPS-2024-08 - TLS 1.3 with FIPS, reported as outdated, false positive Policy-Min-TLS-1-2-RFC9151-FIPS-2024-08 is the strictest of the four and is reported as an outdated policy. There is a second problem in the same rule. The value is compared without a value.is_known guard, so a value Trivy could not resolve, for example one coming from an unresolved va

📅 Opened Aug 18, 2026💬 2 comments
Quality: 50/100Contribute
Looking for more Go beginner tasks?Explore Go GFI

Contributor Community Vibe Feedback

Rate what actually matters after opening a pull request here.

Have you contributed to this repo?

Rate your first-hand PR experience (review speed, maintainer responsiveness, and onboarding ease) to help other contributors.

3 ratings required
Maintainer helpfulness
Review speed
Beginner friendliness

Contributor Compatibility & Review Speed Analysis for aquasecurity/trivy

When evaluating whether to contribute to aquasecurity/trivy, response velocity and maintainer engagement are crucial. GetMerged continuously tracks pull request trajectories, first-comment latency, and code review rounds to help developers avoid submitting pull requests to backlogged repositories.

Currently, maintainers of aquasecurity/trivy acknowledge new external contributions in approximately 9 hours. Out of all submitted pull requests from non-core authors in the last 180-day window, 46.7% were successfully merged into the primary branch.

Frequently Asked Questions - Contributing to aquasecurity/trivy

01

Is aquasecurity/trivy welcoming to first-time open-source contributors?

aquasecurity/trivy has a recorded first-timer success rate of 26.1%. Repositories ranked Welcoming typically provide actionable feedback during code reviews and actively nurture new community contributors.

02

How fast can I expect code review feedback on my pull request?

The initial maintainer response time averages ~9 hours. Keeping PRs scoped to single concerns and ensuring CI checks succeed will optimize review turnaround.

03

What does the 56.6 C-Rank™ score represent?

The C-Rank™ index scores repositories on a 0 to 100 scale using an objective formula: external PR merge rates, initial response speed, active maintainer count, and first-time contributor retention. A score of 56.6 places aquasecurity/trivy in the Welcoming tier.

04

What is the external contributor pull request merge rate for aquasecurity/trivy?

The external pull request merge rate is 46.7%. GetMerged isolates non-core community contributions so external developers get an accurate benchmark of PR acceptance probability.

05

Are there beginner Good First Issues open in aquasecurity/trivy?

Yes, aquasecurity/trivy currently has 1 active issue(s) tagged with beginner-friendly labels. You can inspect these directly from the repository issues tab.

GetMerged C-Rank™ Indexing Standard

All metrics displayed for aquasecurity/trivy are automatically retrieved via the public GitHub API and recalculated daily. Insider pull requests submitted by repository owners or organization members are excluded from merge rate calculations to preserve objective external contributor statistics.