Skip to content

docs: add spec-style description of the consolidated metadata format - #4283

Draft
d-v-b wants to merge 2 commits into
zarr-developers:mainfrom
d-v-b:claude/docs-consolidated-metadata-spec-6f3c45
Draft

docs: add spec-style description of the consolidated metadata format#4283
d-v-b wants to merge 2 commits into
zarr-developers:mainfrom
d-v-b:claude/docs-consolidated-metadata-spec-6f3c45

Conversation

@d-v-b

@d-v-b d-v-b commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Summary

This is a claude-authored contribution that adds specification-style documentation for how zarr-python implements consolidated metadata. I'm pretty busy these days with a newborn baby so I can't give this careful review. I am opening this as a draft and leaving it to other folks to push it forward.

cc @normanrz

🤖 AI text below 🤖

Add a new user-guide page that describes exactly what zarr-python reads and writes for consolidated metadata in Zarr formats 2 and 3, so that other implementations can interoperate. Quotes and attributes the schema text from zarr-specs#309 (Tom Augspurger, CC-BY-4.0), documents the key ordering, the empty child-group marker, the v2 .zmetadata layout and its deviation from zarr-python 2.x, and the reader/writer procedures.

Also correct the 3.1.1 sort-order note on the existing page, which said "lexicographic" while the implementation uses NFKC-casefolded ordering.

Assisted-by: ClaudeCode:claude-fable-5

Author attestation

  • I am a human, these are my changes, and I have reviewed and understood every change and can explain why each is correct.

TODO

  • Add unit tests and/or doctests in docstrings
  • Add docstrings and API docs for any new/modified user-facing classes and functions
  • New/modified features documented in docs/user-guide/*.md
  • Changes documented as a new file in changes/
  • GitHub Actions have all passed
  • Test coverage is 100% (Codecov passes)

Add a new user-guide page that describes exactly what zarr-python reads
and writes for consolidated metadata in Zarr formats 2 and 3, so that
other implementations can interoperate. Quotes and attributes the schema
text from zarr-specs#309 (Tom Augspurger, CC-BY-4.0), documents the key
ordering, the empty child-group marker, the v2 `.zmetadata` layout and
its deviation from zarr-python 2.x, and the reader/writer procedures.

Also correct the 3.1.1 sort-order note on the existing page, which said
"lexicographic" while the implementation uses NFKC-casefolded ordering.

Assisted-by: ClaudeCode:claude-fable-5
@github-actions github-actions Bot added the needs release notes Automatically applied to PRs which haven't added release notes label Aug 25, 2026
@d-v-b

d-v-b commented Aug 25, 2026

Copy link
Copy Markdown
Contributor Author

@TomAugspurger you should probably also have a look, since this is an LLM summarizing your work

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs release notes Automatically applied to PRs which haven't added release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant