Repository navigation
feat(schema): add T4Dataset 1.0 dataset loader with lookup shortcut fields - #304
Merged
Merged
Conversation
jacoblambert
force-pushed
the
v1/index-fields
branch
from
October 14, 2026 11:10
6788cbf to
fa89ec4
Compare
jacoblambert
force-pushed
the
v1/loader
branch
from
October 14, 2026 11:10
b1b891e to
634c0d0
Compare
jacoblambert
force-pushed
the
v1/loader
branch
from
October 15, 2026 03:21
634c0d0 to
de0781d
Compare
jacoblambert
force-pushed
the
v1/index-fields
branch
from
October 15, 2026 03:21
fa89ec4 to
fa102ce
Compare
jacoblambert
marked this pull request as ready for review
October 15, 2026 06:05
jacoblambert
force-pushed
the
v1/loader
branch
from
October 15, 2026 08:26
de0781d to
c39b8ed
Compare
jacoblambert
force-pushed
the
v1/index-fields
branch
from
October 15, 2026 08:26
fa102ce to
a2355f7
Compare
jacoblambert
force-pushed
the
v1/loader
branch
from
October 15, 2026 10:37
c39b8ed to
f197865
Compare
jacoblambert
force-pushed
the
v1/loader
branch
from
October 21, 2026 01:31
f197865 to
bebb99e
Compare
jacoblambert
force-pushed
the
v1/index-fields
branch
from
October 21, 2026 01:31
3c5c32d to
26a6236
Compare
ktro2828
approved these changes
Oct 21, 2026
jacoblambert
force-pushed
the
v1/index-fields
branch
from
October 22, 2026 09:42
26a6236 to
f1da7ec
Compare
jacoblambert
force-pushed
the
v1/loader
branch
from
October 22, 2026 09:44
bebb99e to
c796e9f
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds
load_dataset(data_root)(t4_devkit/schema/v1/loader.py), a minimal loader for 1.0 datasets:manifest.json.FileNotFoundError; a missing optional table is empty.T4Tables: the manifest, the records per table, andget(table, token)lookup.0.x datasets (no
manifest.json) raiseNotImplementedErrorfor now; their conversion plugs in at step 2 in a later PR.Shortcut fields
T4Tablesfills the same convenience fields (init=False, not written to JSON) that 0.xT4Devkitfills when loading:sample.data(channel → key frame token),sample.ann_3ds,sample.ann_2dssample_data.channel,sample_data.modalitysensor.first_sd_tokencategory_nameonsample_annotationandobject_annDifferences from 0.x:
sample.surface_annsis gone (surface_annis merged intoobject_ann, feat(schema): add T4Dataset 1.0 label tables, merge surface_ann into object_ann #299).log.map_tokenis a stored field in 1.0, not filled at load time.None, not"".first_sd_tokenis the earliest frame by timestamp, instead of relying on file order.Why outside
T4DevkitA first attempt added a second load path inside
T4Devkit, with "not supported for 1.0" guards in 11 helper methods. That puts scaffolding in the class users call. Instead, the load path is built and tested on its own (this PR, LiDAR and camera reading, 0.x conversion), andT4Devkitswitches to it once, in a later PR.Why raw dicts first, then records
That split is where the 0.x conversion plugs in: 0.x tables are converted to 1.0 dicts, then go through the same build and validation as 1.0 datasets.
No change to existing code; 0.x loading in
T4Devkitis untouched until we finish the implementation and merge everything.Tests
tests/schema/v1/test_loader.py:NotImplementedError.vehicle) raisesFileNotFoundError; without an optional one (caption), that table is empty.