diff --git a/.github/workflows/qa-profile-evidence.yml b/.github/workflows/qa-profile-evidence.yml index 96f8875441b0..10c40cbcc41b 100644 --- a/.github/workflows/qa-profile-evidence.yml +++ b/.github/workflows/qa-profile-evidence.yml @@ -207,7 +207,9 @@ jobs: name: Generate QA profile evidence needs: validate_selected_ref runs-on: blacksmith-8vcpu-ubuntu-2404 - timeout-minutes: 90 + # The full live profile can exceed 90 minutes before aggregate evidence is finalized. + # Preserve enough headroom to record its terminal result instead of losing it to cancellation. + timeout-minutes: 150 permissions: contents: read outputs: diff --git a/test/scripts/ci-workflow-guards.test.ts b/test/scripts/ci-workflow-guards.test.ts index 8260d6a9410b..3028e950dc83 100644 --- a/test/scripts/ci-workflow-guards.test.ts +++ b/test/scripts/ci-workflow-guards.test.ts @@ -5045,7 +5045,7 @@ printf '%s\n' "\${CURL_SUCCESS_IP:-203.0.113.7}" expect(qaEvidenceWorkflow.on.workflow_dispatch.inputs.qa_profile).not.toHaveProperty("options"); expect(qaEvidenceWorkflow.on.workflow_dispatch.inputs.qa_profile.default).toBe("all"); expect(qaEvidenceWorkflow.on.workflow_call.inputs.qa_profile.type).toBe("string"); - expect(qaRunJob["timeout-minutes"]).toBe(90); + expect(qaRunJob["timeout-minutes"]).toBe(150); const validateProfileStep = qaRunJob.steps.find( (step: WorkflowStep) => step.name === "Validate QA profile input", );