Skip to content

storage: unit-test harness for the source persist sink - #38933

Draft
martykulma wants to merge 1 commit into
maz-sink-ceiling-designfrom
maz-sink-test-harness
Draft

martykulma wants to merge 1 commit into
maz-sink-ceiling-designfrom
maz-sink-test-harness

Conversation

@martykulma

@martykulma martykulma commented Sep 19, 2026

Copy link
Copy Markdown
Contributor

The sink had no unit tests, so its behavior only showed up in the shape of the
shards it wrote.

Adds a timely harness that scripts descriptions and data into write_batches,
actually appends the batches under persist's part bounds validation, and reads
the shard back. Appending for real matters here, declared bounds vs append
bounds is exactly where this operator goes wrong.

Tests pin current behavior rather than changing it. One batch per timestamp, one
per description, none for a description covering nothing.

write_batches takes SourceStatistics instead of the whole StorageState so
it can be built outside a dataflow.

🤖 Generated with Claude Code

Adds a timely-driven harness that scripts descriptions and data into
write_batches, appends the emitted batches for real under persist's part
bounds validation, and reads the shard back. Tests pin the sink's current
behavior: one batch per timestamp, one batch per description, and no batch
for a description that covers nothing.

write_batches takes a SourceStatistics rather than the whole StorageState,
so it can be built outside a dataflow that has one.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@martykulma
martykulma added this pull request to stack #38937 September 19, 2026 00:30
@martykulma martykulma changed the title maz sink test harness storage: unit-test harness for the source persist sink Sep 19, 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