holger-znippy-helm-repository — crate card
Reverse-engineered (from source — verify, don't trust the name)
- One-line pitch: znippy-archive-backed Helm chart repository (classic HTTP chart repo).
- Does:
HelmRepoZnippyimplementsRepositoryBackendTraitservingindex.yamland{chart}-{ver}.tgz; charts stored in the archive as{chart}-{ver}.tgzplus a rootindex.yaml. Theindexmodule builds the chart index from chart contents (chart_meta_from_tgz,parse_chart_yaml,chart_digest,generate_index,ChartArtifact/ChartMeta). The generatedindex.yamlis cached in aOnceLock(M9): the archive is immutable, so it is built once (decompress + digest every chart) instead of regenerated per request — a DoS-amplification fix. - Key deps:
traits,znippy-common,anyhow. - Shape: lib, 2 files (
lib.rs,index.rs). Shared znippy-backend pattern + an index-builder module. - Observed role in the workspace: Registered in server-lib as
repository-znippy-helm. Note the modern Helm OCI push flow is served instead by the separateholger-file-oci-repository.
Fill in (one line each — only the human knows these)
- Primary consumer(s):
- Why it exists (vs the obvious alternative):
- Hard constraint (airgap / no-C-deps / no-FFI / pure-Rust / etc.):
- Release cadence & independence (rides a parent? own repo someday?):
- Status (production / prototype / experimental / stubbed):
- Must-NOT-change invariant:
- Biggest known gap or TODO:
- Anything a newcomer would get wrong about it: