{"id":"avro-promotions-one-directional","text":"Type promotion during schema resolution is strictly one-directional (int→long→float→double, int→float, int→double, long→double); reverse promotion (e.g., long→int) is not supported and raises SchemaCompatibilityError.","truth_value":"IN","source":"entries/2026/05/29/avro-serializer-avro_serializer.md","source_url":"","source_hash":"","justifications":[],"dependents":[],"metadata":{"example":"PROMOTIONS = {\n    (\"int\", \"long\"), (\"int\", \"float\"), (\"int\", \"double\"),\n    (\"long\", \"float\"), (\"long\", \"double\"),\n    (\"float\", \"double\"),\n}  # int->long ok, long->int is SchemaCompatibilityError"},"explanation":{"steps":[{"node":"avro-promotions-one-directional","truth_value":"IN","reason":"premise"}]}}