From 561b8b078b9b71b9241e351dc682e87d29e0c20d Mon Sep 17 00:00:00 2001 From: Khalim Conn-Kowlessar Date: Tue, 7 Jul 2026 11:12:12 +0000 Subject: [PATCH] =?UTF-8?q?Test=20names=20state=20the=20surviving=20failur?= =?UTF-8?q?e-recovery=20behaviors=20=F0=9F=9F=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5 --- tests/domain/tasks/test_subtasks.py | 2 +- tests/orchestration/test_task_orchestrator.py | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/domain/tasks/test_subtasks.py b/tests/domain/tasks/test_subtasks.py index d379439c6..18d09a6a5 100644 --- a/tests/domain/tasks/test_subtasks.py +++ b/tests/domain/tasks/test_subtasks.py @@ -49,7 +49,7 @@ def test_start_is_idempotent_from_in_progress() -> None: assert st.cloud_logs_url == "https://other" -def test_start_rejects_from_terminal_status() -> None: +def test_start_rejects_from_complete() -> None: # arrange st = SubTask.create(task_id=uuid4()) st.complete() diff --git a/tests/orchestration/test_task_orchestrator.py b/tests/orchestration/test_task_orchestrator.py index dc822e00c..fb0cd8e6c 100644 --- a/tests/orchestration/test_task_orchestrator.py +++ b/tests/orchestration/test_task_orchestrator.py @@ -286,9 +286,9 @@ def test_completing_a_rerun_failed_subtask_unfails_the_task( assert task_after.job_completed is not None -def test_cascade_short_circuits_once_task_already_failed(harness: Harness) -> None: - """Once the Task is FAILED, completing another SubTask leaves it FAILED — the - terminal state is not recomputed away.""" +def test_task_stays_failed_while_a_failed_subtask_remains(harness: Harness) -> None: + """Completing a *sibling* does not un-fail the Task — only re-running the + failed SubTask itself can (see the re-run test above).""" # arrange — two children; fail the first so the task is FAILED task, coordinator = harness.orchestrator.create_task_with_subtask( task_source="manual:test"