Skip to content

[Brook K3] Added the Store trait and its capabilities. - #45

Closed
moetemp wants to merge 1 commit into
moe/brook/review/k2-ids-vectorsfrom
moe/brook/review/k3-store-trait
Closed

moetemp wants to merge 1 commit into
moe/brook/review/k2-ids-vectorsfrom
moe/brook/review/k3-store-trait

Conversation

@moetemp

@moetemp moetemp commented Oct 25, 2026 •

Copy link
Copy Markdown
Owner

What changed?

This PR adds the Store trait, the stored Record and batch limits, and the Store capabilities.

  • A Store declares what it does atomically. The service refuses a call that needs a missing one.
  • owner_chain reads a ref's owner business_id only for a Workflow owner, for the close check.
  • An append gives a batch's Records consecutive offsets that end at its last offset.

Depends on #44 (K2). Review lane is the Rust reviewers.
Part of the Brook review series.

Why?

The memory Store, the Redis Store and later a native Store implement this trait. A small PR keeps
the contract apart from any one Store.

How did you test it?

cargo fmt, clippy (both feature sets), cargo test and the FIPS tree check. Fork CI passes.

Link to a test plan if any -

  • Unit Tests
  • Staging
  • End to End Tests

@moetemp
moetemp force-pushed the moe/brook/review/k3-store-trait branch 3 times, most recently from cac83a3 to 2d43c5c Compare October 26, 2026 01:08
A Store declares the rules it applies atomically beyond the log, and
the service refuses a call that needs a capability the Store lacks.
The trait is small so that a native Store can implement it too.
@moetemp
moetemp force-pushed the moe/brook/review/k3-store-trait branch from 2d43c5c to c75d106 Compare October 26, 2026 08:00
@moetemp

moetemp commented Oct 27, 2026

Copy link
Copy Markdown
Owner Author

Moved to moetemp/sdk-rust#214 (K3). The crate split in two. The shared runtime is now the crate temporalio-streams in sdk-rust (moetemp/sdk-rust#212 to #220), and the Redis Store is temporalio-streams-redis in temporal-community/sdk-streams (#1 to #3).

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