diff --git a/src/core/tasks/url/operators/auto_relevant/queries/get_tdos.py b/src/core/tasks/url/operators/auto_relevant/queries/get_tdos.py index 570f087c..b3ba90ec 100644 --- a/src/core/tasks/url/operators/auto_relevant/queries/get_tdos.py +++ b/src/core/tasks/url/operators/auto_relevant/queries/get_tdos.py @@ -21,21 +21,18 @@ def __init__(self): async def run(self, session: AsyncSession) -> list[URLRelevantTDO]: query = ( - select( - URL - ) + select(URL) .options( selectinload(URL.compressed_html) ) .join(URLCompressedHTML) + .outerjoin(AutoRelevantSuggestion) .where( URL.status == URLStatus.PENDING.value, + AutoRelevantSuggestion.id.is_(None), ) ) - query = StatementComposer.exclude_urls_with_extant_model( - query, - model=AutoRelevantSuggestion - ) + query = query.limit(100).order_by(URL.id) raw_result = await session.execute(query) urls: Sequence[Row[URL]] = raw_result.unique().scalars().all() diff --git a/tests/automated/integration/tasks/url/impl/auto_relevant/test_task.py b/tests/automated/integration/tasks/url/impl/auto_relevant/test_task.py index cfa60cf8..0bd891c9 100644 --- a/tests/automated/integration/tasks/url/impl/auto_relevant/test_task.py +++ b/tests/automated/integration/tasks/url/impl/auto_relevant/test_task.py @@ -27,6 +27,8 @@ async def test_url_auto_relevant_task(db_data_creator): assert_url_task_has_expected_run_info(run_info, url_ids) + assert not await operator.meets_task_prerequisites() + adb_client = db_data_creator.adb_client # Get URLs, confirm one is marked as error urls: list[URL] = await adb_client.get_all(URL)