Skip to content
Latchkey

Markdown Links Check workflow (GoogleChrome/lighthouse)

The Markdown Links Check workflow from GoogleChrome/lighthouse, explained and optimized by Latchkey.

C

CI health: C - fair

Point runs-on at Latchkey and get caching, job timeouts, self-healing for flaky steps, and up to 58% lower cost, applied automatically.

Grade your own workflow free or run it on Latchkey →
Source: GoogleChrome/lighthouse.github/workflows/cron-weekly.ymlLicense Apache-2.0View source

What it does

This is the Markdown Links Check workflow from the GoogleChrome/lighthouse repository, a real project running GitHub Actions. It is shown here with attribution under its Apache-2.0 license.

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

The workflow

workflow (.yml)
name: Markdown Links Check
# runs every monday at 9 am
on:
  schedule:
    - cron: "0 9 * * 1"

jobs:
  check-links:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: gaurav-nelson/github-action-markdown-link-check@a996638015fbc9ef96beef1a41bbad7df8e06154
        # checks all markdown files from /docs including all subfolders
        with:
          use-quiet-mode: 'yes'
          use-verbose-mode: 'yes'
          config-file: '.github/workflows/markdown.links.config.json'
          folder-path: 'docs/'
      - uses: actions/checkout@v4
      - uses: gaurav-nelson/github-action-markdown-link-check@a996638015fbc9ef96beef1a41bbad7df8e06154
        # checks all markdown files from root but ignores subfolders
        with:
          use-quiet-mode: 'yes'
          use-verbose-mode: 'yes'
          config-file: '.github/workflows/markdown.links.config.json'
          max-depth: 0

  up-to-date-with-chromium:
    runs-on: ubuntu-latest

    steps:
    - name: git clone
      uses: actions/checkout@v4
    - name: Use Node.js 22.19
      uses: actions/setup-node@v4
      with:
        node-version: '22.19'
    - run: yarn --frozen-lockfile

    - run: yarn mocha --testMatch=third-party/chromium-synchronization/*-test.js

The same workflow, on Latchkey

Estimated ~20% faster on cache hits, plus fewer wasted runs and a safer supply chain. Added and changed lines are highlighted.

name: Markdown Links Check
# runs every monday at 9 am
on:
  schedule:
    - cron: "0 9 * * 1"
 
jobs:
  check-links:
    timeout-minutes: 30
    runs-on: latchkey-small
    steps:
      - uses: actions/checkout@v4
      - uses: gaurav-nelson/github-action-markdown-link-check@a996638015fbc9ef96beef1a41bbad7df8e06154
        # checks all markdown files from /docs including all subfolders
        with:
          use-quiet-mode: 'yes'
          use-verbose-mode: 'yes'
          config-file: '.github/workflows/markdown.links.config.json'
          folder-path: 'docs/'
      - uses: actions/checkout@v4
      - uses: gaurav-nelson/github-action-markdown-link-check@a996638015fbc9ef96beef1a41bbad7df8e06154
        # checks all markdown files from root but ignores subfolders
        with:
          use-quiet-mode: 'yes'
          use-verbose-mode: 'yes'
          config-file: '.github/workflows/markdown.links.config.json'
          max-depth: 0
 
  up-to-date-with-chromium:
    timeout-minutes: 30
    runs-on: latchkey-small
 
    steps:
    - name: git clone
      uses: actions/checkout@v4
    - name: Use Node.js 22.19
      uses: actions/setup-node@v4
      with:
        cache: 'npm'
        node-version: '22.19'
    - run: yarn --frozen-lockfile
 
    - run: yarn mocha --testMatch=third-party/chromium-synchronization/*-test.js
 

What changed

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:

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

Actions used in this workflow