mimir-upgradelisted
Install: claude install-skill air-gapped/skills
# mimir-upgrade
Plan, sequence, and de-risk a **community-edition Grafana Mimir** upgrade deployed via the `mimir-distributed`
Helm chart, in an **air-gapped** environment. The hard part is not `helm upgrade`. It is that chart 6.0 changes
the **write-path architecture**, the **proxy's DNS name**, and the **admission-webhook posture** all in one hop —
and the chart validates none of the operator's stale values, so most of the damage is silent.
**Community editions only.** Ignore Grafana Enterprise Metrics (GEM) gating; the whole GEM values surface is
removed from the chart at 6.0 anyway.
## Evidence tags — do not flatten these
Every claim in this skill is tagged:
- **[UG] upstream-grounded** — a doc, changelog, release note, or source file says it.
- **[RFC] reasoned-from-config** — derived by reading chart templates, values, or Go source.
Both tags mean *researched*. The grounding runs to tagged upstream source (`help-all.txt.tmpl`,
`config-descriptor.json`, `pkg/ingester`, `pkg/usagestats`, `pkg/storage/ingest`), kubectl's and Helm's own
source, both CHANGELOGs, the docs, and six issues cited as evidence of absence. Two claims were settled by
experiment rather than reading: the `classic-architecture.yaml` render was diffed against upstream's golden CI
fixture (79/79 config keys), and the `null`-semantics question was settled by compiling a probe against Mimir's
exact YAML library.
What is missing is a third level: **behavioural observation on a running cluster.** No l