From 0be3f937bd6d6c2f6f03e32ff88bac3d2720c237 Mon Sep 17 00:00:00 2001 From: Ramon Roche Date: Wed, 8 Apr 2026 21:12:46 -0700 Subject: [PATCH] feat(manifest): add artifact_type discriminator field Tag every build entry with artifact_type="px4" so the manifest schema can represent non-.px4 producers in the future (VOXL2 .deb, Linux tarballs, etc.) without a format_version bump. Purely additive: older QGC ignores the unknown field, newer consumers branch on it. Signed-off-by: Ramon Roche --- Tools/manifest/update_firmware_manifest.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Tools/manifest/update_firmware_manifest.py b/Tools/manifest/update_firmware_manifest.py index 9ebc0742e5..bf44f901e6 100755 --- a/Tools/manifest/update_firmware_manifest.py +++ b/Tools/manifest/update_firmware_manifest.py @@ -89,6 +89,11 @@ def extract_px4_metadata(px4_path: Path) -> Optional[Dict[str, Any]]: if "manifest" in data and data["manifest"]: metadata["manifest"] = data["manifest"] + # Additive: discriminator so future non-.px4 producers (VOXL2 .deb, + # Linux tarballs, etc.) can coexist in the same manifest. Older QGC + # ignores unknown fields, new consumers branch on this. + metadata["artifact_type"] = "px4" + return metadata except json.JSONDecodeError as e: