When a parent chart defines a value for a subchart in its own values.yaml,
and the user supplies null for that key via --values, the null should erase
the parent-defined default per documented Helm behavior.
Previously, childChartMergeTrue correctly preserved null values through the
parent coalesce pass so they could be erased during subchart-level coalescing
(when the subchart itself has a default for that key). However, when the key
only exists in the parent chart's values.yaml and not in the subchart's own
values.yaml, no cleanup occurred — the nil persisted in the final result.
Fix: after coalescing each subchart dependency, call eraseNullsWithParentDefaults
to remove any remaining nil values where the parent chart defined a non-nil
default. This covers the gap without disturbing keys already cleaned up at
subchart level.
Fixes#31919
Signed-off-by: Abhay Chaurasiya <abhaychaurasiya19@gmail.com>
Signed-off-by: abhay1999 <abhaychaurasiya19@gmail.com>