ci: add supply-chain dependency vulnerability scan (advisory) (#2395) - #2396
Open
matedev01 wants to merge 1 commit into
Open
ci: add supply-chain dependency vulnerability scan (advisory) (#2395)#2396matedev01 wants to merge 1 commit into
matedev01 wants to merge 1 commit into
Conversation
Closes part of #2395. The agent installs dependencies and the attested eval image is the TCB the "verify don't trust" story rests on, so a known-vulnerable or poisoned dependency must surface in CI. .github/workflows/supply-chain.yml: audits the pinned uv.lock resolution against the PyPA/OSV advisory database via pip-audit (uv export --frozen -> pip-audit -r), on PRs that touch pyproject.toml/uv.lock, pushes to test/main, and a weekly schedule (so a newly-disclosed CVE in an already-pinned dep surfaces without a dep change). permissions: contents: read only. Rollout is ADVISORY (continue-on-error) to establish a clean baseline without blocking merges; the follow-up on #2395 flips it to blocking (drop continue-on-error + add to required checks) once green. First of the "adopt Hermes's strong engineering" items (the CI/hardening half; persist-before-side-effects is noted on #2388).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes part of #2395 — the first "adopt Hermes's strong engineering" item (the CI-hardening half; persist-before-side-effects is noted on #2388).
What
.github/workflows/supply-chain.yml: audits the pinneduv.lockresolution against the PyPA/OSV advisory database viapip-audit(uv export --frozen→pip-audit -r).pyproject.toml/uv.lock/the workflow, pushes totest/main, and a weekly schedule (so a newly-disclosed CVE in an already-pinned dependency surfaces without a dep change).permissions: contents: readonly.actions/checkout@v7,actions/setup-python@v6, Python 3.12, tools viapip install).Why
The agent installs dependencies and the attested eval image (
docker/eval.Dockerfile) is the TCB the "verify don't trust" story rests on — a known-vulnerable or poisoned dependency undermines the attestation (a score honestly bound by #2386, computed by a compromised TCB).Rollout
Advisory (
continue-on-error) to establish a clean baseline without blocking merges; the first CI run here validates the workflow live. The follow-up on #2395 flips it to blocking (dropcontinue-on-error+ add to required checks) once the baseline is green.Purely additive (a new, non-required workflow). CI/infra change — for human review/merge.