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.
Severity: LOW (UX/footgun). Found during the #67 stress sweep.
Repro (all pass pre-flight, flag silently ignored)
Each runs as if the flag weren't there — no error, no warning.
Why it matters
A user who sets
--target-size 256x256for a tabular push (or--schemafor images) reasonably expects it to take effect. Silent acceptance means "I set it but it did nothing" with no feedback — the classic footgun. The--helpdocuments 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.