perf(ci): skip test-matrix/web-hardening/docs-links/supply-chain on unrelated diffs #958

Merged
brenno merged 2 commits from feat/ci-path-filter into main 2026-07-29 14:04:59 +00:00
Owner

De GitHub-mirrorpoort (.github/workflows/ci.yml) draaide zijn hele
zevendelige pijplijn op elke push en elke PR, ongeacht wat er wijzigde — een
docs-only PR betaalde dezelfde macOS/Windows-testmatrix, webbuild en
advisory Trivy-scan als een lib/-wijziging.

Toegevoegd: een changes-job die de PR-base/head (of push-before/after) met
gewoon git diff vergelijkt — geen marketplace-action, geen nieuwe regel in
pinned-ci-versions.json — en de vier jobs die zuiver code- of
docs-gedreven zijn eraan koppelt (test-matrix, web-hardening,
docs-links, supply-chain).

gate blijft bewust ongemoeid en draait altijd volledig: die bevat
check-secrets/sast, en een docs-only PR mag nooit een zwakker
beveiligingssignaal krijgen dan een PR die code wijzigt (zie
docs/CHECKS.md, "Docs zijn een privacycorpus").

Faalt de diff-logica zelf (nieuwe branch zonder vergelijkbare voorganger,
een force-push waarvan het oude object al weg is) dan valt dit open naar
"alles draait" — nooit stil dicht naar "sla maar over".

Bevat ook een kleine, losstaande bump van actions/checkout/
actions/upload-artifact naar v5 die al in de working tree klaarstond,
in een eigen commit.

Geen bewaker-oproep nodig: raakt bestandsformaat, opslag, afhankelijkheden
of uitgaand verkeer niet. make check, make check-secrets en make sast zijn
allemaal groen.

De GitHub-mirrorpoort (`.github/workflows/ci.yml`) draaide zijn hele zevendelige pijplijn op elke push en elke PR, ongeacht wat er wijzigde — een docs-only PR betaalde dezelfde macOS/Windows-testmatrix, webbuild en advisory Trivy-scan als een `lib/`-wijziging. Toegevoegd: een `changes`-job die de PR-base/head (of push-before/after) met gewoon `git diff` vergelijkt — geen marketplace-action, geen nieuwe regel in `pinned-ci-versions.json` — en de vier jobs die zuiver code- of docs-gedreven zijn eraan koppelt (`test-matrix`, `web-hardening`, `docs-links`, `supply-chain`). `gate` blijft bewust ongemoeid en draait altijd volledig: die bevat `check-secrets`/`sast`, en een docs-only PR mag nooit een zwakker beveiligingssignaal krijgen dan een PR die code wijzigt (zie docs/CHECKS.md, "Docs zijn een privacycorpus"). Faalt de diff-logica zelf (nieuwe branch zonder vergelijkbare voorganger, een force-push waarvan het oude object al weg is) dan valt dit open naar "alles draait" — nooit stil dicht naar "sla maar over". Bevat ook een kleine, losstaande bump van `actions/checkout`/ `actions/upload-artifact` naar v5 die al in de working tree klaarstond, in een eigen commit. Geen bewaker-oproep nodig: raakt bestandsformaat, opslag, afhankelijkheden of uitgaand verkeer niet. make check, make check-secrets en make sast zijn allemaal groen.
Both were pinned to v4; bump the floating-major pin to v5 across the
GitHub-mirror workflow and the Windows release lane.
perf(ci): skip test-matrix/web-hardening/docs-links/supply-chain on unrelated diffs
All checks were successful
scans / scans (pull_request) Successful in 3m38s
a234d786ba
.github/workflows/ci.yml (the GitHub-mirror pipeline) ran its full
seven-job pipeline on every push and pull request regardless of what
changed — a docs-only PR paid for the macOS/Windows test matrix, the
web build, and the advisory Trivy scan same as a lib/ change. Add a
`changes` job that diffs the PR base/head (or push before/after) with
plain `git diff` — no marketplace action, no new pinned-ci-versions.json
entry — and gate the four jobs that are purely code- or docs-driven on
its output. `gate` stays unconditional: it carries check-secrets/sast,
and a docs-only PR must not get a weaker security signal than a code
PR. Tag pushes, workflow_dispatch, and any diff the script can't
compute fail open to running everything.
brenno merged commit e1fcc66710 into main 2026-07-29 14:04:59 +00:00
Sign in to join this conversation.
No description provided.