Skip to content

Extract explicit Parquet payload fields and keep dataset interpretation separate - #31

Merged
MilkClouds merged 2 commits into
mainfrom
refactor/remove-lerobot
Oct 3, 2026
Merged

MilkClouds merged 2 commits into
mainfrom
refactor/remove-lerobot

Conversation

@MilkClouds

@MilkClouds MilkClouds commented Oct 3, 2026 •

Copy link
Copy Markdown
Contributor

Extract explicitly selected Parquet binary columns or struct leaves into Blob Packs with blobpack convert-parquet and blobpack.parquet.convert. Keep other table values, struct siblings, nulls and payload bytes intact. No media column, episode boundary or clock is inferred.

Examples:

blobpack convert-parquet ./data ./out --column audio --yes
blobpack convert-parquet ./data ./out --field observation.image bytes --yes

Column names are literal, including dots. Output contains tables/, media/ and extraction.json. The receipt archives original Arrow schemas; HF/Pandas schema metadata is omitted from rewritten tables because it describes a different physical representation. Other schema metadata is retained. The converter reads batches, requires a new disjoint destination, and cleans failed output. It does not follow external image paths or copy non-Parquet files.

Keep dataset interpretation in Epishelf's common conversion path. Remove blobpack's dataset-specific LeRobot conversion and video splitting; generic Parquet and Lance extraction operate on user-selected payloads. Epishelf conversion writes its own episode/stream BRCD schema, while column extraction preserves the selected table's structure.

Based on main; README changes are limited to the conversion commands. Validation: make check and 149 tests passed, including extraction, struct/null preservation, empty tables, relocation, explicit CLI selection and failure cleanup.

Local codex review found and verified a fix for required binary children under nullable structs; the follow-up review found no actionable defects.

@MilkClouds
MilkClouds force-pushed the refactor/remove-lerobot branch 2 times, most recently from 34529ac to afeae16 Compare October 3, 2026 13:29
@MilkClouds MilkClouds changed the title Move LeRobot conversion ownership to Epishelf Keep robot dataset conversion in the dataset layer Oct 3, 2026
@MilkClouds
MilkClouds changed the base branch from main to docs/brcd-contract October 3, 2026 13:29
@MilkClouds
MilkClouds force-pushed the refactor/remove-lerobot branch from afeae16 to b48ecef Compare October 3, 2026 13:47
@MilkClouds MilkClouds changed the title Keep robot dataset conversion in the dataset layer Extract explicit Parquet payload fields and keep dataset interpretation separate Oct 3, 2026
@MilkClouds
MilkClouds force-pushed the refactor/remove-lerobot branch from b48ecef to c38ecae Compare October 3, 2026 13:53
@MilkClouds
MilkClouds changed the base branch from docs/brcd-contract to main October 3, 2026 13:53
@MilkClouds
MilkClouds merged commit e0d7120 into main Oct 3, 2026
5 checks passed
@MilkClouds
MilkClouds deleted the refactor/remove-lerobot branch October 3, 2026 13:56
MilkClouds added a commit that referenced this pull request Oct 5, 2026
Move the Unreleased entries into 0.2.0, add #31's removal of the LeRobot conversion and its Parquet extraction, and
record 0.1.5 (tagged without a changelog section): BRCD naming, the descriptor budget and its alias removal, the
catalog traversal index.


Claude-Session: https://claude.ai/code/session_0161tm26fGeWCitPobobqEeE

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
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.

1 participant