Quite often there are situations where a bug exists in code, or a feature is requested, where it is expected that the fix/implementation will add less value to the business than the cost of any of: implementation, in particular validating that no side-effects are introduced pre-release and implementing any re-work required, OR cost of living with those side-effects in production.
So no-one wants negative ROI, so is it simply the case that we should live with such bugs or absence of desired business features or is there a better way? Is our only rational option to wait to implement these stories, until such a large change is required that they almost resolve themselves naturally as part of a bigger overhaul?
Edit: I am not looking to find a way to convince management to deal with technical debt and relations with management are not part of my question. My question is simply, is there a better option than the choices of (a) negative ROI given the codebase as-is (which may or may not include technical debt) or (b) wait until larger changes to code-base are required?