From 389ac58449b7b53bb088b4e8e4d1322c95069aea Mon Sep 17 00:00:00 2001 From: Nikolay Petrov Date: Mon, 20 Apr 2026 18:43:28 +0300 Subject: [PATCH 1/2] fix: bug with `hash_mapping` for acled/wikipedia introduced in `7f6c3cda` --- src/orchestration/_io.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/orchestration/_io.py b/src/orchestration/_io.py index 810e0778..f2f7f1ac 100644 --- a/src/orchestration/_io.py +++ b/src/orchestration/_io.py @@ -213,6 +213,7 @@ def upload_hash_mapping(raw_json: str, source_name: str) -> None: bucket_name=env.QUESTION_BANK_BUCKET, local_filename=local_filename, destination_folder=source_name, + filename="hash_mapping.json", ) From b9c12342e6284541c07bf35bc193b8296c0101cf Mon Sep 17 00:00:00 2001 From: Nikolay Petrov Date: Mon, 20 Apr 2026 18:44:20 +0300 Subject: [PATCH 2/2] fix: introduce the same `is None` guard to acled as exists for Wikipedia so that acled does not blow up in case of hashing issues --- src/sources/acled.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/sources/acled.py b/src/sources/acled.py index a2a7726c..a07f41a3 100644 --- a/src/sources/acled.py +++ b/src/sources/acled.py @@ -72,6 +72,9 @@ def _resolve_single_question(self, mid, forecast_due_date, resolution_date, dfq, return np.nan d = self._id_unhash(mid) + if d is None: + logger.error(f"ACLED: could NOT unhash {mid}") + return np.nan return self._acled_resolve( **d,