Skip to content

dataset push: category-irrelevant flags are silently accepted and ignored (e.g. --target-size on tabular, --schema on images) #77

@saadqbal

Description

@saadqbal

Severity: LOW (UX/footgun). Found during the #67 stress sweep.

Repro (all pass pre-flight, flag silently ignored)

tracebloc dataset push ./tab/... --category tabular_classification --target-size 512x512   ...   # target-size meaningless for tabular
tracebloc dataset push ./tab/... --category tabular_classification --time-column created_at ...   # time-column only for time_to_event_prediction
tracebloc dataset push ./tab/... --category tabular_classification --number-of-keypoints 17 ...   # keypoints only for keypoint_detection
tracebloc dataset push ./img/... --category image_classification  --schema a:INT          ...   # schema only for tabular/time-series

Each runs as if the flag weren't there — no error, no warning.

Why it matters

A user who sets --target-size 256x256 for a tabular push (or --schema for images) reasonably expects it to take effect. Silent acceptance means "I set it but it did nothing" with no feedback — the classic footgun. The --help documents which flags belong to which category, but nothing enforces or warns at runtime.

Expected

When a flag that's only meaningful for category X is set with category Y, emit a warning (Note: --target-size is ignored for tabular_classification) — or, for clearly-nonsensical combinations, error. At minimum warn; don't silently drop.

Part of #67.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions