Skip to content

feat(core): return metadata from read#7624

Draft
Xuanwo wants to merge 18 commits into
mainfrom
xuanwo/read-metadata-api
Draft

feat(core): return metadata from read#7624
Xuanwo wants to merge 18 commits into
mainfrom
xuanwo/read-metadata-api

Conversation

@Xuanwo
Copy link
Copy Markdown
Member

@Xuanwo Xuanwo commented May 26, 2026

Which issue does this PR close?

Closes #5872.

Rationale for this change

Read responses already carry useful metadata such as payload length, content range, ETag, and last modified time. Returning this metadata from RpRead lets upper layers observe read metadata without forcing an extra stat on the hot read path.

What changes are included in this PR?

This updates RpRead to carry Metadata instead of separate size/range hints, exposes observed metadata from readers and read streams, and wires existing services to populate read metadata from response headers, in-memory buffers, fs metadata, or existing service-specific read information.

Are there any user-facing changes?

Yes. Reader::metadata() can return complete object metadata observed after reads, and stream adapters can expose read response metadata before consuming the response body. RpRead::size and RpRead::range are replaced by RpRead::metadata.

AI Usage Statement

Used OpenAI GPT-5 to assist implementation.

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.

Tracking Issues of RFC-5871: Read Returns Metadata

1 participant