Repository navigation
ci: fix semgrep crash and accept 3 unfixable OSV advisories - #172
Merged
Merged
Conversation
- quality-gates.yml: re-pin reusable-semgrep.yml from 5c856f8 to .github main 63155e1, which defaults to Semgrep 1.180.0 (.github PR #90). Semgrep 1.139.0 crashes on pydantic 2.14 (ImportError: eval_type_backport), failing `semgrep / sast-code` on every run. Inputs/outputs/permissions are unchanged between the two SHAs. - osv-scanner.toml: add justified [[IgnoredVulns]] for braces 3.0.3 (GHSA-vfj7-8cjw-p6xm, no fixed release), katex 0.16.47 (GHSA-238p-pmpm-9mq7, fix outside mermaid's ^0.16 range) and postcss-selector-parser 6.1.4 (GHSA-rj75-hqrm-r3gf, fix outside postcss-nested 6.x's range), modelled on MIF's osv-scanner.toml. - package.json: drop the stale `sharp@0.35.3` allowScripts entry; the lock resolves sharp 0.35.5, which has no install script. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Apply the same reusable-semgrep.yml re-pin (63155e1, Semgrep 1.180.0) to release.yml's gate-semgrep so the release attestation does not crash on the same pydantic ImportError and runs the same engine as the merge gate. Outputs consumed by attest-semgrep are unchanged between the SHAs. Correct the quality-gates.yml header that claimed one shared pin SHA. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Summary
Fixes the two pre-existing failures on
mainCI.semgrep / sast-codeSemgrep 1.139.0 crashes on pydantic 2.14 (
ImportError: eval_type_backport) on every run. Re-pinsreusable-semgrep.ymlinquality-gates.ymlfrom5c856f8to.githubmain63155e10b6f837069f71442f2e49186dd91d6509, which carries modeled-information-format/.github#90 (default Semgrep 1.180.0). Diffing the reusable workflow between the two SHAs shows only thesemgrep-versiondefault and anupload-sarifaction bump; inputs, outputs, secrets, and permissions are unchanged, so the caller still matches.release.yml'sgate-semgrepgets the same re-pin (from the review pass), so the release attestation doesn't crash the same way and runs the same engine as the merge gate.attest-semgrepstill gets the samesarif-artifact/sarif-filenameoutputs. Thequality-gates.ymlheader comment no longer claims all gates share one pin SHA.sca / osv-scannerAdds
osv-scanner.tomlnext to the only lockfile (repo root), modelled on MIF's, with justified[[IgnoredVulns]]for three advisories whose fix can't be reached within upstream ranges:^0.16^6.1.1braces and postcss-selector-parser only run at build time, on repo-authored input. katex is only reachable through client-side mermaid on math in diagram labels. The site's one diagram is repo-authored and has no math, and the advisory also needs prototype pollution that already exists in the page.
package.jsonRemoves the stale
"sharp@0.35.3": trueallowScriptsentry. The lock resolves sharp 0.35.5, which has no install script. Theesbuild@0.28.1entry stays because esbuild is still overridden to 0.28.1.Verification (local)
osv-scanner scan source -r .:Filtered 3 vulnerabilities from output/No issues foundactionlint: cleanrm -rf node_modules && npm ci && npm run build:Complete!(8 pages)claude plugin validate .:Validation passed🤖 Generated with Claude Code