Skip to content

Legacy to Canonical Mapping

This page documents migration behavior and key mapping between legacy and canonical config shapes.

1) Canonical Contract

  • Runtime consumes canonical config only.
  • Legacy config is accepted only at ingestion and migrated once.
  • Canonical payloads containing legacy aliases are rejected.

8) Validation and Rejection Rules

Canonical validation enforces: - required sections exist, - MODEL.task equals TASK, - component graph validity, - no legacy aliases in canonical payload.

Forbidden in canonical payload (examples): - top-level dali - DATA.annotations.* - DATA.<split>.path / video_path - MODEL.backbone / neck / head / post_proc - TRAIN.num_epochs / TRAIN.max_epochs

9) Migration Mapping Quick Reference

Legacy Canonical
dali DATA.common.runtime.loader_backend
DATA.<split>.path DATA.common.splits.<split>.annotation_path
DATA.<split>.video_path DATA.common.splits.<split>.source_path
MODEL.backbone MODEL.components.*(kind=encoder)
MODEL.neck MODEL.components.*(kind=adapter)
MODEL.head MODEL.components.*(kind=head)
MODEL.post_proc MODEL.components.*(kind=postprocessor)
TRAIN.num_epochs / TRAIN.max_epochs TRAIN.epochs