Skip to content
Latchkey

autofix.ci # For security reasons, the workflow in which the autofix.ci action is used must be named "autofix.ci". workflow (prettier/eslint-config-prettier)

The autofix.ci # For security reasons, the workflow in which the autofix.ci action is used must be named "autofix.ci". workflow from prettier/eslint-config-prettier, explained and optimized by Latchkey.

A

CI health: A - excellent

The optimized version below adds job timeouts.

Source: prettier/eslint-config-prettier.github/workflows/autofix.ymlLicense MITView source

What it does

This is the autofix.ci # For security reasons, the workflow in which the autofix.ci action is used must be named "autofix.ci". workflow from the prettier/eslint-config-prettier repository, a real project running GitHub Actions. It is shown here with attribution under its MIT license.

Below, Latchkey shows a faster, safer version produced by its optimization engine.

The workflow

workflow (.yml)
name: autofix.ci # For security reasons, the workflow in which the autofix.ci action is used must be named "autofix.ci".

on:
  pull_request:
    types:
      - opened
      - reopened
      - synchronize

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

permissions:
  contents: write

jobs:
  autofix:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout Repo
        uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4

      - name: Setup Node.js LTS
        uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
        with:
          node-version: lts/*
          cache: yarn

      - name: Install dependencies
        run: yarn --immutable

      - name: Format Codes
        run: yarn format

      - name: Apply autofix.ci
        uses: autofix-ci/action@2891949f3779a1cafafae1523058501de3d4e944 # v1
        with:
          fail-fast: false

The same workflow, on Latchkey

Removes redundant runs and caps runaway jobs. Added and changed lines are highlighted.

name: autofix.ci # For security reasons, the workflow in which the autofix.ci action is used must be named "autofix.ci". on:  pull_request:    types:      - opened      - reopened      - synchronize concurrency:  group: ${{ github.workflow }}-${{ github.ref }}  cancel-in-progress: true permissions:  contents: write jobs:  autofix:    timeout-minutes: 30    runs-on: latchkey-small    steps:      - name: Checkout Repo        uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4       - name: Setup Node.js LTS        uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0        with:          node-version: lts/*          cache: yarn       - name: Install dependencies        run: yarn --immutable       - name: Format Codes        run: yarn format       - name: Apply autofix.ci        uses: autofix-ci/action@2891949f3779a1cafafae1523058501de3d4e944 # v1        with:          fail-fast: false 

What changed

  • Run on Latchkey managed runners with one line (runs-on), which apply the fixes below automatically and self-heal transient failures. This example uses latchkey-small; pick the runner size that fits the job.
  • Add a job timeout so a hung step cannot burn hours of runner time.

What Latchkey heals here

This workflow has steps that commonly fail on transient issues (network, registries, flaky browsers). On Latchkey managed runners they are detected, retried, and self-healed instead of failing your build:

  • Dependency installs

This workflow runs 1 job per trigger. On Latchkey the same minutes cost up to 58% less than GitHub-hosted, with zero queue time.

Actions used in this workflow

Frequently asked questions

What does the autofix.ci # For security reasons, the workflow in which the autofix.ci action is used must be named "autofix.ci". workflow (prettier/eslint-config-prettier) workflow do?
This is the autofix.ci # For security reasons, the workflow in which the autofix.ci action is used must be named "autofix.ci". workflow from the prettier/eslint-config-prettier repository, a real project running GitHub Actions. It is shown here with attribution under its MIT license.
What CI health grade does this workflow get?
This Node.js workflow grades A. Paste your own workflow into the Latchkey grader to see its grade and the exact fixes.
How can I improve this Node.js workflow?
Apply job timeouts. Latchkey applies these automatically on managed runners when you point runs-on at Latchkey.

References