Expose Datagen history reads and retain folded codec metadata - #252
Merged
beinan merged 1 commit intoSep 11, 2026
Merged
Conversation
Expose embedded and remote raw event history, retain folded codec metadata, and reject mixed append codecs. Refresh raw-history server handles before scans to avoid truncated histories after external WAL merges. Add regression tests and compatibility documentation. Generated with MAI Agents: https://github.com/infinity-microsoft/mai-agents Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: a563b220-9ce6-4724-97e4-601ec8ffd89a
beinan
approved these changes
Sep 11, 2026
beinan
marked this pull request as ready for review
September 11, 2026 17:01
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
item_events/root_eventsthrough embedded and remote stores, preserving overwritten values, per-item ordering and lazy blobs. Encode fan-out IDs safely in HTTP paths.field_type/codec_versionin folded fields. SET metadata follows the winning value; APPEND rejects mixed codecs instead of mislabeling accumulated values.Compatibility
No event-schema migration or changes to Context, Rollout, Generic, or shared MemWAL behavior. Python field dictionaries gain metadata keys; older server responses expose missing metadata as
None, not an inferred codec.Rust users must update
DatagenFieldStatevariants, DTO literals and customDatagenStoreApiimplementations. Mixed-codec append histories now fail to fold. Deploy the updated server before using the new item-history endpoint.Validation
Existing baseline issues, both reproduced on pristine
8fe27b2and left out of scope:test_persistence.py::test_image_round_tripreads zero base-table rows after the image write.Image.get_format_mimetypeaccess atapi.py:210.The Python skip is opt-in GCS integration; the expected failure is the existing MemWAL/base-version time-travel test. No pre-commit hook or configuration is installed in this repository.
🤖 Generated with MAI Agents