Skip to content

Add steam boiler pool#1399

Draft
simonvoelcker wants to merge 2 commits intofrequenz-floss:v1.x.xfrom
simonvoelcker:steam-boiler-pool
Draft

Add steam boiler pool#1399
simonvoelcker wants to merge 2 commits intofrequenz-floss:v1.x.xfrom
simonvoelcker:steam-boiler-pool

Conversation

@simonvoelcker
Copy link
Copy Markdown
Contributor

No description provided.

@simonvoelcker simonvoelcker self-assigned this May 6, 2026
@github-actions github-actions Bot added part:docs Affects the documentation part:tests Affects the unit, integration and performance (benchmarks) tests part:tooling Affects the development tooling (CI, deployment, dependency management, etc.) part:data-pipeline Affects the data pipeline part:microgrid Affects the interactions with the microgrid labels May 6, 2026
Signed-off-by: Simon Völcker <simon.voelcker@frequenz.com>
Signed-off-by: Simon Völcker <simon.voelcker@frequenz.com>
@simonvoelcker simonvoelcker requested a review from Copilot May 6, 2026 14:17
@simonvoelcker simonvoelcker marked this pull request as ready for review May 6, 2026 14:18
@simonvoelcker simonvoelcker requested a review from a team as a code owner May 6, 2026 14:18
@simonvoelcker simonvoelcker requested review from ela-kotulska-frequenz and removed request for a team May 6, 2026 14:18
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a new SteamBoilerPool timeseries package intended to provide a pool abstraction (similar to existing component pools) for observing and controlling steam boiler components, and updates dependencies/release notes accordingly.

Changes:

  • Added a new timeseries.steam_boiler_pool package with SteamBoilerPool, reference store, and report protocol types.
  • Updated pyproject.toml dependency minimums for frequenz-client-microgrid and frequenz-microgrid-component-graph.
  • Added a release note entry announcing SteamBoilerPool.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
src/frequenz/sdk/timeseries/steam_boiler_pool/_steam_boiler_pool.py Adds the SteamBoilerPool wrapper and exposes a total-power Formula.
src/frequenz/sdk/timeseries/steam_boiler_pool/_steam_boiler_pool_reference_store.py Adds the reference store for shared formula/bounds tracking state (currently incomplete).
src/frequenz/sdk/timeseries/steam_boiler_pool/_result_types.py Adds the SteamBoilerPoolReport protocol for power status reporting.
src/frequenz/sdk/timeseries/steam_boiler_pool/__init__.py Exposes public symbols for the new steam boiler pool package.
RELEASE_NOTES.md Announces the new SteamBoilerPool feature.
pyproject.toml Bumps dependency constraints needed for the new pool/formula support.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


@override
def create_bounds_tracker(self) -> None:
"""Create the bounds tracker for the pool."""
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@llucax @shsms do we need a bounds tracker for steam boilers? Asking because I don't know what bounds trackers are used for at the moment, and also because the existing ones use dataclasses from this module that openly states it should be removed in the near future. Can either of you shine some light on this?

Comment on lines +41 to +46
return self._pool_ref_store.formula_pool.from_power_formula(
"steam_boiler_power",
connection_manager.get().component_graph.steam_boiler_formula(
self._pool_ref_store.component_ids
),
)
Comment thread RELEASE_NOTES.md
## New Features

<!-- Here goes the main new features and examples or instructions on how to use them -->
Added SteamBoilerPool, which allows to control a pool of steam boiler components.
Comment thread RELEASE_NOTES.md
## New Features

<!-- Here goes the main new features and examples or instructions on how to use them -->
Added SteamBoilerPool, which allows to control a pool of steam boiler components.
# License: MIT
# Copyright © 2026 Frequenz Energy-as-a-Service GmbH

"""Interactions with steam boilers."""
@simonvoelcker simonvoelcker marked this pull request as draft May 7, 2026 08:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

part:data-pipeline Affects the data pipeline part:docs Affects the documentation part:microgrid Affects the interactions with the microgrid part:tests Affects the unit, integration and performance (benchmarks) tests part:tooling Affects the development tooling (CI, deployment, dependency management, etc.)

Projects

Status: To do

Development

Successfully merging this pull request may close these issues.

2 participants