Title: Cross-implementation conformance: read the Raincloud corpus (247 Vortex files) and publish a compatibility matrix · Issue #205 · dfa1/vortex-java · GitHub
Open Graph Title: Cross-implementation conformance: read the Raincloud corpus (247 Vortex files) and publish a compatibility matrix · Issue #205 · dfa1/vortex-java
X Title: Cross-implementation conformance: read the Raincloud corpus (247 Vortex files) and publish a compatibility matrix · Issue #205 · dfa1/vortex-java
Description: 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...
Open Graph Description: 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 P...
X Description: 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 P...
Opengraph URL: https://github.com/dfa1/vortex-java/issues/205
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Cross-implementation conformance: read the Raincloud corpus (247 Vortex files) and publish a compatibility matrix","articleBody":"## Context\n\n@mprammer proposed using [Raincloud](https://github.com/spiraldb/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.\n\n## Approach\n\nFor each slug with a Vortex artifact:\n\n1. Build (or pull) the `parquet/\u003cslug\u003e.parquet` + `vortex/\u003cslug\u003e.vortex` pair via the Raincloud pipeline.\n2. Read the `.vortex` with vortex-java (`vortex-cli schema` / `count` / `export`).\n3. Oracle check: compare exported values against the Parquet sibling (pyarrow).\n4. Record per slug: schema parsed / row count / values match / encodings + layouts encountered / failure detail.\n\nOutput: a per-dataset compatibility matrix plus an encoding/layout coverage summary, published under `docs/`.\n\n## Plan\n\n- [x] Proof of concept: 4 small datasets (uci-iris, kepler-exoplanet-search-results, palmer-archipelago-antarctica-penguin-data, countries-of-the-world incl. VARIANT columns) — build, read, compare\n- [x] Conformance harness: scripted runner over any set of built slugs, emitting matrix rows (machine-readable + markdown)\n- [ ] Scale out to the full buildable corpus (small/medium slugs first; large ones — ClickBench, Wikipedia, JSONBench — need multi-hour builds and disk budget)\n- [ ] Publish compatibility matrix + file issues for each gap found (unknown encodings/layouts, value mismatches)\n- [ ] CI story: recurring subset run (blocked on mirror access — see open questions)\n\n## Open questions for @mprammer\n\n- 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.\n- Should the matrix pin the `vortex-data` version per run (files written by 0.69.0 today may use different encodings than future releases)?\n- A few source URLs may have rotted since the last build — want failures reported here or on the Raincloud tracker?\n\n## Progress\n\nResults will be posted as comments on this issue as phases complete.\n","author":{"url":"https://github.com/dfa1","@type":"Person","name":"dfa1"},"datePublished":"2026-07-06T18:42:40.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":6},"url":"https://github.com/205/vortex-java/issues/205"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:ec26529f-769f-9b90-6c93-83f80c2401d7 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | C2D6:30AD7C:2DF216A:40EFAB3:6A4CFC63 |
| html-safe-nonce | e9235873024a25efa5730e008301e7fc96f411dc09987f95911892feb6e6649e |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDMkQ2OjMwQUQ3QzoyREYyMTZBOjQwRUZBQjM6NkE0Q0ZDNjMiLCJ2aXNpdG9yX2lkIjoiMTE0OTM2Nzc4MTczMDA5MDA4NCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | eeda5c8c055d07826b8da3c032efdf4875ec75db4351525148464753c7bd0e05 |
| hovercard-subject-tag | issue:4822112225 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/dfa1/vortex-java/205/issue_layout |
| twitter:image | https://opengraph.githubassets.com/96b978b09c674b7939812fa61440270c221b8ca0b41fc50beed7e71599b7a8ef/dfa1/vortex-java/issues/205 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/96b978b09c674b7939812fa61440270c221b8ca0b41fc50beed7e71599b7a8ef/dfa1/vortex-java/issues/205 |
| og:image:alt | 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 P... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | dfa1 |
| hostname | github.com |
| expected-hostname | github.com |
| None | 31e4db13a9e20081f2fac78f441659a6576e582bbb15e153f9c7fb6473aa29f5 |
| turbo-cache-control | no-preview |
| go-import | github.com/dfa1/vortex-java git https://github.com/dfa1/vortex-java.git |
| octolytics-dimension-user_id | 5798698 |
| octolytics-dimension-user_login | dfa1 |
| octolytics-dimension-repository_id | 1249412947 |
| octolytics-dimension-repository_nwo | dfa1/vortex-java |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 1249412947 |
| octolytics-dimension-repository_network_root_nwo | dfa1/vortex-java |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 8307e9ba117a26e92a64fb1daf085d795a6552ed |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width