CI

considered check exits non-zero for violations, invalid configuration, provider failures, and other execution errors. Variances and warnings stay visible without failing the check.

Exit codes

CodeMeaning
0All checks pass.
1One or more violations.
2Usage, configuration, provider, or output error.

These codes describe considered check. Commands that write configuration, such as init and variance add, return 1 when the requested write or variance cannot be completed.

Machine-readable output

considered check --json
considered check --sarif

In SARIF, violations are emitted as errors, warnings as warnings, and variances as informational notes. Choose either --json or--sarif; using both is an error. Redirect stdout to a file when saving a report. Diagnostics are written to stderr.

GitHub Actions

Commit your .considered.yaml, then save this workflow as.github/workflows/considered.yml in the repository you want to check. It installs the published Linux x64 release, verifies its checksum, and adds both binaries to PATH. No Go build is required. Update the version and checksum together when upgrading.

name: Repository standards
on: [push, pull_request]
permissions:
  contents: read
jobs:
  considered:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
        with:
          persist-credentials: false
      - name: Install Considered
        env:
          CONSIDERED_VERSION: v0.1.10
          CONSIDERED_SHA256: 75d94d4929f493dbaa4fba1904728ed41022e141b417b13931da17eca6b4c2ba
        run: |
          set -euo pipefail
          tool_dir="$(mktemp -d)"
          archive="considered_${CONSIDERED_VERSION}_linux_amd64.tar.gz"
          release="https://github.com/quitepicky/considered/releases/download/${CONSIDERED_VERSION}"
          curl --fail --location --silent --show-error "$release/$archive" -o "$tool_dir/$archive"
          printf '%s  %s\n' "$CONSIDERED_SHA256" "$tool_dir/$archive" | sha256sum --check -
          tar -xzf "$tool_dir/$archive" -C "$tool_dir"
          # Both binaries are inside the archive's versioned directory.
          echo "$tool_dir/considered_${CONSIDERED_VERSION}_linux_amd64" >> "$GITHUB_PATH"
      - name: Check repository standards
        run: considered check

Considered's Windows release checks

Considered's own release workflow requires native x64 and ARM64 Windows jobs to validate and install its WinGet package before publishing. The jobs check both command aliases, the installed version, the bundled provider, package registration, and uninstall. The unpublished ZIPs are served over loopback for installation with their original checksums; this does not replace Microsoft's public-URL validation or malware scans. The publishing rebuild must match the tested Windows artifacts before the GitHub release becomes public. See therelease guidefor test evidence and the distinction between submission and acceptance.