Commit 2dd684e
committed
ci: resolve Hypatia findings at source (dependabot, scorecard perms, false-positive suppressions)
Foundational, in-repo remediation so the advisory Hypatia scan stops
re-flagging known issues:
Real fixes (close genuine findings):
- Add .github/dependabot.yml (github-actions ecosystem, weekly) — closes
the OSSF Scorecard "Dependency-Update-Tool" / DependencyUpdate finding.
Scoped to github-actions only: echo-types has no Cargo/npm/mix/pip
manifests, and Dependabot has no native Nix ecosystem.
- scorecard.yml: grant the analysis job the permissions the
scorecard-reusable contract documents (contents:read, security-events:
write, id-token:write) — closes scorecard_wrapper_missing_job_permissions.
Verified false positives, suppressed via the sanctioned .hypatia-ignore
mechanism (code_safety rules route through ScannerSuppression):
- code_safety/agda_postulate on proofs/agda/Smoke.agda (the "critical"):
the rule is a naive \bpostulate\b regex with no comment stripping; the
only matches are comments documenting the postulate-free discipline.
The repo guardrail (check-guardrails.sh) strips comments and is the
real gate; the one real postulate module is isolated and not in the
trusted base.
- code_safety/js_http_url_in_code on tools/banner/build-banner.mjs:
the URL is the SVG XML namespace `xmlns="http://www.w3.org/2000/svg"`,
a constant namespace URI, never fetched (must stay http://).
Not fixable in-repo (upstream rule/standards-reusable issues; documented
in the PR for follow-up): honest_completion/no_tests (Agda proof suite
not recognised as tests) and workflow_audit/missing_timeout_minutes on
reusable-workflow callers (timeout-minutes is invalid on `uses:` jobs;
the real fix is adding timeouts inside the standards reusables and making
the rule skip caller jobs).
https://claude.ai/code/session_01Jxr3Wy4ngpkbc2QwjEam821 parent e8fad72 commit 2dd684e
3 files changed
Lines changed: 64 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
| 11 | + | |
| 12 | + | |
12 | 13 | | |
13 | 14 | | |
14 | 15 | | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
15 | 24 | | |
16 | 25 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
0 commit comments