fix-ci-failures skill can wait forever when there are no failures
- Dominant language
- TypeScript
- Stars
- 193k
- Forks
- 42.4k
- PR merge metrics
- PR metrics pending
Description
The [fix-ci-failures skill](https://github.com/microsoft/vscode/blob/main/.github/skills/fix-ci-failures/SKILL.md) uses `gh pr checks --watch --fail-fast` to check for CI failures. However, when there are no CI failures and the agent is working on a draft PR where no one will approve it, the command gets stuck (indefinitely?) waiting for the "VS Code PR Checks" job.
The skill should only wait for actual CI jobs, not the permission-related gates, unless the agent is explicitly waiting for approvals.
"fail-fast" should be preserved in any solution applied. I think this is tricky, since the `gh pr checks --watch --fail-fast` command doesn't accept a list of jobs to check on. It's all-or-nothing.
As an alternative, we could keep the `gh pr checks --watch --fail-fast` command, but wrap it in an external timeout so that the command is interrupted every 1 minute to check if the important jobs are done yet.
Contributor guide
Assessment
This issue has not been assessed yet.