Skip to content

feat(configurator): mirror new feature flags onto ConfigEntsoe (parity)#350

Merged
bartzbeielstein merged 1 commit into
developfrom
feat/configentsoe-feature-flag-parity
Jun 8, 2026
Merged

feat(configurator): mirror new feature flags onto ConfigEntsoe (parity)#350
bartzbeielstein merged 1 commit into
developfrom
feat/configentsoe-feature-flag-parity

Conversation

@bartzbeielstein

Copy link
Copy Markdown
Collaborator

Why

ConfigEntsoe is an independent dataclass (not a ConfigMulti subclass). The opt-in feature flags added to ConfigMulti in 19.2.0 (population-weighted weather, degree-hours, apparent temperature) and 19.3.0 (ephemeris, day-type) were therefore unreachable for the ENTSO-E single-target pipeline — which is exactly the path the team_4 lecture submission uses. Without this, none of the new features can be switched on there.

What

Mirror onto ConfigEntsoe (all default off → byte-identical baseline):

  • use_population_weighted_weather, include_degree_hours, include_apparent_temperature, degree_hours_base_heating, degree_hours_base_cooling
  • include_ephemeris_features, include_day_type_features

BaseTask.build_exogenous_features already reads these via getattr, so no wiring change is needed. Adds test_config_entsoe_feature_parity.py which fails if a future ConfigMulti feature flag is not mirrored here.

QC

Parity tests (5) pass; existing ConfigEntsoe tests (94) green. ruff/black/isort clean, REUSE compliant, docs reference regenerated.

🤖 Generated with Claude Code

ConfigEntsoe is an independent dataclass (not a ConfigMulti subclass), so the
opt-in feature flags added to ConfigMulti in 19.2.0/19.3.0 were unreachable for
the ENTSO-E single-target pipeline (the one the team_4 lecture uses). Mirror
them so ConfigEntsoe(...) can enable them:

- use_population_weighted_weather, include_degree_hours,
  include_apparent_temperature, degree_hours_base_{heating,cooling} (19.2.0)
- include_ephemeris_features, include_day_type_features (19.3.0)

All default off → byte-identical baseline. base.py already reads them via
getattr, so no wiring change is needed. Adds a parity test that fails if a
future ConfigMulti feature flag is not mirrored here.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@bartzbeielstein bartzbeielstein merged commit 119f40b into develop Jun 8, 2026
10 checks passed
@bartzbeielstein bartzbeielstein deleted the feat/configentsoe-feature-flag-parity branch June 8, 2026 18:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant