Agreed. I tend to think of it like this.
Runtime config is a pure function of environment.
A versioned binary/artifact should be the same across environments.
Release stage is a property of environment. (local/dev -> preview/staging -> prod)
If behaviour or value of something changes across environments it belongs as config and not code.