name: Validate links on push + PR

on:
  push:
    paths: ['**/*.md']
  pull_request:
    paths: ['**/*.md']
  workflow_dispatch:

jobs:
  linkinator:
    runs-on: ubuntu-24.04
    permissions:
      contents: read
    steps:
      - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
      - uses: JustinBeckwith/linkinator-action@7b6b0bc671f6264e1a8daa4488a5bd91ce61dcd4 # v2.4.2
        with:
          paths: '**/*.md'
          statusCodes: '{ "408": "skip", "429": "skip", "504": "skip" }'
