release(helm): prevent stable OCI chart tag mutation and record immutable digests
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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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