Declarative CLI Version manager written in Go. Support Lazy Install, Registry, and continuous update with Renovate. CLI version is switched seamlessly
This report summarizes scanner evidence for aquaproj/aqua, a Go project with 1,878 GitHub stars. SynthScan examined 84,257 lines of code across 740 source files, recording 47 pattern matches distributed across 4 syntactic categories. The legacy adjusted pattern signal is 0.6 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 47 finding(s).
Are imports declared and package/API names verified? 0 finding(s).
Are wrappers, guards, and repeated structures necessary? 0 finding(s).
Which changes need focused human review? 47 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 47 distinct pattern matches across 4 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .goreleaser.yml | 81 | # Default: v1 | COMMENT |
| LOW | .goreleaser.yml | 121 | COMMENT | |
| LOW | .goreleaser.yml | 141 | # | COMMENT |
| LOW | .goreleaser.yml | 161 | # | COMMENT |
| LOW | tests/cargo/aqua.yaml | 1 | --- | COMMENT |
| LOW | tests/unarchive/aqua.yaml | 1 | --- | COMMENT |
| LOW | tests/version_expr_file/aqua.yaml | 1 | --- | COMMENT |
| LOW | pkg/install-registry/doc.go | 1 | // Package registry manages registry installation and caching for aqua. | COMMENT |
| LOW | pkg/versiongetter/forge/forge.go | 1 | // Package forge is what a forge instance's releases are read as. | COMMENT |
| LOW | pkg/versiongetter/forge/gitlab/client.go | 1 | // Package gitlab reads the releases a GitLab instance publishes. | COMMENT |
| LOW | pkg/versiongetter/forge/gitlab/client_internal_test.go | 201 | // "package: RPM riscv64" and is served at packages/rpm/glab.rpm. | COMMENT |
| LOW | pkg/asset/generate.go | 41 | } | COMMENT |
| LOW | pkg/asset/spelling.go | 1 | package asset | COMMENT |
| LOW | pkg/config/doc.go | 1 | // Package config handles aqua configuration management. | COMMENT |
| LOW | pkg/config/registry/error.go | 21 | // errHostRequired is returned when a package on a forge instance lacks the instance it | COMMENT |
| LOW | pkg/config/registry/package_info.go | 41 | // PkgInfoTypeCargo installs Rust packages from crates.io using cargo. | COMMENT |
| LOW | pkg/config/registry/package_info.go | 61 | ) | COMMENT |
| LOW | pkg/config/registry/package_info.go | 941 | // in subgroups is gitlab-org/security/cli, and every segment of it is one of these. | COMMENT |
| LOW | pkg/config/registry/package_info.go | 961 | // hostOnly says whether a value is a host name, and nothing else. | COMMENT |
| LOW | pkg/config/registry/github_cli.go | 1 | package registry | COMMENT |
| LOW | pkg/config/registry/github_cli.go | 21 | // SignerWorkflow3 is the deprecated field name for signer workflow. | COMMENT |
| LOW | pkg/config/registry/cosign.go | 21 | // Key specifies where to download the public key file. | COMMENT |
| LOW | pkg/config/registry/packslip.go | 1 | package registry | COMMENT |
| LOW | pkg/config/registry/packslip.go | 21 | // PublicKey is the public key of a key-signed release, as its base64 line. | COMMENT |
| LOW | pkg/installpackage/download.go | 161 | if err := is.verifyChecksumWrap(ctx, logger, param, bodyFile); err != nil { | COMMENT |
| LOW | pkg/ghattestation/signer_workflow.go | 1 | package ghattestation | COMMENT |
| LOW | pkg/runtime/libc_linux.go | 41 | // | COMMENT |
| LOW | pkg/cli/doc.go | 1 | // Package cli provides the command-line interface for aqua. | COMMENT |
| LOW | pkg/controller/doc.go | 1 | // Package controller contains the main business logic controllers for aqua operations. | COMMENT |
| LOW | pkg/controller/generate-registry/generate.go | 301 | COMMENT | |
| LOW | pkg/controller/initpolicy/init.go | 21 | # - name: aqua-registry | COMMENT |
| LOW | pkg/controller/initcmd/init.go | 21 | # enabled: true | COMMENT |
| LOW | pkg/controller/generate/generate.go | 21 | // Generate searches packages in registries and outputs the configuration to standard output. | COMMENT |
| LOW | pkg/unarchive/archives.go | 41 | // staging directory outside the walk's output. | COMMENT |
| LOW | pkg/unarchive/archives.go | 161 | // writes nothing outside the extraction directory, and such symlinks are common | COMMENT |
| LOW | pkg/unarchive/archives.go | 321 | // Only the sparse members recorded during the walk are extracted; every other | COMMENT |
| LOW | pkg/unarchive/archives.go | 381 | // of an extraction as shell globs, so an entry named "*" would make it extract | COMMENT |
| LOW | pkg/github/doc.go | 1 | // Package github provides GitHub API client integration for aqua. | COMMENT |
| LOW | pkg/download/forge.go | 21 | ) | COMMENT |
| LOW | pkg/download/doc.go | 1 | // Package download implements package download functionality for aqua. | COMMENT |
| LOW | pkg/checksum/doc.go | 1 | // Package checksum provides checksum validation and management for aqua. | COMMENT |
| LOW | pkg/domain/doc.go | 1 | // Package domain defines the core domain models and types for aqua. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | AGENTS.md | 243 | # Run wire for dependency injection | COMMENT |
| MEDIUM | website/docs/index.md | 247 | To send a pull request you have to write Registry Configuration, but aqua provides [the tool](https://github.com/aquapro | CODE |
| MEDIUM | website/docs/reference/security/checksum.md | 126 | [aqua gr](/docs/develop-registry#scaffold-registry-configuration) scaffolds the checksum configuration too. | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | pkg/cli/initcmd/command.go | 54 | $ aqua init -d # Create a directory "aqua" and create "aqua/aqua.yaml" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pkg/config/registry/version_override_test.go | 393 | // For testing the specific behavior, we need to check if it's the same instance or a copy | COMMENT |