IMHO, this is a case where downstream is pushing a problem they might have upstream.
The intent of something like cabal-plan-bounds
is to ensure a package author who wishes to do so, can publish a package with (lower & upper) bounds set to something that’s known to work. Validated by CI or otherwise (manually), which in any case has a cost (CI may be somewhat-free’ish nowadays, but still), hence, the package author might decide to bump lower bounds because keeping them low (and tested) is costly when new upper bounds need to be supported.
Even if there’s no technical reason to bump said lower bounds, i.e., the package may still work with older versions of the dependency.
If downstream (a distribution, a company,…) wants to ship/use the package with older versions of dependencies, its on to them to validate things work properly, and apply bounds relaxations as appropriate (e.g., by applying a vendor patch during the package build process, or maybe using allow-older
definitions in cabal.project
).