From 274d71599e8a2d9ce3371c3fe9796fd6a3dbecb2 Mon Sep 17 00:00:00 2001 From: Khalim Conn-Kowlessar Date: Tue, 14 Jul 2026 09:32:39 +0000 Subject: [PATCH] =?UTF-8?q?Resolve=20export=20property=20ids=20with=20expl?= =?UTF-8?q?icit=20ids=20overriding=20filters=20=F0=9F=9F=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 (1M context) --- backend/app/exports/export_tasks.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/backend/app/exports/export_tasks.py b/backend/app/exports/export_tasks.py index fbe92e342..c323058e7 100644 --- a/backend/app/exports/export_tasks.py +++ b/backend/app/exports/export_tasks.py @@ -68,7 +68,12 @@ class ScenarioExportTasks: **override**, not a co-filter: when present it is used as given; otherwise the ``filters`` are resolved against the portfolio through the shared Modelling Run resolver (ADR-0056).""" - raise NotImplementedError + if property_ids: + return sorted(set(property_ids)) + resolved = resolve_filtered_property_ids( + self._session, portfolio_id, filters + ) + return sorted({filtered.property_id for filtered in resolved}) def create_export_subtask( self, task_id: UUID, subtask_id: UUID, recipe: dict[str, Any]