Skip to content

fix(helm): keep aliased subchart versions distinct - #601

Open
vibgrate-team wants to merge 1 commit into
mainfrom
cursor/helm-alias-lock-versions-7c14
Open

vibgrate-team wants to merge 1 commit into
mainfrom
cursor/helm-alias-lock-versions-7c14

Conversation

@vibgrate-team

Copy link
Copy Markdown
Contributor

Summary

Helm allows one chart to depend on the same subchart twice under different alias: names, often at different versions. Chart.yaml parsing dropped alias, and Chart.lock versions were stored by chart name only, so both rows received whichever lock entry was read last and looked the same in scan output.

Each dependency now keeps its alias on the row (shown as redis (cache) in findings and text output). The package name stays the chart name (redis) so registry lookups are unchanged. Lock entries, which have no alias, are paired by chart name and version, so each aliased row gets its own resolved version. A chart that depends on a name only once still uses the lock entry for that name, as before.

Related issues

Fixes #582

Checklist

  • pnpm test passes
  • pnpm lint is clean
  • pnpm typecheck is clean
  • Docs updated (README / DOCS / ARCHITECTURE) where behavior changed
  • Determinism preserved — identical input still produces identical
    graph.json / report output (content-hashed IDs, stable sorts; no time,
    randomness, or filesystem-order dependence)
  • No proprietary or internal references — public, Apache-2.0 content only
  • Commits use Conventional Commits and are signed off (git commit -s, DCO)

Notes for reviewers

Unaliased charts do not gain an alias field. When the same chart name is declared more than once, overlapping version constraints are assigned to distinct lock entries in chart order, and a repository URL is used as a tie-break when both sides set one.

Open in Web Open in Cursor 

Chart.yaml alias was ignored and Chart.lock versions were stored by
chart name, so two dependencies on the same chart shared whichever
lock entry was read last. Record alias on the row, keep the chart
name for registry lookups, and pair each lock entry by name and version.

Signed-off-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: vibgrate-team <vibgrate-team@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Enhancement: keep aliased Helm dependencies of the same chart as separate rows

2 participants