diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 09b3238..b3493c7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -175,6 +175,10 @@ jobs: - name: Examples run: bash scripts/check-examples.sh + # Adding a suite here means adding it to the release workflow's `verify` + # job too. Nothing enforces that the two agree, and the last time they + # drifted it was this step that was missing from a release. + # Cheap, and both targets have found real bugs. 30s each, as in CLAUDE.md. fuzz: needs: changes diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 934334e..5bacac5 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -51,11 +51,16 @@ jobs: fi echo "version $version" + # The same correctness suites the CI workflow's `language` job runs, so a + # tag cannot publish something master would have rejected. These two lists + # have to agree: check-examples.sh was added to CI and not here, and went + # missing from every release until somebody thought to compare them. - run: go build -o aria . - run: go vet ./... - run: go test ./... - run: bash scripts/characterize.sh verify - run: bash scripts/check-readme.sh + - run: bash scripts/check-examples.sh build: name: ${{ matrix.name }}