GNN4Colliders / docs /compatibility.md
ho22joshua's picture
Remove historical implementation from active tree
de46a3c
|
Raw
History Blame Contribute Delete
2.03 kB

Compatibility boundary

The package's canonical APIs use named EventMetadata fields and the version 1 checkpoint schema. Compatibility is explicit and one-way: old artifacts are adapted into the new representation and are never rewritten implicitly.

Artifact or behavior Supported Boundary Notes
New checkpoint (schema_version: 1) yes CheckpointManager Full model/lifecycle resume when state is present
Legacy model_epoch_N.pt checkpoint yes gnn4colliders.compat.load_legacy_checkpoint Model state and active early-stop fields are adapted
Legacy DDP/compiled prefixes yes normalize_legacy_state_dict_keys Supports module. and _orig_mod.
Legacy ROOT-GNN classifier name yes map_legacy_edge_network_state_dict Maps classify to classifier
Legacy optimizer state partial legacy checkpoint adapter Loaded when present; scheduler state is not available in the historical format
Legacy scheduler state no Historical checkpoints do not carry a supported scheduler state
Positional tracking rows yes, at ingestion boundary EventMetadata.from_legacy_tracking Exactly tracking[0] = fold, tracking[1] = weight; shorter rows fail
Generic/unknown tracking layouts no The package does not guess historical column meanings
Modern NPZ output yes inference.write_npz Named fields: sample_id, logits, scores, predictions, and available metadata
Historical tracking_info NPZ output no No active consumer remains; positional output is intentionally unsupported
Legacy YAML module/class/args compatibility only configuration boundary Accepted only where the semantic factory can safely interpret it; new configs use semantic model names

The frozen parity fixtures and root-gnn-parity-baseline tag preserve the historical observations for parity tests and investigation. Production modules do not import executable historical model code.