Detect Misspelled Keys in Helm Override Files
Use the comparison mode to find misspelled keys in Helm values override files. The fuzzy matching engine suggests correct key names based on Levenshtein distance.
Detailed Explanation
Misspelled Key Detection
One of the trickiest bugs in Helm deployments is a misspelled key in an override file. Since Helm silently ignores unknown keys, the override has no effect and the default value is used — often without any error message.
How It Works
The validator compares top-level keys in the override file against the default values file. For each key that does not exist in defaults, it calculates the Levenshtein distance to all default keys. If a close match is found (distance <= 2), it suggests the correction.
Examples of Detected Typos
| Override Key | Default Key | Distance | Suggestion |
|---|---|---|---|
nodeselector |
nodeSelector |
1 | Did you mean nodeSelector? |
replicacount |
replicaCount |
1 | Did you mean replicaCount? |
imagee |
image |
1 | Did you mean image? |
servce |
service |
1 | Did you mean service? |
autoScaling |
autoscaling |
1 | Did you mean autoscaling? |
toleration |
tolerations |
1 | Did you mean tolerations? |
What Is Levenshtein Distance?
Levenshtein distance measures the minimum number of single-character edits (insertions, deletions, substitutions) needed to transform one string into another:
nodeSelector→nodeselector: 1 substitution (S→s) = distance 1service→servce: 1 deletion (i) = distance 1image→imagee: 1 insertion (e) = distance 1
The validator uses a threshold of 2, catching most typos while avoiding false positives from unrelated keys.
Keys Without Close Matches
When an override key has no close match in defaults (distance > 2), it is flagged as an "unknown key" with an info-level message. This is intentional — some charts support custom keys that are not in the default values file:
[INFO] customConfig is not defined in the default values file
This could be a mistake or a valid chart extension. The user decides whether to investigate further.
Use Case
Debugging a Helm deployment where an override value appears to have no effect. The comparison mode reveals that the key was misspelled, causing Helm to silently ignore it.
Try It — Helm Values Validator
Related Topics
Compare Default vs Override Values for Multi-Environment
Advanced Patterns
Detect Type Mismatches Between Default and Override Values
Comparison & Debugging
Validate a Basic Web App values.yaml
Basic Configuration
Production Readiness Checklist for Helm Values
Advanced Patterns
Debug YAML Syntax Errors in Helm Values Files
Comparison & Debugging