diff --git a/.github/workflows/sharded-tests.yml b/.github/workflows/sharded-tests.yml index 990deae..29242c9 100644 --- a/.github/workflows/sharded-tests.yml +++ b/.github/workflows/sharded-tests.yml @@ -1169,7 +1169,14 @@ jobs: timings: name: Record timing history needs: test - if: ${{ inputs.record-timings && (github.event_name == 'push' && github.ref == format('refs/heads/{0}', github.event.repository.default_branch) && needs.test.result == 'success') }} + # `!cancelled()` is load-bearing, not decoration. `test` needs `prebuild`, which is skipped + # whenever the input is off — its default — and a job whose `if` carries no status-check + # function inherits that skip through the graph even though `test` itself ran and passed. + # Measured: on every consumer this job has been skipped since #36 introduced `prebuild`, + # while `needs.test.result` was `success` the whole time — `gate`, which checks exactly that + # and fails the run if it is not `success`, has been green on the same runs. The two + # siblings that survived, `collect` and `gate`, both carry `always()`; this one did not. + if: ${{ !cancelled() && inputs.record-timings && github.event_name == 'push' && github.ref == format('refs/heads/{0}', github.event.repository.default_branch) && needs.test.result == 'success' }} runs-on: ${{ fromJSON(inputs.helper-runner) }} permissions: contents: write # force-pushes the ci-timings orphan branch diff --git a/Project.toml b/Project.toml index ba2b23d..cc10b2e 100644 --- a/Project.toml +++ b/Project.toml @@ -1,6 +1,6 @@ name = "TestShards" uuid = "acceef1d-f5e0-4fe4-a546-818dc56ce7b2" -version = "0.3.39" +version = "0.3.40" authors = ["sota shimozono "] [deps]