Repository: flutter
Issue: Cancelled presubmit CI jobs are registering as "Failed" in github UI
Labels: team-infra,P2,triaged-infra

Tasks are getting cancelled after one of the tasks has failed, which is good, but the UI is not registering cancellation different than failing so it's hard to parse what the actual failure of the CI tasks was:

For example, here is the UI for a failed run:
<img width="501" alt="Screenshot 2023-05-11 at 12 28 09 PM" src="https://github.com/flutter/flutter/assets/30870216/b5e7b79a-ecea-48f4-888b-374e1f15ca16">

Clicking on [Linux build_tests_1_3](https://github.com/flutter/flutter/runs/13414143765) leads to:
```
3 out of 4 aggregated steps failed: Step('\n\n[        ] 58            android:required=&quot;false&quot; /&gt;\n[        ] 58--&gt;[androidx.window:window:1.0.0-beta04] /b/s/w/ir/cache/gradle/caches/transforms-3/7df660d44243c976af28a92d66c48e42/transformed/jetified-window-1.0.0-beta04/AndroidManifest.xml:27:13-37\n[        ] 59        &lt;uses-library\n[        ] 59--&gt;[androidx.window:window:1.0.0-beta04] /b/s/w/ir/cache/gradle/caches/transforms-3/7df660d44243c976af28a92d66c48e42/transformed/jetified-window-1.0.0-beta04/AndroidManifest.xml:28:9-30:40\n[        ] 60            android:name=&quot;androidx.window.sidecar&quot;\n[        ] 60--&gt;[androidx.window:window:1.0.0-beta04] /b/s/w/ir/cache/gradle/caches/transforms-3/7df660d44243c976af28a92d66c48e42/transformed/jetified-window-1.0.0-beta04/AndroidManifest.xml:29:13-51\n[        ] 61            android:required=&quot;false&quot; /&gt;\n[        ] 61--&gt;[androidx.window:window:1.0.0-beta04] /b/s/w/ir/cache/gradle/caches/transforms-3/7df660d44243c976af28a92d66c48e42/transformed/jetified-window-1.0.0-beta04/AndroidManifest.xml:30:13-37\n[        ] 62    &lt;/application&gt;\n[        ] 63\n[        ] 64&lt;/manifest&gt;\n[        ] Merged manifest saved to /b/s/w/ir/x/w/flutter/dev/integration_tests/platform_interaction/build/app/intermediates/merged_manifest/release/AndroidManifest.xml\n[        ] Resolve mutations for :app:processReleaseManifest (Thread[Execution worker Thread 3,5,main]) started.\n[        ] :app:processReleaseManifest (Thread[Execution worker Thread 3,5,main]) started.\n[ +416 ms] &gt; Task :app:processReleaseManifest\n[        ] Caching disabled for task &#x27;:app:processReleaseManifest&#x27; because:\n[        ]   Build cache is disabled\n[        ] Task &#x27;:app:processReleaseManifest&#x27; is not up-to-date because:\n[        ]   No history is available.\n[        ] Resolve mutations for :app:processReleaseManifestForPackage (Thread[Execution worker Thread 3,5,main]) started.\n[        ] :app:processReleaseManifestForPackage (Thread[Execution worker Thread 3,5,main]) started.\n[        ] Resolve mutations for :app:extractProguardFiles (Thread[Execution worker Thread 6,5,main]) started.\n[        ] :app:extractProguardFiles (Thread[Execution worker Thread 6,5,main]) started.\n[        ] &gt; Task :app:extractProguardFiles\n[        ] Caching disabled for task &#x27;:app:extractProguardFiles&#x27; because:\n[        ]   Build cache is disabled\n[        ] Task &#x27;:app:extractProguardFiles&#x27; is not up-to-date because:\n[        ]   No history is available.\n[        ] Resolve mutations for :app:mergeReleaseJniLibFolders (Thread[Execution worker Thread 6,5,main]) started.\n[        ] :app:mergeReleaseJniLibFolders (Thread[Execution worker Thread 6,5,main]) started.\n[        ] &gt; Task :app:mergeReleaseJniLibFolders\n[        ] Watching 11 directories to track changes\n[        ] Watching 11 directories to track changes\n[        ] Caching disabled for task &#x27;:app:mergeReleaseJniLibFolders&#x27; because:\n[        ]   Build cache is disabled\n[        ] Task &#x27;:app:mergeReleaseJniLibFolders&#x27; is not up-to-date because:\n[        ]   No history is available.\n[        ] The input changes require a full rebuild for incremental task &#x27;:app:mergeReleaseJniLibFolders&#x27;.\n[        ] Resolve mutations for :app:mergeReleaseNativeLibs (Thread[Execution worker Thread 6,5,main]) started.\n[        ] :app:mergeReleaseNativeLibs (Thread[Execution worker Thread 6,5,main]) started.\n') (canceled) (retcode: -15), Infra Failure: Step('Killing Processes.kill chrome') (canceled) (retcode: None), Infra Failure: Step('OS info (2)') (canceled) (retcode: None)
```

So, it's impossible to determine what cause the failure when looking through the github ui.