Skip to content

Split StreamMicrogridDispatches into HostDispatch API#351

Open
Marenz wants to merge 2 commits into
frequenz-floss:v1.x.xfrom
Marenz:split-hostdispatch
Open

Split StreamMicrogridDispatches into HostDispatch API#351
Marenz wants to merge 2 commits into
frequenz-floss:v1.x.xfrom
Marenz:split-hostdispatch

Conversation

@Marenz

@Marenz Marenz commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Remove the controller-facing StreamMicrogridDispatches RPC and its request/response messages from the public Dispatch API.

  • frequenz-api-dispatch-common — shared message types (to be created)
  • frequenz-api-dispatch — cloud/app-facing CRUD operations (this repo)

Note: The shared message types (Dispatch, DispatchData, RecurrenceRule, TargetComponents, etc.) remain in this repo for now and will be moved to frequenz-api-dispatch-common in a follow-up PR once that repo is published.

Remove the controller-facing StreamMicrogridDispatches RPC and its
request/response messages from the public Dispatch API. The stream
operation (and future status reporting) now live in the new
frequenz-api-hostdispatch repo (frequenz-io, private).

This is the first step of the three-repo split:
- frequenz-api-dispatch-common (shared types, public)
- frequenz-api-dispatch (cloud CRUD, public, this repo)
- frequenz-api-hostdispatch (controller ops, private)

See frequenz-floss#350 for the full split plan.

Signed-off-by: Mathias L. Baumann <mathias.baumann@frequenz.com>
@Marenz Marenz requested a review from a team as a code owner June 12, 2026 11:46
@Marenz Marenz requested review from stefan-brus-frequenz and removed request for a team June 12, 2026 11:46
@github-actions github-actions Bot added part:docs Affects the documentation part:protobuf Affects the protocol buffer definition files labels Jun 12, 2026
Signed-off-by: Mathias L. Baumann <mathias.baumann@frequenz.com>
@llucax

llucax commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

What are we gaining by removing streaming from this API? It is a breaking change, what's the improvement here?

@Marenz

Marenz commented Jun 15, 2026

Copy link
Copy Markdown
Contributor Author

Streaming is controller-only and no public client uses it - Kuiper proxy and the etrading actor are both CRUD-only. Removing it just keeps the public API honest. But it's a breaking change for no functional gain, so I'm happy to keep it in the public API too - worth discussing whether the tidier surface is worth the break.

@llucax

llucax commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

We can deprecate it to make it clear the intention is to remove it in the future.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

part:docs Affects the documentation part:protobuf Affects the protocol buffer definition files

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants