Skip to content

feat(brook): add the Stream service messages (as experimental) - #895

Draft
moetemp wants to merge 1 commit into
mainfrom
moe/stream-service-messages
Draft

moetemp wants to merge 1 commit into
mainfrom
moe/stream-service-messages

Conversation

@moetemp

@moetemp moetemp commented Oct 26, 2026 •

Copy link
Copy Markdown

What changed?
This PR adds the Stream service messages, marked experimental.

  • stream/v1/message.proto has the shared types, streamservice/v1/request_response.proto has the requests and responses, and enums/v1/stream.proto has the enums.
  • StreamRef.owner is a common.v1.Execution, the Workflow or Standalone Activity that owns the Stream.
  • A read gives StreamRecord items. Each holds one oneof item: a StreamData Record, a Supersession, or the StreamClose. offset stays outside the oneof.
  • CreateStream is create-or-get. A Stream that exists keeps its Retention, and created is false.
  • A Stream carries one payload type, so a Record has no Topic and a read has no filter.
  • The Topic fields of earlier drafts are reserved, since the SDK previews used them.
  • StreamErrorDetails.reason is the StreamErrorReason enum. Each case names its gRPC status code, so each SDK can map a reason to one error type.
  • No service.proto yet. It comes with the later stage of the project (Jetty).

Why?
The SDKs and Redis already use these messages, so they need one home before a server serves them.

Breaking changes
None. These are new files.

Server PR
None needed for now.

@moetemp
moetemp requested review from a team October 26, 2026 16:37
@moetemp moetemp changed the title Added the Stream service messages as experimental. feat(brook): add the Stream service messages (as experimental) Oct 26, 2026
@moetemp
moetemp marked this pull request as draft October 26, 2026 16:53
@moetemp
moetemp force-pushed the moe/stream-service-messages branch from 3fa37e2 to 3b6b4b2 Compare October 27, 2026 16:55
The crate, sdk-python and later the server read one copy of these messages. The gRPC service
and its Nexus annotations come with the server.
@moetemp
moetemp force-pushed the moe/stream-service-messages branch from 3b6b4b2 to 482ec01 Compare October 27, 2026 23:45
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