Summary
Tracking issue for removing the temporary backward-compatibility code being added as part of #4548 (Octopus Power Up/Power Down migration) once it's no longer needed.
BottleCapDave's Octopus Energy integration retains the old saving-session/free-electricity entity and service names alongside the new Power Down/Power Up ones until January 2027 (per ADR-0004). Predbat's migration work (#4548) needs to support both names during that window - preferring the new ones, falling back to the old ones - so nothing breaks for users who haven't updated their integration or entities yet.
Once that transition window has passed (or once it's otherwise safe to assume everyone's on the new names - whichever comes first), the fallback branches should be removed to keep the code simple, rather than carrying dead compatibility paths forward indefinitely.
What to look for
Each fallback added for this migration is marked with a # TODO(#<this-issue-number>) comment at the point it lives, so a grep -rn "TODO(#<this-issue-number>)" across apps/predbat/ finds all of them when this is picked up. Known so far (list will grow as #4548 is implemented):
octopus.py - saving-session join now tries join_octoplus_power_down_session_event first, falling back to the deprecated join_octoplus_saving_session_event only if that fails.
Suggested timing
Not before January 2027, and only once there's reasonable confidence remaining old-integration users are rare enough that dropping the fallback won't cause silent breakage - worth a quick check of open issues/discussions for that before removing anything.
Summary
Tracking issue for removing the temporary backward-compatibility code being added as part of #4548 (Octopus Power Up/Power Down migration) once it's no longer needed.
BottleCapDave's Octopus Energy integration retains the old saving-session/free-electricity entity and service names alongside the new Power Down/Power Up ones until January 2027 (per ADR-0004). Predbat's migration work (#4548) needs to support both names during that window - preferring the new ones, falling back to the old ones - so nothing breaks for users who haven't updated their integration or entities yet.
Once that transition window has passed (or once it's otherwise safe to assume everyone's on the new names - whichever comes first), the fallback branches should be removed to keep the code simple, rather than carrying dead compatibility paths forward indefinitely.
What to look for
Each fallback added for this migration is marked with a
# TODO(#<this-issue-number>)comment at the point it lives, so agrep -rn "TODO(#<this-issue-number>)"acrossapps/predbat/finds all of them when this is picked up. Known so far (list will grow as #4548 is implemented):octopus.py- saving-session join now triesjoin_octoplus_power_down_session_eventfirst, falling back to the deprecatedjoin_octoplus_saving_session_eventonly if that fails.Suggested timing
Not before January 2027, and only once there's reasonable confidence remaining old-integration users are rare enough that dropping the fallback won't cause silent breakage - worth a quick check of open issues/discussions for that before removing anything.