Context
@mprammer proposed using Raincloud as a cross-implementation conformance corpus: ~249 curated real-world datasets, 247 of which are built as both Parquet and Vortex (written by the Vortex Python bindings, currently vortex-data==0.69.0). Reading all of them correctly from vortex-java — validated against the Parquet sibling as oracle — would give both projects a real-world compatibility matrix, far stronger evidence than synthetic round-trip fixtures.
Approach
For each slug with a Vortex artifact:
- Build (or pull) the
parquet/<slug>.parquet + vortex/<slug>.vortex pair via the Raincloud pipeline.
- Read the
.vortex with vortex-java (vortex-cli schema / count / export).
- Oracle check: compare exported values against the Parquet sibling (pyarrow).
- Record per slug: schema parsed / row count / values match / encodings + layouts encountered / failure detail.
Output: a per-dataset compatibility matrix plus an encoding/layout coverage summary, published under docs/.
Plan
Open questions for @mprammer
- Is there a mirror (
RAINCLOUD_MIRROR) we could read prepared artifacts from, so CI doesn't rebuild datasets from upstream? Resolution order cache → mirror → build makes this the difference between a download and multi-hour rebuilds.
- Should the matrix pin the
vortex-data version per run (files written by 0.69.0 today may use different encodings than future releases)?
- A few source URLs may have rotted since the last build — want failures reported here or on the Raincloud tracker?
Progress
Results will be posted as comments on this issue as phases complete.
Context
@mprammer proposed using Raincloud as a cross-implementation conformance corpus: ~249 curated real-world datasets, 247 of which are built as both Parquet and Vortex (written by the Vortex Python bindings, currently
vortex-data==0.69.0). Reading all of them correctly from vortex-java — validated against the Parquet sibling as oracle — would give both projects a real-world compatibility matrix, far stronger evidence than synthetic round-trip fixtures.Approach
For each slug with a Vortex artifact:
parquet/<slug>.parquet+vortex/<slug>.vortexpair via the Raincloud pipeline..vortexwith vortex-java (vortex-cli schema/count/export).Output: a per-dataset compatibility matrix plus an encoding/layout coverage summary, published under
docs/.Plan
Open questions for @mprammer
RAINCLOUD_MIRROR) we could read prepared artifacts from, so CI doesn't rebuild datasets from upstream? Resolution order cache → mirror → build makes this the difference between a download and multi-hour rebuilds.vortex-dataversion per run (files written by 0.69.0 today may use different encodings than future releases)?Progress
Results will be posted as comments on this issue as phases complete.