Skip to content

ci: scan for advisories on a schedule, not only when somebody opens a pull request - #9

Merged
Coysh merged 1 commit into
mainfrom
ci/scan-for-advisories-on-a-schedule
Aug 6, 2026
Merged

Coysh merged 1 commit into
mainfrom
ci/scan-for-advisories-on-a-schedule

Conversation

@Coysh

@Coysh Coysh commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

composer audit --locked already ran on every pull request. The schedule was what was missing — an advisory is published when it is published, not when somebody next happens to touch the repository. A library nobody has needed to change for a month was a month behind on knowing.

Its own workflow rather than a schedule: on ci.yml, which would run the whole matrix weekly to answer a question needing none of it — and a red weekly run would then mean any of several things. This one fails for exactly one reason.

GitHub emails the repository owner when a scheduled workflow fails; that is the alerting mechanism and nothing else needs configuring. workflow_dispatch is there so it can be run by hand while investigating rather than waiting for Monday.

Actions are pinned to commits rather than tags. ci.yml in this repository still uses moving tags (actions/checkout@v4, shivammathur/setup-php@v2) — worth correcting separately, and a new file should not add to it.

This package commits no composer.lock — being a library, a consumer's lockfile decides. So composer install resolves fresh and writes one for --locked to read, which is the right behaviour here: it checks the newest versions the constraints admit rather than a snapshot from whenever a file was last committed.

One of four; the same file is going to the other three repositories.

… pull request

`composer audit --locked` already ran on every pull request. What was missing is
the schedule, and the difference is the whole of it: an advisory is published
when it is published, not when somebody next happens to touch the repository. A
library nobody has needed to change for a month was a month behind on knowing.

Its own workflow rather than a `schedule:` on ci.yml, which would run the whole
matrix weekly to answer a question needing none of it - and a red run would then
mean any of several things. This one fails for exactly one reason.

GitHub emails the repository owner when a scheduled workflow fails, so that is
the alerting mechanism and nothing else needs configuring. workflow_dispatch is
there so it can be run by hand while investigating.

Actions are pinned to commits rather than tags. **`ci.yml` in this repository still uses moving tags (`actions/checkout@v4`, `shivammathur/setup-php@v2`) — worth correcting separately, and a new file should not add to it.**

This package commits no composer.lock, being a library, so `composer install`
resolves fresh and writes one for `--locked` to read. That is the right
behaviour here: it checks the newest versions the constraints admit rather than a
snapshot from whenever a file was last committed.
@Coysh
Coysh merged commit 983753b into main Aug 6, 2026
3 checks passed
@Coysh
Coysh deleted the ci/scan-for-advisories-on-a-schedule branch August 17, 2026 17:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant