Backport #29824 to branch v25.3.x. This issue was created as a placeholder because the original PR's commit(s) could not be automatically cherry-picked.
Here are the commands to execute:
git checkout v25.3.x
git checkout -b manual-backport-29824-v25.3.x-902
git cherry-pick -x 1ea6e4e51e c77c86edde
git push origin manual-backport-29824-v25.3.x-902
gh pr create \
--title "[v25.3.x] cluster/feature_manager: use insert_or_assign for version updates" \
--base "v25.3.x" \
--label "kind/backport" \
--head "manual-backport-29824-v25.3.x-902" \
--draft \
--repo "redpanda-data/redpanda" \
--milestone "v25.3.x-next" \
--body "Backport of PR https://github.com/redpanda-data/redpanda/pull/29824 "