From d399fd056a5debb5aa72566473e0d4d586cfb59e Mon Sep 17 00:00:00 2001 From: Gautam Mehta <66418526+coderGtm@users.noreply.github.com> Date: Fri, 17 Apr 2026 18:07:17 +0530 Subject: [PATCH 1/3] fix: handle negative duration in get_audio_record_data If the duration is negative, it is set as None --- .../dags/providers/provider_api_scripts/wikimedia_commons.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py b/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py index d398d271bea..a91c87760b3 100644 --- a/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py +++ b/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py @@ -358,7 +358,8 @@ def get_image_record_data(record_data, media_info): def get_audio_record_data(self, record_data, media_info): """Extend record_data with audio-specific fields.""" - duration = int(float(media_info.get("duration", 0)) * 1000) + duration_raw = float(media_info.get("duration") or 0) + duration = int(duration_raw * 1000) if duration_raw > 0 else None record_data["duration"] = duration record_data["category"] = self.extract_audio_category(record_data) From 9d5856ef5054cf045aad55be85a183fa2b2bdbde Mon Sep 17 00:00:00 2001 From: Gautam Mehta <66418526+coderGtm@users.noreply.github.com> Date: Fri, 17 Apr 2026 18:12:22 +0530 Subject: [PATCH 2/3] revert: previous commit on main --- .../dags/providers/provider_api_scripts/wikimedia_commons.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py b/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py index a91c87760b3..d398d271bea 100644 --- a/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py +++ b/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py @@ -358,8 +358,7 @@ def get_image_record_data(record_data, media_info): def get_audio_record_data(self, record_data, media_info): """Extend record_data with audio-specific fields.""" - duration_raw = float(media_info.get("duration") or 0) - duration = int(duration_raw * 1000) if duration_raw > 0 else None + duration = int(float(media_info.get("duration", 0)) * 1000) record_data["duration"] = duration record_data["category"] = self.extract_audio_category(record_data) From 565397997fcf769d2f2bb30aa5f5b889ecc1b0f1 Mon Sep 17 00:00:00 2001 From: Gautam Mehta <66418526+coderGtm@users.noreply.github.com> Date: Fri, 17 Apr 2026 18:14:25 +0530 Subject: [PATCH 3/3] fix: negative audio duration handling in get_audio_record_data Handle duration as None if it's negative --- .../dags/providers/provider_api_scripts/wikimedia_commons.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py b/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py index d398d271bea..a91c87760b3 100644 --- a/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py +++ b/catalog/dags/providers/provider_api_scripts/wikimedia_commons.py @@ -358,7 +358,8 @@ def get_image_record_data(record_data, media_info): def get_audio_record_data(self, record_data, media_info): """Extend record_data with audio-specific fields.""" - duration = int(float(media_info.get("duration", 0)) * 1000) + duration_raw = float(media_info.get("duration") or 0) + duration = int(duration_raw * 1000) if duration_raw > 0 else None record_data["duration"] = duration record_data["category"] = self.extract_audio_category(record_data)