{
    "apiVersion": "v1",
    "items": [
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-final-order-3d6r/snapshot-sample-ylh3-d499148-7hct2",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-final-order-managed/results/54e90192-d820-4883-b24d-6ca26d9da8eb/records/bfcb10e8-d482-4dad-bee4-cb591590f334",
                    "results.tekton.dev/result": "retry-final-order-managed/results/54e90192-d820-4883-b24d-6ca26d9da8eb",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:14:34Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:15:09Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-ylh3",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "1",
                    "release.appstudio.openshift.io/name": "snapshot-sample-ylh3-d499148-7hct2",
                    "release.appstudio.openshift.io/namespace": "retry-final-order-3d6r",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-cpghd",
                    "tekton.dev/pipelineRunUID": "54e90192-d820-4883-b24d-6ca26d9da8eb",
                    "tekton.dev/pipelineTask": "collect-data"
                },
                "name": "managed-cpghd-collect-data",
                "namespace": "retry-final-order-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-cpghd",
                        "uid": "54e90192-d820-4883-b24d-6ca26d9da8eb"
                    }
                ],
                "resourceVersion": "26802",
                "uid": "bfcb10e8-d482-4dad-bee4-cb591590f334"
            },
            "spec": {
                "params": [
                    {
                        "name": "releasePlanAdmission",
                        "value": "retry-final-order-managed/demo"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "taskSpec": {
                    "params": [
                        {
                            "name": "releasePlanAdmission",
                            "type": "string"
                        }
                    ],
                    "results": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "collect-data",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nDATA=$(get-resource releasePlanAdmission \"retry-final-order-managed/demo\" |\n  jq '.spec.data // {}')\n\nFAIL_MODE=$(jq -r '.failMode // \"none\"' \u003c\u003c\u003c\"${DATA}\")\nFAIL_ON_TASK=$(jq -r '.failOnTask // \"task-01\"' \u003c\u003c\u003c\"${DATA}\")\n\nprintf '%s' \"${FAIL_MODE}\" \u003e \"$(results.failMode.path)\"\nprintf '%s' \"${FAIL_ON_TASK}\" \u003e \"$(results.failOnTask.path)\"\n"
                        }
                    ]
                },
                "timeout": "1h0m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:14:40Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:14:40Z",
                        "message": "All Steps have completed executing",
                        "reason": "Succeeded",
                        "status": "True",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-cpghd-collect-data-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "results": [
                    {
                        "name": "failMode",
                        "type": "string",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "type": "string",
                        "value": "task-02"
                    }
                ],
                "startTime": "2026-10-07T19:14:34Z",
                "steps": [
                    {
                        "container": "step-collect-data",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "collect-data",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://54f7bad4d3f0675b0a9bec594cc62f44e5f8091ee4284aa56907397d7801e186",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:14:39Z",
                            "message": "[{\"key\":\"failMode\",\"value\":\"oom\",\"type\":1},{\"key\":\"failOnTask\",\"value\":\"task-02\",\"type\":1}]",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:14:39Z"
                        },
                        "terminationReason": "Completed"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "releasePlanAdmission",
                            "type": "string"
                        }
                    ],
                    "results": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "collect-data",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nDATA=$(get-resource releasePlanAdmission \"retry-final-order-managed/demo\" |\n  jq '.spec.data // {}')\n\nFAIL_MODE=$(jq -r '.failMode // \"none\"' \u003c\u003c\u003c\"${DATA}\")\nFAIL_ON_TASK=$(jq -r '.failOnTask // \"task-01\"' \u003c\u003c\u003c\"${DATA}\")\n\nprintf '%s' \"${FAIL_MODE}\" \u003e \"/tekton/results/failMode\"\nprintf '%s' \"${FAIL_ON_TASK}\" \u003e \"/tekton/results/failOnTask\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-final-order-3d6r/snapshot-sample-ylh3-d499148-7hct2",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-final-order-managed/results/54e90192-d820-4883-b24d-6ca26d9da8eb/records/028ca409-0abc-4fe1-8d45-1c77ad453e0b",
                    "results.tekton.dev/result": "retry-final-order-managed/results/54e90192-d820-4883-b24d-6ca26d9da8eb",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:14:40Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:15:09Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-ylh3",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "1",
                    "release.appstudio.openshift.io/name": "snapshot-sample-ylh3-d499148-7hct2",
                    "release.appstudio.openshift.io/namespace": "retry-final-order-3d6r",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-cpghd",
                    "tekton.dev/pipelineRunUID": "54e90192-d820-4883-b24d-6ca26d9da8eb",
                    "tekton.dev/pipelineTask": "task-01"
                },
                "name": "managed-cpghd-task-01",
                "namespace": "retry-final-order-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-cpghd",
                        "uid": "54e90192-d820-4883-b24d-6ca26d9da8eb"
                    }
                ],
                "resourceVersion": "26808",
                "uid": "028ca409-0abc-4fe1-8d45-1c77ad453e0b"
            },
            "spec": {
                "params": [
                    {
                        "name": "failMode",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "value": "task-02"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"$(params.failMode)\"\nFAIL_ON_TASK=\"$(params.failOnTask)\"\n\n# Only inject failures into the selected task.\n[[ \"${FAIL_ON_TASK}\" == \"task-01\" ]] || exit 0\n\necho \"task-01-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  task-timeout)\n    # Sleep longer than the task timeout. Which is set to 1 minute.\n    sleep 90\n    ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-01-step-02: complete\"\n"
                        }
                    ]
                },
                "timeout": "1m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:14:45Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:14:45Z",
                        "message": "All Steps have completed executing",
                        "reason": "Succeeded",
                        "status": "True",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-cpghd-task-01-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "startTime": "2026-10-07T19:14:40Z",
                "steps": [
                    {
                        "container": "step-task-01-step-01",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-01-step-01",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://c8efce8e75955aa3c1b0d2d55b0472ebd31f986a81988e3dc8b0413ffd47d769",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:14:44Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:14:44Z"
                        },
                        "terminationReason": "Completed"
                    },
                    {
                        "container": "step-task-01-step-02",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-01-step-02",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://9cdb7cb96c7c62dfa4a2a3105756186dbcc93575622af60bd4a13bb8802cc894",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:14:44Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:14:44Z"
                        },
                        "terminationReason": "Completed"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"oom\"\nFAIL_ON_TASK=\"task-02\"\n\n# Only inject failures into the selected task.\n[[ \"${FAIL_ON_TASK}\" == \"task-01\" ]] || exit 0\n\necho \"task-01-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  task-timeout)\n    # Sleep longer than the task timeout. Which is set to 1 minute.\n    sleep 90\n    ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-01-step-02: complete\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-final-order-3d6r/snapshot-sample-ylh3-d499148-7hct2",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-final-order-managed/results/54e90192-d820-4883-b24d-6ca26d9da8eb/records/886cbe89-1d9c-40e1-8fa4-b8c0e34258e7",
                    "results.tekton.dev/result": "retry-final-order-managed/results/54e90192-d820-4883-b24d-6ca26d9da8eb",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:14:45Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:15:09Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-ylh3",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "1",
                    "release.appstudio.openshift.io/name": "snapshot-sample-ylh3-d499148-7hct2",
                    "release.appstudio.openshift.io/namespace": "retry-final-order-3d6r",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-cpghd",
                    "tekton.dev/pipelineRunUID": "54e90192-d820-4883-b24d-6ca26d9da8eb",
                    "tekton.dev/pipelineTask": "task-02"
                },
                "name": "managed-cpghd-task-02",
                "namespace": "retry-final-order-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-cpghd",
                        "uid": "54e90192-d820-4883-b24d-6ca26d9da8eb"
                    }
                ],
                "resourceVersion": "27206",
                "uid": "886cbe89-1d9c-40e1-8fa4-b8c0e34258e7"
            },
            "spec": {
                "params": [
                    {
                        "name": "failMode",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "value": "task-02"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "stepSpecs": [
                    {
                        "computeResources": {
                            "limits": {
                                "memory": "128Mi"
                            },
                            "requests": {
                                "cpu": "100m",
                                "memory": "128Mi"
                            }
                        },
                        "name": "task-02-step-01"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "stepTemplate": {
                        "computeResources": {
                            "limits": {
                                "memory": "64Mi"
                            },
                            "requests": {
                                "cpu": "100m",
                                "memory": "64Mi"
                            }
                        },
                        "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c"
                    },
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"$(params.failMode)\"\nFAIL_ON_TASK=\"$(params.failOnTask)\"\n\n# pipeline-timeout always runs from task-02 regardless of failOnTask.\nif [[ \"${FAIL_ON_TASK}\" != \"task-02\" \u0026\u0026 \"${FAIL_MODE}\" != \"pipeline-timeout\" ]]; then\n  echo \"task-02: complete\"\n  exit 0\nfi\n\necho \"task-02-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  pipeline-timeout)\n    # Sleep past the pipeline level pipeline/tasks timeout. This is used to verify\n    # that retry mitigation updates both pipeline and tasks timeouts\n    # and allows the pipelineRun to complete on retry.\n    echo \"task-02-step-01: sleeping 120s\"\n    sleep 120\n    ;;\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  oom-always)\n  # Always trigger an OOMKill regardless of the memory limit.\n  # This is used to verify that retry mitigation cannot fix\n  # the failure even after resource requests/limits are increased.\n  \n  X=$(dd if=/dev/zero bs=1M count=2048 status=none | tr '\\0' 'a')\n  echo \"${#X}\"\n  ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-02-step-02: complete\"\n"
                        }
                    ]
                },
                "timeout": "1h0m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:14:50Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:14:50Z",
                        "message": "All Steps have completed executing",
                        "reason": "Succeeded",
                        "status": "True",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-cpghd-task-02-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "startTime": "2026-10-07T19:14:45Z",
                "steps": [
                    {
                        "container": "step-task-02-step-01",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-02-step-01",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://12ca41822089025ab6311b67ed4cfcd06fb1fd702314332646c5a896384ae4cc",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:14:49Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:14:49Z"
                        },
                        "terminationReason": "Completed"
                    },
                    {
                        "container": "step-task-02-step-02",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-02-step-02",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://f33199ff216a550544ad9770cde69a75430bac5a85d37a4184b140d6cdf3bc49",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:14:49Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:14:49Z"
                        },
                        "terminationReason": "Completed"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "stepTemplate": {
                        "computeResources": {
                            "limits": {
                                "memory": "64Mi"
                            },
                            "requests": {
                                "cpu": "100m",
                                "memory": "64Mi"
                            }
                        },
                        "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c"
                    },
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"oom\"\nFAIL_ON_TASK=\"task-02\"\n\n# pipeline-timeout always runs from task-02 regardless of failOnTask.\nif [[ \"${FAIL_ON_TASK}\" != \"task-02\" \u0026\u0026 \"${FAIL_MODE}\" != \"pipeline-timeout\" ]]; then\n  echo \"task-02: complete\"\n  exit 0\nfi\n\necho \"task-02-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  pipeline-timeout)\n    # Sleep past the pipeline level pipeline/tasks timeout. This is used to verify\n    # that retry mitigation updates both pipeline and tasks timeouts\n    # and allows the pipelineRun to complete on retry.\n    echo \"task-02-step-01: sleeping 120s\"\n    sleep 120\n    ;;\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  oom-always)\n  # Always trigger an OOMKill regardless of the memory limit.\n  # This is used to verify that retry mitigation cannot fix\n  # the failure even after resource requests/limits are increased.\n  \n  X=$(dd if=/dev/zero bs=1M count=2048 status=none | tr '\\0' 'a')\n  echo \"${#X}\"\n  ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-02-step-02: complete\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-final-order-3d6r/snapshot-sample-ylh3-d499148-7hct2",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-final-order-managed/results/04b988a2-1ab5-4c1b-94ea-a28ae1802702/records/045a9b38-337b-4774-9ddd-24c9b137605c",
                    "results.tekton.dev/result": "retry-final-order-managed/results/04b988a2-1ab5-4c1b-94ea-a28ae1802702",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:14:13Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:15:09Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-ylh3",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "0",
                    "release.appstudio.openshift.io/name": "snapshot-sample-ylh3-d499148-7hct2",
                    "release.appstudio.openshift.io/namespace": "retry-final-order-3d6r",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-qlf25",
                    "tekton.dev/pipelineRunUID": "04b988a2-1ab5-4c1b-94ea-a28ae1802702",
                    "tekton.dev/pipelineTask": "collect-data"
                },
                "name": "managed-qlf25-collect-data",
                "namespace": "retry-final-order-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-qlf25",
                        "uid": "04b988a2-1ab5-4c1b-94ea-a28ae1802702"
                    }
                ],
                "resourceVersion": "26813",
                "uid": "045a9b38-337b-4774-9ddd-24c9b137605c"
            },
            "spec": {
                "params": [
                    {
                        "name": "releasePlanAdmission",
                        "value": "retry-final-order-managed/demo"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "taskSpec": {
                    "params": [
                        {
                            "name": "releasePlanAdmission",
                            "type": "string"
                        }
                    ],
                    "results": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "collect-data",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nDATA=$(get-resource releasePlanAdmission \"retry-final-order-managed/demo\" |\n  jq '.spec.data // {}')\n\nFAIL_MODE=$(jq -r '.failMode // \"none\"' \u003c\u003c\u003c\"${DATA}\")\nFAIL_ON_TASK=$(jq -r '.failOnTask // \"task-01\"' \u003c\u003c\u003c\"${DATA}\")\n\nprintf '%s' \"${FAIL_MODE}\" \u003e \"$(results.failMode.path)\"\nprintf '%s' \"${FAIL_ON_TASK}\" \u003e \"$(results.failOnTask.path)\"\n"
                        }
                    ]
                },
                "timeout": "1h0m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:14:19Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:14:19Z",
                        "message": "All Steps have completed executing",
                        "reason": "Succeeded",
                        "status": "True",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-qlf25-collect-data-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "results": [
                    {
                        "name": "failMode",
                        "type": "string",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "type": "string",
                        "value": "task-02"
                    }
                ],
                "startTime": "2026-10-07T19:14:13Z",
                "steps": [
                    {
                        "container": "step-collect-data",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "collect-data",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://9df6049313461ae3c9f237b6018e78cf97351974fce5303b3f3f76d177f576a0",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:14:18Z",
                            "message": "[{\"key\":\"failMode\",\"value\":\"oom\",\"type\":1},{\"key\":\"failOnTask\",\"value\":\"task-02\",\"type\":1}]",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:14:18Z"
                        },
                        "terminationReason": "Completed"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "releasePlanAdmission",
                            "type": "string"
                        }
                    ],
                    "results": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "collect-data",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nDATA=$(get-resource releasePlanAdmission \"retry-final-order-managed/demo\" |\n  jq '.spec.data // {}')\n\nFAIL_MODE=$(jq -r '.failMode // \"none\"' \u003c\u003c\u003c\"${DATA}\")\nFAIL_ON_TASK=$(jq -r '.failOnTask // \"task-01\"' \u003c\u003c\u003c\"${DATA}\")\n\nprintf '%s' \"${FAIL_MODE}\" \u003e \"/tekton/results/failMode\"\nprintf '%s' \"${FAIL_ON_TASK}\" \u003e \"/tekton/results/failOnTask\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-final-order-3d6r/snapshot-sample-ylh3-d499148-7hct2",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-final-order-managed/results/04b988a2-1ab5-4c1b-94ea-a28ae1802702/records/18b5d653-570a-4840-be7d-a348915a8c64",
                    "results.tekton.dev/result": "retry-final-order-managed/results/04b988a2-1ab5-4c1b-94ea-a28ae1802702",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:14:29Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:15:09Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-ylh3",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "0",
                    "release.appstudio.openshift.io/name": "snapshot-sample-ylh3-d499148-7hct2",
                    "release.appstudio.openshift.io/namespace": "retry-final-order-3d6r",
                    "tekton.dev/memberOf": "finally",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-qlf25",
                    "tekton.dev/pipelineRunUID": "04b988a2-1ab5-4c1b-94ea-a28ae1802702",
                    "tekton.dev/pipelineTask": "finalize"
                },
                "name": "managed-qlf25-finalize",
                "namespace": "retry-final-order-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-qlf25",
                        "uid": "04b988a2-1ab5-4c1b-94ea-a28ae1802702"
                    }
                ],
                "resourceVersion": "26819",
                "uid": "18b5d653-570a-4840-be7d-a348915a8c64"
            },
            "spec": {
                "serviceAccountName": "release-service-account",
                "taskSpec": {
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "finalize-step-01",
                            "script": "#!/usr/bin/env bash\necho \"finalize: complete\"\n"
                        }
                    ]
                },
                "timeout": "1h0m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:14:34Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:14:34Z",
                        "message": "All Steps have completed executing",
                        "reason": "Succeeded",
                        "status": "True",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-qlf25-finalize-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "startTime": "2026-10-07T19:14:29Z",
                "steps": [
                    {
                        "container": "step-finalize-step-01",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "finalize-step-01",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://16d77d3d0ab8825f22c447ef998edd665fc91ff359c13bb79bd61e7fde02c93c",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:14:33Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:14:33Z"
                        },
                        "terminationReason": "Completed"
                    }
                ],
                "taskSpec": {
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "finalize-step-01",
                            "script": "#!/usr/bin/env bash\necho \"finalize: complete\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-final-order-3d6r/snapshot-sample-ylh3-d499148-7hct2",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-final-order-managed/results/04b988a2-1ab5-4c1b-94ea-a28ae1802702/records/8546fbea-2f19-4f3d-8ac5-ecd4b79e05b5",
                    "results.tekton.dev/result": "retry-final-order-managed/results/04b988a2-1ab5-4c1b-94ea-a28ae1802702",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:14:19Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:15:09Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-ylh3",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "0",
                    "release.appstudio.openshift.io/name": "snapshot-sample-ylh3-d499148-7hct2",
                    "release.appstudio.openshift.io/namespace": "retry-final-order-3d6r",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-qlf25",
                    "tekton.dev/pipelineRunUID": "04b988a2-1ab5-4c1b-94ea-a28ae1802702",
                    "tekton.dev/pipelineTask": "task-01"
                },
                "name": "managed-qlf25-task-01",
                "namespace": "retry-final-order-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-qlf25",
                        "uid": "04b988a2-1ab5-4c1b-94ea-a28ae1802702"
                    }
                ],
                "resourceVersion": "26818",
                "uid": "8546fbea-2f19-4f3d-8ac5-ecd4b79e05b5"
            },
            "spec": {
                "params": [
                    {
                        "name": "failMode",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "value": "task-02"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"$(params.failMode)\"\nFAIL_ON_TASK=\"$(params.failOnTask)\"\n\n# Only inject failures into the selected task.\n[[ \"${FAIL_ON_TASK}\" == \"task-01\" ]] || exit 0\n\necho \"task-01-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  task-timeout)\n    # Sleep longer than the task timeout. Which is set to 1 minute.\n    sleep 90\n    ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-01-step-02: complete\"\n"
                        }
                    ]
                },
                "timeout": "1m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:14:24Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:14:24Z",
                        "message": "All Steps have completed executing",
                        "reason": "Succeeded",
                        "status": "True",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-qlf25-task-01-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "startTime": "2026-10-07T19:14:19Z",
                "steps": [
                    {
                        "container": "step-task-01-step-01",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-01-step-01",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://1384b4679c609247d900bbf07aedc785fb557e5b56226d0f41354cd8c3cfe306",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:14:23Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:14:23Z"
                        },
                        "terminationReason": "Completed"
                    },
                    {
                        "container": "step-task-01-step-02",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-01-step-02",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://e6152a8767476bdc44e9af38ddbd2328eae3d3f7206657662764eeebe026c3fe",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:14:23Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:14:23Z"
                        },
                        "terminationReason": "Completed"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"oom\"\nFAIL_ON_TASK=\"task-02\"\n\n# Only inject failures into the selected task.\n[[ \"${FAIL_ON_TASK}\" == \"task-01\" ]] || exit 0\n\necho \"task-01-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  task-timeout)\n    # Sleep longer than the task timeout. Which is set to 1 minute.\n    sleep 90\n    ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-01-step-02: complete\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-final-order-3d6r/snapshot-sample-ylh3-d499148-7hct2",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-final-order-managed/results/04b988a2-1ab5-4c1b-94ea-a28ae1802702/records/e6a5130f-009b-4249-a741-351f5764f4a6",
                    "results.tekton.dev/result": "retry-final-order-managed/results/04b988a2-1ab5-4c1b-94ea-a28ae1802702",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:14:24Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:15:09Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-ylh3",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "0",
                    "release.appstudio.openshift.io/name": "snapshot-sample-ylh3-d499148-7hct2",
                    "release.appstudio.openshift.io/namespace": "retry-final-order-3d6r",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-qlf25",
                    "tekton.dev/pipelineRunUID": "04b988a2-1ab5-4c1b-94ea-a28ae1802702",
                    "tekton.dev/pipelineTask": "task-02"
                },
                "name": "managed-qlf25-task-02",
                "namespace": "retry-final-order-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-qlf25",
                        "uid": "04b988a2-1ab5-4c1b-94ea-a28ae1802702"
                    }
                ],
                "resourceVersion": "26822",
                "uid": "e6a5130f-009b-4249-a741-351f5764f4a6"
            },
            "spec": {
                "params": [
                    {
                        "name": "failMode",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "value": "task-02"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "stepTemplate": {
                        "computeResources": {
                            "limits": {
                                "memory": "64Mi"
                            },
                            "requests": {
                                "cpu": "100m",
                                "memory": "64Mi"
                            }
                        },
                        "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c"
                    },
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"$(params.failMode)\"\nFAIL_ON_TASK=\"$(params.failOnTask)\"\n\n# pipeline-timeout always runs from task-02 regardless of failOnTask.\nif [[ \"${FAIL_ON_TASK}\" != \"task-02\" \u0026\u0026 \"${FAIL_MODE}\" != \"pipeline-timeout\" ]]; then\n  echo \"task-02: complete\"\n  exit 0\nfi\n\necho \"task-02-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  pipeline-timeout)\n    # Sleep past the pipeline level pipeline/tasks timeout. This is used to verify\n    # that retry mitigation updates both pipeline and tasks timeouts\n    # and allows the pipelineRun to complete on retry.\n    echo \"task-02-step-01: sleeping 120s\"\n    sleep 120\n    ;;\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  oom-always)\n  # Always trigger an OOMKill regardless of the memory limit.\n  # This is used to verify that retry mitigation cannot fix\n  # the failure even after resource requests/limits are increased.\n  \n  X=$(dd if=/dev/zero bs=1M count=2048 status=none | tr '\\0' 'a')\n  echo \"${#X}\"\n  ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-02-step-02: complete\"\n"
                        }
                    ]
                },
                "timeout": "1h0m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:14:29Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:14:29Z",
                        "message": "\"step-task-02-step-01\" exited with code 137: OOMKilled",
                        "reason": "StepOOM",
                        "status": "False",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-qlf25-task-02-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "startTime": "2026-10-07T19:14:24Z",
                "steps": [
                    {
                        "container": "step-task-02-step-01",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-02-step-01",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://5ca04e96162d58e8b26840f87d7a7bbd09bc41226a46d7845f0b7fef342f5536",
                            "exitCode": 137,
                            "finishedAt": "2026-10-07T19:14:28Z",
                            "reason": "OOMKilled",
                            "startedAt": "2026-10-07T19:14:26Z"
                        }
                    },
                    {
                        "container": "step-task-02-step-02",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-02-step-02",
                        "provenance": {},
                        "running": {
                            "startedAt": "2026-10-07T19:14:26Z"
                        }
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "stepTemplate": {
                        "computeResources": {
                            "limits": {
                                "memory": "64Mi"
                            },
                            "requests": {
                                "cpu": "100m",
                                "memory": "64Mi"
                            }
                        },
                        "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c"
                    },
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"oom\"\nFAIL_ON_TASK=\"task-02\"\n\n# pipeline-timeout always runs from task-02 regardless of failOnTask.\nif [[ \"${FAIL_ON_TASK}\" != \"task-02\" \u0026\u0026 \"${FAIL_MODE}\" != \"pipeline-timeout\" ]]; then\n  echo \"task-02: complete\"\n  exit 0\nfi\n\necho \"task-02-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  pipeline-timeout)\n    # Sleep past the pipeline level pipeline/tasks timeout. This is used to verify\n    # that retry mitigation updates both pipeline and tasks timeouts\n    # and allows the pipelineRun to complete on retry.\n    echo \"task-02-step-01: sleeping 120s\"\n    sleep 120\n    ;;\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  oom-always)\n  # Always trigger an OOMKill regardless of the memory limit.\n  # This is used to verify that retry mitigation cannot fix\n  # the failure even after resource requests/limits are increased.\n  \n  X=$(dd if=/dev/zero bs=1M count=2048 status=none | tr '\\0' 'a')\n  echo \"${#X}\"\n  ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-02-step-02: complete\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-oom-vg0t/snapshot-sample-nyip-d499148-4pqw7",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-oom-managed/results/d2591d12-52c9-4787-b6fa-c629d9667737/records/fa786393-0880-4b28-9132-eec4aa1e42b8",
                    "results.tekton.dev/result": "retry-oom-managed/results/d2591d12-52c9-4787-b6fa-c629d9667737",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:15:20Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:15:55Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-nyip",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "0",
                    "release.appstudio.openshift.io/name": "snapshot-sample-nyip-d499148-4pqw7",
                    "release.appstudio.openshift.io/namespace": "retry-oom-vg0t",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-dq6wc",
                    "tekton.dev/pipelineRunUID": "d2591d12-52c9-4787-b6fa-c629d9667737",
                    "tekton.dev/pipelineTask": "collect-data"
                },
                "name": "managed-dq6wc-collect-data",
                "namespace": "retry-oom-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-dq6wc",
                        "uid": "d2591d12-52c9-4787-b6fa-c629d9667737"
                    }
                ],
                "resourceVersion": "28095",
                "uid": "fa786393-0880-4b28-9132-eec4aa1e42b8"
            },
            "spec": {
                "params": [
                    {
                        "name": "releasePlanAdmission",
                        "value": "retry-oom-managed/demo"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "taskSpec": {
                    "params": [
                        {
                            "name": "releasePlanAdmission",
                            "type": "string"
                        }
                    ],
                    "results": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "collect-data",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nDATA=$(get-resource releasePlanAdmission \"retry-oom-managed/demo\" |\n  jq '.spec.data // {}')\n\nFAIL_MODE=$(jq -r '.failMode // \"none\"' \u003c\u003c\u003c\"${DATA}\")\nFAIL_ON_TASK=$(jq -r '.failOnTask // \"task-01\"' \u003c\u003c\u003c\"${DATA}\")\n\nprintf '%s' \"${FAIL_MODE}\" \u003e \"$(results.failMode.path)\"\nprintf '%s' \"${FAIL_ON_TASK}\" \u003e \"$(results.failOnTask.path)\"\n"
                        }
                    ]
                },
                "timeout": "1h0m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:15:24Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:15:24Z",
                        "message": "All Steps have completed executing",
                        "reason": "Succeeded",
                        "status": "True",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-dq6wc-collect-data-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "results": [
                    {
                        "name": "failMode",
                        "type": "string",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "type": "string",
                        "value": "task-01"
                    }
                ],
                "startTime": "2026-10-07T19:15:20Z",
                "steps": [
                    {
                        "container": "step-collect-data",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "collect-data",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://6731cd71c5e57b472ac21bc0228928f2c06c13b0a81b0589c4ea45dc43289964",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:15:23Z",
                            "message": "[{\"key\":\"failMode\",\"value\":\"oom\",\"type\":1},{\"key\":\"failOnTask\",\"value\":\"task-01\",\"type\":1}]",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:15:23Z"
                        },
                        "terminationReason": "Completed"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "releasePlanAdmission",
                            "type": "string"
                        }
                    ],
                    "results": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "collect-data",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nDATA=$(get-resource releasePlanAdmission \"retry-oom-managed/demo\" |\n  jq '.spec.data // {}')\n\nFAIL_MODE=$(jq -r '.failMode // \"none\"' \u003c\u003c\u003c\"${DATA}\")\nFAIL_ON_TASK=$(jq -r '.failOnTask // \"task-01\"' \u003c\u003c\u003c\"${DATA}\")\n\nprintf '%s' \"${FAIL_MODE}\" \u003e \"/tekton/results/failMode\"\nprintf '%s' \"${FAIL_ON_TASK}\" \u003e \"/tekton/results/failOnTask\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-oom-vg0t/snapshot-sample-nyip-d499148-4pqw7",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-oom-managed/results/d2591d12-52c9-4787-b6fa-c629d9667737/records/5f7e3602-bea4-4678-9bfe-d3ad0eebd45b",
                    "results.tekton.dev/result": "retry-oom-managed/results/d2591d12-52c9-4787-b6fa-c629d9667737",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:15:24Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:15:55Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-nyip",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "0",
                    "release.appstudio.openshift.io/name": "snapshot-sample-nyip-d499148-4pqw7",
                    "release.appstudio.openshift.io/namespace": "retry-oom-vg0t",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-dq6wc",
                    "tekton.dev/pipelineRunUID": "d2591d12-52c9-4787-b6fa-c629d9667737",
                    "tekton.dev/pipelineTask": "task-01"
                },
                "name": "managed-dq6wc-task-01",
                "namespace": "retry-oom-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-dq6wc",
                        "uid": "d2591d12-52c9-4787-b6fa-c629d9667737"
                    }
                ],
                "resourceVersion": "28359",
                "uid": "5f7e3602-bea4-4678-9bfe-d3ad0eebd45b"
            },
            "spec": {
                "params": [
                    {
                        "name": "failMode",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "value": "task-01"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"$(params.failMode)\"\nFAIL_ON_TASK=\"$(params.failOnTask)\"\n\n# Only inject failures into the selected task.\n[[ \"${FAIL_ON_TASK}\" == \"task-01\" ]] || exit 0\n\necho \"task-01-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  task-timeout)\n    # Sleep longer than the task timeout. Which is set to 1 minute.\n    sleep 90\n    ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-01-step-02: complete\"\n"
                        }
                    ]
                },
                "timeout": "1m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:15:28Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:15:28Z",
                        "message": "\"step-task-01-step-01\" exited with code 137: OOMKilled",
                        "reason": "StepOOM",
                        "status": "False",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-dq6wc-task-01-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "startTime": "2026-10-07T19:15:24Z",
                "steps": [
                    {
                        "container": "step-task-01-step-01",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-01-step-01",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://a1fdc59c6b800f1ad438803db35bc20ee7f50be3be22d55418717649f0ab171c",
                            "exitCode": 137,
                            "finishedAt": "2026-10-07T19:15:28Z",
                            "reason": "OOMKilled",
                            "startedAt": "2026-10-07T19:15:26Z"
                        }
                    },
                    {
                        "container": "step-task-01-step-02",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-01-step-02",
                        "provenance": {},
                        "running": {
                            "startedAt": "2026-10-07T19:15:26Z"
                        }
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"oom\"\nFAIL_ON_TASK=\"task-01\"\n\n# Only inject failures into the selected task.\n[[ \"${FAIL_ON_TASK}\" == \"task-01\" ]] || exit 0\n\necho \"task-01-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  task-timeout)\n    # Sleep longer than the task timeout. Which is set to 1 minute.\n    sleep 90\n    ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-01-step-02: complete\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-taskrunspecs-oom-yu8c/snapshot-sample-396o-d499148-4lgkv",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-taskrunspecs-oom-managed/results/061214e2-aaad-447c-ad97-f613ff6c63f2/records/c3a314fc-6c72-4cbe-9e33-a4bb7d70e526",
                    "results.tekton.dev/result": "retry-taskrunspecs-oom-managed/results/061214e2-aaad-447c-ad97-f613ff6c63f2",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:13:46Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:14:17Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-396o",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "2",
                    "release.appstudio.openshift.io/name": "snapshot-sample-396o-d499148-4lgkv",
                    "release.appstudio.openshift.io/namespace": "retry-taskrunspecs-oom-yu8c",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-8fxtn",
                    "tekton.dev/pipelineRunUID": "061214e2-aaad-447c-ad97-f613ff6c63f2",
                    "tekton.dev/pipelineTask": "collect-data"
                },
                "name": "managed-8fxtn-collect-data",
                "namespace": "retry-taskrunspecs-oom-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-8fxtn",
                        "uid": "061214e2-aaad-447c-ad97-f613ff6c63f2"
                    }
                ],
                "resourceVersion": "25718",
                "uid": "c3a314fc-6c72-4cbe-9e33-a4bb7d70e526"
            },
            "spec": {
                "params": [
                    {
                        "name": "releasePlanAdmission",
                        "value": "retry-taskrunspecs-oom-managed/demo"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "taskSpec": {
                    "params": [
                        {
                            "name": "releasePlanAdmission",
                            "type": "string"
                        }
                    ],
                    "results": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "collect-data",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nDATA=$(get-resource releasePlanAdmission \"retry-taskrunspecs-oom-managed/demo\" |\n  jq '.spec.data // {}')\n\nFAIL_MODE=$(jq -r '.failMode // \"none\"' \u003c\u003c\u003c\"${DATA}\")\nFAIL_ON_TASK=$(jq -r '.failOnTask // \"task-01\"' \u003c\u003c\u003c\"${DATA}\")\n\nprintf '%s' \"${FAIL_MODE}\" \u003e \"$(results.failMode.path)\"\nprintf '%s' \"${FAIL_ON_TASK}\" \u003e \"$(results.failOnTask.path)\"\n"
                        }
                    ]
                },
                "timeout": "1h0m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:13:51Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:13:51Z",
                        "message": "All Steps have completed executing",
                        "reason": "Succeeded",
                        "status": "True",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-8fxtn-collect-data-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "results": [
                    {
                        "name": "failMode",
                        "type": "string",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "type": "string",
                        "value": "task-01"
                    }
                ],
                "startTime": "2026-10-07T19:13:46Z",
                "steps": [
                    {
                        "container": "step-collect-data",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "collect-data",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://895118ba78f44e29f2e5cf34f226ed527e02b1f77809c68e26fb978433aca00a",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:13:51Z",
                            "message": "[{\"key\":\"failMode\",\"value\":\"oom\",\"type\":1},{\"key\":\"failOnTask\",\"value\":\"task-01\",\"type\":1}]",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:13:51Z"
                        },
                        "terminationReason": "Completed"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "releasePlanAdmission",
                            "type": "string"
                        }
                    ],
                    "results": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "collect-data",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nDATA=$(get-resource releasePlanAdmission \"retry-taskrunspecs-oom-managed/demo\" |\n  jq '.spec.data // {}')\n\nFAIL_MODE=$(jq -r '.failMode // \"none\"' \u003c\u003c\u003c\"${DATA}\")\nFAIL_ON_TASK=$(jq -r '.failOnTask // \"task-01\"' \u003c\u003c\u003c\"${DATA}\")\n\nprintf '%s' \"${FAIL_MODE}\" \u003e \"/tekton/results/failMode\"\nprintf '%s' \"${FAIL_ON_TASK}\" \u003e \"/tekton/results/failOnTask\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-taskrunspecs-oom-yu8c/snapshot-sample-396o-d499148-4lgkv",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-taskrunspecs-oom-managed/results/061214e2-aaad-447c-ad97-f613ff6c63f2/records/58596116-f18b-4e72-9a51-ad2bfc92a3aa",
                    "results.tekton.dev/result": "retry-taskrunspecs-oom-managed/results/061214e2-aaad-447c-ad97-f613ff6c63f2",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:13:51Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:14:17Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-396o",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "2",
                    "release.appstudio.openshift.io/name": "snapshot-sample-396o-d499148-4lgkv",
                    "release.appstudio.openshift.io/namespace": "retry-taskrunspecs-oom-yu8c",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-8fxtn",
                    "tekton.dev/pipelineRunUID": "061214e2-aaad-447c-ad97-f613ff6c63f2",
                    "tekton.dev/pipelineTask": "task-01"
                },
                "name": "managed-8fxtn-task-01",
                "namespace": "retry-taskrunspecs-oom-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-8fxtn",
                        "uid": "061214e2-aaad-447c-ad97-f613ff6c63f2"
                    }
                ],
                "resourceVersion": "25722",
                "uid": "58596116-f18b-4e72-9a51-ad2bfc92a3aa"
            },
            "spec": {
                "params": [
                    {
                        "name": "failMode",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "value": "task-01"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "stepSpecs": [
                    {
                        "computeResources": {
                            "limits": {
                                "memory": "160Mi"
                            },
                            "requests": {
                                "memory": "160Mi"
                            }
                        },
                        "name": "task-01-step-01"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"$(params.failMode)\"\nFAIL_ON_TASK=\"$(params.failOnTask)\"\n\n# Only inject failures into the selected task.\n[[ \"${FAIL_ON_TASK}\" == \"task-01\" ]] || exit 0\n\necho \"task-01-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  task-timeout)\n    # Sleep longer than the task timeout. Which is set to 1 minute.\n    sleep 90\n    ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-01-step-02: complete\"\n"
                        }
                    ]
                },
                "timeout": "1m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:13:56Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:13:56Z",
                        "message": "All Steps have completed executing",
                        "reason": "Succeeded",
                        "status": "True",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-8fxtn-task-01-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "startTime": "2026-10-07T19:13:51Z",
                "steps": [
                    {
                        "container": "step-task-01-step-01",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-01-step-01",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://5d2e9826cf27583786157beb110057029fb365235f8d17bd08fc9478f8b9a43b",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:13:56Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:13:56Z"
                        },
                        "terminationReason": "Completed"
                    },
                    {
                        "container": "step-task-01-step-02",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-01-step-02",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://24554f94bc4be4c49e7a180066666c40ad95a41844fde78a4d8e85a20fa08101",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:13:56Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:13:56Z"
                        },
                        "terminationReason": "Completed"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"oom\"\nFAIL_ON_TASK=\"task-01\"\n\n# Only inject failures into the selected task.\n[[ \"${FAIL_ON_TASK}\" == \"task-01\" ]] || exit 0\n\necho \"task-01-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  task-timeout)\n    # Sleep longer than the task timeout. Which is set to 1 minute.\n    sleep 90\n    ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-01-step-02: complete\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-taskrunspecs-oom-yu8c/snapshot-sample-396o-d499148-4lgkv",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-taskrunspecs-oom-managed/results/061214e2-aaad-447c-ad97-f613ff6c63f2/records/bfdeae5c-1a7f-4159-bab7-a00353107c8e",
                    "results.tekton.dev/result": "retry-taskrunspecs-oom-managed/results/061214e2-aaad-447c-ad97-f613ff6c63f2",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:13:56Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:14:17Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-396o",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "2",
                    "release.appstudio.openshift.io/name": "snapshot-sample-396o-d499148-4lgkv",
                    "release.appstudio.openshift.io/namespace": "retry-taskrunspecs-oom-yu8c",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-8fxtn",
                    "tekton.dev/pipelineRunUID": "061214e2-aaad-447c-ad97-f613ff6c63f2",
                    "tekton.dev/pipelineTask": "task-02"
                },
                "name": "managed-8fxtn-task-02",
                "namespace": "retry-taskrunspecs-oom-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-8fxtn",
                        "uid": "061214e2-aaad-447c-ad97-f613ff6c63f2"
                    }
                ],
                "resourceVersion": "25840",
                "uid": "bfdeae5c-1a7f-4159-bab7-a00353107c8e"
            },
            "spec": {
                "params": [
                    {
                        "name": "failMode",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "value": "task-01"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "stepTemplate": {
                        "computeResources": {
                            "limits": {
                                "memory": "64Mi"
                            },
                            "requests": {
                                "cpu": "100m",
                                "memory": "64Mi"
                            }
                        },
                        "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c"
                    },
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"$(params.failMode)\"\nFAIL_ON_TASK=\"$(params.failOnTask)\"\n\n# pipeline-timeout always runs from task-02 regardless of failOnTask.\nif [[ \"${FAIL_ON_TASK}\" != \"task-02\" \u0026\u0026 \"${FAIL_MODE}\" != \"pipeline-timeout\" ]]; then\n  echo \"task-02: complete\"\n  exit 0\nfi\n\necho \"task-02-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  pipeline-timeout)\n    # Sleep past the pipeline level pipeline/tasks timeout. This is used to verify\n    # that retry mitigation updates both pipeline and tasks timeouts\n    # and allows the pipelineRun to complete on retry.\n    echo \"task-02-step-01: sleeping 120s\"\n    sleep 120\n    ;;\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  oom-always)\n  # Always trigger an OOMKill regardless of the memory limit.\n  # This is used to verify that retry mitigation cannot fix\n  # the failure even after resource requests/limits are increased.\n  \n  X=$(dd if=/dev/zero bs=1M count=2048 status=none | tr '\\0' 'a')\n  echo \"${#X}\"\n  ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-02-step-02: complete\"\n"
                        }
                    ]
                },
                "timeout": "1h0m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:14:01Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:14:01Z",
                        "message": "All Steps have completed executing",
                        "reason": "Succeeded",
                        "status": "True",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-8fxtn-task-02-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "startTime": "2026-10-07T19:13:56Z",
                "steps": [
                    {
                        "container": "step-task-02-step-01",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-02-step-01",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://8682ab14c5a61f8f48e8140e9cf8e10e06fc7ca1feae1a5994d8a076cd13c4de",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:14:01Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:14:01Z"
                        },
                        "terminationReason": "Completed"
                    },
                    {
                        "container": "step-task-02-step-02",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-02-step-02",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://3f964b754eb3c2e0cf943859dc8aff7ee4d54f6040221301833a0775b7c4f6db",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:14:01Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:14:01Z"
                        },
                        "terminationReason": "Completed"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "stepTemplate": {
                        "computeResources": {
                            "limits": {
                                "memory": "64Mi"
                            },
                            "requests": {
                                "cpu": "100m",
                                "memory": "64Mi"
                            }
                        },
                        "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c"
                    },
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"oom\"\nFAIL_ON_TASK=\"task-01\"\n\n# pipeline-timeout always runs from task-02 regardless of failOnTask.\nif [[ \"${FAIL_ON_TASK}\" != \"task-02\" \u0026\u0026 \"${FAIL_MODE}\" != \"pipeline-timeout\" ]]; then\n  echo \"task-02: complete\"\n  exit 0\nfi\n\necho \"task-02-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  pipeline-timeout)\n    # Sleep past the pipeline level pipeline/tasks timeout. This is used to verify\n    # that retry mitigation updates both pipeline and tasks timeouts\n    # and allows the pipelineRun to complete on retry.\n    echo \"task-02-step-01: sleeping 120s\"\n    sleep 120\n    ;;\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  oom-always)\n  # Always trigger an OOMKill regardless of the memory limit.\n  # This is used to verify that retry mitigation cannot fix\n  # the failure even after resource requests/limits are increased.\n  \n  X=$(dd if=/dev/zero bs=1M count=2048 status=none | tr '\\0' 'a')\n  echo \"${#X}\"\n  ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-02-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-02-step-02: complete\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-taskrunspecs-oom-yu8c/snapshot-sample-396o-d499148-4lgkv",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-taskrunspecs-oom-managed/results/799ae026-f3b7-4ac6-8908-0daae512153f/records/83e27966-0adb-446a-b614-d8742752dbf4",
                    "results.tekton.dev/result": "retry-taskrunspecs-oom-managed/results/799ae026-f3b7-4ac6-8908-0daae512153f",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:13:41Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:14:17Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-396o",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "1",
                    "release.appstudio.openshift.io/name": "snapshot-sample-396o-d499148-4lgkv",
                    "release.appstudio.openshift.io/namespace": "retry-taskrunspecs-oom-yu8c",
                    "tekton.dev/memberOf": "finally",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-twj9v",
                    "tekton.dev/pipelineRunUID": "799ae026-f3b7-4ac6-8908-0daae512153f",
                    "tekton.dev/pipelineTask": "finalize"
                },
                "name": "managed-twj9v-finalize",
                "namespace": "retry-taskrunspecs-oom-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-twj9v",
                        "uid": "799ae026-f3b7-4ac6-8908-0daae512153f"
                    }
                ],
                "resourceVersion": "25735",
                "uid": "83e27966-0adb-446a-b614-d8742752dbf4"
            },
            "spec": {
                "serviceAccountName": "release-service-account",
                "taskSpec": {
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "finalize-step-01",
                            "script": "#!/usr/bin/env bash\necho \"finalize: complete\"\n"
                        }
                    ]
                },
                "timeout": "1h0m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:13:45Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:13:45Z",
                        "message": "All Steps have completed executing",
                        "reason": "Succeeded",
                        "status": "True",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-twj9v-finalize-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "startTime": "2026-10-07T19:13:41Z",
                "steps": [
                    {
                        "container": "step-finalize-step-01",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "finalize-step-01",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://8392100d8fe55d951c6aaa5d8885165e0b7905ce4a872d46f00800337a5f61b4",
                            "exitCode": 0,
                            "finishedAt": "2026-10-07T19:13:45Z",
                            "reason": "Completed",
                            "startedAt": "2026-10-07T19:13:44Z"
                        },
                        "terminationReason": "Completed"
                    }
                ],
                "taskSpec": {
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "finalize-step-01",
                            "script": "#!/usr/bin/env bash\necho \"finalize: complete\"\n"
                        }
                    ]
                }
            }
        },
        {
            "apiVersion": "tekton.dev/v1",
            "kind": "TaskRun",
            "metadata": {
                "annotations": {
                    "chains.tekton.dev/signed": "true",
                    "operator-sdk/primary-resource": "retry-taskrunspecs-oom-yu8c/snapshot-sample-396o-d499148-4lgkv",
                    "operator-sdk/primary-resource-type": "Release.appstudio.redhat.com",
                    "pac.test.appstudio.openshift.io/sha": "d49914874789147eb2de9bb6a12cd5d150bfff92",
                    "pac.test.appstudio.openshift.io/url-repository": "https://github.com/redhat-appstudio-qe/dc-metro-map-release",
                    "pipeline.tekton.dev/release": "70f7308",
                    "results.tekton.dev/childReadyForDeletion": "true",
                    "results.tekton.dev/record": "retry-taskrunspecs-oom-managed/results/799ae026-f3b7-4ac6-8908-0daae512153f/records/b0e200ae-3e85-4f8f-aaf1-0d484c0fac73",
                    "results.tekton.dev/result": "retry-taskrunspecs-oom-managed/results/799ae026-f3b7-4ac6-8908-0daae512153f",
                    "results.tekton.dev/stored": "true",
                    "tekton.dev/pipelines.minVersion": "0.12.1",
                    "tekton.dev/tags": "release"
                },
                "creationTimestamp": "2026-10-07T19:13:37Z",
                "deletionGracePeriodSeconds": 0,
                "deletionTimestamp": "2026-10-07T19:14:17Z",
                "finalizers": [
                    "results.tekton.dev/taskrun"
                ],
                "generation": 2,
                "labels": {
                    "app.kubernetes.io/managed-by": "tekton-pipelines",
                    "appstudio.openshift.io/application": "appstudio",
                    "appstudio.openshift.io/service": "release",
                    "appstudio.openshift.io/snapshot": "snapshot-sample-396o",
                    "pipelines.appstudio.openshift.io/type": "managed",
                    "release.appstudio.openshift.io/attempt": "1",
                    "release.appstudio.openshift.io/name": "snapshot-sample-396o-d499148-4lgkv",
                    "release.appstudio.openshift.io/namespace": "retry-taskrunspecs-oom-yu8c",
                    "tekton.dev/memberOf": "tasks",
                    "tekton.dev/pipeline": "retry-e2e-managed",
                    "tekton.dev/pipelineRun": "managed-twj9v",
                    "tekton.dev/pipelineRunUID": "799ae026-f3b7-4ac6-8908-0daae512153f",
                    "tekton.dev/pipelineTask": "task-01"
                },
                "name": "managed-twj9v-task-01",
                "namespace": "retry-taskrunspecs-oom-managed",
                "ownerReferences": [
                    {
                        "apiVersion": "tekton.dev/v1",
                        "blockOwnerDeletion": true,
                        "controller": true,
                        "kind": "PipelineRun",
                        "name": "managed-twj9v",
                        "uid": "799ae026-f3b7-4ac6-8908-0daae512153f"
                    }
                ],
                "resourceVersion": "25738",
                "uid": "b0e200ae-3e85-4f8f-aaf1-0d484c0fac73"
            },
            "spec": {
                "params": [
                    {
                        "name": "failMode",
                        "value": "oom"
                    },
                    {
                        "name": "failOnTask",
                        "value": "task-01"
                    }
                ],
                "serviceAccountName": "release-service-account",
                "stepSpecs": [
                    {
                        "computeResources": {
                            "limits": {
                                "memory": "80Mi"
                            },
                            "requests": {
                                "memory": "80Mi"
                            }
                        },
                        "name": "task-01-step-01"
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"$(params.failMode)\"\nFAIL_ON_TASK=\"$(params.failOnTask)\"\n\n# Only inject failures into the selected task.\n[[ \"${FAIL_ON_TASK}\" == \"task-01\" ]] || exit 0\n\necho \"task-01-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  task-timeout)\n    # Sleep longer than the task timeout. Which is set to 1 minute.\n    sleep 90\n    ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-01-step-02: complete\"\n"
                        }
                    ]
                },
                "timeout": "1m0s"
            },
            "status": {
                "artifacts": {},
                "completionTime": "2026-10-07T19:13:41Z",
                "conditions": [
                    {
                        "lastTransitionTime": "2026-10-07T19:13:41Z",
                        "message": "\"step-task-01-step-01\" exited with code 137: OOMKilled",
                        "reason": "StepOOM",
                        "status": "False",
                        "type": "Succeeded"
                    }
                ],
                "podName": "managed-twj9v-task-01-pod",
                "provenance": {
                    "featureFlags": {
                        "awaitSidecarReadiness": true,
                        "coschedule": "workspaces",
                        "enableAPIFields": "beta",
                        "enableProvenanceInStatus": true,
                        "enforceNonfalsifiability": "none",
                        "maxResultSize": 4096,
                        "resultExtractionMethod": "termination-message",
                        "runningInEnvWithInjectedSidecars": true,
                        "sendCloudEventsForRuns": true,
                        "verificationNoMatchPolicy": "ignore"
                    }
                },
                "startTime": "2026-10-07T19:13:37Z",
                "steps": [
                    {
                        "container": "step-task-01-step-01",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-01-step-01",
                        "provenance": {},
                        "terminated": {
                            "containerID": "containerd://05ca9ca1f70f7a38b49216ae2300492f34e202972e69cd5860b8e58f02add62f",
                            "exitCode": 137,
                            "finishedAt": "2026-10-07T19:13:41Z",
                            "reason": "OOMKilled",
                            "startedAt": "2026-10-07T19:13:39Z"
                        }
                    },
                    {
                        "container": "step-task-01-step-02",
                        "imageID": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                        "name": "task-01-step-02",
                        "provenance": {},
                        "running": {
                            "startedAt": "2026-10-07T19:13:40Z"
                        }
                    }
                ],
                "taskSpec": {
                    "params": [
                        {
                            "name": "failMode",
                            "type": "string"
                        },
                        {
                            "name": "failOnTask",
                            "type": "string"
                        }
                    ],
                    "steps": [
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "64Mi"
                                },
                                "requests": {
                                    "cpu": "100m",
                                    "memory": "64Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-01",
                            "script": "#!/usr/bin/env bash\nset -euo pipefail\n\nFAIL_MODE=\"oom\"\nFAIL_ON_TASK=\"task-01\"\n\n# Only inject failures into the selected task.\n[[ \"${FAIL_ON_TASK}\" == \"task-01\" ]] || exit 0\n\necho \"task-01-step-01: failMode=${FAIL_MODE}\"\n\ncase \"${FAIL_MODE}\" in\n  error)\n    exit 1\n    ;;\n  oom)\n    # Trigger OOM only when the task is still running with the\n    # original memory limit. After retry mitigation the limit\n    # should be increased and this path should no longer OOM.\n    LIMIT=\"max\"\n    [[ -r /sys/fs/cgroup/memory.max ]] \u0026\u0026 read -r LIMIT \u003c /sys/fs/cgroup/memory.max\n\n    THRESHOLD=104857600 # 100 Mi\n\n    if [[ \"${LIMIT}\" != \"max\" ]] \u0026\u0026 (( LIMIT \u003c THRESHOLD )); then\n      echo \"limit ${LIMIT} \u003c ${THRESHOLD}: triggering OOMKill\"\n\n      X=$(dd if=/dev/zero bs=1M count=150 status=none | tr '\\0' 'a')\n      echo \"${#X}\"\n    else\n      echo \"limit ${LIMIT} sufficient\"\n    fi\n    ;;\n  task-timeout)\n    # Sleep longer than the task timeout. Which is set to 1 minute.\n    sleep 90\n    ;;\n  none)\n    ;;\n  *)\n    echo \"unknown fail mode: ${FAIL_MODE}\" \u003e\u00262\n    exit 1\n    ;;\nesac\n"
                        },
                        {
                            "computeResources": {
                                "limits": {
                                    "memory": "32Mi"
                                },
                                "requests": {
                                    "cpu": "50m",
                                    "memory": "32Mi"
                                }
                            },
                            "image": "quay.io/konflux-ci/release-service-utils@sha256:850118bc6eda4ca3f98ef1e53109164f64a0945a6ac0942f908b7e106f50775c",
                            "name": "task-01-step-02",
                            "script": "#!/usr/bin/env bash\necho \"task-01-step-02: complete\"\n"
                        }
                    ]
                }
            }
        }
    ],
    "kind": "List",
    "metadata": {
        "resourceVersion": ""
    }
}
