NVIDIA / NVIDIA/nvcf

release(helm): prevent stable OCI chart tag mutation and record immutable digests

Open
#1,226 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
218
Forks
72
Avg merge
1d 12h
Merged PRs (30d)
427

Description

Problem

The stable Helm chart tags for helm-nvcf-llm-request-router:1.10.0 and
nvcf-gateway-routes:1.16.0 resolved to different OCI manifest digests on
consecutive validation days.

Recorded on the first pull:

Chart Digest
helm-nvcf-llm-request-router:1.10.0 sha256:664940cebe2d1da6c14fa302d52b922cab52d1fe94c620dd1f1f61af73f137be
nvcf-gateway-routes:1.16.0 sha256:c2455cde64b22e03ad4a5912fe437ac8fd90835dc8be7244c21dc290c083199d

Current repeat pull with Helm 3.15.4:

Chart Digest
helm-nvcf-llm-request-router:1.10.0 sha256:04fc865aee23e64f7ce9aa239fa022ed028c12158f85f78e9389df8c9b5bdd00
nvcf-gateway-routes:1.16.0 sha256:48ca138b7611c1320e6eaf5b240dc73d4ce37d059617ee334efddbf06765a405

The chart names and metadata versions remained unchanged. Stable consumers
cannot distinguish a deliberate rebuild from an accidental overwrite when a
version tag is mutable.

Expected behavior

Published stable chart tags are immutable, and the release record exposes the
immutable OCI manifest digest that consumers should verify.

Acceptance criteria

  • Identify which publication operation changed each tag and whether the chart
    payload changed.
  • Prevent release automation from overwriting an existing stable version tag.
  • Record the immutable manifest digest in release output or another
    machine-readable provenance record.
  • Add a release regression that fails if a stable tag already resolves to a
    different manifest.
  • Document the supported recovery process when an incorrectly published chart
    must be replaced without mutating the existing version.

By submitting this issue, you acknowledge that you are an assigned member of
the NVCF development team and agree to follow the project code of conduct and
contributing guidelines.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the release automation that publishes the two stable Helm OCI chart tags, then reproduce the digest changes with Helm 3.15.4. Identify whether the chart payload changed, add a regression for an existing tag with a different manifest, and verify that release output records the immutable digest and documents recovery without mutation.

Written by the indexing model from the issue text.

Assessment

Tech stack
helm, kubernetes
Domain
devops, release
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.