Skip to content

Ported the harness onto the sdk-streams stream runtime. - #3

Closed
moetemp wants to merge 3 commits into
mainfrom
moe/AI-198-sdk-streams
Closed

moetemp wants to merge 3 commits into
mainfrom
moe/AI-198-sdk-streams

Conversation

@moetemp

@moetemp moetemp commented Oct 17, 2026

Copy link
Copy Markdown
Owner

What changed?

This PR ports the harness's turn-event streams onto temporalio.contrib.streams, the Python face of the temporalio-streams runtime from moetemp/sdk-streams. The agent publishes with workflow_writer, activities append through activity_handle(), and clients and the web app read with get_stream_handle(client, ...). temporalio is pinned to the Bridge top of sdk-python, moe/bridge/v2/dr40-sdk-streams. STREAMS_STORE picks redis (the default, since the web app and the workers are separate processes) or memory. STREAMS_NOTIFY=1 lets idle readers sleep on the server's stream notifier. The first commit is the tree of the closed #2, so the later commits show only the move to the new runtime.

The store now refuses a foreign cursor at the read's first step, not at the call. So attach checks the resume point with a short first read, the Nexus pollMessages answers BAD_REQUEST from inside its read, and a subagent turn falls back to a full replay on the first pull.

Why?

The stream runtime moved out of sdk-python into sdk-streams, and the temporalio.streams registry that #2 used no longer exists. This keeps the harness as the shared yardstick on the current runtime.

How did you test it?

Link to a test plan if any -

  • Unit Tests
  • Staging
  • End to End Tests

It is the base that the sdk-streams port changes. Its tree equals that branch's head.
The stream runtime now lives in the sdk-streams crate. STREAMS_STORE picks Redis or memory, and the tests default to memory on the time-skipping server.
@moetemp moetemp mentioned this pull request Oct 18, 2026
2 of 3 tasks
@moetemp

moetemp commented Oct 18, 2026

Copy link
Copy Markdown
Owner Author

Replaced by #4, which ports the harness onto Brook.

@moetemp moetemp closed this Oct 18, 2026
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