Follow-up from #2960, raised in review and deliberately left out of scope.
tests/tasks/uipath-maestro-flow/_shared/test_criterion_budgets.py enforces
criterion timeout >= debug_budget(...) + CRITERION_MARGIN_SECONDS
across every uipath-maestro-flow task. uipath-maestro-case has its own run_debug (tests/tasks/uipath-maestro-case/_shared/case_check.py:458) with no equivalent.
Not currently broken. The case implementation has no retry loop, so its budget equals its timeout, and every case criterion presently clears it. Nothing keeps it that way: lowering a criterion, or adding a retry to case_check.run_debug, would reintroduce exactly the flake #2960 fixed, with the same symptom of a SIGKILLed check and zero diagnostics.
The flow guard is mostly suite-agnostic. Porting it needs a case_check.debug_budget equivalent and a _SUITE_ROOT swap.
Separate PR because /tests/tasks/uipath-maestro-case/ has different CODEOWNERS.
Follow-up from #2960, raised in review and deliberately left out of scope.
tests/tasks/uipath-maestro-flow/_shared/test_criterion_budgets.pyenforcesacross every
uipath-maestro-flowtask.uipath-maestro-casehas its ownrun_debug(tests/tasks/uipath-maestro-case/_shared/case_check.py:458) with no equivalent.Not currently broken. The case implementation has no retry loop, so its budget equals its
timeout, and every case criterion presently clears it. Nothing keeps it that way: lowering a criterion, or adding a retry tocase_check.run_debug, would reintroduce exactly the flake #2960 fixed, with the same symptom of a SIGKILLed check and zero diagnostics.The flow guard is mostly suite-agnostic. Porting it needs a
case_check.debug_budgetequivalent and a_SUITE_ROOTswap.Separate PR because
/tests/tasks/uipath-maestro-case/has different CODEOWNERS.